Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CWorkspace.hpp
Go to the documentation of this file.
1#ifndef LIBS_APP_CWORKSPACE_HPP_
2#define LIBS_APP_CWORKSPACE_HPP_
3
7#include "ui/gui/CMenu.hpp"
8
9#include <memory>
10#include <string>
11#include <vector>
12
14{
15 SWorkspaceData() = delete;
16 SWorkspaceData(std::string id, std::string title);
17 SWorkspaceData(const SWorkspaceData &other) = delete;
18 SWorkspaceData(const SWorkspaceData &&other) = delete;
20
21 SWorkspaceData &operator=(const SWorkspaceData &other) = delete;
23
24 std::string m_id;
25 std::string m_title;
26
27 std::vector<AbstractView *> m_views;
28};
29
31{
32public:
33 CWorkspace() = delete;
34 CWorkspace(std::string id, std::string title);
35 CWorkspace(const CWorkspace &other) = delete;
36 CWorkspace &operator=(const CWorkspace &other) = delete;
37 CWorkspace &operator=(CWorkspace &&other) = delete;
38 CWorkspace(CWorkspace &&other) = delete;
39 virtual ~CWorkspace();
40
41 void addView(AbstractView **view) const;
42
43 void registerInFrame(CDialog *dialogFatherRef, const std::shared_ptr<CIndicators> &indicatorsRef,
44 const std::shared_ptr<CMenu> &menuRef);
45
46 void runOption(CMenuOption *optionMenuRef, const std::shared_ptr<AbstractProgress> &progressRef,
47 AbstractMenuOption *option, CDialog *dlgFather, const std::shared_ptr<CIndicators> &indicatorsRef,
48 const std::shared_ptr<CMenu> &menuRef, bool &isReloadApplicationOut) const;
49
50 void updateWorkspace(CDialog *dlgFather, const std::shared_ptr<CIndicators> &indicatorsRef,
51 const std::shared_ptr<CMenu> &menu) const;
52
53 void removeView(uint64_t indView) const;
54
55 void navigateToView(AbstractView *view);
57
58 [[nodiscard]] PanelsEditor getPanelsEditor() const;
59
60private:
62 std::optional<AbstractView *> m_pendingNavigateView;
63};
64
65#endif /* LIBS_APP_CWORKSPACE_HPP_ */
Definition AbstractMenuOption.hpp:7
Definition AbstractView.hpp:11
Definition CDialog.hpp:21
Definition CMenuOption.hpp:10
Definition CWorkspace.hpp:31
CWorkspace(CWorkspace &&other)=delete
CWorkspace(const CWorkspace &other)=delete
CWorkspace()=delete
void removeView(uint64_t indView) const
Definition CWorkspace.cpp:290
void registerInFrame(CDialog *dialogFatherRef, const std::shared_ptr< CIndicators > &indicatorsRef, const std::shared_ptr< CMenu > &menuRef)
Definition CWorkspace.cpp:298
CWorkspace & operator=(const CWorkspace &other)=delete
void navigateToView(AbstractView *view)
Navigate to a view.
Definition CWorkspace.cpp:368
SWorkspaceData * m_workspaceData
Definition CWorkspace.hpp:61
PanelsEditor getPanelsEditor() const
Definition CWorkspace.cpp:393
void updateWorkspace(CDialog *dlgFather, const std::shared_ptr< CIndicators > &indicatorsRef, const std::shared_ptr< CMenu > &menu) const
Definition CWorkspace.cpp:352
void addView(AbstractView **view) const
Definition CWorkspace.cpp:277
std::optional< AbstractView * > m_pendingNavigateView
Definition CWorkspace.hpp:62
void runOption(CMenuOption *optionMenuRef, const std::shared_ptr< AbstractProgress > &progressRef, AbstractMenuOption *option, CDialog *dlgFather, const std::shared_ptr< CIndicators > &indicatorsRef, const std::shared_ptr< CMenu > &menuRef, bool &isReloadApplicationOut) const
Definition CWorkspace.cpp:312
CWorkspace & operator=(CWorkspace &&other)=delete
virtual ~CWorkspace()
Definition CWorkspace.cpp:271
void navigateToPendentView()
Definition CWorkspace.cpp:377
Definition PanelsEditor.hpp:18
Definition CWorkspace.hpp:14
~SWorkspaceData()
Definition CWorkspace.cpp:256
std::string m_id
Definition CWorkspace.hpp:24
SWorkspaceData()=delete
SWorkspaceData & operator=(const SWorkspaceData &other)=delete
std::vector< AbstractView * > m_views
Definition CWorkspace.hpp:27
SWorkspaceData & operator=(SWorkspaceData &&other)=delete
SWorkspaceData(const SWorkspaceData &&other)=delete
std::string m_title
Definition CWorkspace.hpp:25
SWorkspaceData(const SWorkspaceData &other)=delete