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
47  virtual ~DtCountrySelectionEntryWidget() override;
48 
50  virtual void setLabel(const QString&) override;
51  virtual QString label() const;
52 
54  virtual void setLabel(const std::string&) override;
55 
57  virtual void setRange(double bottom, double top) override;
58 
61  virtual void setDefaultValue(const std::string&) override;
62 
64  virtual void setVariableData(const std::string&) override;
65 
67  virtual void setupFrom(const std::set<makVrv::DtUniqueID>& data) override;
68 
70  virtual void setToolTip(const QString&) override;
71 
73  virtual DtReaderWriter* createBoundVariable(const std::string& variableName) override;
74 
76  virtual void addCountry(const std::string& code, const std::string& countryName, const QPixmap& flag);
77 
79  virtual void setupFromBoundVariable(const DtReaderWriter* variableName) override;
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) override;
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 override {
111  return true;
112  }
113 
115  {
116  return makVrv::DtUnicode::tr("String (country code)");
117  }
118 
119  static std::string designerGroup()
120  {
121  return tr("VR-Forces Entity Manipulation").toUtf8().constData();
122  }
123 
124  static std::string headerFile()
125  {
126  return tr("<vrfGuiDataEntryWidgets/countrySelectionEntryWidget.h>").toUtf8().constData();
127  }
128 
129  static std::string variableName()
130  {
131  return tr("countryCode").toUtf8().constData();
132  }
133 
134  static bool includeInQtDesigner()
135  {
136  return true;
137  }
138 
139  virtual std::string scriptedTaskVariableName() const override;
140 
142  virtual void initializeCountries(bool immediate = false);
143 
144  boost::signals2::signal<void (std::string)> signal_countrySelectionChanged;
145 
146  virtual void setHideCountries(const std::set<std::string>& countryCodes);
147  const std::set<std::string>& hideCountries() const
148  {
149  return myHideCountries;
150  }
151 
154  virtual void setShowCountries(const std::set<std::string>& countryCodes);
155  const std::set<std::string>& showCountries() const
156  {
157  return myShowCountries;
158  }
159 
161  static std::string uncategorizedCode();
162 
164  static std::string allCode();
165 
167  virtual void setAllowNone(bool);
168  bool allowNone() const
169  {
170  return myAllowNone;
171  }
172 
173  protected slots:
174  virtual void activated(int);
175 
176  protected:
178  virtual std::string variableDataFromUiDesigner(
179  const QDomElement&, const DtScriptedTaskVariableLayoutConverter&) const override
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  virtual void setSelection(const std::set<makVrv::DtUniqueID>&) override {};
191  virtual void internalInitializeCountries();
192 
193  public:
196  QHBoxLayout* myContentLayout;
197  QSpacerItem* mySpacerItem;
198 
199  protected:
203  bool myHasAll;
205  std::set<std::string> myHideCountries;
206  std::set<std::string> myShowCountries;
208  boost::signals2::scoped_connection myInitializeCountriesConnection;
209  std::string myDefaultCountry;
210  };
211 
213 }
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:203
std::set< std::string > myHideCountries
Definition: countrySelectionEntryWidget.h:205
CreationFlags
Definition: taskSetVariableWidget.h:118
bool myInitialized
Definition: countrySelectionEntryWidget.h:201
const std::set< std::string > & showCountries() const
Definition: countrySelectionEntryWidget.h:155
virtual void setSelection(const std::set< makVrv::DtUniqueID > &) override
The selection set can be used to determine the display units to show.
Definition: countrySelectionEntryWidget.h:190
static std::string headerFile()
Definition: countrySelectionEntryWidget.h:124
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:144
static std::string variableName()
Definition: countrySelectionEntryWidget.h:129
std::set< std::string > myShowCountries
Definition: countrySelectionEntryWidget.h:206
static std::string designerGroup()
Definition: countrySelectionEntryWidget.h:119
makVrv::DtDe & myDe
Definition: countrySelectionEntryWidget.h:200
const std::set< std::string > & hideCountries() const
Definition: countrySelectionEntryWidget.h:147
QComboBox * myCountry
Definition: countrySelectionEntryWidget.h:195
bool myHasUncategorized
Definition: countrySelectionEntryWidget.h:204
QHBoxLayout * myContentLayout
Definition: countrySelectionEntryWidget.h:196
virtual bool isValid() const override
Indicates the current selection is valid.
Definition: countrySelectionEntryWidget.h:110
DtTaskSetVariableWidgetCreator< DtCountrySelectionEntryWidget > DtCountrySelectionEntryWidgetCreator
Definition: countrySelectionEntryWidget.h:212
static makVrv::DtUnicode codeVariableType()
Definition: countrySelectionEntryWidget.h:114
bool hasAll() const
Definition: countrySelectionEntryWidget.h:95
bool hasUncategoriezed() const
Definition: countrySelectionEntryWidget.h:102
QSpacerItem * mySpacerItem
Definition: countrySelectionEntryWidget.h:197
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:422
This class will define the interface needed for being a task set variable that can be used in task di...
Definition: taskSetVariableWidget.h:115
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:168
Contains makVrv::DtForceManager class.
static bool includeInQtDesigner()
Definition: countrySelectionEntryWidget.h:134
std::string myDefaultCountry
Definition: countrySelectionEntryWidget.h:209
Base class to provide boost signal/slot management.
boost::signals2::scoped_connection myInitializeCountriesConnection
Definition: countrySelectionEntryWidget.h:208
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:76
Widget that allows the selection of a country.
Definition: countrySelectionEntryWidget.h:39
bool myAllowNone
Definition: countrySelectionEntryWidget.h:207
virtual std::string variableDataFromUiDesigner(const QDomElement &, const DtScriptedTaskVariableLayoutConverter &) const override
Given the Ui designer properties create a string that will represent the variable data for those prop...
Definition: countrySelectionEntryWidget.h:178
makVrv::DtSignalConnectionManager myConnections
Definition: countrySelectionEntryWidget.h:202
QLabel * myCountryLabel
Definition: countrySelectionEntryWidget.h:194

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)