VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 #include <vrvCore/DtUniqueID.h>
14 
16 
17 #include <string>
18 #include <vector>
19 #include <limits>
20 
21 namespace makVrv
22 {
23 
24  class DtDe;
25 
29  {
30  public:
32  {
33  public:
34  DtDynamicSizeConfiguration(double altitude, float sizeX, float sizeY)
35  : myAltitude(altitude)
36  , mySizeX(sizeX)
37  , mySizeY(sizeY)
38  , myOffsetX(0.0)
39  , myOffsetY(0.0)
40  { }
41 
42  DtDynamicSizeConfiguration( double altitude, float sizeX, float sizeY,
43  float offsetX, float offsetY )
44  : myAltitude( altitude )
45  , mySizeX( sizeX )
46  , mySizeY( sizeY )
47  , myOffsetX( offsetX )
48  , myOffsetY( offsetY )
49  {
50  }
51 
53  : myAltitude(std::numeric_limits<double>::min())
54  , mySizeX(0.0f)
55  , mySizeY(0.0f)
56  , myOffsetX( 0.0f )
57  , myOffsetY( 0.0f )
58  { }
59 
60  ~DtDynamicSizeConfiguration() = default;
62  const DtDynamicSizeConfiguration &other) = default;
63  DtDynamicSizeConfiguration &operator=(
64  const DtDynamicSizeConfiguration &other) = default;
65 
66  double myAltitude;
67  float mySizeX;
68  float mySizeY;
69  float myOffsetX;
70  float myOffsetY;
71  };
72 
73  typedef std::vector<DtDynamicSizeConfiguration> DtDynamicSizeConfigurationCollection;
74 
75  public:
76  DtWidget(DtDe& de, DtUniqueID id);
77 
78  virtual ~DtWidget();
79 
81  DtWidget( const DtWidget& other ) = delete;
82 
84  DtWidget& operator=( const DtWidget& other ) = delete;
85 
87  DtWidget( const DtWidget&& other ) = delete;
88 
90  DtWidget& operator=( const DtWidget&& other ) = delete;
91 
92  public:
93 
95  virtual void setOverlay(unsigned int overlay) = 0;
96 
98  virtual unsigned int overlay() const = 0;
99 
101  virtual void setOrderGroup(unsigned int group) = 0;
102 
104  virtual void setRotation( float ) = 0;
105 
107  virtual unsigned int orderGroup() const = 0;
108 
110  virtual void setParentId( DtUniqueID id);
111 
113  virtual void setPosition(float x,float y,float z,float w = 0) = 0;
114 
116  virtual void setBackgroundImage(const std::string& filename) = 0;
117 
119  virtual void setColor(float r,float g,float b, float a) = 0;
120 
122  virtual void setOriginOffset( int xOffset, int yOffset ) = 0;
123 
125  virtual void setSize(float w, float h) = 0;
126 
131  virtual void setAltitudeSpecificSizes(
133 
138  virtual void clearAltitudeSpecificSizes();
139 
146  virtual void setIsForcedSizeByAltitudeEnabled(bool enabled);
147 
151  virtual void setAltitudeForForcedSize(double minimumAltitudeForUse);
152 
156  virtual void setLodOutAltitude(double lodOutAltitude) = 0;
157 
161  virtual void setIsLodOutAltitudeEnabled(bool isLodOutAltitudeEnabled) = 0;
162 
164  virtual void setPadding(float paddingX, float paddingY) = 0;
165 
168  virtual void setModelDefinition(const std::string& str) = 0;
169 
171  virtual void setEventsEnabled(bool enabled) = 0;
172 
174  virtual void setVisible(bool visible) = 0;
175 
178  virtual DtUniqueID id() const;
179 
184  virtual DtUniqueID parentId() const;
185  protected:
188  virtual void updateEventSignals() = 0;
189  protected:
194  };
195 }
float mySizeX
Definition: DtWidget.h:67
DtDynamicSizeConfiguration()
Definition: DtWidget.h:52
double myAltitude
Definition: DtWidget.h:66
DtDynamicSizeConfiguration(double altitude, float sizeX, float sizeY)
Definition: DtWidget.h:34
DtDynamicSizeConfiguration(double altitude, float sizeX, float sizeY, float offsetX, float offsetY)
Definition: DtWidget.h:42
DtDe & myDe
Definition: DtWidget.h:190
float myOffsetX
Definition: DtWidget.h:69
std::vector< DtDynamicSizeConfiguration > DtDynamicSizeConfigurationCollection
Definition: DtWidget.h:73
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
The abstract base class for widgets.
Definition: DtWidget.h:28
float mySizeY
Definition: DtWidget.h:68
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
DtSignalConnectionManager mySignalConnectionManager
Definition: DtWidget.h:193
DtUniqueID myParentId
Definition: DtWidget.h:192
Base class to provide boost signal/slot management.
DtUniqueID myId
Definition: DtWidget.h:191
Contains makVrv::DtUniqueID type.
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
float myOffsetY
Definition: DtWidget.h:70
Contains DLL export macros.

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)