VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtControlPointWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #ifndef DtControlPointWidget_H_
11 #define DtControlPointWidget_H_
12 
13 #include <vrvCore/vrvCore.h>
14 #include <vrvCore/DtUniqueID.h>
16 #include <vrvCore/DtMouseState.h>
17 #include <vrvUtil/signalslib.h>
18 
19 namespace makVrv
20 {
21  class DtAgentManagerInterface;
22  class DtProjectedWidgetModelAgent;
23  class DtWidgetAgent;
24  class DtWidgetLabelAgent;
25  class DtModelAgent;
26  class DtWidgetInstanceSignaler;
27  class DtWidgetSignaler;
28  class DtWidgetEventSignals;
29  enum class DtModelSetId;
30 
35  {
36  public:
39  {
40  Normal, // inactive, not selected
41  Active, // e.g. mouseover
42  Selected, // The only selected object
43  MultiSelected, // Part of a group of selected control points
44  };
45 
47 
48  virtual ~DtControlPointWidget();
49 
51  virtual void setModelDefinitions(
52  const std::string& emptyTheme = "ControlPointTheme",
53  const std::string& normalTheme = "ControlPointTheme",
54  const std::string& activeTheme = "ControlPointPinnedTheme",
55  const std::string& normalPointTheme = "ControlPointPinnedTheme",
56  const std::string& selectedPointTheme = "ControlPointPinnedTheme");
57 
59  virtual void setState(ControlPointState state);
60 
62  virtual void setColor(float r, float g, float b);
63 
65  virtual void setDimensions(int height, int width);
66 
68  DtModelAgent* model();
69 
71  ControlPointState state();
72 
74  virtual void setEventsEnabled(bool enabled);
75 
77  DtWidgetEventSignals& eventSignals(DtWidgetSignaler& signaler);
78 
80  virtual void setOrderGroup(int);
81  protected:
82 
85  DtProjectedWidgetModelAgent* myProjectedWidgetModelAgent;
86  DtWidgetAgent* myWidgetAgent;
87  DtWidgetAgent* myPointWidgetAgent;
89 
90  std::string myEmptyTheme;
91  std::string myNormalTheme;
92  std::string myActiveTheme;
93  std::string mySelectedPointTheme;
95 
96  int myHeight;
97  int myWidth;
98 
101 
104  float myR;
105  float myG;
106  float myB;
107  };
108 }
109 
110 #endif
111 
ControlPointState
The possible states of a control point.
Definition: DtControlPointWidget.h:38
bool myEventsEnabled
Definition: DtControlPointWidget.h:100
Definition: DtControlPointWidget.h:42
A signaler class for a particular widget instance with the provided DtUniqueID.
Definition: DtWidgetSignaler.h:60
This is the 2D widget used as an indicator for Tactical Graphics objects.
Definition: DtControlPointWidget.h:34
Definition: DtControlPointWidget.h:43
DtProjectedWidgetModelAgent * myProjectedWidgetModelAgent
Definition: DtControlPointWidget.h:85
Definition: DtControlPointWidget.h:40
std::string myMultiSelectedPointTheme
Definition: DtControlPointWidget.h:94
std::string myActiveTheme
Definition: DtControlPointWidget.h:92
ControlPointState myState
Definition: DtControlPointWidget.h:99
DtModelSetId myModelSet
Definition: DtControlPointWidget.h:83
This file contains the declaration for the class DtMouseState.
bool mySelected
Definition: DtControlPointWidget.h:102
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
std::string myEmptyTheme
Definition: DtControlPointWidget.h:90
int myHeight
Definition: DtControlPointWidget.h:96
int myOrderGroup
Definition: DtControlPointWidget.h:103
float myR
Definition: DtControlPointWidget.h:104
Definition: DtControlPointWidget.h:41
float myG
Definition: DtControlPointWidget.h:105
std::string mySelectedPointTheme
Definition: DtControlPointWidget.h:93
DtWidgetAgent * myPointWidgetAgent
Definition: DtControlPointWidget.h:87
int myWidth
Definition: DtControlPointWidget.h:97
std::string myNormalTheme
Definition: DtControlPointWidget.h:91
Contains makVrv::DtUniqueID type.
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
float myB
Definition: DtControlPointWidget.h:106
A signaler class that is used to connect generated events from a DtWidget in the main thread to the a...
Definition: DtWidgetSignaler.h:86
DtWidgetAgent * myWidgetAgent
Definition: DtControlPointWidget.h:86
DtAgentManagerInterface & mySceneInterface
Definition: DtControlPointWidget.h:84
DtWidgetInstanceSignaler * myWidgetSignaler
Definition: DtControlPointWidget.h:88
DtModelSetId
Definition: DtModelSetEnums.h:19
A simple collection of signals that all widgets can emit.
Definition: DtWidgetSignaler.h:27
Contains makVrv::DtAgentManagerInterface class.
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)