VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
countrySelectionEntryWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
17 #include <vrvCore/DtForceManager.h>
18 #endif
19 #include <boost/signals2.hpp>
20 
21 #include <QtWidgets/QWidget>
22 
23 #include <set>
24 
25 class QPixmap;
26 class QLabel;
27 class QComboBox;
28 class QHBoxLayout;
29 class QSpacerItem;
30 
31 namespace makVrv
32 {
33  class DtDe;
34 }
35 
36 namespace makVrf
37 {
40  {
41  Q_OBJECT
42 
43  public:
44  DtCountrySelectionEntryWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0, const CreationFlags& cflags = NormalMode);
45 
46  //DTOR
48 
50  virtual void setLabel(const QString&);
51  virtual QString label() const;
52 
54  virtual void setLabel(const std::string&);
55 
57  virtual void setRange(double bottom, double top);
58 
61  virtual void setDefaultValue(const std::string&);
62 
64  virtual void setVariableData(const std::string&);
65 
67  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>& data);
68 
70  virtual void setToolTip(const QString&);
71 
73  virtual DtReaderWriter* createBoundVariable(const std::string& variableName);
74 
76  virtual void addCountry(const std::string& code, const std::string& countryName, const QPixmap& flag);
77 
79  virtual void setupFromBoundVariable(const DtReaderWriter* variableName);
80 
82  virtual void setCountryCode(const std::string&);
83 
85  virtual std::string countryCode() const;
86 
88  virtual QString countryName(bool translated = true) const;
89 
91  virtual void setIndent(int);
92 
94  virtual void setHasAll(bool);
95  bool hasAll() const
96  {
97  return myHasAll;
98  }
99 
101  virtual void setHasUncategorized(bool);
102  bool hasUncategoriezed() const
103  {
104  return myHasUncategorized;
105  }
106 
107  virtual void clear();
108 
110  virtual bool isValid() const
111  {
112  return true;
113  }
114 
116  {
117  return makVrv::DtUnicode::tr("String (country code)");
118  }
119 
120  static std::string designerGroup()
121  {
122  return tr("VR-Forces Entity Manipulation").toUtf8().constData();
123  }
124 
125  static std::string headerFile()
126  {
127  return tr("<vrfGuiDataEntryWidgets/countrySelectionEntryWidget.h>").toUtf8().constData();
128  }
129 
130  static std::string variableName()
131  {
132  return tr("countryCode").toUtf8().constData();
133  }
134 
135  static bool includeInQtDesigner()
136  {
137  return true;
138  }
139 
140  virtual std::string scriptedTaskVariableName() const;
141 
143  virtual void initializeCountries(bool immediate = false);
144 
145  boost::signals2::signal<void (std::string)> signal_countrySelectionChanged;
146 
147  virtual void setHideCountries(const std::set<std::string>& countryCodes);
148  const std::set<std::string>& hideCountries() const
149  {
150  return myHideCountries;
151  }
152 
155  virtual void setShowCountries(const std::set<std::string>& countryCodes);
156  const std::set<std::string>& showCountries() const
157  {
158  return myShowCountries;
159  }
160 
162  static std::string uncategorizedCode();
163 
165  static std::string allCode();
166 
168  virtual void setAllowNone(bool);
169  bool allowNone() const
170  {
171  return myAllowNone;
172  }
173 
174  protected slots:
175  virtual void activated(int);
176 
177  protected:
179  virtual std::string variableDataFromUiDesigner(const QDomElement&, const DtScriptedTaskVariableLayoutConverter&) const
180  {
181  return "";
182  }
183 
184  virtual void initialize();
185 
186  virtual void slot_countryAdded(const std::string& code);
187  virtual void slot_countryRemoved(const std::string& code);
188  virtual void slot_countriesReloaded();
189 
190  void setSelection(const std::set<makVrv::DtUniqueID>&) {};
191  void setSelection(const std::vector<makVrv::DtSimEntry*>&) {};
192  virtual void internalInitializeCountries();
193 
194  public:
197  QHBoxLayout* myContentLayout;
198  QSpacerItem* mySpacerItem;
199 
200  protected:
204  bool myHasAll;
206  std::set<std::string> myHideCountries;
207  std::set<std::string> myShowCountries;
209  boost::signals2::scoped_connection myInitializeCountriesConnection;
210  std::string myDefaultCountry;
211  };
212 
214 }
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
bool myHasAll
Definition: countrySelectionEntryWidget.h:204
std::set< std::string > myHideCountries
Definition: countrySelectionEntryWidget.h:206
CreationFlags
Definition: taskSetVariableWidget.h:119
bool myInitialized
Definition: countrySelectionEntryWidget.h:202
const std::set< std::string > & showCountries() const
Definition: countrySelectionEntryWidget.h:156
static std::string headerFile()
Definition: countrySelectionEntryWidget.h:125
This class will parse the UI file for known scripted task variable types and pull out specified scrip...
Definition: scriptedTaskVariableLayoutConverter.h:32
Definition: readerWriter.h:85
boost::signals2::signal< void(std::string)> signal_countrySelectionChanged
Definition: countrySelectionEntryWidget.h:145
static std::string variableName()
Definition: countrySelectionEntryWidget.h:130
std::set< std::string > myShowCountries
Definition: countrySelectionEntryWidget.h:207
void setSelection(const std::vector< makVrv::DtSimEntry * > &)
Definition: countrySelectionEntryWidget.h:191
static std::string designerGroup()
Definition: countrySelectionEntryWidget.h:120
makVrv::DtDe & myDe
Definition: countrySelectionEntryWidget.h:201
virtual bool isValid() const
Indicates the current selection is valid.
Definition: countrySelectionEntryWidget.h:110
const std::set< std::string > & hideCountries() const
Definition: countrySelectionEntryWidget.h:148
QComboBox * myCountry
Definition: countrySelectionEntryWidget.h:196
bool myHasUncategorized
Definition: countrySelectionEntryWidget.h:205
virtual std::string variableDataFromUiDesigner(const QDomElement &, const DtScriptedTaskVariableLayoutConverter &) const
Given the Ui designer properties create a string that will represent the variable data for those prop...
Definition: countrySelectionEntryWidget.h:179
QHBoxLayout * myContentLayout
Definition: countrySelectionEntryWidget.h:197
DtTaskSetVariableWidgetCreator< DtCountrySelectionEntryWidget > DtCountrySelectionEntryWidgetCreator
Definition: countrySelectionEntryWidget.h:213
static makVrv::DtUnicode codeVariableType()
Definition: countrySelectionEntryWidget.h:115
bool hasAll() const
Definition: countrySelectionEntryWidget.h:95
bool hasUncategoriezed() const
Definition: countrySelectionEntryWidget.h:102
QSpacerItem * mySpacerItem
Definition: countrySelectionEntryWidget.h:198
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
This class will define the interface needed for being a task set variable that can be used in task di...
Definition: taskSetVariableWidget.h:116
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
#define DT_DLL_VRFGUIDATAENTRYWIDGETS
Definition: vrfGuiDataEntryWidgets.h:22
bool allowNone() const
Definition: countrySelectionEntryWidget.h:169
Contains makVrv::DtForceManager class.
static bool includeInQtDesigner()
Definition: countrySelectionEntryWidget.h:135
std::string myDefaultCountry
Definition: countrySelectionEntryWidget.h:210
Base class to provide boost signal/slot management.
boost::signals2::scoped_connection myInitializeCountriesConnection
Definition: countrySelectionEntryWidget.h:209
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
Widget that allows the selection of a country.
Definition: countrySelectionEntryWidget.h:39
bool myAllowNone
Definition: countrySelectionEntryWidget.h:208
void setSelection(const std::set< makVrv::DtUniqueID > &)
The selection set can be used to determine the display units to show.
Definition: countrySelectionEntryWidget.h:190
makVrv::DtSignalConnectionManager myConnections
Definition: countrySelectionEntryWidget.h:203
QLabel * myCountryLabel
Definition: countrySelectionEntryWidget.h:195

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)