From: Vadim Zeitlin Date: Sat, 30 Jun 2012 23:41:23 +0000 (+0000) Subject: Add skeleton documentation for wxAuiNotebook-related classes. X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/c55488dffffe600f789e0ab53c531675f11b411b?hp=7447d53c35249d42128d6243c90998f03882859a Add skeleton documentation for wxAuiNotebook-related classes. Closes #14386. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/docs/doxygen/images/generic/auidefaulttabart.png b/docs/doxygen/images/generic/auidefaulttabart.png new file mode 100644 index 0000000000..91eb9b5073 Binary files /dev/null and b/docs/doxygen/images/generic/auidefaulttabart.png differ diff --git a/docs/doxygen/images/generic/auisimpletabart.png b/docs/doxygen/images/generic/auisimpletabart.png new file mode 100644 index 0000000000..cec1426863 Binary files /dev/null and b/docs/doxygen/images/generic/auisimpletabart.png differ diff --git a/docs/doxygen/overviews/aui.h b/docs/doxygen/overviews/aui.h index 031c7385c4..ed857ec3f2 100644 --- a/docs/doxygen/overviews/aui.h +++ b/docs/doxygen/overviews/aui.h @@ -16,8 +16,11 @@ Classes: @li wxAuiNotebook @li wxAuiDockArt @li wxAuiTabArt +@li wxAuiDefaultTabArt @li wxAuiToolBar @li wxAuiToolBarArt +@li wxAuiTabContainer +@li wxAuiTabContainerButton wxAUI stands for Advanced User Interface. It aims to give the user a cutting edge interface with floatable windows, and a user-customizable layout. The diff --git a/interface/wx/aui/auibook.h b/interface/wx/aui/auibook.h index b95461b9ae..5253ea3a4a 100644 --- a/interface/wx/aui/auibook.h +++ b/interface/wx/aui/auibook.h @@ -9,7 +9,9 @@ /** @class wxAuiNotebook - wxAuiNotebook is part of the wxAUI class framework. + wxAuiNotebook is part of the wxAUI class framework, which represents a + notebook control, managing multiple windows with associated tabs. + See also @ref overview_aui. wxAuiNotebook is a notebook control which implements many features common in @@ -368,14 +370,138 @@ public: bool ShowWindowMenu(); }; +/** + @class wxAuiTabContainerButton + + A simple class which holds information about wxAuiNotebook tab buttons and their state. + + @library{wxaui} + @category{aui} +*/ +class wxAuiTabContainerButton +{ +public: + /// button's id + int id; + /// current state (normal, hover, pressed, etc.) + int curState; + /// buttons location (wxLEFT, wxRIGHT, or wxCENTER) + int location; + /// button's hover bitmap + wxBitmap bitmap; + /// button's disabled bitmap + wxBitmap disBitmap; + /// button's hit rectangle + wxRect rect; +}; + + +/** + @class wxAuiTabContainer + + wxAuiTabContainer is a class which contains information about each tab. + It also can render an entire tab control to a specified DC. + It's not a window class itself, because this code will be used by + the wxAuiNotebook, where it is disadvantageous to have separate + windows for each tab control in the case of "docked tabs". + + A derived class, wxAuiTabCtrl, is an actual wxWindow - derived window + which can be used as a tab control in the normal sense. + + @library{wxaui} + @category{aui} +*/ +class wxAuiTabContainer +{ +public: + + /** + Default ctor. + */ + wxAuiTabContainer(); + + /** + Default dtor. + */ + virtual ~wxAuiTabContainer(); + + void SetArtProvider(wxAuiTabArt* art); + wxAuiTabArt* GetArtProvider() const; + + void SetFlags(unsigned int flags); + unsigned int GetFlags() const; + + bool AddPage(wxWindow* page, const wxAuiNotebookPage& info); + bool InsertPage(wxWindow* page, const wxAuiNotebookPage& info, size_t idx); + bool MovePage(wxWindow* page, size_t newIdx); + bool RemovePage(wxWindow* page); + bool SetActivePage(wxWindow* page); + bool SetActivePage(size_t page); + void SetNoneActive(); + int GetActivePage() const; + bool TabHitTest(int x, int y, wxWindow** hit) const; + bool ButtonHitTest(int x, int y, wxAuiTabContainerButton** hit) const; + wxWindow* GetWindowFromIdx(size_t idx) const; + int GetIdxFromWindow(wxWindow* page) const; + size_t GetPageCount() const; + wxAuiNotebookPage& GetPage(size_t idx); + const wxAuiNotebookPage& GetPage(size_t idx) const; + wxAuiNotebookPageArray& GetPages(); + void SetNormalFont(const wxFont& normalFont); + void SetSelectedFont(const wxFont& selectedFont); + void SetMeasuringFont(const wxFont& measuringFont); + void SetColour(const wxColour& colour); + void SetActiveColour(const wxColour& colour); + void DoShowHide(); + void SetRect(const wxRect& rect); + + void RemoveButton(int id); + void AddButton(int id, + int location, + const wxBitmap& normalBitmap = wxNullBitmap, + const wxBitmap& disabledBitmap = wxNullBitmap); + + size_t GetTabOffset() const; + void SetTabOffset(size_t offset); + + // Is the tab visible? + bool IsTabVisible(int tabPage, int tabOffset, wxDC* dc, wxWindow* wnd); + + // Make the tab visible if it wasn't already + void MakeTabVisible(int tabPage, wxWindow* win); + +protected: + + virtual void Render(wxDC* dc, wxWindow* wnd); + +protected: + + wxAuiTabArt* m_art; + wxAuiNotebookPageArray m_pages; + wxAuiTabContainerButtonArray m_buttons; + wxAuiTabContainerButtonArray m_tabCloseButtons; + wxRect m_rect; + size_t m_tabOffset; + unsigned int m_flags; +}; + /** @class wxAuiTabArt - Tab art class. + Tab art provider defines all the drawing functions used by wxAuiNotebook. - @todo BETTER DESCRIPTION NEEDED + This allows the wxAuiNotebook to have a pluggable look-and-feel. + + By default, a wxAuiNotebook uses an instance of this class called + wxAuiDefaultTabArt which provides bitmap art and a colour scheme that is + adapted to the major platforms' look. You can either derive from that class + to alter its behaviour or write a completely new tab art class. + + Another example of creating a new wxAuiNotebook tab bar is wxAuiSimpleTabArt. + + Call wxAuiNotebook::SetArtProvider() to make use of this new tab art. @library{wxaui} @category{aui} @@ -523,3 +649,202 @@ public: wxEvent *Clone(); }; +/** + Default art provider for wxAuiNotebook. + + @see wxAuiTabArt + + @genericAppearance{auidefaulttabart.png} + + @library{wxaui} + @category{aui} +*/ + +class wxAuiDefaultTabArt : public wxAuiTabArt +{ +public: + + wxAuiDefaultTabArt(); + virtual ~wxAuiDefaultTabArt(); + + wxAuiTabArt* Clone(); + void SetFlags(unsigned int flags); + void SetSizingInfo(const wxSize& tabCtrlSize, + size_t tabCount); + + void SetNormalFont(const wxFont& font); + void SetSelectedFont(const wxFont& font); + void SetMeasuringFont(const wxFont& font); + void SetColour(const wxColour& colour); + void SetActiveColour(const wxColour& colour); + + void DrawBackground( + wxDC& dc, + wxWindow* wnd, + const wxRect& rect); + + void DrawTab(wxDC& dc, + wxWindow* wnd, + const wxAuiNotebookPage& pane, + const wxRect& inRect, + int closeButtonState, + wxRect* outTabRect, + wxRect* outButtonRect, + int* xExtent); + + void DrawButton( + wxDC& dc, + wxWindow* wnd, + const wxRect& inRect, + int bitmapId, + int buttonState, + int orientation, + wxRect* outRect); + + int GetIndentSize(); + + wxSize GetTabSize( + wxDC& dc, + wxWindow* wnd, + const wxString& caption, + const wxBitmap& bitmap, + bool active, + int closeButtonState, + int* xExtent); + + int ShowDropDown( + wxWindow* wnd, + const wxAuiNotebookPageArray& items, + int activeIdx); + + int GetBestTabCtrlSize(wxWindow* wnd, + const wxAuiNotebookPageArray& pages, + const wxSize& requiredBmpSize); + +protected: + /** + The font used for all tabs + */ + wxFont m_normalFont; + wxFont m_selectedFont; /// The font used on the selected tab + wxFont m_measuringFont; + wxColour m_baseColour; + wxPen m_baseColourPen; + wxPen m_borderPen; + wxBrush m_baseColourBrush; + wxColour m_activeColour; + wxBitmap m_activeCloseBmp; + wxBitmap m_disabledCloseBmp; + wxBitmap m_activeLeftBmp; + wxBitmap m_disabledLeftBmp; + wxBitmap m_activeRightBmp; + wxBitmap m_disabledRightBmp; + wxBitmap m_activeWindowListBmp; + wxBitmap m_disabledWindowListBmp; + + int m_fixedTabWidth; + int m_tabCtrlHeight; + unsigned int m_flags; +}; + + +/** + @class wxAuiSimpleTabArt + + Another standard tab art provider for wxAuiNotebook. + + wxAuiSimpleTabArt is derived from wxAuiTabArt demonstrating how to write a + completely new tab art class. It can also be used as alternative to + wxAuiDefaultTabArt. + + @genericAppearance{auisimpletabart.png} + + @library{wxaui} + @category{aui} +*/ + +class wxAuiSimpleTabArt : public wxAuiTabArt +{ + +public: + + wxAuiSimpleTabArt(); + virtual ~wxAuiSimpleTabArt(); + + wxAuiTabArt* Clone(); + void SetFlags(unsigned int flags); + + void SetSizingInfo(const wxSize& tabCtrlSize, + size_t tabCount); + + void SetNormalFont(const wxFont& font); + void SetSelectedFont(const wxFont& font); + void SetMeasuringFont(const wxFont& font); + void SetColour(const wxColour& colour); + void SetActiveColour(const wxColour& colour); + + void DrawBackground( + wxDC& dc, + wxWindow* wnd, + const wxRect& rect); + + void DrawTab(wxDC& dc, + wxWindow* wnd, + const wxAuiNotebookPage& pane, + const wxRect& inRect, + int closeButtonState, + wxRect* outTabRect, + wxRect* outButtonRect, + int* xExtent); + + void DrawButton( + wxDC& dc, + wxWindow* wnd, + const wxRect& inRect, + int bitmapId, + int buttonState, + int orientation, + wxRect* outRect); + + int GetIndentSize(); + + wxSize GetTabSize( + wxDC& dc, + wxWindow* wnd, + const wxString& caption, + const wxBitmap& bitmap, + bool active, + int closeButtonState, + int* xExtent); + + int ShowDropDown( + wxWindow* wnd, + const wxAuiNotebookPageArray& items, + int activeIdx); + + int GetBestTabCtrlSize(wxWindow* wnd, + const wxAuiNotebookPageArray& pages, + const wxSize& requiredBmpSize); + +protected: + + wxFont m_normalFont; + wxFont m_selectedFont; + wxFont m_measuringFont; + wxPen m_normalBkPen; + wxPen m_selectedBkPen; + wxBrush m_normalBkBrush; + wxBrush m_selectedBkBrush; + wxBrush m_bkBrush; + wxBitmap m_activeCloseBmp; + wxBitmap m_disabledCloseBmp; + wxBitmap m_activeLeftBmp; + wxBitmap m_disabledLeftBmp; + wxBitmap m_activeRightBmp; + wxBitmap m_disabledRightBmp; + wxBitmap m_activeWindowListBmp; + wxBitmap m_disabledWindowListBmp; + + int m_fixedTabWidth; + unsigned int m_flags; +}; diff --git a/interface/wx/aui/dockart.h b/interface/wx/aui/dockart.h index ef40a5ef7c..a6942f18f1 100644 --- a/interface/wx/aui/dockart.h +++ b/interface/wx/aui/dockart.h @@ -8,66 +8,171 @@ /** - @todo TOWRITE + These are the possible pane dock art settings for wxAuiDefaultDockArt. + + @library{wxaui} + @category{aui} + */ enum wxAuiPaneDockArtSetting { + + /// Customizes the sash size wxAUI_DOCKART_SASH_SIZE = 0, + + /// Customizes the caption size wxAUI_DOCKART_CAPTION_SIZE = 1, + + /// Customizes the gripper size wxAUI_DOCKART_GRIPPER_SIZE = 2, + + /// Customizes the pane border size wxAUI_DOCKART_PANE_BORDER_SIZE = 3, + + /// Customizes the pane button size wxAUI_DOCKART_PANE_BUTTON_SIZE = 4, + + /// Customizes the background colour, which corresponds to the client area. wxAUI_DOCKART_BACKGROUND_COLOUR = 5, + + /// Customizes the sash colour wxAUI_DOCKART_SASH_COLOUR = 6, + + /// Customizes the active caption colour wxAUI_DOCKART_ACTIVE_CAPTION_COLOUR = 7, + + /// Customizes the active caption gradient colour wxAUI_DOCKART_ACTIVE_CAPTION_GRADIENT_COLOUR = 8, + + /// Customizes the inactive caption colour wxAUI_DOCKART_INACTIVE_CAPTION_COLOUR = 9, + + /// Customizes the inactive gradient caption colour wxAUI_DOCKART_INACTIVE_CAPTION_GRADIENT_COLOUR = 10, + + /// Customizes the active caption text colour wxAUI_DOCKART_ACTIVE_CAPTION_TEXT_COLOUR = 11, + + /// Customizes the inactive caption text colour wxAUI_DOCKART_INACTIVE_CAPTION_TEXT_COLOUR = 12, + + /// Customizes the border colour wxAUI_DOCKART_BORDER_COLOUR = 13, + + /// Customizes the gripper colour wxAUI_DOCKART_GRIPPER_COLOUR = 14, + + /// Customizes the caption font wxAUI_DOCKART_CAPTION_FONT = 15, + + /// Customizes the gradient type (no gradient, vertical or horizontal) wxAUI_DOCKART_GRADIENT_TYPE = 16 + }; /** - @todo TOWRITE + These are the possible gradient dock art settings for wxAuiDefaultDockArt + */ enum wxAuiPaneDockArtGradients { + /// No gradient on the captions, in other words a solid colour wxAUI_GRADIENT_NONE = 0, + + /// Vertical gradient on the captions, in other words a gradal change in colours from top to bottom wxAUI_GRADIENT_VERTICAL = 1, + + /// Horizontal gradient on the captions, in other words a gradual change in colours from left to right wxAUI_GRADIENT_HORIZONTAL = 2 }; /** - @todo TOWRITE + These are the possible pane button / wxAuiNotebook button / wxAuiToolBar button states. */ enum wxAuiPaneButtonState { + /// Normal button state wxAUI_BUTTON_STATE_NORMAL = 0, - wxAUI_BUTTON_STATE_HOVER = 1, - wxAUI_BUTTON_STATE_PRESSED = 2 + + /// Hovered button state + wxAUI_BUTTON_STATE_HOVER = 1 << 1, + + /// Pressed button state + wxAUI_BUTTON_STATE_PRESSED = 1 << 2, + + /// Disabled button state + wxAUI_BUTTON_STATE_DISABLED = 1 << 3, + + /// Hidden button state + wxAUI_BUTTON_STATE_HIDDEN = 1 << 4, + + /// Checked button state + wxAUI_BUTTON_STATE_CHECKED = 1 << 5 }; /** - @todo TOWRITE + These are the possible pane button / wxAuiNotebook button / wxAuiToolBar button identifiers. + */ enum wxAuiButtonId { + /// Shows a close button on the pane wxAUI_BUTTON_CLOSE = 101, + + /// Shows a maximize/restore button on the pane wxAUI_BUTTON_MAXIMIZE_RESTORE = 102, + + /// Shows a minimize button on the pane wxAUI_BUTTON_MINIMIZE = 103, + + /** + Shows a pin button on the pane + */ wxAUI_BUTTON_PIN = 104, + + /** + Shows an option button on the pane (not implemented) + */ wxAUI_BUTTON_OPTIONS = 105, + + /** + Shows a window list button on the pane (for wxAuiNotebook) + */ wxAUI_BUTTON_WINDOWLIST = 106, - wxAUI_BUTTON_LEFT = 107, - wxAUI_BUTTON_RIGHT = 108, + + /** + Shows a left button on the pane (for wxAuiNotebook) + */ + wxAUI_BUTTON_LEFT = 107, + + /** + Shows a right button on the pane (for wxAuiNotebook) + */ + wxAUI_BUTTON_RIGHT = 108, + + /** + Shows an up button on the pane (not implemented) + */ wxAUI_BUTTON_UP = 109, + + /** + Shows a down button on the pane (not implemented) + */ wxAUI_BUTTON_DOWN = 110, + + /** + Shows one of three possible custom buttons on the pane (not implemented) + */ wxAUI_BUTTON_CUSTOM1 = 201, + + /** + Shows one of three possible custom buttons on the pane (not implemented) + */ wxAUI_BUTTON_CUSTOM2 = 202, + + /** + Shows one of three possible custom buttons on the pane (not implemented) + */ wxAUI_BUTTON_CUSTOM3 = 203 }; diff --git a/interface/wx/aui/toolbar.h b/interface/wx/aui/toolbar.h index bebe8aa682..303a14ba0f 100644 --- a/interface/wx/aui/toolbar.h +++ b/interface/wx/aui/toolbar.h @@ -8,54 +8,125 @@ /////////////////////////////////////////////////////////////////////////////// /** + wxAuiToolBarStyle is part of the wxAUI class framework, used to define the appearance of a wxAuiToolBar. + + See also @ref overview_aui. + @library{wxaui} @category{aui} */ enum wxAuiToolBarStyle { + /** + Shows the text in the toolbar buttons; by default only icons are shown. + */ wxAUI_TB_TEXT = 1 << 0, + + /** + Don't show tooltips on wxAuiToolBar items. + */ wxAUI_TB_NO_TOOLTIPS = 1 << 1, + + /** + Do not auto-resize the wxAuiToolBar. + */ wxAUI_TB_NO_AUTORESIZE = 1 << 2, + + /** + Shows a gripper on the wxAuiToolBar. + */ wxAUI_TB_GRIPPER = 1 << 3, + + /** + The wxAuiToolBar can contain overflow items. + */ wxAUI_TB_OVERFLOW = 1 << 4, + /** - Using this style forces the toolbar to be vertical and be only dockable - to the left or right sides of the window whereas by default it can be - horizontal or vertical and be docked anywhere. - */ + Using this style forces the toolbar to be vertical and be only dockable to the left or right sides of the window whereas by default it can be horizontal or vertical and be docked anywhere. + */ wxAUI_TB_VERTICAL = 1 << 5, + + /** + Shows the text and the icons alongside, not vertically stacked. This style must be used with wxAUI_TB_TEXT + */ wxAUI_TB_HORZ_LAYOUT = 1 << 6, + /** - Analogous to wxAUI_TB_VERTICAL, but forces the toolbar - to be horizontal - */ + Analogous to wxAUI_TB_VERTICAL, but forces the toolbar to be horizontal, docking to the top or bottom of the window. + */ wxAUI_TB_HORIZONTAL = 1 << 7, + + /** + Shows the text alongside the icons, not vertically stacked. + */ wxAUI_TB_HORZ_TEXT = (wxAUI_TB_HORZ_LAYOUT | wxAUI_TB_TEXT), + + /** + Shows the text in the toolbar buttons; by default only icons are shown. + */ wxAUI_ORIENTATION_MASK = (wxAUI_TB_VERTICAL | wxAUI_TB_HORIZONTAL), + + /** + By default only icons are shown. + */ wxAUI_TB_DEFAULT_STYLE = 0 + }; /** - @library{wxaui} - @category{aui} - */ + wxAuiToolBarArtSetting + + @library{wxaui} + @category{aui} +*/ enum wxAuiToolBarArtSetting { + /** + wxAuiToolBar seperator size. + */ wxAUI_TBART_SEPARATOR_SIZE = 0, + + /** + wxAuiToolBar gripper size. + */ wxAUI_TBART_GRIPPER_SIZE = 1, + + /** + Overflow button size in wxAuiToolBar. + */ wxAUI_TBART_OVERFLOW_SIZE = 2 + }; /** + wxAuiToolBarToolTextOrientation + @library{wxaui} @category{aui} */ enum wxAuiToolBarToolTextOrientation { - wxAUI_TBTOOL_TEXT_LEFT = 0, //!< unused/unimplemented + /** + Text in wxAuiToolBar items is left aligned, currently unused/unimplemented. + */ + wxAUI_TBTOOL_TEXT_LEFT = 0, + + /** + Text in wxAuiToolBar items is right aligned. + */ wxAUI_TBTOOL_TEXT_RIGHT = 1, - wxAUI_TBTOOL_TEXT_TOP = 2, //!< unused/unimplemented + + /** + Text in wxAuiToolBar items is top aligned, currently unused/unimplemented. + */ + wxAUI_TBTOOL_TEXT_TOP = 2, + + /** + Text in wxAuiToolBar items is bottom aligned. + */ wxAUI_TBTOOL_TEXT_BOTTOM = 3 + }; @@ -70,12 +141,24 @@ enum wxAuiToolBarToolTextOrientation class wxAuiToolBarEvent : public wxNotifyEvent { public: + /** + Returns whether the drop down menu has been clicked. + */ bool IsDropDownClicked() const; + /** + Returns the point where the user clicked with the mouse. + */ wxPoint GetClickPoint() const; + /** + Returns the wxAuiToolBarItem rectangle bounding the mouse click point. + */ wxRect GetItemRect() const; + /** + Returns the wxAuiToolBarItem identifier. + */ int GetToolId() const; }; @@ -83,9 +166,17 @@ public: /** @class wxAuiToolBarItem - wxAuiToolBarItem is part of the wxAUI class framework. + wxAuiToolBarItem is part of the wxAUI class framework, representing a toolbar element. + See also @ref wxAuiToolBar and @ref overview_aui. + It has a unique id (except for the separators which always have id = -1), the + style (telling whether it is a normal button, separator or a control), the + state (toggled or not, enabled or not) and short and long help strings. The + default implementations use the short help string for the tooltip text which + is popped up when the mouse pointer enters the tool and the long help string + for the applications status bar (currently not implemented). + @library{wxaui} @category{aui} */ @@ -93,69 +184,196 @@ class wxAuiToolBarItem { public: + /** + Default Constructor + */ wxAuiToolBarItem(); + /** + Assigns the properties of the wxAuiToolBarItem "c" to this. + */ wxAuiToolBarItem(const wxAuiToolBarItem& c); + /** + Assigns the properties of the wxAuiToolBarItem "c" to this, returning a pointer to this. + */ wxAuiToolBarItem& operator=(const wxAuiToolBarItem& c); + /** + Assigns the properties of the wxAuiToolBarItem "c" to this. + */ void Assign(const wxAuiToolBarItem& c); + /** + Assigns a window to the toolbar item. + */ void SetWindow(wxWindow* w); + /** + Returns the wxWindow* associated to the toolbar item. + */ wxWindow* GetWindow(); + /** + Sets the toolbar item identifier. + */ void SetId(int new_id); + /** + Returns the toolbar item identifier. + */ int GetId() const; + /** + Sets the wxAuiToolBarItem kind. + */ void SetKind(int new_kind); + + /** + Returns the toolbar item kind. + */ int GetKind() const; + /** + + */ void SetState(int new_state); + /** + + */ int GetState() const; + /** + + */ void SetSizerItem(wxSizerItem* s); + /** + + */ wxSizerItem* GetSizerItem() const; + /** + + */ void SetLabel(const wxString& s); + /** + + */ const wxString& GetLabel() const; + /** + + */ void SetBitmap(const wxBitmap& bmp); + /** + + */ const wxBitmap& GetBitmap() const; + /** + + */ void SetDisabledBitmap(const wxBitmap& bmp); + /** + + */ const wxBitmap& GetDisabledBitmap() const; + /** + + */ void SetHoverBitmap(const wxBitmap& bmp); + /** + + */ const wxBitmap& GetHoverBitmap() const; + /** + + */ void SetShortHelp(const wxString& s); + /** + + */ const wxString& GetShortHelp() const; + /** + + */ void SetLongHelp(const wxString& s); + /** + + */ const wxString& GetLongHelp() const; + /** + + */ void SetMinSize(const wxSize& s); + /** + + */ const wxSize& GetMinSize() const; + /** + + */ void SetSpacerPixels(int s); + /** + + */ int GetSpacerPixels() const; + /** + + */ void SetProportion(int p); + /** + + */ int GetProportion() const; + /** + + */ void SetActive(bool b); + /** + + */ bool IsActive() const; + /** + + */ void SetHasDropDown(bool b); + /** + + */ bool HasDropDown() const; + /** + + */ void SetSticky(bool b); + /** + + */ bool IsSticky() const; + /** + + */ void SetUserData(long l); + /** + + */ long GetUserData() const; + /** + + */ void SetAlignment(int l); + /** + + */ int GetAlignment() const; };