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  { }
39 
41  : myAltitude(std::numeric_limits<double>::min())
42  , mySizeX(0.0f)
43  , mySizeY(0.0f)
44  { }
45 
46  ~DtDynamicSizeConfiguration() = default;
48  const DtDynamicSizeConfiguration &other) = default;
49  DtDynamicSizeConfiguration &operator=(
50  const DtDynamicSizeConfiguration &other) = default;
51 
52  double myAltitude;
53  float mySizeX;
54  float mySizeY;
55  };
56 
57  typedef std::vector<DtDynamicSizeConfiguration> DtDynamicSizeConfigurationCollection;
58 
59  public:
60  DtWidget(DtDe& de, DtUniqueID id);
61 
62  virtual ~DtWidget();
63 
65  DtWidget( const DtWidget& other ) = delete;
66 
68  DtWidget& operator=( const DtWidget& other ) = delete;
69 
71  DtWidget( const DtWidget&& other ) = delete;
72 
74  DtWidget& operator=( const DtWidget&& other ) = delete;
75 
76  public:
77 
79  virtual void setOverlay(unsigned int overlay) = 0;
80 
82  virtual unsigned int overlay() const = 0;
83 
85  virtual void setOrderGroup(unsigned int group) = 0;
86 
88  virtual void setRotation( float ) = 0;
89 
91  virtual unsigned int orderGroup() const = 0;
92 
94  virtual void setParentId( DtUniqueID id);
95 
97  virtual void setPosition(float x,float y,float z,float w = 0) = 0;
98 
100  virtual void setBackgroundImage(const std::string& filename) = 0;
101 
103  virtual void setColor(float r,float g,float b, float a) = 0;
104 
106  virtual void setOriginOffset( int xOffset, int yOffset ) = 0;
107 
109  virtual void setSize(float w, float h) = 0;
110 
115  virtual void setAltitudeSpecificSizes(
117 
122  virtual void clearAltitudeSpecificSizes();
123 
130  virtual void setIsForcedSizeByAltitudeEnabled(bool enabled);
131 
135  virtual void setAltitudeForForcedSize(double minimumAltitudeForUse);
136 
140  virtual void setLodOutAltitude(double lodOutAltitude) = 0;
141 
145  virtual void setIsLodOutAltitudeEnabled(bool isLodOutAltitudeEnabled) = 0;
146 
148  virtual void setPadding(float paddingX, float paddingY) = 0;
149 
152  virtual void setModelDefinition(const std::string& str) = 0;
153 
155  virtual void setEventsEnabled(bool enabled) = 0;
156 
158  virtual void setVisible(bool visible) = 0;
159 
162  virtual DtUniqueID id() const;
163 
168  virtual DtUniqueID parentId() const;
169  protected:
172  virtual void updateEventSignals() = 0;
173  protected:
178  };
179 }
float mySizeX
Definition: DtWidget.h:53
DtDynamicSizeConfiguration()
Definition: DtWidget.h:40
double myAltitude
Definition: DtWidget.h:52
DtDynamicSizeConfiguration(double altitude, float sizeX, float sizeY)
Definition: DtWidget.h:34
DtDe & myDe
Definition: DtWidget.h:174
std::vector< DtDynamicSizeConfiguration > DtDynamicSizeConfigurationCollection
Definition: DtWidget.h:57
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
The abstract base class for widgets.
Definition: DtWidget.h:28
float mySizeY
Definition: DtWidget.h:54
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:177
DtUniqueID myParentId
Definition: DtWidget.h:176
Base class to provide boost signal/slot management.
DtUniqueID myId
Definition: DtWidget.h:175
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
Contains DLL export macros.

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)