ADTF  3.18.2
qtxsystem_intf.h
Go to the documentation of this file.
1 
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 
20 #define CID_ADTF_XSYSTEM "qt_xsystem.ui_service.adtf.cid"
21 
22 namespace adtf
23 {
24 namespace ui
25 {
26 namespace ant
27 {
28 
29 #ifdef CreateWindow
30 #undef CreateWindow
31 #endif
32 
43 {
44 protected:
46  ~IQtXSystem() = default;
47 
48 public:
50  ADTF_IID(IQtXSystem, "qt_xsystem.ant.services.adtf.iid");
51 
55  class IWindow
56  {
57  protected:
58  //protected destruct
59  ~IWindow() = default;
60  public:
74  virtual tResult Create(const char* strWindowID,
75  QWidget& oParentWidget) = 0;
89  virtual tResult Destroy(QWidget& oParentWidget) = 0;
90 
102  virtual tResult OnIdle() = 0;
103 
112  virtual tResult OnTimer() = 0;
113  };
114 
127  virtual tResult CreateWindow(IWindow& oWindow) = 0;
128 
142  virtual tResult DestroyWindow(IWindow& oWindow) = 0;
143 };
144 }
145 
146 namespace osborn
147 {
148 
153 {
154 protected:
156  ~IQtXSystem() = default;
157 
158 public:
160  ADTF_IID(IQtXSystem, "qt_xsystem.osborn.services.adtf.iid");
161 
166  {
170  WCF_None = 0x00,
178  WCF_HasWindowState = 0x02
179  };
180 
182 
195  virtual tResult CreateWindow(IWindow& oWindow, uint32_t nFlags) = 0;
196 };
197 
198 } // namespace osborn
199 
200 namespace riddler
201 {
202 
207 {
208 protected:
210  ~IQtXSystem() = default;
211 
212 public:
214  ADTF_IID(IQtXSystem, "qt_xsystem.riddler.services.adtf.iid");
215 
231  {
232  protected:
234  ~IWindowState() = default;
235 
236  public:
243  virtual QString GetStateIdentifier() const = 0;
260  virtual void OnLoadState(const QString& strStateFolder) = 0;
277  virtual void OnSaveState(const QString& strStateFolder) const = 0;
278  };
279 };
280 
287 QString get_window_state_folder_name(const QString& strSessionDataDir, const QString& strShortPathName);
288 
289 } // namespace riddler
290 
291 namespace spider
292 {
293 
298 {
299 protected:
301  ~IQtXSystem() = default;
302 
303 public:
305  ADTF_IID(IQtXSystem, "qt_xsystem.spider.services.adtf.iid");
313  class IHelp
314  {
315  protected:
317  ~IHelp() = default;
318 
319  public:
325  virtual QString GetHelpLink() const = 0;
326  };
327 };
328 
329 } // namespace spider
330 
331 using spider::IQtXSystem;
333 
334 
335 }
336 }
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
Base class for every interface type within the uCOM.
Definition: object_intf.h:31
IWindow interface defintion for to.
virtual tResult Destroy(QWidget &oParentWidget)=0
Callback which in called within the applications main th thread to deliver a destroy message to the w...
virtual tResult OnTimer()=0
Callback for actions within a steady timer.
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 OnIdle()=0
Callback for actions within a idle thread.
Interface definition for the ADTF XSystem based on Qt.
virtual tResult DestroyWindow(IWindow &oWindow)=0
Destroy and unregister a window from the XSystem.
virtual tResult CreateWindow(IWindow &oWindow)=0
Create and register a window to the XSystem.
~IQtXSystem()=default
protected DTOR
ADTF_IID(IQtXSystem, "qt_xsystem.ant.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
Interface definition for the ADTF XSystem based on Qt.
eWindowCreationFlags
Windows creation flags used within CreateWindow.
@ WCF_DestroyOnClose
Destroy window and all child widgets when the window is closed.
@ WCF_HasWindowState
Enable the window state calls for IQtXSystem::IWindowState.
virtual tResult CreateWindow(IWindow &oWindow, uint32_t nFlags)=0
Create and register a window to the XSystem.
ADTF_IID(IQtXSystem, "qt_xsystem.osborn.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
~IQtXSystem()=default
protected DTOR
Window state callback interface.
virtual void OnLoadState(const QString &strStateFolder)=0
Callback function to load the internal window state from the given folder strStateFolder.
virtual QString GetStateIdentifier() const =0
Returns The user defined window state identifier.
virtual void OnSaveState(const QString &strStateFolder) const =0
Callback function to save the internal window state to the given folder strStateFolder.
Interface definition for the ADTF XSystem based on Qt.
~IQtXSystem()=default
protected DTOR
ADTF_IID(IQtXSystem, "qt_xsystem.riddler.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
The window info interface to return a link to the windows documentation page.
virtual QString GetHelpLink() const =0
Returns a filesystem help link to the windows documentation page.
~IHelp()=default
protected DTOR
Interface definition for the ADTF XSystem based on Qt.
ADTF_IID(IQtXSystem, "qt_xsystem.spider.services.adtf.iid")
interface id for adtf::ucom::ant::ucom_cast
~IQtXSystem()=default
protected DTOR
QString get_window_state_folder_name(const QString &strSessionDataDir, const QString &strShortPathName)
Get the default window state folder name.
Namespace for entire ADTF SDK.