VR-Vantage 3.2 API Documentation
 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) 2024 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  class DtWidgetUpdater;
26 
30  {
31  public:
33  {
34  public:
35  DtDynamicSizeConfiguration(double altitude, float sizeX, float sizeY)
36  : myAltitude(altitude)
37  , mySizeX(sizeX)
38  , mySizeY(sizeY)
39  , myOffsetX(0.0)
40  , myOffsetY(0.0)
41  { }
42 
43  DtDynamicSizeConfiguration( double altitude, float sizeX, float sizeY,
44  float offsetX, float offsetY )
45  : myAltitude( altitude )
46  , mySizeX( sizeX )
47  , mySizeY( sizeY )
48  , myOffsetX( offsetX )
49  , myOffsetY( offsetY )
50  {
51  }
52 
54  : myAltitude(std::numeric_limits<double>::min())
55  , mySizeX(0.0f)
56  , mySizeY(0.0f)
57  , myOffsetX( 0.0f )
58  , myOffsetY( 0.0f )
59  { }
60 
61  ~DtDynamicSizeConfiguration() = default;
63  const DtDynamicSizeConfiguration &other) = default;
64  DtDynamicSizeConfiguration &operator=(
65  const DtDynamicSizeConfiguration &other) = default;
66 
67  double myAltitude;
68  float mySizeX;
69  float mySizeY;
70  float myOffsetX;
71  float myOffsetY;
72  };
73 
74  typedef std::vector<DtDynamicSizeConfiguration> DtDynamicSizeConfigurationCollection;
75 
76  public:
77  DtWidget(DtDe& de, DtUniqueID id);
78 
79  virtual ~DtWidget();
80 
82  DtWidget( const DtWidget& other ) = delete;
83 
85  DtWidget& operator=( const DtWidget& other ) = delete;
86 
88  DtWidget( const DtWidget&& other ) = delete;
89 
91  DtWidget& operator=( const DtWidget&& other ) = delete;
92 
93  public:
94 
96  virtual void setOverlay(unsigned int overlay) = 0;
97 
99  virtual unsigned int overlay() const = 0;
100 
102  virtual void setOrderGroup(unsigned int group) = 0;
103 
105  virtual void setRotation( float ) = 0;
106 
108  virtual unsigned int orderGroup() const = 0;
109 
111  virtual void setParentId( DtUniqueID id);
112 
114  virtual void setPosition(float x,float y,float z,float w = 0) = 0;
115 
117  virtual void setBackgroundImage(const std::string& filename) = 0;
118 
120  virtual void setColor(float r,float g,float b, float a) = 0;
121 
123  virtual void setOriginOffset( int xOffset, int yOffset ) = 0;
124 
126  virtual void setSize(float w, float h) = 0;
127 
132  virtual void setAltitudeSpecificSizes(
134 
139  virtual void clearAltitudeSpecificSizes();
140 
147  virtual void setIsForcedSizeByAltitudeEnabled(bool enabled);
148 
152  virtual void setAltitudeForForcedSize(double minimumAltitudeForUse);
153 
157  virtual void setLodOutAltitude(double lodOutAltitude) = 0;
158 
162  virtual void setIsLodOutAltitudeEnabled(bool isLodOutAltitudeEnabled) = 0;
163 
165  virtual void setPadding(float paddingX, float paddingY) = 0;
166 
169  virtual void setModelDefinition(const std::string& str) = 0;
170 
172  virtual void setEventsEnabled(bool enabled) = 0;
173 
175  virtual void setVisible(bool visible) = 0;
176 
179  virtual DtUniqueID id() const;
180 
185  virtual DtUniqueID parentId() const;
186 
193  virtual void registerUpdater(DtWidgetUpdater* updater);
194 
198  virtual void unregisterUpdater(DtWidgetUpdater* updater);
199 
201  virtual DtWidgetUpdater* updater();
202 
203  protected:
206  virtual void updateEventSignals() = 0;
207  protected:
213  };
214 }


Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)