16 #include <QtCore/QString>
23 #include <boost/signals2.hpp>
25 class DtSimulationAddress;
37 class DtVrfBackendState;
38 class DtPaletteFilter;
40 class DtCreateObjectPaletteInterface;
56 virtual void createAndAddItem(
const std::string& name,
57 const DtEntityMapperKey& key,
const std::set<std::string>& categories,
const std::vector<int>& forces,
58 const std::string& description =
"",
int itemsToCreate = 0,
const std::string& topLevelTag =
"",
const QString& shortName =
"");
61 virtual void removeItem(
const DtEntityMapperKey& key,
bool matchesPattern =
false);
63 virtual void disconnectCreationSignal(
bool disconnect);
80 virtual void setShowNonCreatableUnits(
bool);
83 virtual void addIgnore(
const DtEntityType&);
86 virtual void clearIgnore();
89 virtual const std::vector<DtEntityType>& ignoring()
const;
92 virtual void setIgnore(
const std::vector<DtEntityType>&);
94 virtual void slot_defaultIconListChanged();
99 virtual void slot_modelSetChanged();
100 virtual void slot_categoriesChanged(std::vector<std::string> newCategories);
101 virtual void slot_deployedCountryChanged(std::string newCategory);
102 virtual void slot_executeFilter();
104 virtual void slot_selectedBackEndChanged(
const DtSimulationAddress& old,
const DtSimulationAddress& newaddr);
113 virtual bool ignoreType(
const DtEntityType&)
const;
115 virtual bool forceCanBeCreatedByUser(
int)
const;
117 virtual bool shouldAddCreationItem(
const DtCreateObjectPaletteItem&,
const std::set<std::string>& categories,
const std::string& deployedCountry,
int force)
const;
118 virtual void enablePalette(
int terrainPatchOffset = 0);
119 virtual void slot_terrainPatchToBeDeleted();
120 virtual void slot_terrainPatchAdded();
121 virtual void slot_sessionStatusChanged();
124 virtual void slot_forceChanged();
128 virtual void delayedExecuteFilter();
129 virtual void addAllItems();
134 typedef std::map<std::string, std::set<DtCreateObjectPaletteItemHandle> >
CategoriesMap;
136 std::vector<DtCreateObjectPaletteItemHandle>
myItems;
152 int myCurrentlySelectedForce = -1;
153 bool myItemsCreated =
false;
Definition: vrfBackendState.h:65
std::shared_ptr< DtCreateObjectPaletteItem > DtCreateObjectPaletteItemHandle
Definition: createObjectPaletteLogic.h:41
Definition: entityMapperKey.h:19
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
DtCreateObjectPaletteInterface * myInterface
Definition: createObjectPaletteLogic.h:133
std::vector< std::string > myCategoriesToResetTo
Definition: createObjectPaletteLogic.h:139
Registered creator for the create object palette logic item class.
Definition: createObjectPaletteLogic.h:157
bool myShowNonCreatableUnits
Definition: createObjectPaletteLogic.h:146
Definition: createObjectPaletteLogic.h:45
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
makVrv::DtMenuPath myOrderedPath
Definition: createObjectPaletteLogic.h:137
void slot_postInitialize(makVrv::DtDe &de)
std::vector< DtPaletteFilter * > myLocalPaletteFilters
Definition: createObjectPaletteLogic.h:142
static std::vector< DtPaletteFilter * > theGlobalPaletteFilters
Definition: createObjectPaletteLogic.h:141
Definition: modelSetEntry.h:34
Contains makVrv::DtVirtualBaseClass class.
std::vector< DtEntityType > myRemoveItems
Definition: createObjectPaletteLogic.h:145
makVrv::DtDe & myDe
Definition: createObjectPaletteLogic.h:132
bool showNonCreatableUnits() const
Whether or not non creatable units should be shown in this palette, if they are set to be displayable...
Definition: createObjectPaletteLogic.h:79
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
makVrv::DtSignalConnectionManager myConnectionManager
Definition: createObjectPaletteLogic.h:144
bool myAllowOverlays
Definition: createObjectPaletteLogic.h:138
Logic for adding items to the object creation palette. Add a DtPaletteFilter to filter beyond the cat...
Definition: createObjectPaletteFilters.h:44
std::set< DtString > myTopLevelTags
Definition: createObjectPaletteLogic.h:151
Base class to provide boost signal/slot management.
std::vector< DtEntityType > myToIgnore
Definition: createObjectPaletteLogic.h:150
std::map< std::string, std::set< DtCreateObjectPaletteItemHandle > > CategoriesMap
Definition: createObjectPaletteLogic.h:134
CategoriesMap myCategoriesMap
Definition: createObjectPaletteLogic.h:135
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
boost::signals2::scoped_connection myDelayedExecuteFilterConnection
Definition: createObjectPaletteLogic.h:148
std::map< int, std::string > myPotentialForces
Definition: createObjectPaletteLogic.h:143
std::vector< DtCreateObjectPaletteItemHandle > myItems
Definition: createObjectPaletteLogic.h:136
Definition: createObjectPaletteFilters.h:22
Abstract interface for the object creation palette.
Definition: createObjectPaletteInterface.h:29
makVrv::DtDe & myDe
Definition: createObjectPaletteLogic.h:172