VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
entityControlPanelPage.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #if !defined(Q_MOC_RUN)
12 
14 #include <boost/signals2.hpp>
15 #include <vrvCore/DtEntityState.h>
16 #include <vrvCoreQt/DtMenuItem.h>
19 
20 #endif
21 
22 class QDockWidget;
23 class QWidget;
24 class QAction;
25 
26 namespace makVrv
27 {
28  class DtPage;
29 }
30 
31 namespace makVrf
32 {
33  namespace makVrfGuiObjectInformationQt
34  {
35  class DtUnifiedControlToolbar;
36  class DtInformationDialogWidgetSection;
37  class DtInformationSectionDisplayHandler;
38 
40  //
45  {
46  Q_OBJECT
47 
48  public:
50  DtEntityControlPanelPage(makVrv::DtDe& de, QWidget* parent = 0, Qt::WindowFlags f = 0);
51 
53  virtual ~DtEntityControlPanelPage();
54 
55  virtual QSize minimumSizeHint() const;
56  virtual QSize sizeHint() const;
57 
58  virtual bool init(makVrv::DtUniqueID);
59 
60  boost::signals2::signal<void(DtEntityControlPanelPage*)> signal_aboutToBeClosed;
61 
62  protected slots:
63  virtual void dockedWidgetTopLevelChanged(bool topLevel);
64  virtual void sizeToFit();
65 
66  protected:
67  virtual void activate();
68  virtual void deactivate();
69 
70  virtual void createEntryWidget();
71  virtual void updateEntryWidgetOnDataChanged();
72  virtual void closeEvent(QCloseEvent*) override;
73  virtual void slot_postLoadUnifiedControlToolbar();
74  virtual void showEvent(QShowEvent* e) override;
75 
76  protected:
77  QWidget* myEntryWidget;
81  boost::signals2::scoped_connection myUpdateConnection;
83  double myLastUpdateTime = 0;
84  double myUpdateRate = 0.1;
85  double myTotalSinceLastStateViewUpdate = 0.;
86  };
87 
91  {
92  public:
93 
96 
99 
103  virtual std::string pageClassName() const;
104 
106  virtual makVrv::DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0);
107  };
108 
110  {
111  Q_OBJECT
112  public:
113  //CTOR
115 
116  //DTOR
117  virtual ~DtEntityControlPanelMenuItem();
118 
120  virtual QAction* createAction(makVrv::DtDe&, QWidget* parent);
121 
122 
123  protected:
124  virtual void validate(QAction* act);
125  virtual void on_triggered();
126  virtual void slot_onValidate(QAction* act);
127  };
128  }
129 }
DT_DLL_VRFGUIOBJECTINFORMATIONQT void init(makVrv::DtDe &de)
QWidget * myEntryWidget
Definition: entityControlPanelPage.h:77
boost::signals2::signal< void(DtEntityControlPanelPage *)> signal_aboutToBeClosed
Definition: entityControlPanelPage.h:60
Definition: vrfEntityMenu.h:96
class DtSelectedObjectInformationWidget:
Definition: selectedObjectInformationWidget.h:46
QDockWidget * myDockedWidget
Definition: entityControlPanelPage.h:79
The page creator. This class should be extended by all page classes.
Definition: DtPage.h:121
DtUnifiedControlToolbar * myUnifiedControlToolbar
Definition: entityControlPanelPage.h:78
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Contains makVrv::DtVrlinkSimulatedEntityState class.
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
makVrv::DtSignalConnectionManager myConnections
Definition: entityControlPanelPage.h:82
Base class to provide boost signal/slot management.
#define DT_DLL_VRFGUIOBJECTINFORMATIONQT
Contains DLL export macros.
Definition: vrfGuiObjectInformationQt.h:24
boost::signals2::scoped_connection myUpdateConnection
Definition: entityControlPanelPage.h:81
class DtEntityControlPanelPage:
Definition: entityControlPanelPage.h:44
makVrv::DtUniqueID mySelectedId
Definition: entityControlPanelPage.h:80
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:72
The creator class needed to be used to create a DtEntityControlPanelPage.
Definition: entityControlPanelPage.h:90

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)