VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtIndicatorVisualizer.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2022 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
13 #include <vrvCore/DtForceManager.h>
14 
15 #include <vrvCore/DtInfoWidgetUpdaterAgent.hpp>
16 
17 #include <vrvUtil/signalslib.h>
18 #include <vrvUtil/DtUnicode.h>
19 
20 
21 namespace makVrv
22 {
23  class DtEntityInfoWidget;
24 
31  {
32  public:
34  DtIndicatorVisualizer(DtBaseConnection& simulation, DtStateListener& listener, int modelSet);
35 
38  DtSceneObjectAgent* sceneObject, int modelSet );
39 
41  virtual ~DtIndicatorVisualizer();
42 
44  virtual void initialize() override;
45 
47  virtual void implementVisibility(bool visible) override;
48 
50  virtual bool indicatorVisible() const;
51 
52  virtual void setWidgetEventsEnabled(bool enabled);
53 
56  virtual void setInfoPinned(bool pinned);
57  virtual bool infoPinned() const;
59 
62  virtual void setIndicatorPinned(bool);
63  virtual bool indicatorPinned() const;
65 
68  virtual void slot_setSelected(bool) override;
69 
72  virtual void setShowInfoPopupOnSelect(bool enabled);
73  virtual bool showInfoPopupOnSelect() const;
75 
77  virtual void createIndicator() = 0;
78 
80  virtual void destroyIndicator() = 0;
81 
82  DtEntityInfoWidget* infoWidget() const;
83 
85  virtual void setInfoVisible(bool);
86 
88  virtual void setColor(float r,float g,float b,float a);
89 
91  boost::signalslib::signal<void (bool)> signal_infoVisibleChanged;
92 
95 
96  virtual void slot_setForceType( DtForceType type );
97  virtual void slot_setDisplayName( const std::string& name );
98  virtual void slot_setObjectType( const std::string& type );
99  virtual void slot_setIdentifierString( const std::string& identifier );
101 
104  virtual void slot_forceAdded( int );
105 
106  protected:
107  virtual void updateIndicator();
108 
111  virtual void createModelAgents();
112 
115  virtual void destroyModelAgents();
116 
119  virtual void connectToListenerSignals() override;
120 
123  virtual void setInitialValuesFromVisualizerDefinition() override;
124 
125  virtual void slot_mouseInChanged(bool isMouseInIndicator);
126 
129  virtual void setModelDefinitionForAgents() override;
130  protected:
132  DtInfoWidgetUpdaterAgent* myWidgetUpdater;
140  double myR, myG, myB, myA;
141  DtForceType myForceType;
142  std::string myDisplayName;
143  std::string myObjectType;
144  std::string myIndentifierString;
145  };
146 }
DtIndicatorVisualizer is used to visualize 2D indicators and associated Info boxes (usually called la...
Definition: DtIndicatorVisualizer.h:30
bool myInfoVisible
Definition: DtIndicatorVisualizer.h:139
std::string myIndentifierString
Definition: DtIndicatorVisualizer.h:144
bool myWidgetEventsEnabled
Definition: DtIndicatorVisualizer.h:135
DtForceType myForceType
Definition: DtIndicatorVisualizer.h:141
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:38
boost::signalslib::signal< void(bool)> signal_infoVisibleChanged
Signaled when info visibility has changed.
Definition: DtIndicatorVisualizer.h:91
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Contains makVrv:DtStateVisualizer class.
DtEntityInfoWidget is the object proxy for 2D distributed entity info (label) objects.
Definition: DtEntityInfoWidget.h:27
DtInfoWidgetUpdaterAgent * myWidgetUpdater
Definition: DtIndicatorVisualizer.h:132
bool myInfoPinned
Definition: DtIndicatorVisualizer.h:138
bool myIndicatorPinned
Definition: DtIndicatorVisualizer.h:136
std::string myDisplayName
Definition: DtIndicatorVisualizer.h:142
Contains makVrv::DtForceManager class.
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that &quot;directs...
Definition: DtStateVisualizer.h:32
DtEntityInfoWidget * myInfoWidget
Definition: DtIndicatorVisualizer.h:131
bool myIndicatorVisible
Definition: DtIndicatorVisualizer.h:133
std::string myObjectType
Definition: DtIndicatorVisualizer.h:143
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:25
double myR
Definition: DtIndicatorVisualizer.h:140
bool myShowInfoOnSelect
Definition: DtIndicatorVisualizer.h:137
bool myVisibilityOverridden
Definition: DtIndicatorVisualizer.h:134

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)