Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
structs.hpp
Go to the documentation of this file.
1#ifndef IV_SRC_UI_STRUCTS_HPP_
2#define IV_SRC_UI_STRUCTS_HPP_
3
5#include "math/structs.hpp"
6#include "ui/enums.hpp"
9#include "ui/gui/IWidget.hpp"
10
11#include <memory>
12#include <optional>
13#include <set>
14#include <string>
15
16namespace iv::ui
17{
18
20{
21 IWidget *mainWindow {nullptr};
22 IWidget *menuBar {nullptr};
23 IWidget *toolbar {nullptr};
24 IWidget *infoBar {nullptr};
25 IWidget *indicators {nullptr};
27
28 std::optional<std::string> headerTitle {std::nullopt};
29 std::optional<std::set<std::string>> possibleHeaderTitle {std::nullopt};
30 std::optional<iv::gui::HeaderNavigableOptions> headerNavigableOptions {std::nullopt};
31 std::optional<iv::gui::FooterNavigableOptions> footerNavigableOptions {std::nullopt};
32 std::weak_ptr<iv::diamar::IClockNotification> clockNotification;
33
35};
36
37namespace SDL
38{
39
41{
42 IWidget *mainWindow {nullptr};
43 IWidget *menuBar {nullptr};
44 IWidget *infoBar {nullptr};
45 IWidget *indicators {nullptr};
47
48 std::optional<std::string> headerTitle;
49 std::optional<std::set<std::string>> possibleHeaderTitle {std::nullopt};
50 std::optional<iv::gui::HeaderNavigableOptions> headerNavigableOptions;
51 std::optional<iv::gui::FooterNavigableOptions> footerNavigableOptions;
52 std::weak_ptr<iv::diamar::IClockNotification> clockNotification;
53
55
57 {
58 return {.mainWindow = applicationWidgets.mainWindow,
59 .menuBar = applicationWidgets.menuBar,
60 .infoBar = applicationWidgets.infoBar,
61 .indicators = applicationWidgets.indicators,
62 .notificationIndicator = applicationWidgets.notificationIndicator,
63 .headerTitle = applicationWidgets.headerTitle,
64 .possibleHeaderTitle = applicationWidgets.possibleHeaderTitle,
65 .headerNavigableOptions = applicationWidgets.headerNavigableOptions,
66 .footerNavigableOptions = applicationWidgets.footerNavigableOptions,
67 .clockNotification = applicationWidgets.clockNotification,
68 .includeDiamar1Functionalities = applicationWidgets.includeDiamar1Functionalities};
69 }
70};
71
72}// namespace SDL
73
74namespace GTK
75{
76
78{
83
85 {
86 return {.mainWindow = applicationWidgets.mainWindow,
87 .menuBar = applicationWidgets.menuBar,
88 .toolbar = applicationWidgets.toolbar,
89 .infoBar = applicationWidgets.infoBar};
90 }
91};
92
93}// namespace GTK
94
95}// namespace iv::ui
96
97#endif//IV_SRC_UI_STRUCTS_HPP_
Definition IWidget.hpp:5
Definition enums.hpp:5
Definition structs.hpp:20
IWidget * menuBar
Definition structs.hpp:22
IWidget * infoBar
Definition structs.hpp:24
std::optional< iv::gui::HeaderNavigableOptions > headerNavigableOptions
Definition structs.hpp:30
IWidget * toolbar
Definition structs.hpp:23
IWidget * indicators
Definition structs.hpp:25
std::optional< std::set< std::string > > possibleHeaderTitle
Definition structs.hpp:29
std::optional< std::string > headerTitle
Definition structs.hpp:28
std::optional< iv::gui::FooterNavigableOptions > footerNavigableOptions
Definition structs.hpp:31
bool includeDiamar1Functionalities
Definition structs.hpp:34
std::weak_ptr< iv::diamar::IClockNotification > clockNotification
Definition structs.hpp:32
IWidget * mainWindow
Definition structs.hpp:21
IWidget * notificationIndicator
Definition structs.hpp:26
Definition structs.hpp:78
IWidget * menuBar
Definition structs.hpp:80
static GtkApplicationWidgets fromApplicationWidgets(const ApplicationWidgets &applicationWidgets)
Definition structs.hpp:84
IWidget * toolbar
Definition structs.hpp:81
IWidget * mainWindow
Definition structs.hpp:79
IWidget * infoBar
Definition structs.hpp:82
Definition structs.hpp:41
IWidget * notificationIndicator
Definition structs.hpp:46
static SdlApplicationWidgets fromApplicationWidgets(const ApplicationWidgets &applicationWidgets)
Definition structs.hpp:56
std::optional< std::string > headerTitle
Definition structs.hpp:48
std::optional< std::set< std::string > > possibleHeaderTitle
Definition structs.hpp:49
std::weak_ptr< iv::diamar::IClockNotification > clockNotification
Definition structs.hpp:52
bool includeDiamar1Functionalities
Definition structs.hpp:54
IWidget * menuBar
Definition structs.hpp:43
std::optional< iv::gui::HeaderNavigableOptions > headerNavigableOptions
Definition structs.hpp:50
IWidget * mainWindow
Definition structs.hpp:42
std::optional< iv::gui::FooterNavigableOptions > footerNavigableOptions
Definition structs.hpp:51
IWidget * indicators
Definition structs.hpp:45
IWidget * infoBar
Definition structs.hpp:44