VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
createObjectPaletteInterface.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
7 
8 #pragma once
9 
12 #include <QtCore/QString>
13 #include <QtGui/QColor>
16 #include <boost/signals2.hpp>
17 
18 #include <set>
19 
20 class QTreeWidgetItem;
21 
22 namespace makVrf
23 {
24  class DtEntityMapperKey;
25 
26  struct DtCreateObjectPaletteItem;
27 
30  {
31  public:
32  enum Roles
33  {
34  DescriptionRole = Qt::UserRole,
35  CategoriesRole = Qt::UserRole + 1,
36  VisibilityRole = Qt::UserRole + 2,
37  RankRole = Qt::UserRole + 3,
38  TopLevelItemRole = Qt::UserRole + 4,
39  ShortNameRole = Qt::UserRole + 5
40  };
41 
44 
46  virtual QString currentForce() const = 0;
47 
49  virtual int currentForceType() const = 0;
50 
52  virtual int forceTypeAtIndex(int) const = 0;
53 
55  virtual std::vector<std::string> currentCategories() const = 0;
56 
58  virtual std::string currentDeployedCountry() const = 0;
59 
61  virtual int numForces() const = 0;
62 
64  virtual int numCategories() const = 0;
65 
67  virtual void addForce(const QString&, int, const QColor&, const std::string& countryCode, bool forceLayout = false) = 0;
68 
70  virtual QString force(int) const = 0;
71 
73  virtual bool hasForce(int) const = 0;
74 
76  virtual bool hasDeployedCountries() const = 0;
77 
79  virtual bool hasCategory(const QString&) const = 0;
80 
82  virtual void resetVisuals() = 0;
83 
85  virtual void setHideCountries(const std::set<std::string>&) = 0;
86 
89  virtual void setCategoriesFromCounts(const std::map<std::string, int>& counts, const std::set<std::string>& categoriesReferenced, int totalItems,
90  const std::vector<std::string>& categoriesToResetTo = std::vector<std::string>()) = 0;
91 
94  virtual void setCategories(const DtTagSelectorWidget::Categories&) = 0;
95 
97  virtual void selectDeployedCountry(const std::string&) = 0;
98 
100  virtual void initializeCountries() = 0;
101 
103  virtual void selectDeployedCountry(int) = 0;
104 
106  virtual void selectForce(const QString&) = 0;
107 
109  virtual void selectForce(int) = 0;
110 
112  virtual void showForce(bool) = 0;
113 
115  virtual void selectCategories(const std::vector<std::string>&) = 0;
116 
118  virtual void clearCreateList() = 0;
119 
121  virtual void sortItems() = 0;
122 
124  virtual DtString topLevelCategory(int) const = 0;
125 
126  virtual QTreeWidgetItem* itemFor(const DtCreateObjectPaletteItem& paletteItem, int force) const = 0;
127 
129  virtual void sizeColumns() = 0;
130 
132  virtual void addItem(const DtCreateObjectPaletteItem&, int force) = 0;
133 
136  virtual void addPaletteItem(const DtCreateObjectPaletteItem&) = 0;
137 
139  virtual void removePaletteItem(const DtEntityMapperKey& key, bool matchesPattern = false) = 0;
140 
142  virtual void filterItems() = 0;
143 
145  virtual const std::string& pageClassName() const = 0;
146 
148  virtual void clearForces() = 0;
149 
151  virtual void clearDeployedCountries() = 0;
152 
154  virtual void clearCategories() = 0;
155 
157  virtual DtEntityMapperKey selectedObjectType() const = 0;
158 
160  virtual std::vector<DtEntityMapperKey> selectedObjects() const = 0;
161 
163  virtual void selectObject(const DtEntityMapperKey& key) = 0;
164 
165  public:
166  boost::signals2::signal<void ()> signal_closeEvent;
167  boost::signals2::signal<void ()> signal_paletteCleared;
168  boost::signals2::signal<void ()> signal_forceChanged;
169  boost::signals2::signal<void (std::vector<std::string>)> signal_categoriesChanged;
170  boost::signals2::signal<void (std::string)> signal_deployedCountryChanged;
171  boost::signals2::signal<void (const DtEntityMapperKey&)> signal_createObject;
172  boost::signals2::signal<void (const DtEntityMapperKey&)> signal_executedFilter;
173 
174  boost::signals2::signal<void ()> signal_itemsAdded;
175  boost::signals2::signal<void (std::string, const DtEntityMapperKey&)> signal_itemSelected;
176 
177  boost::signals2::signal<void (DtCreateObjectPaletteInterface*)> signal_updated;
178 
179  boost::signals2::signal<void ()> signal_modelSetChanged;
180  };
181 }
Definition: entityMapperKey.h:23
boost::signals2::signal< void(DtCreateObjectPaletteInterface *)> signal_updated
Definition: createObjectPaletteInterface.h:177
Definition: simulationObjectEditorList.h:68
boost::signals2::signal< void(std::string, const DtEntityMapperKey &)> signal_itemSelected
Definition: createObjectPaletteInterface.h:175
Definition: simulationObjectEditorList.h:71
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
boost::signals2::signal< void(std::string)> signal_deployedCountryChanged
Definition: createObjectPaletteInterface.h:170
Roles
Definition: createObjectPaletteInterface.h:32
boost::signals2::signal< void(const DtEntityMapperKey &)> signal_executedFilter
Definition: createObjectPaletteInterface.h:172
boost::signals2::signal< void()> signal_modelSetChanged
Definition: createObjectPaletteInterface.h:179
boost::signals2::signal< void()> signal_itemsAdded
Definition: createObjectPaletteInterface.h:174
Definition: simulationObjectEditorList.h:70
Definition: simulationObjectEditorList.h:72
Abstract interface for the creation palettes.
Definition: genericPaletteInterface.h:28
std::map< int, CategoriesByCategory > Categories
Map by rank of the categories. Note that rank 0 means this is a top level category icon...
Definition: tagSelectorWidget.h:206
boost::signals2::signal< void()> signal_forceChanged
Definition: createObjectPaletteInterface.h:168
boost::signals2::signal< void(const DtEntityMapperKey &)> signal_createObject
Definition: createObjectPaletteInterface.h:171
Definition: simulationObjectEditorList.h:69
boost::signals2::signal< void()> signal_paletteCleared
Definition: createObjectPaletteInterface.h:167
boost::signals2::signal< void()> signal_closeEvent
Definition: createObjectPaletteInterface.h:166
Definition: createObjectPaletteFilters.h:22
Abstract interface for the object creation palette.
Definition: createObjectPaletteInterface.h:29

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)