VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
locationReferenceEntryWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
19 #include <boost/signals2.hpp>
20 #endif
21 
22 class QTabBar;
23 class QToolButton;
24 class QFrame;
25 
26 namespace makVrf
27 {
28  class DtLocationEntryWidget;
29  class DtVrfFilteredListView;
30 
33  {
34  Q_OBJECT
35 
36  public:
37  DtLocationReferenceEntryWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0, const CreationFlags& cflags = NormalMode);
38 
39  //DTOR
41 
46  virtual void setRange(double bottom, double top) override;
47 
49  virtual void setDefaultValue(const std::string&) override;
50 
51  virtual void setVariableData(const QString& qts) override;
53 
55  virtual DtReaderWriter* createBoundVariable(const std::string& variableName);
56 
58  virtual void setupFromBoundVariable(const DtReaderWriter* variableName);
59 
62  virtual DtTaskSetVariableWidgetExtensionInterface* parameterContents(QWidget* parent, const Qt::WindowFlags& flags = 0) const;
63 
65  {
66  return makVrv::DtUnicode::tr("Location Reference");
67  }
68 
69  static std::string designerGroup()
70  {
71  return tr("VR-Forces Location Reference Entry").toUtf8().constData();
72  }
73 
74  static std::string headerFile()
75  {
76  return tr("<vrfGuiDataEntryWidgets/locationReferenceEntryWidget.h>").toUtf8().constData();
77  }
78 
79  static std::string variableName()
80  {
81  return tr("locationreference").toUtf8().constData();
82  }
83 
85  {
86  return myFilteredListView;
87  }
88 
90  {
91  return myLocationEntryWidget;
92  }
93 
94  virtual void resetMapFocus();
95 
96  virtual void setSelection(const std::vector<makVrv::DtSimEntry*>& data);
97  virtual void giveMapFocusTo();
98 
101 
102  virtual DtRwLocationReference::LocationType locationType() const;
103  virtual void setLocationType(DtRwLocationReference::LocationType posType);
105 
108 
109  virtual DtUUID object() const;
110  virtual void setObject(const DtUUID& object);
112 
115 
116  virtual DtVector vector() const;
117  virtual void setVector(const DtVector& v);
119 
120  virtual void setLostMapFocus(bool b);
121  virtual void takeMapFocusFrom();
122  virtual void setHasMapFocus(bool b);
123  virtual void setCanTakeMapFocus(bool b);
124  virtual bool hasMapFocus() const;
125  bool canTakeMapFocus() const
126  {
127  return myTakeMapFocusEnabled;
128  }
129 
130  virtual makVrv::DtQtCursor cursorForSelectionStatus(SelectionStatus, DtMapFocusHandlerInterface::CursorOver) const;
131  virtual QSize sizeHint() const override;
132  virtual QSize minimumSizeHint() const override;
133 
135  boost::signals2::signal<void()> signal_positionInputChanged;
136 
137  protected:
138  virtual SelectionStatus selectionStatusFor(makVrv::DtUniqueID id, DtMapFocusHandlerInterface::CursorOver) const override;
139 
140  virtual void slot_filteredListChanged();
141  virtual void slot_locationEntryChanged();
142  virtual bool validFilteredListViewSelection() const;
143  virtual void resolveSelection();
144 
145  protected slots:
146  virtual void tabSelectionChanged();
147  virtual void canTakeMapFocusChanged();
148 
149  signals:
150  void expansionStateChanged(bool);
151 
152  public:
157  QHBoxLayout* myTabBarLayout;
159  QVBoxLayout* myFocusFrameLayout;
161 
162  protected:
163  boost::signals2::scoped_connection myResolveSelectionConnection;
164 
166  bool myTakeMapFocusEnabled = true;
168  mutable int myLastOverArea = 0;
169  mutable int myLastSelectedPosition = -1;
170  };
171 
173 }
UUID is a unique ID wrapper class.
Definition: uuid.h:59
SelectionStatus
Definition: mapFocusHandler.h:30
virtual DtLocationEntryWidget * locationEntryWidget()
Definition: locationReferenceEntryWidget.h:89
QTabBar * myTabBar
Definition: locationReferenceEntryWidget.h:155
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
CreationFlags
Definition: taskSetVariableWidget.h:119
boost::signals2::scoped_connection myResolveSelectionConnection
Definition: locationReferenceEntryWidget.h:163
QToolButton * myCanTakeMapFocus
Definition: locationReferenceEntryWidget.h:158
CursorOver
Definition: mapFocusHandler.h:37
static std::string headerFile()
Definition: locationReferenceEntryWidget.h:74
Definition: readerWriter.h:85
DtVrfFilteredListView * myFilteredListView
Definition: locationReferenceEntryWidget.h:154
LocationType
Definition: rwLocationReference.h:28
makVrv::DtSignalConnectionManager myConnections
Definition: locationReferenceEntryWidget.h:167
static std::string variableName()
Definition: locationReferenceEntryWidget.h:79
boost::signals2::signal< void()> signal_positionInputChanged
Signal sent when the tab selection changes for the input type.
Definition: locationReferenceEntryWidget.h:135
This widget will allow the user to pick either a destination location or destination object...
Definition: locationReferenceEntryWidget.h:32
QHBoxLayout * myTabBarLayout
Definition: locationReferenceEntryWidget.h:157
Basic implementation that has a label at the top.
Definition: taskSetVariableWidget.h:233
int myLastTabSelected
Definition: locationReferenceEntryWidget.h:165
static DtUnicode tr(const char *ascii)
Ascii translation function, used to be compatible with Qt&#39;s translation tools. This will simply call ...
Definition: DtUnicode.h:92
Definition: taskSetVariableWidget.h:426
QWidget * myContainerWidget
Definition: locationReferenceEntryWidget.h:156
A widget class for managing a DtVrfTreeWidget of objects which supports user-defined filters...
Definition: vrfFilteredListView.h:64
QFrame * myFocusFrame
Definition: locationReferenceEntryWidget.h:160
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtLocationEntryWidget * myLocationEntryWidget
Definition: locationReferenceEntryWidget.h:153
#define DT_DLL_VRFGUIDATAENTRYWIDGETS
Definition: vrfGuiDataEntryWidgets.h:22
Qt implementation of the cursor class. Will keep track of the Qt cursor.
Definition: DtQtCursor.h:24
virtual DtVrfFilteredListView * filteredListView()
Definition: locationReferenceEntryWidget.h:84
Base class that must be implemented by items that wish to be part of a map focus handler chain...
Definition: mapFocusHandler.h:27
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
static makVrv::DtUnicode codeVariableType()
Definition: locationReferenceEntryWidget.h:64
Base class to provide boost signal/slot management.
bool canTakeMapFocus() const
Methods implemented on behalf of being a map focus handler Sets whether or not the focus button has a...
Definition: locationReferenceEntryWidget.h:125
DtTaskSetVariableWidgetCreator< DtLocationReferenceEntryWidget > DtPositionEntryWidgetCreator
Definition: locationReferenceEntryWidget.h:172
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
Definition: locationEntryWidget.h:47
static std::string designerGroup()
Definition: locationReferenceEntryWidget.h:69
Extension interface for contents for definition of variables in the scripted task meta data variable ...
Definition: taskSetVariableWidget.h:84
QVBoxLayout * myFocusFrameLayout
Definition: locationReferenceEntryWidget.h:159

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)