A scrollable, interactive list of selectable menu items with optional styling as buttons or links.
More...
|
| | ButtonMenu () |
| | Constructor.
|
| virtual | ~ButtonMenu () |
| | Destructor.
|
| void | enableButtonStyle () |
| | Enables button-style rendering of items.
|
| void | enableLinkStyle () |
| | Enables link-style rendering of items.
|
| void | setPinnable (BOOL isPinnable=TRUE) |
| | Enables pinnable button state.
|
| void | clear () |
| | Removes all items from the menu.
|
| void | setTitle (const wstring &title) |
| | Sets the menu title.
|
| void | setImagePosition (const Direction &imagePosition) |
| | Sets the position of the image displayed on the button.
|
| long | addItem (const wstring &itemText, const wstring &itemId=L"", const IconSource &iconSource=IconSource()) |
| | Adds a new item to the menu.
|
| void | enableItem (const wstring &itemText, BOOL enabled=TRUE) |
| | enables/disabled button.
|
| long | getItemCount () |
| | Returns the number of items in the menu.
|
| long | getSelectedItem () |
| | Gets the index of the currently selected item.
|
| void | onPaint (Graphics *g) |
| | Paints the component.
|
| void | onWindowResized () |
| | Called when the window is resized.
|
| BOOL | getScrollingInfo (__int64 &scrollMin, __int64 &scrollMax, __int64 &pageSize) |
| | Retrieves information about scrolling limits and page size.
|
| void | setScrollbarTopOffset (__int64 firstVisibleRow) |
| | Sets the vertical scrollbar position by row offset.
|
| void | addSelectionChangedListener (SelectionChangeListener *l) |
| | Adds a listener to be notified when the selection changes.
|
| void | onArrowUp (BOOL shiftPressed, BOOL ctrlPressed) |
| void | onArrowDown (BOOL shiftPressed, BOOL ctrlPressed) |
| void | onPageUp (BOOL shiftPressed, BOOL ctrlPressed) |
| void | onPageDown (BOOL shiftPressed, BOOL ctrlPressed) |
| void | onKeyHome (BOOL shiftPressed, BOOL ctrlPressed) |
| void | onKeyEnd (BOOL shiftPressed, BOOL ctrlPressed) |
| void | onMousePressed (WinHandle hWnd, int x, int y, int clickCount, BOOL shiftPressed, BOOL ctrlPressed) |
| | Called when the mouse is pressed within the component.
|
| void | onMouseReleased (WinHandle hWnd, int x, int y, BOOL shiftPressed, BOOL ctrlPressed) |
| | Called when the mouse button is released within the component.
|
| void | onMouseRightClicked (WinHandle hWnd, int x, int y, BOOL shiftPressed, BOOL ctrlPressed) |
| | Called when the right mouse button is clicked within the component.
|
| void | onMouseMoved (WinHandle hWnd, int x, int y, BOOL shiftPressed, BOOL ctrlPressed) |
| | Called when the mouse is moved within the component.
|
| BOOL | onMouseWheel (WinHandle hWnd, int x, int y, int delta) |
| | Called when the mouse wheel is used over the component.
|
| | Component () |
| | Constructs a new Component instance.
|
| virtual | ~Component () |
| | Virtual destructor.
|
| long | getId () |
| | Gets the unique ID assigned to this component.
|
| void | setParent (Component *parent) |
| Component * | getParent () |
| Component * | getTopLevelParent () |
| void | bringWindowToTop () |
| wstring | getComponentType () |
| | Gets the component type string.
|
| BOOL | isWindowCreated () |
| | Returns whether the native window has been created.
|
| WinHandle | getWindowHandle () |
| | Returns the native WinHandle for this component.
|
| int | createComponent (Component *parent, Bounds rect, long nCmd=-1, BOOL isVisible=TRUE) |
| | Creates the component's native window as a child of hParent.
|
| void | setFocus () |
| void | setFont (long fontSize, BOOL isBold=FALSE, BOOL isItalic=FALSE, BOOL isUnderlined=FALSE, const wstring &fontName=L"Arial") |
| | Sets the font for the component.
|
| BOOL | getCustomFont (long &fontSize, BOOL &isBold, BOOL &isItalic, BOOL &isUnderlined, wstring &fontName) |
| void | showBorder (BOOL bShow=TRUE) |
| void | setEnabled (BOOL bEnable=TRUE) |
| | Enables or disables the component.
|
| void | setVisible (BOOL bShow=TRUE) |
| | Shows or hides the component.
|
| void | GetClientRect (Bounds &rect) |
| void | GetWindowRect (Bounds &rect) |
| void | moveWindow (long x, long y, long width, long height, BOOL bRedraw=TRUE) |
| | Moves and resizes the component window.
|
| void | reconfigureScrollBar () |
| | Forces the component to recalculate the scrollbar info.
|
| void | setMouseWheelDelta (int delta) |
| | Sets the accumulated mouse wheel delta.
|
| int | getMouseWheelDelta () |
| | Gets the current mouse wheel delta.
|
| virtual int | getMinimumHeight () |
| | Returns the minimum height the component can have.
|
| virtual int | getPreferredHeight () |
| | Returns the preferred height of the component.
|
| void | repaint (Component *comp=NULL, BOOL repaintImmediately=FALSE) |
| | Requests the component to repaint itself.
|
| void | clearQueuedPaintRequest () |
| | clears the queued paint request. This function should only be called internally from the library.
|
| virtual BOOL | getChildren (vector< Component * > &children) |
| virtual void | onWindowMoved () |
| | Called when the component's window is moved.
|
| virtual void | onAction (WinHandle hTarget, long actionId, const ProcParams &procParams) |
| | Called when an action occurs on the component.
|
| virtual void | onSelectionChanged (WinHandle hTarget, int itemIndex, const wstring &itemText, BOOL itemChecked, const ProcParams &procParams) |
| | Called when the selection changes.
|
| virtual void | onDataChanged (WinHandle hTarget, const wstring &newValue, const ProcParams &procParams) |
| | Called when data changes in the component.
|
| virtual void | onArrowLeft (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onArrowRight (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyInsert (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyDelete (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyBackSpace (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyTyped (wchar_t ch, BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyTab (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyEnter (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF1 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF2 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF3 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF4 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF5 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF6 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF7 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF8 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF9 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF10 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF11 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onKeyF12 (BOOL shiftPressed, BOOL ctrlPressed) |
| virtual void | onFocusGained () |
| | Called when the component gains keyboard focus.
|
| virtual void | onFocusLost () |
| | Called when the component loses keyboard focus.
|
| virtual void | onTimer (unsigned int timerId) |
| | Called on timer events.
|
| void | updateScrollbarTopOffset (__int64 firstVisibleRow) |
| | Updates the scrollbar's top offset based on the current first visible row.
|
A scrollable, interactive list of selectable menu items with optional styling as buttons or links.
The ButtonMenu class is a GUI component that displays a list of selectable items, supports keyboard and mouse navigation, and notifies listeners when the selection changes. It is derived from the Component base class.