ADTF Qt5
Loading...
Searching...
No Matches
qtxsystem_intf.h
Go to the documentation of this file.
1
7
8/*
9 * This file depends on Qt which is licensed under LGPLv3.
10 * See ADTF_DIR/3rdparty/qt5 and doc/license for detailed information.
11 */
12#pragma once
13#include <adtf_utils.h>
14#include <adtfucom3/adtf_ucom3.h>
15
16#include <qwidget.h>
17
21#define CID_ADTF_XSYSTEM "qt_xsystem.ui_service.adtf.cid"
22
23namespace adtf
24{
25namespace ui
26{
27namespace ant
28{
29
30#ifdef CreateWindow
31 #undef CreateWindow
32#endif
33
42class IQtXSystem : public adtf::ucom::ant::IObject
43{
44protected:
46 ~IQtXSystem() = default;
47
48public:
50 ADTF_IID(IQtXSystem, "qt_xsystem.ant.services.adtf.iid");
51
55 class IWindow
56 {
57 protected:
58 // protected destruct
59 ~IWindow() = default;
60
61 public:
76 virtual tResult Create(const char* strWindowID, QWidget& oParentWidget) = 0;
92 virtual tResult Destroy(QWidget& oParentWidget) = 0;
93
105 virtual tResult OnIdle() = 0;
106
115 virtual tResult OnTimer() = 0;
116 };
117
131 virtual tResult CreateWindow(IWindow& oWindow) = 0;
132
148 virtual tResult DestroyWindow(IWindow& oWindow) = 0;
149};
150} // namespace ant
151
152namespace osborn
153{
154
159{
160protected:
162 ~IQtXSystem() = default;
163
164public:
166 ADTF_IID(IQtXSystem, "qt_xsystem.osborn.services.adtf.iid");
167
196
198
212 virtual tResult CreateWindow(IWindow& oWindow, uint32_t nFlags) = 0;
213};
214
215} // namespace osborn
216
217namespace riddler
218{
219
224{
225protected:
227 ~IQtXSystem() = default;
228
229public:
231 ADTF_IID(IQtXSystem, "qt_xsystem.riddler.services.adtf.iid");
232
252 {
253 protected:
255 ~IWindowState() = default;
256
257 public:
265 virtual QString GetStateIdentifier() const = 0;
297 virtual void OnLoadState(const QString& strStateFolder) = 0;
316 virtual void OnSaveState(const QString& strStateFolder) const = 0;
317 };
318};
319
328QString get_window_state_folder_name(const QString& strSessionDataDir, const QString& strShortPathName);
329
330} // namespace riddler
331
332namespace spider
333{
334
339{
340protected:
342 ~IQtXSystem() = default;
343
344public:
346 ADTF_IID(IQtXSystem, "qt_xsystem.spider.services.adtf.iid");
352 class IHelp
353 {
354 protected:
356 ~IHelp() = default;
357
358 public:
364 virtual QString GetHelpLink() const = 0;
365 };
366};
367
368} // namespace spider
369
370namespace v0
371{
372
375
376} // namespace v0
377
378namespace v1
379{
380
385{
386protected:
388 ~IQtXSystem() = default;
389
390public:
392 ADTF_IID(IQtXSystem, "qt_xsystem.v1.services.adtf.iid");
413 {
414 protected:
416 ~IWindowState() = default;
417
418 public:
431 enum StateFlags : uint32_t
432 {
439 Content = 0x01,
440
447 Layout = 0x02,
448
454 };
455
463 virtual QString GetStateIdentifier() const = 0;
502 virtual void OnLoadState(const QString& strStateFolder, uint32_t ui32LoadStateFlags) = 0;
523 virtual void OnSaveState(const QString& strStateFolder, uint32_t ui32SaveStateFlags) const = 0;
524 };
525};
526
527} // namespace v1
528
529using v1::IQtXSystem;
531
532} // namespace ui
533} // namespace adtf
Definition qtxsystem_intf.h:413
Definition qtxsystem_intf.h:56
virtual tResult Create(const char *strWindowID, QWidget &oParentWidget)=0
Callback which in called within the applications main th thread to create a window.
virtual tResult Destroy(QWidget &oParentWidget)=0
Callback which in called within the applications main th thread to deliver a destroy message to the w...
Interface definition for the ADTF XSystem based on Qt. Use this interface to create your own displays...
Definition qtxsystem_intf.h:43
ADTF_IID(IQtXSystem, "qt_xsystem.ant.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
virtual tResult CreateWindow(IWindow &oWindow)=0
Create and register a window to the XSystem.
~IQtXSystem()=default
protected DTOR
virtual tResult DestroyWindow(IWindow &oWindow)=0
Destroy and unregister a window from the XSystem.
Interface definition for the ADTF XSystem based on Qt. Use this interface to create your own displays...
Definition qtxsystem_intf.h:159
ADTF_IID(IQtXSystem, "qt_xsystem.osborn.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
virtual tResult CreateWindow(IWindow &oWindow, uint32_t nFlags)=0
Create and register a window to the XSystem.
eWindowCreationFlags
Windows creation flags used within CreateWindow.
Definition qtxsystem_intf.h:172
@ WCF_HideOnCloseDestroyOnRemove
This will close the window on "X" and "Close" via menu. An additional "Remove" menu entry will destro...
Definition qtxsystem_intf.h:190
@ WCF_DestroyOnClose
Destroy window and all child widgets when the window is closed.
Definition qtxsystem_intf.h:180
@ WCF_None
no flag set.
Definition qtxsystem_intf.h:176
@ WCF_HasWindowState
Enable the window state calls for IQtXSystem::IWindowState.
Definition qtxsystem_intf.h:185
@ WCF_DockWindowStateOnExport
This requests to save and restore the xsystems dock windows state when exporting/importing.
Definition qtxsystem_intf.h:194
~IQtXSystem()=default
protected DTOR
Definition qtxsystem_intf.h:252
virtual QString GetStateIdentifier() const =0
virtual void OnSaveState(const QString &strStateFolder) const =0
virtual void OnLoadState(const QString &strStateFolder)=0
Interface definition for the ADTF XSystem based on Qt. Use this interface to create your own displays...
Definition qtxsystem_intf.h:224
~IQtXSystem()=default
protected DTOR
ADTF_IID(IQtXSystem, "qt_xsystem.riddler.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
Definition qtxsystem_intf.h:353
virtual QString GetHelpLink() const =0
~IHelp()=default
protected DTOR
Interface definition for the ADTF XSystem based on Qt. Use this interface to create your own displays...
Definition qtxsystem_intf.h:339
~IQtXSystem()=default
protected DTOR
ADTF_IID(IQtXSystem, "qt_xsystem.spider.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
virtual void OnLoadState(const QString &strStateFolder, uint32_t ui32LoadStateFlags)=0
virtual QString GetStateIdentifier() const =0
StateFlags
State flags indicating the reason of the call and folder location within OnLoadState and OnSaveState.
Definition qtxsystem_intf.h:432
@ Content
If state exists restore or save it partially. Content in the meaning of:
Definition qtxsystem_intf.h:439
@ Layout
If state exists update or save layout of existing views only. Layout in the meaning of:
Definition qtxsystem_intf.h:447
@ Interactive
State folder was created on export/import actions by user interaction.
Definition qtxsystem_intf.h:453
~IWindowState()=default
protected DTOR
virtual void OnSaveState(const QString &strStateFolder, uint32_t ui32SaveStateFlags) const =0
Interface definition for the ADTF XSystem based on Qt. Use this interface to create your own displays...
Definition qtxsystem_intf.h:385
ADTF_IID(IQtXSystem, "qt_xsystem.v1.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
~IQtXSystem()=default
protected DTOR
Legacy version namespace for all functionality of the ADTF UI SDK taken over from ADTF v3....
Definition qt_control_metrics.h:23
Legacy version namespace for all functionality of the ADTF UI SDK taken over from ADTF v3....
Definition qt_ui_filter.h:119
QString get_window_state_folder_name(const QString &strSessionDataDir, const QString &strShortPathName)
Get the default window state folder name.
Legacy version namespace for all functionality of the ADTF UI SDK taken over from ADTF v3....
Definition qt_ui_filter.h:239
Namespace for all ui classes and interfaces provided since v1.0.0.
Definition adtfui_pkg.h:13
QString get_window_state_folder_name(const QString &strSessionDataDir, const QString &strShortPathName)
Get the default window state folder name.
Namespace for all functionality provided by ADTF and its SDKs.
Definition adtfui_pkg.h:13