class PopUpTable : public ArrayCtrl { public: virtual void Deactivate(); virtual void LeftUp(Point p, dword keyflags); virtual bool Key(dword key, int); virtual void CancelMode(); protected: int droplines; bool open; void DoClose(); public: void PopUp(Ctrl *owner, int x, int top, int bottom, int width); void PopUp(Ctrl *owner, int width); void PopUp(Ctrl *owner); Callback WhenCancel; Callback WhenSelect; PopUpTable& SetDropLines(int _droplines) { droplines = _droplines; return *this; } void Normal(); PopUpTable(); virtual ~PopUpTable(); }; struct DropBox : public Ctrl { public: virtual void CancelMode(); virtual Image FrameMouseEvent(int event, Point p, int zdelta, dword keyflags); public: struct Style : ChStyle