1#ifndef IV_SRC_APP_APPLICATIONGUI_HPP_
2#define IV_SRC_APP_APPLICATIONGUI_HPP_
24 explicit ApplicationGui(std::string_view name, std::string_view icon);
33 void addIndicator(std::string_view title,
bool resizeDialog, std::unique_ptr<IIndicator> &&indicator)
const;
49 [[nodiscard]] std::string_view
getName()
const;
50 [[nodiscard]] std::string_view
getTitle()
const;
53 [[nodiscard]]
const std::shared_ptr<IComponentsGUI> &
getFrameRef()
const;
54 [[nodiscard]]
const std::shared_ptr<CIndicators> &
getIndicators()
const;
55 [[nodiscard]]
const std::shared_ptr<CMenu> &
getMenu()
const;
63 virtual bool starting(
const std::shared_ptr<AbstractProgress> &progress,
CDialog *dlgFather);
64 virtual void ending(
const std::shared_ptr<AbstractProgress> &progress,
CDialog *dlgFather);
65 void runGUI(
const std::shared_ptr<IComponentsGUI> &frame, int32_t argc,
char *argv[]);
68 void setIcon(std::string_view icon);
69 void setCSS(std::string_view css);
Definition CDialog.hpp:21
Definition CIndicator.hpp:10
Definition CWorkspace.hpp:31
Definition ApplicationGui.hpp:19
bool closeAllDialogsState() const
Definition ApplicationGui.cpp:226
std::shared_ptr< CMenu > m_menu
Definition ApplicationGui.hpp:83
void addWorkspace(CWorkspace **workspace)
Definition ApplicationGui.cpp:145
std::string m_icon
Definition ApplicationGui.hpp:77
static ApplicationGui * getApplicationGui()
Definition ApplicationGui.cpp:73
std::optional< iv::gui::HeaderNavigableOptions > m_headerNavigableOptions
Definition ApplicationGui.hpp:90
const std::shared_ptr< CIndicators > & getIndicators() const
Definition ApplicationGui.cpp:410
void runDialogIndicator(double xPos, double yPos, unsigned char justify, CIndicator *indicator)
Definition ApplicationGui.cpp:166
void runGUI(const std::shared_ptr< IComponentsGUI > &frame, int32_t argc, char *argv[])
Definition ApplicationGui.cpp:245
const std::unique_ptr< CInfoBar > & getInfoBar()
Definition ApplicationGui.cpp:372
std::optional< iv::gui::FooterNavigableOptions > m_navigableOptions
Definition ApplicationGui.hpp:91
CDialog * getDialogApplicationRef() const
Definition ApplicationGui.cpp:367
virtual bool start()
Definition ApplicationGui.cpp:176
std::unique_ptr< std::vector< CWorkspace * > > m_workspaces
Definition ApplicationGui.hpp:93
std::weak_ptr< iv::appdiamar::IApplicationController > getApplicationController() const override
Definition ApplicationGui.cpp:85
iv::ui::theme::ThemesManager m_themesManager
Definition ApplicationGui.hpp:99
ApplicationGui & operator=(const ApplicationGui &other)=delete
void updateWorkSpaces()
Definition ApplicationGui.cpp:392
void addSubMenu(std::string_view name, CMenu **submenu)
Definition ApplicationGui.cpp:140
virtual bool starting(const std::shared_ptr< AbstractProgress > &progress, CDialog *dlgFather)
Definition ApplicationGui.cpp:333
std::string m_title
Definition ApplicationGui.hpp:76
ApplicationGui & operator=(ApplicationGui &&other)=delete
std::shared_ptr< iv::diamar::INotificationIndicator > m_notificationIndicator
Definition ApplicationGui.hpp:81
void setCSS(std::string_view css)
Definition ApplicationGui.cpp:356
void addIndicator(std::string_view title, bool resizeDialog, std::unique_ptr< IIndicator > &&indicator) const
Definition ApplicationGui.cpp:90
std::optional< std::string > m_headerTitle
Definition ApplicationGui.hpp:86
const std::optional< iv::gui::HeaderNavigableOptions > & getHeaderNavigableOptions() const
Definition ApplicationGui.cpp:377
const std::shared_ptr< IComponentsGUI > & getFrameRef() const
Definition ApplicationGui.cpp:405
std::string_view getName() const
Definition ApplicationGui.cpp:231
std::shared_ptr< IComponentsGUI > m_frameRef
Definition ApplicationGui.hpp:97
iv::app::eExitMode & exitMode()
Definition ApplicationGui.cpp:387
ApplicationGui(const ApplicationGui &other)=delete
void endApplication()
Definition ApplicationGui.cpp:151
iv::app::eState & state()
Definition ApplicationGui.cpp:382
void setIcon(std::string_view icon)
Definition ApplicationGui.cpp:350
bool canEndApplication()
Definition ApplicationGui.cpp:161
void addOptionToSubMenu(CMenu *submenu, std::string_view nameOption, AbstractMenuOption **option)
Definition ApplicationGui.cpp:96
void addOptionMenuWithImage(std::string_view nameOption, std::string_view nameImage, bool isToolbar, AbstractMenuOption **option)
Definition ApplicationGui.cpp:110
virtual bool canEnd(CDialog *dlgFather)
Definition ApplicationGui.cpp:362
void updateAppTitle()
Definition ApplicationGui.cpp:420
virtual void ending(const std::shared_ptr< AbstractProgress > &progress, CDialog *dlgFather)
Definition ApplicationGui.cpp:241
std::unique_ptr< CInfoBar > m_infoBar
Definition ApplicationGui.hpp:80
std::shared_ptr< CIndicators > m_indicators
Definition ApplicationGui.hpp:84
const std::shared_ptr< CMenu > & getMenu() const
Definition ApplicationGui.cpp:415
void addOptionWithImageToSubMenu(CMenu *submenu, std::string_view nameOption, std::string_view nameImage, bool isToolbar, AbstractMenuOption **option)
Definition ApplicationGui.cpp:123
CDialog * m_dialogApplicationRef
Definition ApplicationGui.hpp:95
void update()
Definition ApplicationGui.cpp:213
ApplicationGui(ApplicationGui &&other)=default
std::string_view getTitle() const
Definition ApplicationGui.cpp:236
std::shared_ptr< iv::diamar::IClockNotification > m_clockNotification
Definition ApplicationGui.hpp:82
std::optional< std::set< std::string > > m_possibleHeaderTitle
Definition ApplicationGui.hpp:88
void setModelApplication(iv::model::IModel **modelApplication)
Definition ApplicationGui.cpp:339
CWorkspace * getCurrentWorkspaceRef() const
Definition ApplicationGui.cpp:400
std::string m_css
Definition ApplicationGui.hpp:78
CWorkspace * m_currentWorkspaceRef
Definition ApplicationGui.hpp:94
Definition Application.hpp:11
Definition ThemesManager.hpp:19
eState
Definition enums.hpp:20
eExitMode
Definition enums.hpp:13
Definition Application.cpp:6