A scrollable, resizable grid component that displays buttons in a structured layout.
More...
|
| ButtonGrid () |
| Constructor. Initializes the grid.
|
virtual | ~ButtonGrid () |
| Destructor. Cleans up any allocated resources.
|
void | clear () |
| Clears all items from the grid.
|
void | setMinColumnWidth (long minWidth) |
| Sets the minimum width for columns in the grid layout.
|
void | setTitle (const wstring &title) |
| Sets the grid's title.
|
void | setImagePosition (const Direction &imagePosition) |
| Sets the position of the image displayed on the button.
|
long | addButton (const wstring &itemText, const IconSource &iconSource=IconSource()) |
| Adds a button to the grid.
|
void | enableButton (const wstring &itemText, BOOL enabled=TRUE) |
| enables/disabled button.
|
void | onWindowResized () |
| Handles window resize events and recalculates layout.
|
void | onPaint (Graphics *g) |
| Paints the button grid on the screen.
|
BOOL | getScrollingInfo (__int64 &scrollMin, __int64 &scrollMax, __int64 &pageSize) |
| Retrieves scroll range and page size information.
|
void | setScrollbarTopOffset (__int64 firstVisibleRow) |
| Sets the top row index for vertical scrollbar.
|
void | addActionListener (ActionListener *l) |
| Registers an ActionListener to receive item click events.
|
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.
|
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 () |
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 (WinHandle hParent, Bounds rect, long nCmd=-1, BOOL isVisible=TRUE) |
| Creates the component's native window as a child of hParent.
|
void | setFont (long fontSize, BOOL isBold=FALSE, BOOL isItalic=FALSE, BOOL isUnderlined=FALSE, const wstring &fontName=L"Arial") |
| Sets the font for the component.
|
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 (WinHandle hWnd=NULL) |
| Requests the component to repaint itself.
|
void | clearQueuedPaintRequest () |
| clears the queued paint request. This function should only be called internally from the library.
|
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 BOOL | onHorzScroll (WinHandle hTarget, const ProcParams &procParams) |
| Called on horizontal scroll events.
|
virtual BOOL | onDrawMeasureItem (LPMEASUREITEMSTRUCT dis, const ProcParams &procParams) |
| Called when measuring an item for owner-draw controls.
|
virtual BOOL | onDrawItem (LPDRAWITEMSTRUCT dis, const ProcParams &procParams) |
| Called when drawing an item for owner-draw controls.
|
virtual void | onMouseMoved (WinHandle hWnd, int x, int y, BOOL shiftPressed, BOOL ctrlPressed) |
| Called when the mouse is moved within 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, resizable grid component that displays buttons in a structured layout.
The ButtonGrid class allows dynamic addition of buttons (with optional images), automatic layout adjustment based on window size, and user interaction through mouse and keyboard. It supports vertical scrolling, selection tracking, and event listeners for user actions.