VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
entityCreatePaletteLogic.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
16 #include <vrvCore/DtMenuPath.h>
18 
19 #include <vector>
20 #include <set>
21 
22 class DtSimulationAddress;
23 class QString;
24 
25 namespace makVrv
26 {
27  class DtDe;
28 }
29 
30 namespace makVrf
31 {
32  class DtVrfBackendState;
33 
34  class DtEntityCreatePaletteInterface;
35 
37  {
42 
43  std::string myName;
45  std::string myCategory;
46  std::vector<int> myForces;
47  std::set<std::string> myDeployedCountries;
48  std::string myDescription;
50  };
51 
54  {
55  public:
57  virtual bool shouldAddCreationItem(const DtEntityPaletteItem&, const QString& category, const QString& deployedCountry,
58  int force) const = 0;
59  };
60 
62  {
63 
64  public:
65 
67  static DtEntityCreatePaletteLogic* create(makVrv::DtDe& de,
69 
71  virtual ~DtEntityCreatePaletteLogic();
72 
73  virtual void createAndAddItem(const std::string& name,
74  const DtEntityMapperKey& key,const std::string& category,const std::vector<int>& forces,
75  const std::string& description = "", int itemsToCreate = 0);
76 
78  virtual void removeItem(const DtEntityMapperKey& key, bool matchesPattern = false);
79 
80  virtual void disconnectCreationSignal(bool disconnect);
81 
83  virtual void setFavorite(const DtEntityMapperKey&, bool);
84 
88  static void addPaletteFilter(DtPaletteFilter*);
89  static void removePaletteFilter(DtPaletteFilter*);
90 
91  protected:
94 
95  virtual void slot_postInitialize(makVrv::DtDe& de);
96  virtual void slot_modelSetChanged();
97  virtual void slot_categoryChanged(std::string newCategory);
98  virtual void slot_deployedCountryChanged(std::string newCategory);
99  virtual void slot_executeFilter();
100 
101  virtual void slot_selectedBackEndChanged(const DtSimulationAddress& old, const DtSimulationAddress& newaddr);
102  virtual void slot_backendUpdated(const DtVrfBackendState&, int);
103 
104  virtual void slot_createObject(const DtEntityMapperKey&);
105  virtual void slot_spotReportOptionsChanged(const DtVrfSpotReportsSettingsRecord&);
106 
107  protected:
108  virtual bool forceCanBeCreatedByUser(int) const;
109 
110  virtual bool shouldAddCreationItem(const DtEntityPaletteItem&, const QString& category, const QString& deployedCountry, int force) const;
111  virtual void enablePalette(int terrainPatchOffset = 0);
112  virtual void slot_terrainPatchToBeDeleted();
113  virtual void slot_terrainPatchAdded();
114  virtual void slot_sessionStatusChanged();
115 
116  protected:
119  std::vector<DtEntityPaletteItem> myItems;
122 
123  static std::vector<DtPaletteFilter*> thePaletteFilters;
124  std::map<int, std::string> myPotentialForces;
126  std::vector<DtEntityType> myRemoveItems;
127  };
128 }

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)