VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtAttachWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvCoreQt/vrvCoreQt.h>
12 #include <vrvCoreQt/DtPage.h>
14 
15 class QCheckBox;
16 class QComboBox;
17 class QFrame;
18 class QHBoxLayout;
19 class QLabel;
20 class QPushButton;
21 class QVBoxLayout;
22 
23 namespace makVrv
24 {
25  class DtVirtualBaseClass;
26 
31  {
32  Q_OBJECT
33 
34  public:
35 
37  virtual ~DtAttachWidget();
38 
40  virtual QIcon icon();
41 
44  virtual DtQIconConfigurations qIconConfigurations() const;
45 
47  virtual QString title();
48 
50  virtual const std::string& pageClassName() const;
51 
53  virtual void setHideAttachedModelEnabled( bool trueFalse );
54 
56  virtual void setAttachedObjects(const std::vector<DtUnicode>& attachedObject, bool visible);
57 
59  virtual void setAttachableParts( const std::vector<DtUnicode>& parts);
60 
62  virtual void setAttachedPart(const DtUnicode& partName);
63 
65  virtual void addAttachFilter( const DtUnicode& filterName,
66  int filterType );
67 
69  virtual void setCurrentAttachFilter( int filterType );
70 
72  virtual void setAttachNextEnabled( bool enabled );
73 
75  virtual void setAttachPreviousEnabled( bool enabled );
76 
78  virtual void addAttachModes( const std::list<DtUnicode>& modeNames,
79  const std::list<int>& modeTypes );
80 
82  virtual void setCurrentAttachMode( int modeType );
83 
85  virtual void setAttachModeEnabled( int modeType, bool enabled );
86 
88  virtual void setAttachSelectedEnabled( bool enabled );
89 
90  virtual QSize sizeHint() const;
91 
93  virtual void setAttached(bool b);
94 
96  virtual void setMoreInformationShown(bool);
97 
98  protected slots:
99 
101  virtual void attachToPrevious();
102 
104  virtual void attachToNext();
105 
107  virtual void attachToPart( int index );
108 
110  virtual void detach();
111 
113  virtual void changeHideAttachedModel( int state );
114 
116  virtual void changeAttachFilterType( int index );
117 
119  virtual void attachModeChanged( int index );
120 
122  virtual void attachSelected();
123 
125  virtual void updateShowMoreInformation();
126 
127  protected:
128 
130  friend class DtAttachWidgetCreator;
131 
133  DtAttachWidget(DtDe& de, QWidget* parent = 0, Qt::WindowFlags f = 0);
134 
136  virtual void activate();
137 
139  virtual void deactivate();
140 
141  void setupUi();
142  void retranslateUi();
143 
144  protected:
145 
147  QSize mySaveSize;
148 
154 
158 
159  QHBoxLayout* myFirstRowLayout;
160  QHBoxLayout* mySecondRowLayout;
161  QHBoxLayout* myThirdRowLayout;
162  QHBoxLayout* myFourthRowLayout;
163 
172  QVBoxLayout* myMoreOptionsLayout;
173  QVBoxLayout* myMainLayout;
174 
175  std::string myClassName;
176  };
177 
181  {
182  public:
183 
186 
188  virtual ~DtAttachWidgetCreator();
189 
193  virtual std::string pageClassName() const;
194 
196  virtual DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0);
197  };
198 }
199 
QLabel * myAttachmentFilterLabel
Definition: DtAttachWidget.h:164
QHBoxLayout * mySecondRowLayout
Definition: DtAttachWidget.h:160
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
QComboBox * myAttachablePartsComboBox
Definition: DtAttachWidget.h:153
Contains makVrv::DtPage class.
QPushButton * myAttachNextButton
Definition: DtAttachWidget.h:167
The page creator. This class should be extended by all page classes.
Definition: DtPage.h:121
QCheckBox * myHideAttachedModelCheckBox
Definition: DtAttachWidget.h:149
Contains makVrv::DtAttachWidgetInterface class.
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
Abstract interface for the attach widget.
Definition: DtAttachWidgetInterface.h:22
Contains DLL export macros.
The creator class needed to be used to create a DtOverlaysPage.
Definition: DtAttachWidget.h:180
QLabel * myAttachedObjectsLabel
Definition: DtAttachWidget.h:165
DtVirtualBaseClass * myLogic
Definition: DtAttachWidget.h:146
QPushButton * myShowMoreInformationButton
Definition: DtAttachWidget.h:171
QHBoxLayout * myThirdRowLayout
Definition: DtAttachWidget.h:161
QVBoxLayout * myMoreOptionsLayout
Definition: DtAttachWidget.h:172
QComboBox * myAttachedObjectsComboBox
Definition: DtAttachWidget.h:152
QHBoxLayout * myFourthRowLayout
Definition: DtAttachWidget.h:162
QComboBox * myAttachModeComboBox
Definition: DtAttachWidget.h:151
QSize mySaveSize
Definition: DtAttachWidget.h:147
QPushButton * myDetachButton
Definition: DtAttachWidget.h:170
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
QFrame * myHorizontalLine2
Definition: DtAttachWidget.h:156
A widget class for managing attachment.
Definition: DtAttachWidget.h:29
QFrame * myFirstRowLineSeperator
Definition: DtAttachWidget.h:155
QPushButton * myAttachPreviousButton
Definition: DtAttachWidget.h:168
QHBoxLayout * myFirstRowLayout
Definition: DtAttachWidget.h:159
QPushButton * myAttachSelectedButton
Definition: DtAttachWidget.h:169
QComboBox * myAttachFilterComboBox
Definition: DtAttachWidget.h:150
QLabel * myAttachablePartsLabel
Definition: DtAttachWidget.h:166
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
A collection of icon configurations. The collection maintains flags indicating whether to generate ic...
Definition: DtQIconConfiguration.h:131
std::string myClassName
Definition: DtAttachWidget.h:175
QFrame * myMoreOptionsFrame
Definition: DtAttachWidget.h:157
QVBoxLayout * myMainLayout
Definition: DtAttachWidget.h:173

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)