VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtImageSymbolVisualizer.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 
13 #include <vrvUtil/DtUnicode.h>
15 
17 
18 namespace makVrv
19 {
20 
21  class DtWidgetAgent;
22  class DtWidgetInstanceSignaler;
23  class DtProjectedWidgetModelAgent;
24  class DtObjectTypeStateListener;
25 
31  {
32  public:
35  DtSceneObjectAgent* sceneObject, DtModelSetId modelSet );
36 
38  virtual ~DtImageSymbolVisualizer();
39 
41  DtImageSymbolVisualizer() = delete;
42 
45 
47  DtImageSymbolVisualizer& operator=( const DtImageSymbolVisualizer& ) = delete;
48 
49  public:
51  virtual void initialize() override;
52 
54  virtual void setModelDefinitionForAgents();
55 
58  virtual void slot_setSelected(bool) override;
59 
64  virtual void setFixedIconScalingEnabled(bool fixedScalingEnabled);
65 
68  void setScale( float scale );
69 
71  virtual void setAltitudeSpecificConfigurations(
73 
75  virtual void setImageSymbol( int );
76 
78  virtual int imageSymbol() const;
79 
81  virtual void setPickable( bool b );
82 
84  virtual void setImageSymbolMap(const DtVisualAttributeForceSpecificString::ForceTypeToUnicodeMap&);
85 
88 
90  virtual void setImageSize(int x, int y);
91 
93  void getImageSize(int& x, int& y);
94 
97  virtual void setDestroyed(bool);
98 
100  bool destroyed() const { return myDestroyed; };
101 
103  virtual void setDestroyedModel(const std::string&);
104 
106  const std::string& destroyedModel() const { return myDestroyedModel; };
107 
110  virtual void rotateSymbolToHeading(double);
111 
112  protected:
113 
115  {
116  if (myObjectTypeStateListener)
117  {
118  return *myObjectTypeStateListener;
119  }
120  DtTHROW_NEW(DtCorruptedState, "Invalid listener for DtImageSymbolVisualizer.");
121  }
122 
123 
125  virtual void setHasMouse( bool hasMouse );
126 
128  virtual void createModelAgents();
129 
131  virtual void destroyModelAgents();
132 
134  virtual void update();
135 
137  virtual DtUnicode imageSymbolDefinition(int) const;
138 
141  virtual void connectToListenerSignals() override;
142 
145  virtual void setInitialValuesFromVisualizerDefinition() override;
146  protected:
147 
148  DtProjectedWidgetModelAgent* myProjectIconPosition;
149  DtWidgetAgent* myIcon;
151  DtWidgetAgent* mySelectedIcon;
153  float myScale;
154 
157 
158  unsigned int myIconGroup;
159  unsigned int myDestroyedIconGroup;
160  unsigned int myHoveredGroupId;
161  unsigned int mySelectedGroupId;
162  int mySizeX;
163  int mySizeY;
164 
165  DtWidgetAgent* myDestroyedIcon;
167  std::string myDestroyedModel;
168 
172  };
173 
174 }
virtual DtObjectTypeStateListener & objectTypeStateListener()
Definition: DtImageSymbolVisualizer.h:114
Contains the DtAltitudeBasedScaleConfigurationRecord class declaration.
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
A signaler class for a particular widget instance with the provided DtUniqueID.
Definition: DtWidgetSignaler.h:60
makArchives::DtAltitudeBasedScaleConfigurationRecordCollection myLabelScalesByMinimumAltitude
Definition: DtImageSymbolVisualizer.h:170
int myImageSymbol
Definition: DtImageSymbolVisualizer.h:155
unsigned int mySelectedGroupId
Definition: DtImageSymbolVisualizer.h:161
std::map< int, DtUnicode > ForceTypeToUnicodeMap
Definition: DtVisualizerAttribute.h:425
unsigned int myHoveredGroupId
Definition: DtImageSymbolVisualizer.h:160
A visualizer for displaying a Image (Bitmap) Symbology Icon. The visualizer stores a map by integer o...
Definition: DtImageSymbolVisualizer.h:30
bool myDestroyed
Definition: DtImageSymbolVisualizer.h:166
bool destroyed() const
Returns whether or not this object is destroyed.
Definition: DtImageSymbolVisualizer.h:100
int mySizeX
Definition: DtImageSymbolVisualizer.h:162
unsigned int myDestroyedIconGroup
Definition: DtImageSymbolVisualizer.h:159
DtWidgetAgent * myIcon
Definition: DtImageSymbolVisualizer.h:149
DtVisualAttributeForceSpecificString::ForceTypeToUnicodeMap myImageSymbolMap
Definition: DtImageSymbolVisualizer.h:156
bool myFixedScalingEnabled
Definition: DtImageSymbolVisualizer.h:169
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:35
float myScale
Definition: DtImageSymbolVisualizer.h:153
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv:DtStateVisualizer class.
DtWidgetAgent * mySelectedIcon
Definition: DtImageSymbolVisualizer.h:151
bool myHasMouse
Definition: DtImageSymbolVisualizer.h:152
int mySizeY
Definition: DtImageSymbolVisualizer.h:163
unsigned int myIconGroup
Definition: DtImageSymbolVisualizer.h:158
DtWidgetAgent * myDestroyedIcon
Definition: DtImageSymbolVisualizer.h:165
DtObjectTypeStateListener * myObjectTypeStateListener
Definition: DtImageSymbolVisualizer.h:171
std::string myDestroyedModel
Definition: DtImageSymbolVisualizer.h:167
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that &quot;directs...
Definition: DtStateVisualizer.h:30
The DtObjectTypeStateListener is a base class used by elements that have object types ( including ent...
Definition: DtObjectTypeStateListener.h:31
const std::string & destroyedModel() const
Returns the model used for the destroyed image.
Definition: DtImageSymbolVisualizer.h:106
DtWidgetInstanceSignaler * myIconSignaler
Definition: DtImageSymbolVisualizer.h:150
DtModelSetId
Definition: DtModelSetEnums.h:19
DtProjectedWidgetModelAgent * myProjectIconPosition
Definition: DtImageSymbolVisualizer.h:148
std::vector< DtAltitudeBasedScaleConfigurationRecord > DtAltitudeBasedScaleConfigurationRecordCollection
Definition: DtAltitudeBasedScaleConfigurationRecord.h:45
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:26

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)