37 #include "freertos/FreeRTOS.h" 38 #include "freertos/queue.h" 39 #include "freertos/timers.h" 80 #define FABGLIB_UI_EVENTS_QUEUE_SIZE 128 97 UIEVT_MOUSEBUTTONDOWN,
127 typedef void * uiTimerHandle;
152 union uiEventParams {
162 char const * debugMsg;
166 uiTimerHandle timerHandle;
177 uiEvent() : dest(nullptr), id(UIEVT_NULL) { }
178 uiEvent(uiEvent
const & e) { dest = e.dest;
id = e.id; params = e.params; }
179 uiEvent(uiEvtHandler * dest_, uiEventID id_) : dest(dest_), id(id_) { }
258 virtual void processEvent(uiEvent * event);
270 void setApp(
uiApp * value) { m_app = value; }
355 virtual void processEvent(uiEvent * event);
593 void removeChild(
uiWindow * child,
bool freeChild =
true);
594 void moveChildOnTop(
uiWindow * child);
598 Size sizeAtMouseDown() {
return m_sizeAtMouseDown; }
599 Point posAtMouseDown() {
return m_posAtMouseDown; }
601 virtual Size minWindowSize() {
return Size(0, 0); }
603 void beginPaint(uiEvent * paintEvent, Rect
const & clippingRect);
605 void generatePaintEvents(Rect
const & paintRect);
606 void reshape(Rect
const & r);
622 Rect m_savedScreenRect;
624 uiWindowState m_state;
626 uiWindowProps m_windowProps;
628 uiWindowStyle m_windowStyle;
630 Point m_mouseDownPos;
632 Point m_posAtMouseDown;
633 Size m_sizeAtMouseDown;
639 int16_t m_focusIndex;
691 enum class uiFrameItem : uint8_t {
728 virtual void processEvent(uiEvent * event);
735 char const *
title() {
return m_title; }
806 Size minWindowSize();
807 int titleBarHeight();
813 int paintButtons(
Rect const & bkgRect);
814 void movingCapturedMouse(
int mouseX,
int mouseY,
bool mouseIsDown);
815 void movingFreeMouse(
int mouseX,
int mouseY);
816 uiFrameItem getFrameItemAt(
int x,
int y);
817 Rect getBtnRect(
int buttonIndex);
818 void handleButtonsClick(
int x,
int y,
bool doubleClick);
819 void drawTextWithEllipsis(FontInfo
const * fontInfo,
int X,
int Y,
char const * text,
int maxX);
820 void drawReshapingBox(
Rect boxRect);
823 static constexpr
int CORNERSENSE = 10;
833 uiFrameItem m_mouseDownFrameItem;
834 uiFrameItem m_mouseMoveFrameItem;
836 Rect m_lastReshapingBox;
865 virtual void processEvent(uiEvent * event);
883 enum class uiScrollBarItem {
917 virtual void processEvent(uiEvent * event);
1011 virtual void setScrollBar(
uiOrientation orientation,
int position,
int visible,
int range,
bool repaintScrollbar =
true);
1016 void paintScrollableControl();
1017 void paintScrollBars();
1018 Rect getVScrollBarRects(
Rect * topButton =
nullptr,
Rect * bottonButton =
nullptr,
Rect * bar =
nullptr);
1019 Rect getHScrollBarRects(
Rect * leftButton =
nullptr,
Rect * rightButton =
nullptr,
Rect * bar =
nullptr);
1020 uiScrollBarItem getItemAt(
int x,
int y);
1022 void handleFreeMouseMove(
int mouseX,
int mouseY);
1023 void handleCapturedMouseMove(
int mouseX,
int mouseY);
1024 void handleButtonsScroll();
1025 void handlePageScroll();
1029 int16_t m_HScrollBarPosition;
1030 int16_t m_HScrollBarVisible;
1031 int16_t m_HScrollBarRange;
1032 int16_t m_VScrollBarPosition;
1033 int16_t m_VScrollBarVisible;
1034 int16_t m_VScrollBarRange;
1040 int16_t m_mouseDownHScrollBarPosition;
1041 int16_t m_mouseDownVScrollBarPosition;
1043 uiScrollBarItem m_mouseOverItem;
1046 uiTimerHandle m_scrollTimer;
1097 virtual void processEvent(uiEvent * event);
1106 void setText(
char const * value);
1113 char const *
text() {
return m_text; }
1154 void paintContent(
Rect const &
rect);
1228 virtual void processEvent(uiEvent * event);
1251 void setText(
char const * value);
1258 char const *
text() {
return m_text; }
1271 virtual Rect getEditRect();
1275 void paintTextEdit();
1276 void paintContent();
1278 uint8_t
const * getCharInfo(
char ch,
int * width);
1279 int charColumnToWindowX(
int col);
1281 void moveCursor(
int col,
int selCol);
1282 int getColFromMouseX(
int mouseX);
1284 void checkAllocatedSpace(
int requiredLength);
1285 void insert(
char c);
1287 int getWordPosAtLeft();
1288 int getWordPosAtRight();
1289 void selectWordAt(
int mouseX);
1345 virtual void processEvent(uiEvent * event);
1354 void setText(
char const * value);
1370 char const *
text() {
return m_text; }
1396 uint16_t m_textExtent;
1432 virtual void processEvent(uiEvent * event);
1500 virtual void processEvent(uiEvent * event);
1547 virtual void processEvent(uiEvent * event);
1570 void paintPaintBox();
1612 virtual void processEvent(uiEvent * event);
1629 StringList &
items() {
return m_items; }
1652 void selectItem(
int index,
bool add =
false,
bool range =
false);
1686 void paintListBox();
1687 int getItemAtMousePos(
int mouseX,
int mouseY);
1688 void handleMouseDown(
int mouseX,
int mouseY);
1694 int m_firstVisibleItem;
1739 virtual void processEvent(uiEvent * event);
1798 virtual Rect getEditRect();
1803 void paintComboBox();
1804 Rect getButtonRect();
1807 void closeListBox();
1808 void switchListBox();
1809 void updateTextEdit();
1867 virtual void processEvent(uiEvent * event);
1919 void paintCheckBox();
1921 void unCheckGroup();
1927 int16_t m_groupIndex;
1943 RGB ticksColor =
RGB(3, 3, 3);
1965 virtual void processEvent(uiEvent * event);
2024 void moveGripTo(
int x,
int y);
2034 int16_t m_ticksFrequency;
2115 void postDebugMsg(
char const * msg);
2117 virtual void processEvent(uiEvent * event);
2188 void captureMouse(
uiWindow * window);
2292 void combineMouseMoveEvents(
bool value) { m_combineMouseMoveEvents = value; }
2294 void showCaret(uiWindow * window);
2296 void setCaret(
bool value);
2298 void setCaret(Point
const & pos);
2300 void setCaret(Rect
const & rect);
2313 uiTimerHandle
setTimer(uiEvtHandler * dest,
int periodMS);
2338 void cleanWindowReferences(
uiWindow * window);
2358 virtual void init();
2372 bool getEvent(uiEvent * event,
int timeOutMS);
2373 bool peekEvent(uiEvent * event,
int timeOutMS);
2378 void preprocessEvent(uiEvent * event);
2379 void preprocessMouseEvent(uiEvent * event);
2380 void preprocessKeyboardEvent(uiEvent * event);
2381 void filterModalEvent(uiEvent * event);
2383 static void timerFunc(TimerHandle_t xTimer);
2385 void blinkCaret(
bool forceOFF =
false);
2386 void suspendCaret(
bool value);
2391 QueueHandle_t m_eventsQueue;
2405 bool m_combineMouseMoveEvents;
2409 uiTimerHandle m_caretTimer;
2410 int m_caretInvertState;
2412 int m_lastMouseUpTimeMS;
2413 Point m_lastMouseUpPos;
uiWindowStyle & windowStyle()
Sets or gets window style.
Definition: fabui.h:481
void selectItem(int index, bool add=false, bool range=false)
Selects a listbox item.
Definition: fabui.cpp:3312
uiCheckBoxKind
Specifies the combobox behaviour.
Definition: fabui.h:1838
VirtualKey VK
Definition: fabui.h:132
uint8_t SHIFT
Definition: fabui.h:136
bool hasFocus()
Determines whether this window or control has focus.
Definition: fabui.cpp:1435
uiApp * app()
Determines the app that owns this object.
Definition: fabui.h:265
Definition: vgacontroller.h:394
uiImageStyle & imageStyle()
Sets or gets image style.
Definition: fabui.h:1455
RGB backgroundColor
Definition: fabui.h:1526
uint8_t hasMinimizeButton
Definition: fabui.h:679
uiPanelStyle & panelStyle()
Sets or gets panel style.
Definition: fabui.h:1507
void moveWindow(uiWindow *window, int x, int y)
Moves a window.
Definition: fabui.cpp:592
Delegate onChange
Slider changed event delegate.
Definition: fabui.h:2017
uiWindow * capturedMouseWindow()
Determines which window is capturing mouse.
Definition: fabui.h:2197
Represents an RGB color.
Definition: vgacontroller.h:239
uiComboBoxStyle & comboBoxStyle()
Sets or gets combobox style.
Definition: fabui.h:1755
uiWindow * screenToWindow(Point &point)
Determines which window a point belongs to.
Definition: fabui.cpp:396
A frame is a window with a title bar, maximize/minimize/close buttons and that is resizeable or movea...
Definition: fabui.h:711
Contains details about the key event.
Definition: fabui.h:131
void setup(int min, int max, int ticksFrequency)
Sets minimum, maximum position and ticks frequency.
Definition: fabui.cpp:3820
Delegate< uiTimerHandle > onTimer
Timer event delegate.
Definition: fabui.h:2368
void setPosition(int value)
Sets the slider position.
Definition: fabui.cpp:3810
void minimizeWindow(uiWindow *window, bool value)
Minimizes or restores a window.
Definition: fabui.cpp:678
RGB backgroundColor
Definition: fabui.h:1410
uiTimerHandle setTimer(uiEvtHandler *dest, int periodMS)
Setups a timer.
Definition: fabui.cpp:695
void repaintRect(Rect const &rect)
Repaints a screen area.
Definition: fabui.cpp:583
uint8_t right
Definition: fabui.h:329
Represents the whole application base class.
Definition: fabui.h:2082
void resizeWindow(uiWindow *window, int width, int height)
Resizes a window.
Definition: fabui.cpp:598
void selectItem(int index)
Selects an item.
Definition: fabui.cpp:3503
uint8_t minimized
Definition: fabui.h:297
uiPaintBoxStyle & paintBoxStyle()
Sets or gets paintbox style.
Definition: fabui.h:1554
uint8_t left
Definition: fabui.h:327
virtual void init()
Method to inherit to implement an application.
Definition: fabui.cpp:415
RGB borderColor
Definition: fabui.h:317
uiWindow * setFocusedWindow(uiWindow *value)
Sets the focused window (control)
Definition: fabui.cpp:517
bool postEvent(uiEvent const *event)
Places an event in the event queue and returns without waiting for the receiver to process the event...
Definition: fabui.cpp:420
Base class for all visible UI elements (Frames and Controls)
Definition: fabui.h:337
char const * text()
Determines label text.
Definition: fabui.h:1370
uiLabelStyle & labelStyle()
Sets or gets label style.
Definition: fabui.h:1377
bool isMouseOver()
Determines whether the mouse is over this window.
Definition: fabui.h:526
RGB activeTitleBackgroundColor
Definition: fabui.h:660
Rect transformRect(Rect const &rect, uiWindow *baseWindow)
Transforms rectangle origins from current window to another one.
Definition: fabui.cpp:1082
void maximizeWindow(uiWindow *window, bool value)
Maximizes or restores a window.
Definition: fabui.cpp:671
uiWindow * lastChild()
Gets last child.
Definition: fabui.h:387
Delegate onChange
Change event delegate.
Definition: fabui.h:1914
uiWindow * activeWindow()
Gets a pointer to the currently active window.
Definition: fabui.h:2137
FontInfo const * titleFont
Definition: fabui.h:663
uiTextEditProps & textEditProps()
Sets or gets text edit properties.
Definition: fabui.h:1242
uint8_t bottom
Definition: fabui.h:330
Contains a list of selectable items.
Definition: fabui.h:1596
uint8_t top
Definition: fabui.h:328
uiImage(uiWindow *parent, Bitmap const *bitmap, const Point &pos, const Size &size=Size(0, 0), bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:2706
uint8_t focusable
Definition: fabui.h:305
RGB checkedBackgroundColor
Definition: fabui.h:1829
Delegate onChange
Text edit event delegate.
Definition: fabui.h:1266
Contains the listbox style.
Definition: fabui.h:1583
uiListBoxStyle & listBoxStyle()
Sets or gets listbox style.
Definition: fabui.h:1762
Contains the slider style.
Definition: fabui.h:1938
RGB selectedBackgroundColor
Definition: fabui.h:1586
Point pos()
Determines the window position relative to parent window.
Definition: fabui.h:415
Delegate< uiTimerHandle > onTimer
Timer event delegate.
Definition: fabui.h:801
RGB titleColor
Definition: fabui.h:661
uiControl(uiWindow *parent, const Point &pos, const Size &size, bool visible)
Creates an instance of the object.
Definition: fabui.cpp:2001
uiWindow * parent()
Determines the parent window.
Definition: fabui.h:488
RGB activeTitleColor
Definition: fabui.h:662
uint8_t borderSize
Definition: fabui.h:320
Base class of all UI elements that can receive events.
Definition: fabui.h:250
RGB focusedBackgroundColor
Definition: fabui.h:1185
Sets or gets text edit style.
Definition: fabui.h:1182
uint8_t GUI
Definition: fabui.h:137
void deselectAll()
Deselects all selected items.
Definition: fabui.cpp:3345
Contains the paintbox style.
Definition: fabui.h:1525
int lastSelectedItem()
Gets the last selected item.
Definition: fabui.cpp:3415
Properties of the combobox.
Definition: fabui.h:1710
uiWindow * moveFocus(int delta)
Move focus to a control with current focus index plus a delta.
Definition: fabui.cpp:551
uiMessageBoxIcon
Icon displayed by the uiApp.messageBox() method.
Definition: fabui.h:2067
FontInfo const * textFont
Definition: fabui.h:1589
This file contains fabgl::CanvasClass definition and the related Canvas instance. ...
This file contains fabgl::VGAControllerClass definition and the VGAController instance.
A panel is used to contain and to group some controls.
Definition: fabui.h:1484
Represents a checkbox or a radiobutton.
Definition: fabui.h:1850
uint8_t resizeable
Definition: fabui.h:675
RGB mouseOverBackgroundButtonColor
Definition: fabui.h:666
void showWindow(uiWindow *window, bool value)
Makes a window visible or invisible.
Definition: fabui.cpp:619
uint8_t hasCaret
Definition: fabui.h:1195
virtual Rect clientRect(uiOrigin origin)
Determines the client area bounding box.
Definition: fabui.cpp:1120
Point clientPos()
Determines position of the client area.
Definition: fabui.cpp:1133
void bringOnTop()
Brings this window on top.
Definition: fabui.cpp:1059
bool realtimeReshaping
Definition: fabui.h:2049
Delegate onKillFocus
Kill focus event delegate.
Definition: fabui.h:1672
void reshapeWindow(uiWindow *window, Rect const &rect)
Reshapes a window.
Definition: fabui.cpp:611
void setText(char const *value)
Sets label text.
Definition: fabui.cpp:2633
RGB focusedSelectedBackgroundColor
Definition: fabui.h:1587
void destroyWindow(uiWindow *window)
Destroys a window.
Definition: fabui.cpp:786
uiTextEdit(uiWindow *parent, char const *text, const Point &pos, const Size &size, bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:2176
uiWindow * prev()
Gets previous sibling.
Definition: fabui.h:373
uiFrameProps & frameProps()
Sets or gets frame properties.
Definition: fabui.h:767
Properties of the application.
Definition: fabui.h:2046
uiButtonKind
Specifies the button kind.
Definition: fabui.h:1072
uiAppProps & appProps()
Sets or gets application properties.
Definition: fabui.h:2329
void update()
Updates the label content.
Definition: fabui.cpp:2656
Contains the label style.
Definition: fabui.h:1320
void bringAfter(uiWindow *insertionPoint)
Brings this window after another one.
Definition: fabui.cpp:1065
RGB rangeColor
Definition: fabui.h:1941
Describes mouse absolute position, scroll wheel delta and buttons status.
Definition: fabutils.h:206
uint8_t moveable
Definition: fabui.h:676
Point mouseDownPos()
Determines mouse position when left button was down.
Definition: fabui.h:495
uint16_t caretBlinkingTime
Definition: fabui.h:2047
int position()
Determines slider position.
Definition: fabui.h:1979
uiFrameStyle & frameStyle()
Sets or gets frame style.
Definition: fabui.h:760
RGB backgroundColor
Definition: fabui.h:1322
Rect rect(uiOrigin origin)
Determines the window bounding box.
Definition: fabui.cpp:1104
uiWindowState state()
Determines the window state.
Definition: fabui.h:467
int focusIndex()
Determines the focus index (aka tab-index)
Definition: fabui.h:567
VirtualKey
Represents each possible real or derived (SHIFT + real) key.
Definition: fabutils.h:366
RGB backgroundColor
Definition: fabui.h:1479
Represents the coordinate of a point.
Definition: fabutils.h:125
Represents an image with 64 colors image and transparency.
Definition: vgacontroller.h:367
Delegate< uiKeyEventInfo > onKeyUp
Key-up event delegate.
Definition: fabui.h:1677
Size size()
Determines the window size.
Definition: fabui.h:431
Contains the window style.
Definition: fabui.h:315
Properties of the frame.
Definition: fabui.h:674
void setFocusIndex(int value)
Sets the focus index (aka tab-index)
Definition: fabui.h:558
This file contains some utility classes and functions.
RGB activeBorderColor
Definition: fabui.h:318
RGB textColor
Definition: fabui.h:1323
uiLabel(uiWindow *parent, char const *text, const Point &pos, const Size &size=Size(0, 0), bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:2613
Definition: canvas.cpp:47
RGB foregroundColor
Definition: fabui.h:1831
uint8_t activable
Definition: fabui.h:304
CursorName
This enum defines a set of predefined mouse cursors.
Definition: vgacontroller.h:392
uiWindow * firstChild()
Gets first child.
Definition: fabui.h:380
void run()
Initialize application and executes the main event loop.
Definition: fabui.cpp:191
void repaint()
Repaints this window.
Definition: fabui.cpp:1098
Specifies the object type.
Definition: fabui.h:199
Contains some window options.
Definition: fabui.h:303
uiPanel(uiWindow *parent, const Point &pos, const Size &size, bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:2772
uint8_t visible
Definition: fabui.h:295
void exitModal(int modalResult)
Exits from a modal window.
Definition: fabui.cpp:1427
StringList & items()
A list of strings representing the listbox content.
Definition: fabui.h:1629
uint8_t active
Definition: fabui.h:298
MouseStatus status
Definition: fabui.h:143
RGB backgroundColor
Definition: fabui.h:1828
Delegate onChange
Change event delegate.
Definition: fabui.h:1667
void repaintWindow(uiWindow *window)
Repaints a window.
Definition: fabui.cpp:577
uint8_t hasCloseButton
Definition: fabui.h:677
Represents a rectangle.
Definition: fabutils.h:158
void setText(char const *value)
Replaces current text.
Definition: fabui.cpp:2203
uint8_t changedButton
Definition: fabui.h:144
uiWindowProps & windowProps()
Sets or gets window properties.
Definition: fabui.h:474
uiTextEditStyle & textEditStyle()
Sets or gets text edit style.
Definition: fabui.h:1235
uiComboBoxProps & comboBoxProps()
Sets or gets combobox properties.
Definition: fabui.h:1769
void setTitleFmt(const char *format,...)
Sets window title as formatted text.
Definition: fabui.cpp:1497
static FontInfo const * getPresetFontInfoFromHeight(int height, bool fixedWidth)
Gets the font info that best fits the specified height.
Definition: canvas.cpp:493
uiSliderStyle & sliderStyle()
Sets or gets slider style.
Definition: fabui.h:1972
Represents a text edit control.
Definition: fabui.h:1211
uiComboBox(uiWindow *parent, const Point &pos, const Size &size, int listHeight, bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:3469
uint8_t RALT
Definition: fabui.h:134
Delegate onShow
Show window event delegate.
Definition: fabui.h:779
void setScrollBar(uiOrientation orientation, int position, int visible, int range, bool repaintScrollbar)
Sets scrollbar position, visible portion and range.
Definition: fabui.cpp:3424
Contains details about the mouse event.
Definition: fabui.h:142
int max()
Gets maximum position.
Definition: fabui.h:2000
RGB buttonColor
Definition: fabui.h:664
Delegate onDblClick
Mouse double click event delegate4.
Definition: fabui.h:585
StringList & items()
A list of strings representing items of the combobox.
Definition: fabui.h:1748
uiWindow * focusedWindow()
Gets the focused window (control)
Definition: fabui.h:2162
int showModalWindow(uiWindow *window)
Makes a window visible and handles it has a modal window.
Definition: fabui.cpp:627
uiPaintBox(uiWindow *parent, const Point &pos, const Size &size, bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:2823
RGB textColor
Definition: fabui.h:1590
uiCheckBoxStyle & checkBoxStyle()
Sets or gets checkbox style.
Definition: fabui.h:1874
uiMessageBoxResult messageBox(char const *title, char const *text, char const *button1Text, char const *button2Text=nullptr, char const *button3Text=nullptr, uiMessageBoxIcon icon=uiMessageBoxIcon::Question)
Displays a modal dialog box with an icon, text and some buttons.
Definition: fabui.cpp:825
void killTimer(uiTimerHandle handle)
Kills a timer.
Definition: fabui.cpp:703
void setChecked(bool value)
Sets current checkbox or radiobutton checked status.
Definition: fabui.cpp:3751
uint8_t CTRL
Definition: fabui.h:135
Rect clientRect(uiOrigin origin)
Determines the client area bounding box.
Definition: fabui.cpp:1525
bool hasChildren()
Determines whether this window has children.
Definition: fabui.h:394
This file contains FabGL library configuration settings, like number of supported colors...
Base class of all UI elements like windows and controls.
Definition: fabui.h:224
uiObjectType & objectType()
Determines the object type.
Definition: fabui.h:237
A paintbox control allows applications to perform custom drawings providing uiPaintBox.onPaint delegate. A paintbox can have horizontal and vertical scrollbars.
Definition: fabui.h:1531
int firstSelectedItem()
Gets the first selected item.
Definition: fabui.cpp:3405
RGB activeButtonColor
Definition: fabui.h:665
RGB titleBackgroundColor
Definition: fabui.h:659
Represents a bidimensional size.
Definition: fabutils.h:143
uiWindow * next()
Gets next sibling.
Definition: fabui.h:364
FontInfo const * textFont
Definition: fabui.h:1187
CursorName defaultCursor
Definition: fabui.h:316
RGB textColor
Definition: fabui.h:1186
Delegate onClick
Mouse click event delegate.
Definition: fabui.h:577
int min()
Gets minimum position.
Definition: fabui.h:1993
uiListBox(uiWindow *parent, const Point &pos, const Size &size, bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:3220
RGB backgroundColor
Definition: fabui.h:658
uint8_t maximized
Definition: fabui.h:296
uiSlider(uiWindow *parent, const Point &pos, const Size &size, uiOrientation orientation, bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:3787
Contains the listbox style.
Definition: fabui.h:1703
uint8_t openOnFocus
Definition: fabui.h:1711
uint8_t focusedBorderSize
Definition: fabui.h:321
RGB buttonBackgroundColor
Definition: fabui.h:1704
RGB mouseOverButtonColor
Definition: fabui.h:667
RGB focusedBackgroundColor
Definition: fabui.h:1585
Delegate onResize
Resize window event delegate.
Definition: fabui.h:793
uiCheckBox(uiWindow *parent, const Point &pos, const Size &size, uiCheckBoxKind kind=uiCheckBoxKind::CheckBox, bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:3644
A label is a static text UI element.
Definition: fabui.h:1328
int itemHeight
Definition: fabui.h:1588
RGB gripColor
Definition: fabui.h:1942
Properties of the text edit.
Definition: fabui.h:1194
Contains the image style.
Definition: fabui.h:1409
RGB backgroundColor
Definition: fabui.h:1183
This is the base class for all controls. A control can have focus and is not activable.
Definition: fabui.h:849
RGB selectedTextColor
Definition: fabui.h:1591
Contains anchors enable/disable switches.
Definition: fabui.h:326
void setTextFmt(const char *format,...)
Sets label formatted text.
Definition: fabui.cpp:2642
RGB buttonColor
Definition: fabui.h:1705
uiFrame * rootWindow()
Gets a pointer to the root window.
Definition: fabui.h:2127
uiOrigin
Specifies window rectangle origin.
Definition: fabui.h:286
uiListBoxStyle & listBoxStyle()
Sets or gets listbox style.
Definition: fabui.h:1619
bool insertEvent(uiEvent const *event)
Inserts (first position) an event in the event queue and returns without waiting for the receiver to ...
Definition: fabui.cpp:426
void setBitmap(Bitmap const *bitmap)
Sets image bitmap.
Definition: fabui.cpp:2724
Delegate onHide
Hide window event delegate.
Definition: fabui.h:786
A slider or track bar is a graphical control element with which a user may set a value by moving an i...
Definition: fabui.h:1948
RGB backgroundColor
Definition: fabui.h:1584
int groupIndex()
Determines radiobutton group index.
Definition: fabui.h:1897
uint16_t doubleClickTime
Definition: fabui.h:2048
Specifies current window state.
Definition: fabui.h:294
int selectedItem()
Represents currently selected item.
Definition: fabui.h:1776
char const * title()
Determines the window title.
Definition: fabui.h:735
uint8_t hasMaximizeButton
Definition: fabui.h:678
RGB backgroundColor
Definition: fabui.h:1939
This is a combination of a listbox and a single-line editable textbox.
Definition: fabui.h:1721
uiWindow * setActiveWindow(uiWindow *value)
Sets the active window.
Definition: fabui.cpp:473
Delegate< Rect > onPaint
Paint event delegate.
Definition: fabui.h:1565
uint8_t LALT
Definition: fabui.h:133
RGB mouseOverBackgroundColor
Definition: fabui.h:1184
FontInfo const * textFont
Definition: fabui.h:1321
void setTitle(char const *value)
Sets window title.
Definition: fabui.cpp:1489
Contains the checkbox style.
Definition: fabui.h:1827
bool checked()
Determines whether the checkbox or radiobutton is checked.
Definition: fabui.h:1881
uint8_t allowEdit
Definition: fabui.h:1196
uiAnchors & anchors()
Allows to switch on or off anchors.
Definition: fabui.h:551
Contains the panel style.
Definition: fabui.h:1478
char const * text()
Gets current content of the text edit.
Definition: fabui.h:1258
uiMessageBoxResult
Return values from uiApp.messageBox() method.
Definition: fabui.h:2056
uiWindow(uiWindow *parent, const Point &pos, const Size &size, bool visible)
Creates an instance of the object.
Definition: fabui.cpp:933
uiOrientation
Item direction/orientation.
Definition: fabui.h:187
Size clientSize()
Determines the client area size.
Definition: fabui.cpp:1127
Delegate onChange
Change event delegate.
Definition: fabui.h:1793
RGB mouseOverBackgroundColor
Definition: fabui.h:1830
RGB focusedBorderColor
Definition: fabui.h:319
RGB slideColor
Definition: fabui.h:1940
Bitmap const * bitmap()
Gets image bitmap.
Definition: fabui.h:1448
void setGroupIndex(int value)
Sets radiobutton group index.
Definition: fabui.h:1904
Image control to display a static bitmap.
Definition: fabui.h:1415
uiFrame(uiWindow *parent, char const *title, const Point &pos, const Size &size, bool visible=true)
Creates an instance of the object.
Definition: fabui.cpp:1470