Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
IComponentsGUI.hpp
Go to the documentation of this file.
1#ifndef LIBS_GUI_ICOMPONENTSGUI_HPP_
2#define LIBS_GUI_ICOMPONENTSGUI_HPP_
3
8#include "ui/gui/CList.hpp"
9#include "ui/gui/CTree.hpp"
10#include "ui/gui/IWidget.hpp"
11#include "ui/gui/enums.hpp"
14#include "ui/structs.hpp"
16
17#include <bits/stdint-intn.h>
18#include <bits/stdint-uintn.h>
19#include <functional>
20#include <memory>
21#include <string>
22#include <vector>
23
25class AbstractLayout;
27class CCanvas;
28class CGooCanvas;
29class CIndicator;
30class CMenuOption;
31class CTxtColor;
32class CWorkspace;
33class IFilterModel;
34class IListenerTimer;
35
37{
38public:
39 virtual ~IComponentsGUI() = default;
40
41 virtual void initApplication(int32_t argc, char **argv) = 0;
42 virtual void minimizeApplication() = 0;
43 virtual IWidget *createApplication() = 0;
44 virtual void loadCSS(const std::string &cssFilePath) = 0;
45 virtual void runApplication(std::string_view titleApplication, std::string_view pathIconApplication,
46 const iv::ui::ApplicationWidgets &applicationWidgets) = 0;
47 virtual void setTitleWithSubTitleApplication(const std::string &subTitle) = 0;
49
50 virtual IWidget *createAssistant() = 0;
51
52 virtual IWidget *createCheckButton(std::string text, AbstractClickComponentGUI *checkButton, bool isActive) = 0;
54 virtual IWidget *createButton(AbstractClickComponentGUI *button, std::string text,
55 std::optional<iv::ui::resources::ImageResource> resourceOpt,
58 virtual IWidget *createRadioButton(std::string text, AbstractClickComponentGUI *button) = 0;
59 virtual void joinRadioButtonToGroup(IWidget *button, IWidget *sourceGroupButton) = 0;
60 virtual void updateButton(IWidget *button, std::string text,
61 std::optional<iv::ui::resources::ImageResource> resource,
63 virtual uint32_t getColorSelectedInColorButton(IWidget *buttonColor) = 0;
64 virtual void setActivateCheckButton(IWidget *m_widget, AbstractClickComponentGUI *checkButton, bool value) = 0;
65 virtual bool getActivateCheckButton(IWidget *m_widget) = 0;
66
67 virtual IWidget *createCalendar(unsigned short day, unsigned short month, unsigned short year) = 0;
68 virtual void getDateCalendar(IWidget *calendar, unsigned short *day, unsigned short *month,
69 unsigned short *year) = 0;
70
71 virtual IWidget *createCanvas(CCanvas *canvas, iv::types::color colorRGBBackground) = 0;
72 virtual void updateCanvas(IWidget *canvas) = 0;
73 virtual IWidget *createGooCanvas(CGooCanvas *canvas, iv::types::color colorRGBBackground) = 0;
74 virtual void redrawGooCanvas(IWidget *canvas) = 0;
76
77 virtual IWidget *createComboBoxText(AbstractSelectionComponent *component, std::vector<std::string> optionsList,
78 int32_t indSelected, bool withEntry) = 0;
79 virtual void insertComboBoxTextOption(IWidget *comboBoxText, std::string option, int32_t insertPosition) = 0;
80 virtual void removeAllComboBoxOptions(IWidget *comboBoxText) = 0;
81 virtual void removeComboBoxOptionByIndex(IWidget *comboBoxText, uint32_t index) = 0;
82 virtual std::string getOptionSelectedComboBox(IWidget *compBox) = 0;
83 virtual void setOptionSelectedComboBox(IWidget *compBox, int32_t option) = 0;
84
85 virtual void activeComponent(IWidget *component, bool isActive) = 0;
86 virtual void updateAttrColor(IWidget *component, CAttrColorComp *attrColor) = 0;
87 virtual void visibleComponent(IWidget *component, bool isVisible) = 0;
88
89 virtual IWidget *createDialog(std::string title, CEnumComponentsGUI::EDialogButtons buttons, bool isModal,
90 bool isTransientFor, bool isResizable, IWidget *dialogContent,
91 IWidget *componentDialogFather, AbstractComponentGUI *componentArea) = 0;
92 virtual IWidget *createDialogNonModal(std::string title, bool isResizable, IWidget *dialogContent,
93 IWidget *componentDialogFather, AbstractComponentGUI *componentArea,
94 const std::optional<std::function<bool()>> &closeDialogHandler) = 0;
95 virtual void setDialogPosition(IWidget *dialog, double posX, double posY, unsigned char justify) = 0;
96 virtual void showDialog(IWidget **dialog, CEnumComponentsGUI::EDialogResponse *dialogResponseOpt) = 0;
97 virtual void showDialogNonModal(IWidget *dialog) = 0;
98 virtual void acceptDialog(IWidget **dialog, AbstractComponentGUI *componentArea) = 0;
99 virtual void closeDialog(IWidget **dialog) = 0;
100 virtual void closeDialogNonModal(IWidget **dialog) = 0;
101 virtual void setDialogCanBeClosed(IWidget **dialog, bool canBeClosed) = 0;
102 virtual void closeDialogRecursively(IWidget **dialog) = 0;
103
104 virtual void showMessage(CEnumComponentsGUI::EMessageType messageType, IWidget *compDialogFather,
105 const std::string &msgInform, const std::string &title) = 0;
106 virtual bool showMessageQuestion(IWidget *compDialogFather, const std::string &msgQuestion,
107 const std::string &panelTitle) = 0;
108
109 virtual void pendingEvents() = 0;
110
111 virtual IWidget *createEntry(const std::string &text, bool isPassword, bool isSizeDefined,
112 unsigned short numCharSize, bool hasNumMaxChar, unsigned short numMaxChar,
113 const std::vector<std::string> &wordsAutocompletion, AbstractComponentGUI *edit) = 0;
114 virtual std::string getEntryText(IWidget *entry) = 0;
115 virtual void setEntryText(IWidget *entry, const std::string &text) = 0;
116
117 virtual std::shared_ptr<iv::ui::graphics::Image> getImage(iv::ui::resources::ImageResource resource) = 0;
118
119 virtual IWidget *createIndicators() = 0;
120 virtual void addIndicator(IWidget *indicators, CIndicator *indicatorRef) = 0;
121
122 virtual IWidget *
123 createNotificationIndicator(const std::weak_ptr<iv::diamar::INotificationIndicator> &notificationIndicator,
124 IWidget *notificationPanelWidget) = 0;
125
126 virtual IWidget *createInfoBar(AbstractComponentGUI *componentInfoBar, bool displayStatusCircle) = 0;
127 virtual void setInfoBarInfoMessage(IWidget *infoBar, std::string message) = 0;
128 virtual void setInfoBarErrorMessage(IWidget *infoBar, std::string message) = 0;
129 virtual void setInfoBarWarningMessage(IWidget *infoBar, std::string message) = 0;
130
131 virtual IWidget *createLabel(std::string text, const std::optional<iv::ui::resources::ImageResource> &resourceOpt,
132 double spacing, CEnumCommon::eType type) = 0;
133 virtual void setLabelText(IWidget *label, std::string_view text) = 0;
134 virtual void setLabelColor(IWidget *label, iv::types::color color) = 0;
135 virtual void setLabelFontHeight(IWidget *label, double fontHeight) = 0;
136 virtual void setLabelSpacing(IWidget *label, double spacing) = 0;
137 virtual void setLabelStyle(IWidget *label, iv::gui::eLabelStyle labelStyle) = 0;
138 virtual void setLabelResourceImage(IWidget *label, const iv::ui::resources::ImageResource &resource) = 0;
139
140 virtual IWidget *createSlider(iv::types::Range<double> valueRange, bool isOrientationHorizontal, uint64_t steps,
141 AbstractComponentGUI *compSlider) = 0;
142 virtual void setSliderValue(IWidget *slider, double value) = 0;
143 virtual double getSliderValue(IWidget *slider) = 0;
144 virtual void setSliderDisplayValue(IWidget *slider, bool displayValue) = 0;
145
146 virtual void addWidgetToContainer(IWidget *containerWidget, IWidget *widgetToSet) = 0;
147 virtual void removeWidgetFromContainer(IWidget *containerWidget, IWidget *widgetToRemove) = 0;
148 virtual void changeContainedWidget(IWidget *containerWidget, IWidget *oldWidget, IWidget *newWidget) = 0;
149
150 virtual void queueResizeWidget(IWidget *widget) = 0;
151
152 virtual IWidget *createLayoutHorizontal(uint16_t spacing,
153 std::optional<AbstractLayout *> layout = std::nullopt) = 0;
154 virtual IWidget *createLayoutVertical(uint16_t spacing, std::optional<AbstractLayout *> layout) = 0;
155 virtual void addWidgetIntoStartLayout(IWidget *layout, IWidget *widgetToAdd, bool expand, bool fill,
156 iv::types::padding padding) = 0;
157 virtual void addWidgetIntoEndLayout(IWidget *layout, IWidget *widgetToAdd, bool expand, bool fill,
158 iv::types::padding padding) = 0;
159
160 virtual IWidget *createLayoutGrid(uint64_t numRows, uint64_t numCols, unsigned short spaceBetweenRows,
161 unsigned short spaceBetweenColumns, bool isCompact) = 0;
162 virtual void setWidgetIntoGrid(IWidget *layoutGrid, IWidget *widgetToAdd, uint64_t indRow, uint64_t indColumn) = 0;
163
164 virtual IWidget *createLayout(IWidget *componentLayer) = 0;
165
166 virtual IWidget *createFrameBin(const std::string &label) = 0;
167
168 virtual IWidget *createPaned(bool horizontalOrientation, int32_t dividerPosition) = 0;
169 virtual void addChildToPaned(IWidget *panedWidget, IWidget *childWidget, bool firstWidget, bool resize,
170 bool shrink) = 0;
171
173
174 virtual IWidget *createSheet(AbstractComponentGUI *sheet, std::shared_ptr<AbstractSheetModel> model,
175 bool showRowTitles, bool isMultipleSelection) = 0;
176 virtual void constructSheet(IWidget *sheet, std::shared_ptr<AbstractSheetModel> model) = 0;
177 virtual void freezeSheet(IWidget *sheet) = 0;
178 virtual void thawSheet(IWidget *sheet) = 0;
179 virtual void deleteSheet(IWidget *sheet) = 0;
180 virtual void addColumnToSheet(IWidget *sheet, AbstractComponentGUI *sheetComponent,
181 uint32_t columnPositionReference, const std::string &columnTitle,
182 const std::string &columnTooltip) = 0;
183 virtual void removeColumnFromSheet(IWidget *sheet, uint32_t columnPositionReference) = 0;
184 virtual void removeAllColumnsFromSheet(IWidget *sheet) = 0;
185 virtual void addRowToSheet(IWidget *sheet, uint32_t rowPositionReference) = 0;
186 virtual void removeRowFromSheet(IWidget *sheet, uint32_t rowPositionReference) = 0;
187 virtual void removeAllRowsFromSheet(IWidget *sheet) = 0;
188 virtual void setTextSheetCell(IWidget *sheet, uint32_t row, uint32_t column, const std::string &text) = 0;
189 virtual void setTitleTextSheetCell(IWidget *sheet, uint32_t row, const std::string &text) = 0;
190 virtual void setTooltipSheetCell(IWidget *sheet, uint32_t row, uint32_t column, const std::string &text) = 0;
191 virtual bool attachToSheet(IWidget *sheet, std::shared_ptr<AbstractSheetModel> model, IWidget *widgetToAttach,
192 uint32_t row, uint32_t column) = 0;
193 virtual bool attachToSheetRowTitle(IWidget *sheet, IWidget *widgetToAttach, uint32_t row) = 0;
195 const std::vector<IWidget *> &widgetsToAttach) = 0;
196 virtual bool getSheetSelectedRows(IWidget *sheet, std::vector<uint32_t> *selectedRows) const = 0;
197 virtual void setActiveSheetCell(IWidget *sheet, uint32_t row, uint32_t column, bool scrollToCell) = 0;
198 virtual void setDisableSheetCell(IWidget *sheet, uint32_t row, uint32_t column) = 0;
199 virtual void setCSSClassToSheetRow(IWidget *sheet, const std::string &cssClass, uint32_t row) = 0;
200 virtual void setTooltipToSheetRow(IWidget *sheet, std::shared_ptr<AbstractSheetModel> model,
201 const std::string &tooltip, uint32_t row) = 0;
203 const iv::gui::sheets::ColumnsDefinitions &columnDefinitions) = 0;
204 virtual bool setSheetRowsVisibility(IWidget *sheet, const iv::gui::sheets::RowsDefinitions &rowDefinitions) = 0;
205
206 virtual IWidget *createList(CList &list, IFilterModel *filter, bool isMultipleSelection,
207 bool requestMinSizeForTexts) = 0;
208 virtual bool getIndRowSelected(IWidget *compList, uint64_t *indexSelectOpt) = 0;
209 virtual std::set<uint64_t> getIndRowsSelected(IWidget *compList) = 0;
210 virtual bool setIndRowSelected(IWidget *compList, uint64_t indexSelect) = 0;
211 virtual bool clearRowsSelected(IWidget *compList) = 0;
212 virtual void reFilterList(IWidget *compList) = 0;
213 virtual void setFilter(IWidget *compList, IFilterModel *filter) = 0;
214 virtual void updateList(IWidget *compList, const CList &list) = 0;
215
216 virtual IWidget *createTree(CTree &tree, IFilterModel *filter, AbstractComponentGUI *edit, bool showHeader,
217 bool canSelectRow) = 0;
218 virtual void updateTree(IWidget *compTree, const CTree &tree) = 0;
219 virtual void collapseAllTreeNodes(IWidget *tree) = 0;
220 virtual void expandAllTreeNodes(IWidget *tree) = 0;
221 virtual void unselectAllTreeNodes(IWidget *tree) = 0;
222
223 virtual IWidget *createMenuBar() = 0;
224 virtual IWidget *createToolbar() = 0;
225 virtual IWidget *createMenu() = 0;
226 virtual void appendOptionMenuBar(IWidget *menu, const std::string &name, const std::string &icon,
227 CMenuOption *optionRef, IWidget **menuOption) = 0;
228 virtual void appendOptionToolbar(IWidget *toolbar, std::string name, std::string icon, CMenuOption *optionRef,
229 IWidget **toolbarButton) = 0;
230 virtual void appendSubmenu(IWidget *menu, std::string name, IWidget *submenu) = 0;
231 virtual void setImageOption(IWidget *option, const std::string &nameImage) = 0;
232 virtual void setTextOption(IWidget *option, const std::string &text) = 0;
233
234 virtual IWidget *createMenuContext(const std::string &titleMenu) = 0;
235 virtual void appendOptionMenuContext(IWidget *menuContext, const std::string &textOption,
236 uint32_t argbColorBackground, const std::string &nameImageOpt,
237 AbstractClickComponentGUI *componentOption, IWidget **menuOption) = 0;
238 virtual void appendMsgStateMenuContext(IWidget *menuContext, const CTxtColor &txtColor) = 0;
239 virtual void showMenuContext(IWidget *compDialogFather, IWidget **menuContext, double x, double y) = 0;
240
241 virtual IWidget *createPickerFileChooser(const std::string &fileNameOpt, bool isFile,
242 const std::vector<std::string> &namePattern,
243 AbstractComponentGUI *component) = 0;
244 virtual std::string getFileChoose(IWidget *compFrame) = 0;
245
247 virtual void resetProgressBar(IWidget *progressBar) = 0;
248 virtual void setProgressBarPercentage(IWidget *progressBar, double percentage) = 0;
249 virtual void showProgressBarText(IWidget *progressBar, std::string text, bool showText) = 0;
250
251 virtual void getSizeScreen(int32_t *xSizeScreen, int32_t *ySizeScreen) = 0;
252
255
256 virtual IWidget *createSpinner() = 0;
257 virtual void setSpinnerState(IWidget *spinner, bool start) = 0;
258
259 virtual IWidget *createTabs(const std::string &titleTabs, AbstractComponentGUI *componentTabs) = 0;
260 virtual void addTab(IWidget *componentTabs, const std::string &nameTab, IWidget *tab) = 0;
261 virtual void addTabTitleComponent(IWidget *componentTabs, uint64_t indexTab, IWidget *titleComponent) = 0;
262 virtual uint64_t getTab(IWidget *componentTabs) = 0;
263 virtual void setTab(IWidget *componentTabs, uint64_t indexTab) = 0;
264 virtual void setColorTab(IWidget *tab, std::string_view nameTab, std::optional<iv::types::color> colorARGB) = 0;
265 virtual void setColorTabText(IWidget *tab, std::string_view nameTab, std::optional<iv::types::color> colorARGB) = 0;
266 virtual void setTabBlinking(IWidget *tab, std::string_view nameTab, bool isBlinking) = 0;
267 virtual void setTabBlinkingColor(IWidget *tab, std::string_view nameTab,
268 std::optional<iv::types::color> colorARGB) = 0;
269 virtual void setFirstTab() = 0;
270
271 virtual void addTimer(IWidget *widget, uint64_t timeoutMilliseconds, IListenerTimer *rcpTimer) = 0;
272
273 virtual void displayPopOver(IWidget *widget, iv::types::milliseconds timeout, std::string_view message) = 0;
274
275 virtual void grabFocusWidget(IWidget *widget) = 0;
276 virtual void setNameWidget(IWidget *widget, const std::string &name) = 0;
277 virtual void getSizeWidget(IWidget *widget, double *sizeX, double *sizeY) const = 0;
278 virtual void setActiveWidget(IWidget *widget, bool isActive) = 0;
279 virtual void setAlignmentWidget(IWidget *widget, CEnumComponentsGUI::EAlignmentHorizontal alignmentHorizontal,
280 CEnumComponentsGUI::EAlignmentVertical alignmentVertical) = 0;
281 virtual void setMinimumSizeWidget(IWidget *widget, iv::types::width sizeX, iv::types::height sizeY) = 0;
282 virtual void setMaximumWidthWidget(IWidget *widget, iv::types::width sizeX) = 0;
283 virtual void setMaximumHeightWidget(IWidget *widget, iv::types::height sizeY) = 0;
284 virtual void setTooltip(IWidget *widget, std::string text) = 0;
285 virtual void setVisibleWidget(IWidget *widget, bool isVisible) = 0;
286 virtual void widgetRefSink(IWidget *widget) = 0;
287 virtual void widgetRef(IWidget *widget) = 0;
288 virtual void widgetUnRef(IWidget *widget) = 0;
289
290 virtual void registerWorkspace(CWorkspace *workspace, std::string id, std::string title,
291 std::vector<AbstractView *> views, std::vector<IWidget *> **widgets) = 0;
292 virtual void addViewToWorkspace(std::string idWorkspace, AbstractView *viewAdded, IWidget **componentView) = 0;
293 virtual void changeViewWorkspace(const std::string &id, uint64_t indView, IWidget *component) = 0;
294 virtual void updateViewWorkspace(const std::string &id, uint64_t indView, IWidget *component) = 0;
295 virtual uint64_t getCurrentView(const std::string &id) = 0;
296};
297
298#endif /* LIBS_GUI_ICOMPONENTSGUI_HPP_ */
Definition AbstractClickComponentGUI.hpp:10
Definition AbstractComponentGUI.hpp:30
Definition AbstractLayout.hpp:11
Definition AbstractSelectionComponent.hpp:10
Definition AbstractSheetModel.hpp:17
Definition AbstractView.hpp:11
Definition CAttrColorComp.hpp:10
Definition CCanvas.hpp:15
eType
Definition CEnumCommon.hpp:27
EDialogButtons
Definition CEnumComponentsGUI.hpp:39
EAlignmentHorizontal
Definition CEnumComponentsGUI.hpp:8
EMessageType
Definition CEnumComponentsGUI.hpp:74
EAlignmentVertical
Definition CEnumComponentsGUI.hpp:16
EImagePosition
Definition CEnumComponentsGUI.hpp:81
EDialogResponse
Definition CEnumComponentsGUI.hpp:53
EImageSize
Definition CEnumComponentsGUI.hpp:89
Definition CGooCanvas.hpp:19
Definition CIndicator.hpp:10
Definition CList.hpp:15
Definition CMenuOption.hpp:10
Definition CTree.hpp:10
Definition CTxtColor.hpp:10
Definition CWorkspace.hpp:31
Definition IComponentsGUI.hpp:37
virtual void addTabTitleComponent(IWidget *componentTabs, uint64_t indexTab, IWidget *titleComponent)=0
virtual void setLabelStyle(IWidget *label, iv::gui::eLabelStyle labelStyle)=0
virtual void setMaximumHeightWidget(IWidget *widget, iv::types::height sizeY)=0
virtual void closeDialogRecursively(IWidget **dialog)=0
virtual void setWidgetIntoGrid(IWidget *layoutGrid, IWidget *widgetToAdd, uint64_t indRow, uint64_t indColumn)=0
virtual void addIndicator(IWidget *indicators, CIndicator *indicatorRef)=0
virtual IWidget * createProgressBar()=0
virtual IWidget * createIndicators()=0
virtual uint32_t getColorSelectedInColorButton(IWidget *buttonColor)=0
virtual void setImageOption(IWidget *option, const std::string &nameImage)=0
virtual void setActiveSheetCell(IWidget *sheet, uint32_t row, uint32_t column, bool scrollToCell)=0
virtual IWidget * createColorButton(iv::types::color colorRGB)=0
virtual void joinRadioButtonToGroup(IWidget *button, IWidget *sourceGroupButton)=0
virtual void expandAllTreeNodes(IWidget *tree)=0
virtual void getSizeWidget(IWidget *widget, double *sizeX, double *sizeY) const =0
virtual void setDialogCanBeClosed(IWidget **dialog, bool canBeClosed)=0
virtual void queueResizeWidget(IWidget *widget)=0
virtual IWidget * createCheckButton(std::string text, AbstractClickComponentGUI *checkButton, bool isActive)=0
virtual void setLabelFontHeight(IWidget *label, double fontHeight)=0
virtual void reFilterList(IWidget *compList)=0
virtual bool setSheetColumnsVisibility(IWidget *sheet, const iv::gui::sheets::ColumnsDefinitions &columnDefinitions)=0
virtual void setTab(IWidget *componentTabs, uint64_t indexTab)=0
virtual void removeColumnFromSheet(IWidget *sheet, uint32_t columnPositionReference)=0
virtual void setTooltipSheetCell(IWidget *sheet, uint32_t row, uint32_t column, const std::string &text)=0
virtual IWidget * createList(CList &list, IFilterModel *filter, bool isMultipleSelection, bool requestMinSizeForTexts)=0
virtual IWidget * createScrolledWindow()=0
virtual void setTextSheetCell(IWidget *sheet, uint32_t row, uint32_t column, const std::string &text)=0
virtual void setCSSClassToSheetRow(IWidget *sheet, const std::string &cssClass, uint32_t row)=0
virtual void appendOptionMenuBar(IWidget *menu, const std::string &name, const std::string &icon, CMenuOption *optionRef, IWidget **menuOption)=0
virtual void setTitleTextSheetCell(IWidget *sheet, uint32_t row, const std::string &text)=0
virtual iv::types::Size getGooCanvasSize(IWidget *canvas)=0
virtual IWidget * createMenuBar()=0
virtual iv::types::Size screenSize()=0
virtual void displayPopOver(IWidget *widget, iv::types::milliseconds timeout, std::string_view message)=0
virtual void removeRowFromSheet(IWidget *sheet, uint32_t rowPositionReference)=0
virtual bool getSheetSelectedRows(IWidget *sheet, std::vector< uint32_t > *selectedRows) const =0
virtual void setMinimumSizeWidget(IWidget *widget, iv::types::width sizeX, iv::types::height sizeY)=0
virtual void widgetUnRef(IWidget *widget)=0
virtual IWidget * createNotificationIndicator(const std::weak_ptr< iv::diamar::INotificationIndicator > &notificationIndicator, IWidget *notificationPanelWidget)=0
virtual void appendOptionMenuContext(IWidget *menuContext, const std::string &textOption, uint32_t argbColorBackground, const std::string &nameImageOpt, AbstractClickComponentGUI *componentOption, IWidget **menuOption)=0
virtual void addTab(IWidget *componentTabs, const std::string &nameTab, IWidget *tab)=0
virtual void updateList(IWidget *compList, const CList &list)=0
virtual IWidget * createSeparatorHorizontal()=0
virtual bool setSheetRowsVisibility(IWidget *sheet, const iv::gui::sheets::RowsDefinitions &rowDefinitions)=0
virtual bool attachToSheetRowTitle(IWidget *sheet, IWidget *widgetToAttach, uint32_t row)=0
virtual uint64_t getCurrentView(const std::string &id)=0
virtual void setTooltipToSheetRow(IWidget *sheet, std::shared_ptr< AbstractSheetModel > model, const std::string &tooltip, uint32_t row)=0
virtual IWidget * createInfoBar(AbstractComponentGUI *componentInfoBar, bool displayStatusCircle)=0
virtual void removeComboBoxOptionByIndex(IWidget *comboBoxText, uint32_t index)=0
virtual void initApplication(int32_t argc, char **argv)=0
virtual void removeAllComboBoxOptions(IWidget *comboBoxText)=0
virtual IWidget * createFrameBin(const std::string &label)=0
virtual IWidget * createLayoutVertical(uint16_t spacing, std::optional< AbstractLayout * > layout)=0
virtual void addChildToPaned(IWidget *panedWidget, IWidget *childWidget, bool firstWidget, bool resize, bool shrink)=0
virtual void setFilter(IWidget *compList, IFilterModel *filter)=0
virtual void setLabelSpacing(IWidget *label, double spacing)=0
virtual void unselectAllTreeNodes(IWidget *tree)=0
virtual void setTabBlinking(IWidget *tab, std::string_view nameTab, bool isBlinking)=0
virtual void setColorTab(IWidget *tab, std::string_view nameTab, std::optional< iv::types::color > colorARGB)=0
virtual void setTitleWithSubTitleApplication(const std::string &subTitle)=0
virtual void setTooltip(IWidget *widget, std::string text)=0
virtual IWidget * createButton(AbstractClickComponentGUI *button, std::string text, std::optional< iv::ui::resources::ImageResource > resourceOpt, iv::gui::eButtonBlinkType blinkType, CEnumComponentsGUI::EImagePosition iconPosition, CEnumComponentsGUI::EImageSize iconSize)=0
virtual void setNameWidget(IWidget *widget, const std::string &name)=0
virtual void closeDialogNonModal(IWidget **dialog)=0
virtual IWidget * createMenuContext(const std::string &titleMenu)=0
virtual void addColumnToSheet(IWidget *sheet, AbstractComponentGUI *sheetComponent, uint32_t columnPositionReference, const std::string &columnTitle, const std::string &columnTooltip)=0
virtual bool showMessageQuestion(IWidget *compDialogFather, const std::string &msgQuestion, const std::string &panelTitle)=0
virtual void addWidgetIntoEndLayout(IWidget *layout, IWidget *widgetToAdd, bool expand, bool fill, iv::types::padding padding)=0
virtual void setInfoBarErrorMessage(IWidget *infoBar, std::string message)=0
virtual void setInfoBarWarningMessage(IWidget *infoBar, std::string message)=0
virtual IWidget * createDialog(std::string title, CEnumComponentsGUI::EDialogButtons buttons, bool isModal, bool isTransientFor, bool isResizable, IWidget *dialogContent, IWidget *componentDialogFather, AbstractComponentGUI *componentArea)=0
virtual void setOptionSelectedComboBox(IWidget *compBox, int32_t option)=0
virtual IWidget * createCanvas(CCanvas *canvas, iv::types::color colorRGBBackground)=0
virtual void setDialogPosition(IWidget *dialog, double posX, double posY, unsigned char justify)=0
virtual void updateAttrColor(IWidget *component, CAttrColorComp *attrColor)=0
virtual void pendingEvents()=0
virtual void setMaximumWidthWidget(IWidget *widget, iv::types::width sizeX)=0
virtual bool clearRowsSelected(IWidget *compList)=0
virtual void showMenuContext(IWidget *compDialogFather, IWidget **menuContext, double x, double y)=0
virtual IWidget * createTree(CTree &tree, IFilterModel *filter, AbstractComponentGUI *edit, bool showHeader, bool canSelectRow)=0
virtual void grabFocusWidget(IWidget *widget)=0
virtual IWidget * createTabs(const std::string &titleTabs, AbstractComponentGUI *componentTabs)=0
virtual void setSliderDisplayValue(IWidget *slider, bool displayValue)=0
virtual void collapseAllTreeNodes(IWidget *tree)=0
virtual void constructSheet(IWidget *sheet, std::shared_ptr< AbstractSheetModel > model)=0
virtual IWidget * createSpinner()=0
virtual IWidget * createSlider(iv::types::Range< double > valueRange, bool isOrientationHorizontal, uint64_t steps, AbstractComponentGUI *compSlider)=0
virtual void appendSubmenu(IWidget *menu, std::string name, IWidget *submenu)=0
virtual IWidget * createComboBoxText(AbstractSelectionComponent *component, std::vector< std::string > optionsList, int32_t indSelected, bool withEntry)=0
virtual ~IComponentsGUI()=default
virtual void visibleComponent(IWidget *component, bool isVisible)=0
virtual void changeViewWorkspace(const std::string &id, uint64_t indView, IWidget *component)=0
virtual IWidget * createMenu()=0
virtual bool attachToSheetRowsTitles(AbstractComponentGUI *sheet, const std::vector< IWidget * > &widgetsToAttach)=0
virtual void setActivateCheckButton(IWidget *m_widget, AbstractClickComponentGUI *checkButton, bool value)=0
virtual void freezeSheet(IWidget *sheet)=0
virtual void resetProgressBar(IWidget *progressBar)=0
virtual IWidget * createAssistant()=0
virtual void setTabBlinkingColor(IWidget *tab, std::string_view nameTab, std::optional< iv::types::color > colorARGB)=0
virtual void minimizeApplication()=0
virtual void setInfoBarInfoMessage(IWidget *infoBar, std::string message)=0
virtual void addWidgetIntoStartLayout(IWidget *layout, IWidget *widgetToAdd, bool expand, bool fill, iv::types::padding padding)=0
virtual std::string getFileChoose(IWidget *compFrame)=0
virtual uint64_t getTab(IWidget *componentTabs)=0
virtual IWidget * createLayout(IWidget *componentLayer)=0
virtual bool setIndRowSelected(IWidget *compList, uint64_t indexSelect)=0
virtual void setVisibleWidget(IWidget *widget, bool isVisible)=0
virtual void appendOptionToolbar(IWidget *toolbar, std::string name, std::string icon, CMenuOption *optionRef, IWidget **toolbarButton)=0
virtual void addViewToWorkspace(std::string idWorkspace, AbstractView *viewAdded, IWidget **componentView)=0
virtual void updateTree(IWidget *compTree, const CTree &tree)=0
virtual void widgetRefSink(IWidget *widget)=0
virtual IWidget * createRadioButton(std::string text, AbstractClickComponentGUI *button)=0
virtual bool attachToSheet(IWidget *sheet, std::shared_ptr< AbstractSheetModel > model, IWidget *widgetToAttach, uint32_t row, uint32_t column)=0
virtual void setSliderValue(IWidget *slider, double value)=0
virtual void thawSheet(IWidget *sheet)=0
virtual void appendMsgStateMenuContext(IWidget *menuContext, const CTxtColor &txtColor)=0
virtual IWidget * createLayoutGrid(uint64_t numRows, uint64_t numCols, unsigned short spaceBetweenRows, unsigned short spaceBetweenColumns, bool isCompact)=0
virtual void setFirstTab()=0
virtual void addRowToSheet(IWidget *sheet, uint32_t rowPositionReference)=0
virtual bool getActivateCheckButton(IWidget *m_widget)=0
virtual void addTimer(IWidget *widget, uint64_t timeoutMilliseconds, IListenerTimer *rcpTimer)=0
virtual void deleteSheet(IWidget *sheet)=0
virtual void removeAllRowsFromSheet(IWidget *sheet)=0
virtual void acceptDialog(IWidget **dialog, AbstractComponentGUI *componentArea)=0
virtual IWidget * createPaned(bool horizontalOrientation, int32_t dividerPosition)=0
virtual IWidget * createEntry(const std::string &text, bool isPassword, bool isSizeDefined, unsigned short numCharSize, bool hasNumMaxChar, unsigned short numMaxChar, const std::vector< std::string > &wordsAutocompletion, AbstractComponentGUI *edit)=0
virtual void addWidgetToContainer(IWidget *containerWidget, IWidget *widgetToSet)=0
virtual void setSpinnerState(IWidget *spinner, bool start)=0
virtual void redrawGooCanvas(IWidget *canvas)=0
virtual void widgetRef(IWidget *widget)=0
virtual void setTextOption(IWidget *option, const std::string &text)=0
virtual IWidget * createCalendar(unsigned short day, unsigned short month, unsigned short year)=0
virtual void showDialogNonModal(IWidget *dialog)=0
virtual void setColorTabText(IWidget *tab, std::string_view nameTab, std::optional< iv::types::color > colorARGB)=0
virtual IWidget * createApplication()=0
virtual void setLabelColor(IWidget *label, iv::types::color color)=0
virtual IWidget * createDialogNonModal(std::string title, bool isResizable, IWidget *dialogContent, IWidget *componentDialogFather, AbstractComponentGUI *componentArea, const std::optional< std::function< bool()> > &closeDialogHandler)=0
virtual void insertComboBoxTextOption(IWidget *comboBoxText, std::string option, int32_t insertPosition)=0
virtual void setLabelText(IWidget *label, std::string_view text)=0
virtual void updateCanvas(IWidget *canvas)=0
virtual std::string getEntryText(IWidget *entry)=0
virtual void showMessage(CEnumComponentsGUI::EMessageType messageType, IWidget *compDialogFather, const std::string &msgInform, const std::string &title)=0
virtual void closeDialog(IWidget **dialog)=0
virtual IWidget * createPickerFileChooser(const std::string &fileNameOpt, bool isFile, const std::vector< std::string > &namePattern, AbstractComponentGUI *component)=0
virtual void loadCSS(const std::string &cssFilePath)=0
virtual IWidget * createToolbar()=0
virtual void registerWorkspace(CWorkspace *workspace, std::string id, std::string title, std::vector< AbstractView * > views, std::vector< IWidget * > **widgets)=0
virtual std::shared_ptr< iv::ui::graphics::Image > getImage(iv::ui::resources::ImageResource resource)=0
virtual void getSizeScreen(int32_t *xSizeScreen, int32_t *ySizeScreen)=0
virtual void getDateCalendar(IWidget *calendar, unsigned short *day, unsigned short *month, unsigned short *year)=0
virtual double getSliderValue(IWidget *slider)=0
virtual void setDisableSheetCell(IWidget *sheet, uint32_t row, uint32_t column)=0
virtual void showDialog(IWidget **dialog, CEnumComponentsGUI::EDialogResponse *dialogResponseOpt)=0
virtual void setActiveWidget(IWidget *widget, bool isActive)=0
virtual std::set< uint64_t > getIndRowsSelected(IWidget *compList)=0
virtual void changeContainedWidget(IWidget *containerWidget, IWidget *oldWidget, IWidget *newWidget)=0
virtual void setProgressBarPercentage(IWidget *progressBar, double percentage)=0
virtual IWidget * createLayoutHorizontal(uint16_t spacing, std::optional< AbstractLayout * > layout=std::nullopt)=0
virtual std::string getOptionSelectedComboBox(IWidget *compBox)=0
virtual void removeWidgetFromContainer(IWidget *containerWidget, IWidget *widgetToRemove)=0
virtual bool getIndRowSelected(IWidget *compList, uint64_t *indexSelectOpt)=0
virtual void activeComponent(IWidget *component, bool isActive)=0
virtual IWidget * createSheet(AbstractComponentGUI *sheet, std::shared_ptr< AbstractSheetModel > model, bool showRowTitles, bool isMultipleSelection)=0
virtual IWidget * createSeparatorVertical()=0
virtual void setLabelResourceImage(IWidget *label, const iv::ui::resources::ImageResource &resource)=0
virtual void setAlignmentWidget(IWidget *widget, CEnumComponentsGUI::EAlignmentHorizontal alignmentHorizontal, CEnumComponentsGUI::EAlignmentVertical alignmentVertical)=0
virtual void runApplication(std::string_view titleApplication, std::string_view pathIconApplication, const iv::ui::ApplicationWidgets &applicationWidgets)=0
virtual void updateButton(IWidget *button, std::string text, std::optional< iv::ui::resources::ImageResource > resource, iv::gui::eButtonBlinkType blinkType, CEnumComponentsGUI::EImageSize sizeImage)=0
virtual void removeAllColumnsFromSheet(IWidget *sheet)=0
virtual IWidget * createLabel(std::string text, const std::optional< iv::ui::resources::ImageResource > &resourceOpt, double spacing, CEnumCommon::eType type)=0
virtual void showProgressBarText(IWidget *progressBar, std::string text, bool showText)=0
virtual void setEntryText(IWidget *entry, const std::string &text)=0
virtual IWidget * createGooCanvas(CGooCanvas *canvas, iv::types::color colorRGBBackground)=0
virtual void updateViewWorkspace(const std::string &id, uint64_t indView, IWidget *component)=0
Definition IFilterModel.hpp:5
Definition IListenerTimer.hpp:5
Definition IWidget.hpp:5
Definition ImageResource.hpp:15
std::map< ColumnId, ColumnDefinition > ColumnsDefinitions
Definition structs.hpp:84
std::map< RowId, RowDefinition > RowsDefinitions
Definition structs.hpp:85
eLabelStyle
Definition enums.hpp:14
eButtonBlinkType
Definition enums.hpp:8
double height
Definition types.hpp:14
uint64_t milliseconds
Definition types.hpp:22
double padding
Definition types.hpp:16
double width
Definition types.hpp:23
uint32_t color
Definition types.hpp:12
Definition types.hpp:30
Definition types.hpp:151
Definition structs.hpp:20