VR-Forces 4.3.1 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 
36  typedef struct _DtEntityPaletteItem
37  {
38  std::string myName;
40  std::string myCategory;
41  std::vector<int> myForces;
42  std::set<std::string> myDeployedCountries;
43  }
45 
48  {
49  public:
51  virtual bool shouldAddCreationItem(const DtEntityPaletteItem&, const QString& category, const QString& deployedCountry,
52  int force) const = 0;
53  };
54 
56  {
57 
58  public:
59 
61  static DtEntityCreatePaletteLogic* create(makVrv::DtDe& de,
63 
65  virtual ~DtEntityCreatePaletteLogic();
66 
67  virtual void createAndAddItem(const std::string& name,
68  const DtEntityMapperKey& key,const std::string& category,const std::vector<int>& forces);
69 
71  virtual void removeItem(const DtEntityMapperKey& key);
72 
73  virtual void disconnectCreationSignal(bool disconnect);
74 
76  virtual void setFavorite(const DtEntityMapperKey&, bool);
77 
81  static void addPaletteFilter(DtPaletteFilter*);
82  static void removePaletteFilter(DtPaletteFilter*);
83 
84  protected:
87 
88  virtual void slot_postInitialize(makVrv::DtDe& de);
89  virtual void slot_modelSetChanged();
90  virtual void slot_categoryChanged(std::string newCategory);
91  virtual void slot_deployedCountryChanged(std::string newCategory);
92  virtual void slot_executeFilter();
93 
94  virtual void slot_selectedBackEndChanged(const DtSimulationAddress& old, const DtSimulationAddress& newaddr);
95  virtual void slot_backendUpdated(const DtVrfBackendState&, int);
96 
97  virtual void slot_createObject(const DtEntityMapperKey&);
98  virtual void slot_spotReportOptionsChanged(const DtVrfSpotReportsSettingsRecord&);
99 
100  protected:
101  virtual bool forceCanBeCreatedByUser(int) const;
102 
103  virtual bool shouldAddCreationItem(const DtEntityPaletteItem&, const QString& category, const QString& deployedCountry, int force) const;
104  virtual void enablePalette(int terrainPatchOffset = 0);
105  virtual void slot_terrainPatchToBeDeleted();
106  virtual void slot_terrainPatchAdded();
107  virtual void slot_sessionStatusChanged();
108 
109  protected:
112  std::vector<DtEntityPaletteItem> myItems;
115 
116  static std::vector<DtPaletteFilter*> thePaletteFilters;
117  std::map<int, std::string> myPotentialForces;
119  };
120 }

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)