VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfQtDeMainWindow.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2022 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
6 #pragma once
7 
10 #include <QtGui/QKeyEvent>
11 
12 namespace makVrf
13 {
16  {
17  Q_OBJECT
18 
19  public:
21  DtVrfQtDeMainWindow(makVrv::DtDe& de, QWidget* parent = 0, Qt::WindowFlags flags = 0);
22 
24  virtual ~DtVrfQtDeMainWindow() override;
25 
26  virtual void toggleFullScreen() override;
27 
28  virtual void setMainWidget(QWidget* widget, makVrv::DtQtKeyAdapter* keyAdapter = 0) override;
29  virtual void showEvent(QShowEvent* ev) override;
30  virtual void showBasedOnSettings() override;
31 
32  virtual void grabAdapterFocus();
33 
34  bool initialized() const
35  {
36  return (myMainWidget != nullptr);
37  }
38 
39  QWidget* mainWidget() const
40  {
41  return myMainWidget;
42  }
43 
44  boost::signals2::signal<void (QWidget* from, QWidget* to)> signal_changingMainWidget;
45  boost::signals2::signal<void (QWidget*)> signal_mainWidgetSet;
46  boost::signals2::signal<void ()> signal_mainWindowShown;
47  boost::signals2::signal<void (double)> signal_devicePixelRatioChanged;
48 
49  protected:
50  virtual bool eventFilter(QObject*, QEvent*) override;
51  virtual bool event(QEvent* event) override;
52  virtual bool canAcceptHotKeys(QWidget*) const;
53 
54  public slots:
55  virtual void resetLayout();
56 
57  signals:
58  void signal_preFullScreenToggle();
59 
60  protected:
62  QWidget* myMainWidget = nullptr;
63  QKeyEvent* myLastProcessedKeyEvent = nullptr;
64  };
65 
67  {
68  public:
69 
72 
74  virtual ~DtVrfQtDeMainWindowProvider() override;
75 
76  protected:
77 
80  virtual makVrv::DtDeMainWindow* createMainWindow(makVrv::DtDe& de) override;
81 
82  virtual void delayedShow();
83 
84  protected:
85  boost::signals2::scoped_connection myDelayedShowConnection;
86  };
87 }
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
bool initialized() const
Definition: vrfQtDeMainWindow.h:34
boost::signals2::signal< void(QWidget *)> signal_mainWidgetSet
Definition: vrfQtDeMainWindow.h:45
boost::signals2::signal< void(double)> signal_devicePixelRatioChanged
Definition: vrfQtDeMainWindow.h:47
boost::signals2::scoped_connection myDelayedShowConnection
Definition: vrfQtDeMainWindow.h:85
Abstract class to get Qt key events into OpenSceneGraph. Typically owned by DtDeMainWindowEmbeddedOsg...
Definition: DtQtKeyAdapter.h:20
boost::signals2::signal< void(QWidget *from, QWidget *to)> signal_changingMainWidget
Definition: vrfQtDeMainWindow.h:44
Override to provide VRF specific functionality associated with the main window.
Definition: vrfQtDeMainWindow.h:15
QWidget * mainWidget() const
Definition: vrfQtDeMainWindow.h:39
bool myFirstShowEvent
Definition: vrfQtDeMainWindow.h:61
DtQtDeMainWindowProvider lazily creates and provides access to the DtQtDeMainWindow.
Definition: DtQtDeMainWindow.h:208
The abstract main window class.
Definition: DtDeMainWindow.h:24
boost::signals2::signal< void()> signal_mainWindowShown
Definition: vrfQtDeMainWindow.h:46
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
Definition: vrfQtDeMainWindow.h:66
Contains makVrv::DtQtDeMainWindow class.
The Qt main window. There will be only one of these per DtDe instance. Note, this window will be dest...
Definition: DtQtDeMainWindow.h:44

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)