VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
selectedObjectInformationWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #if !defined(Q_MOC_RUN)
13 #include <vrvCoreQt/DtPage.h>
16 #include <vrvCore/DtStateView.h>
17 #include <vrvCore/DtEntityState.h>
18 #endif
19 
20 namespace makVrv
21 {
22  class DtDe;
23  class DtUnicode;
24  class DtPageCreator;
25  class DtQtPagePanel;
26 }
27 
28 class QWidget;
29 class QVBoxLayout;
30 class QScrollArea;
31 
32 namespace makVrf
33 {
34  class DtVrfFilteredListView;
35 
36  namespace makVrfGuiObjectInformationQt
37  {
38  class DtInformationDialogWidgetSection;
39  class DtInformationSectionDisplayHandler;
40 
47  : public makVrv::DtPage
48  {
49  Q_OBJECT
50 
51  public:
53  DtSelectedObjectInformationWidget(makVrv::DtDe& de, QWidget* parent = 0, Qt::WindowFlags f = 0);
54 
57 
59  virtual QIcon icon();
60 
63  virtual makVrv::DtQIconConfigurations qIconConfigurations() const;
64 
66  virtual QString title();
67 
69  virtual const std::string& pageClassName() const;
70 
72  virtual void clearSections(bool becauseOfRemoval = false);
73 
74  virtual void slot_onCurrentSelectionChanged(
75  const makVrv::DtSelectionManager::IdSet& selected,
76  const makVrv::DtSelectionManager::IdSet& deselected,
77  bool force = false);
78 
79  virtual void completeSetup();
80 
84  virtual void addCreatorToIgnore(makVrv::DtPageCreator*);
85  virtual QSize minimumSectionSize() const;
86 
88  virtual void setNoScrollWidget(bool);
89  virtual void hideLineBreaks(bool b = true);
90 
92  virtual void setSizeToMinimumSectionHeight(bool);
93 
96  virtual void setUseOnlyCurrentSelections(bool);
98  {
99  return myUseOnlyCurrentSelections;
100  }
101 
102  protected slots:
103  virtual void checkDeactivate();
104 
105  protected:
106 
108  virtual void activate();
109 
111  virtual void deactivate();
112 
114  void setupGui();
115 
116  virtual void showInformationPage(std::string page, DtInformationSectionDisplayHandler* s);
117 
118  virtual void stateViewRemoved();
119 
120  virtual void slot_objectsAboutToBeDeletedFromSimulation(const makVrv::DtSelectionManager::IdSet& toBeDeleted);
121  virtual void slot_onStateViewUpdated(makVrv::DtStateView<makVrv::DtVrlinkSimulatedBaseState>* s);
122 
123  virtual void updateData();
124  virtual void displayUnitsChanged();
125 
126  virtual DtInformationDialogWidgetSection* setupForCreator(const std::string&);
127  virtual makVrv::DtQtPagePanel* qtPagePanelParent() const;
128 
129  private:
130 
133 
136 
137  public:
138  QScrollArea* myScrollArea;
139  QWidget* myScrollWidget;
140  QVBoxLayout* myScrollLayout;
141  QVBoxLayout* myMainLayout;
142 
143  protected:
144  std::string myClassName;
146  boost::signals2::connection myStateViewConnection;
147 
148  typedef std::vector<DtInformationDialogWidgetSection*> InformationSections;
150 
152 
153  std::string myCurrentCreator;
154  std::vector<makVrv::DtPageCreator*> myCreatorsToIgnore;
156  bool myUseOnlyCurrentSelections = true;
157  bool myIsFloating = false;
158  bool myActive = false;
159  bool myFloatingStatusChanged = false;
160  };
161 
165  {
166  public:
167 
170 
173 
177  virtual std::string pageClassName() const;
178 
180  virtual makVrv::DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0);
181  };
182  }
183 }
Contains makVrv::DtPage class.
bool mySizeToMinimumSectionHeight
Definition: selectedObjectInformationWidget.h:155
QWidget * myScrollWidget
Definition: selectedObjectInformationWidget.h:139
class DtSelectedObjectInformationWidget:
Definition: selectedObjectInformationWidget.h:46
Contains makVrv:DtSelectionManager class.
Contains makVrv::DtStateView class.
The page creator. This class should be extended by all page classes.
Definition: DtPage.h:121
boost::signals2::connection myStateViewConnection
Definition: selectedObjectInformationWidget.h:146
std::vector< DtInformationDialogWidgetSection * > InformationSections
Definition: selectedObjectInformationWidget.h:148
std::string myCurrentCreator
Definition: selectedObjectInformationWidget.h:153
Sections that are added in an information dialog section dialog need to be subclasses of this...
Definition: informationDialogHandler.h:109
QScrollArea * myScrollArea
Definition: selectedObjectInformationWidget.h:138
std::vector< makVrv::DtPageCreator * > myCreatorsToIgnore
Definition: selectedObjectInformationWidget.h:154
QVBoxLayout * myScrollLayout
Definition: selectedObjectInformationWidget.h:140
QVBoxLayout * myMainLayout
Definition: selectedObjectInformationWidget.h:141
bool useOnlyCurrentSelections() const
Definition: selectedObjectInformationWidget.h:97
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Contains makVrv::DtVrlinkSimulatedEntityState class.
makVrv::DtUniqueID mySelected
Definition: selectedObjectInformationWidget.h:151
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
std::string myClassName
Definition: selectedObjectInformationWidget.h:144
makVrv::DtSignalConnectionManager myConnections
Definition: selectedObjectInformationWidget.h:145
The creator class needed to be used to create a DtSelectedObjectInformationWidget.
Definition: selectedObjectInformationWidget.h:164
Base class to provide boost signal/slot management.
#define DT_DLL_VRFGUIOBJECTINFORMATIONQT
Contains DLL export macros.
Definition: vrfGuiObjectInformationQt.h:24
InformationSections myInformationSections
Definition: selectedObjectInformationWidget.h:149
Definition: informationDialogWidgetSection.h:52
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:70
A collection of icon configurations. The collection maintains flags indicating whether to generate ic...
Definition: DtQIconConfiguration.h:75
The Qt Page Panel, is a generic docked widget that contains a number of DtPages that it displays indi...
Definition: DtQtPagePanel.h:23
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)