11 #if !defined(Q_MOC_RUN)
22 #include <QtCore/QHash>
23 #include <QtGui/QImage>
24 #include <QtCore/QMap>
25 #include <QtCore/QDir>
26 #include <QtCore/QString>
27 #include <QtCore/QVariant>
28 #include <QtWidgets/QMessageBox>
29 #include <QtWidgets/QStyledItemDelegate>
31 #include <boost/function.hpp>
39 class DtEntityMapperKey;
40 class DtCountrySelectionEntryWidget;
86 void setCategories(
const std::vector<std::string>&);
87 void setUsedByCountry(
const std::string&,
const std::string& countryName);
97 virtual void removeIgnoreObjectType(
const DtObjectType&);
104 std::vector<DtEntityFilterFunction> myFilterFunctions;
118 virtual QVariant data(
int column,
int role)
const;
125 bool isInMasterSMS()
const;
128 virtual void clearVisuals();
130 virtual void setShowWarning(
bool);
133 return myShowWarning;
136 virtual void setWarning(
const QString&);
143 virtual QImage getPixmap(
const DtObjectType& o,
int force)
const;
144 virtual void createGrayscaleForcePixmap()
const;
164 virtual void paint(QPainter *painter,
165 const QStyleOptionViewItem &option,
166 const QModelIndex &index)
const;
184 bool hasSelection()
const;
185 virtual void clear();
186 virtual std::set<makVrf::DtEntityMapperKey> getSelectedInformation()
const;
187 virtual std::set<makVrf::DtEntityMapperKey> getRevertableKeys()
const;
188 virtual void getSelectedInformation(
DtObjectType& key)
const;
191 virtual std::vector<DtEntityPaletteItem*> itemsFor(
const DtEntityType& t)
const;
193 virtual bool canRevertExisting()
const;
194 virtual bool canMakeTemplate()
const;
196 virtual bool addNewData(
const std::vector<DtSimulationModelSetLoader::EntityData*>&);
199 virtual bool canDeleteExisting(
bool any =
false)
const;
200 virtual bool selectedIsInMasterSMS()
const;
201 virtual bool selectedParentIsInMasterSMS()
const;
203 virtual bool canAddSubordinateToSelected()
const;
206 virtual bool hasCategory(
const QString&)
const;
208 virtual void select(
const std::vector<DtObjectType>&);
210 virtual std::vector<std::string> selectedCategories()
const;
212 virtual QString textFilter()
const;
213 virtual void setTextFilter(
const QString&);
216 virtual std::vector<DtObjectType> selectedObjectTypes()
const;
219 virtual void setSelected(
const QString&,
bool forceReselect =
true);
221 virtual void selectPath(
const QString& path);
223 virtual int selectedItemsCount()
const;
224 virtual bool selectedIsPartOfSimulationObjectGroup()
const;
225 virtual bool itemIsPartOfSimulationObjectGroup(
QTreeWidgetItem*)
const;
227 virtual void addAllItems();
229 virtual void updateUsedByCountries();
235 virtual void removeIgnoreObjectType(
const DtObjectType&);
236 virtual void clearIgnoreObjectTypes();
238 virtual void selectUncategorized();
239 virtual void selectCategory(
const QString&);
240 virtual void selectUsedByCountry(
const std::string&);
241 virtual QColor outlineColor()
const;
246 virtual void setRightClickEnabled(
bool b);
247 bool rightClickEnabled()
const;
249 virtual void setShowWarningForFilteredItems(
bool b);
250 bool showWarningForFilteredItems()
const;
252 virtual QStringList selectedNames()
const;
253 virtual void selectNames(
const QStringList&);
259 virtual void setFilterOnForces(
const DtRwForces& forces);
268 virtual QString selectedUsedByCountry()
const;
269 virtual std::string selectedCountryCode()
const;
270 virtual QString selectedPath()
const;
275 virtual void setShowIncluded(
bool);
278 return myShowIncluded;
282 virtual void setShowAllTags(
bool);
285 return myShowAllTags;
297 virtual void disableItemsThatHaveThisAsAChild(
const DtObjectType&);
298 virtual void enableAllItems();
304 bool executingFilter()
const;
305 virtual QSize sizeHint()
const;
306 virtual QSize minimumSizeHint()
const;
309 virtual void removeFromHierarchy();
310 virtual void moveUp();
311 virtual void moveDown();
312 virtual void replaceInHierarchy();
313 virtual void addNewSubordinate();
314 virtual void addNewSubordinateFromExisting();
315 virtual void addToHierarchy();
316 virtual void addSubordinatesFromPalette();
320 virtual void fillInList();
321 virtual void deleteExisting();
322 virtual void revertExisting();
323 virtual void executeFilter();
324 virtual void redisplayListIcons();
325 virtual void executeTextFilter();
326 virtual void selectionChanged();
327 virtual void copyListContentsToClipboard();
330 virtual void resetTextFilter();
331 virtual void exitAddSubordinatesFromPalette();
338 virtual void resetParentVisibility();
339 virtual void moveInHierarchy(
int iFrom,
int iTo,
QTreeWidgetItem* parent);
356 virtual void attachItemsToParent(
QTreeWidgetItem* parent,
const std::vector<LoadInformation>& toLoad);
365 virtual void createForcesList();
366 virtual void preloadModelSet();
369 virtual void disableInvalidItems();
371 virtual void createTreeWidgetItemsFor(
const std::vector<LoadInformation>&, QVector<QTreeWidgetItem*>& items,
bool attachToRootNode =
true);
376 virtual void runHealthCheck();
377 virtual void updateHealthResults();
381 void healthCheckResults(
const QString&);
386 boost::signals2::signal<void (const QVector<QTreeWidgetItem*>&)> signal_itemsAdded;
418 std::map<DtModelSetEntry*, DtEntityPaletteItem*>
myItems;
432 Q_PROPERTY(QColor OutlineColor MEMBER myOutlineColor USER
true)
440 myBlockSelectionByKeypad = b;
445 return myBlockSelectionByKeypad;
448 virtual void keyPressEvent(QKeyEvent*);
449 virtual void focusOutEvent(QFocusEvent* e);
456 return myOutlineColor;
465 virtual QStringList mimeTypes()
const;
466 virtual void dragEnterEvent(QDragEnterEvent *d);
467 virtual void dragMoveEvent(QDragMoveEvent *d);
468 virtual void dropEvent(QDropEvent* d);
Definition: simulationModelSetLoader.h:166
std::vector< QTreeWidgetItem * > myItemsToGrab
Definition: simulationObjectEditorList.h:400
boost::signals2::signal< void()> signal_itemSelectionChanged
Definition: simulationObjectEditorList.h:384
QImage myForcePixmap
Definition: simulationObjectEditorList.h:149
Definition: entityMapperKey.h:23
const DtRwForces & filterOnForces() const
Definition: simulationObjectEditorList.h:496
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
std::set< std::string > myCategories
Definition: simulationObjectEditorList.h:105
Definition: simulationObjectEditorList.h:68
Definition: simulationObjectEditorList.h:79
QList< QVariant > myForces
Definition: simulationObjectEditorList.h:394
virtual void clearIgnoreObjectTypes()
Clears the list of object types to ignore.
Definition: simulationObjectEditorList.h:94
bool myShowWarningForFilteredItems
Definition: simulationObjectEditorList.h:422
bool myInFreeFormAddMode
Definition: simulationObjectEditorList.h:414
Definition: simulationObjectEditorList.h:71
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
const QList< QVariant > & allForces() const
Definition: simulationObjectEditorList.h:501
bool showAllTags() const
Definition: simulationObjectEditorList.h:283
std::set< DtString > myTopLevelTags
Definition: simulationObjectEditorList.h:410
const QString & warning() const
Definition: simulationObjectEditorList.h:137
DtObjectType myDisableIfContains
Definition: simulationObjectEditorList.h:412
DtVrfSubObjectParameterList is a readable/writable list of DtVrfSubObjectParameterEntrys.
Definition: vrfSubObjectParameterList.h:21
bool myExecutingFilter
Definition: simulationObjectEditorList.h:416
boost::function< bool(const DtModelSetEntry *, bool &showWarningIcon)> DtEntityFilterFunction
Definition: simulationObjectEditorList.h:75
DtSimulationObjectEditorList * myPaletteParent
Definition: simulationObjectEditorList.h:147
boost::signals2::signal< void()> signal_itemStatusChanged
Definition: simulationObjectEditorList.h:385
DtEntityPaletteFilter * myFilter
Definition: simulationObjectEditorList.h:392
virtual void setRightClickEnabled(bool b)
Definition: simulationObjectEditorList.h:476
bool myShowIncluded
Definition: simulationObjectEditorList.h:420
bool showIncluded() const
Definition: simulationObjectEditorList.h:276
makVrv::DtDe & myDe
Definition: simulationObjectEditorList.h:536
virtual ~DtSimulationObjectEditorListItemDelegate()
Definition: simulationObjectEditorList.h:161
std::map< DtString, bool > myExpandedStates
Definition: simulationObjectEditorList.h:417
DtRwForces myFilterOnForces
Definition: simulationObjectEditorList.h:108
Description: A model is a set of items that defines a model to create in the back-end from the front-...
Definition: simulationObjectGroupModelSetEntry.h:161
QTreeWidget * entityList()
Definition: simulationObjectEditorList.h:491
std::set< DtString > myIgnoreObjectTypes
Definition: simulationObjectEditorList.h:111
Definition: objectType.h:27
makVrf::DtCountrySelectionEntryWidget * myUsedByCountry
Definition: simulationObjectEditorList.h:391
Definition: modelSetEntry.h:34
virtual DtEntityPaletteFilter * clone() const
Definition: simulationObjectEditorList.h:99
Contains makVrv::DtVirtualBaseClass class.
std::string myCountryName
Definition: simulationObjectEditorList.h:107
DtObjectType mySelectObjectTypeIfAvailable
Definition: simulationObjectEditorList.h:419
makVrv::DtSignalConnectionManager myConnections
Definition: simulationObjectEditorList.h:425
bool myShowAllTags
Definition: simulationObjectEditorList.h:421
Definition: simulationObjectEditorList.h:66
QSplitter * mySplitter
Definition: simulationObjectEditorList.h:406
QTreeWidgetItem * myGrabbing
Definition: simulationObjectEditorList.h:401
makVrv::DtSignalConnectionManager myEntryConnections
Definition: simulationObjectEditorList.h:426
Definition: simulationObjectEditorList.h:70
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
bool rightClickEnabled() const
Definition: simulationObjectEditorList.h:481
Definition: simulationObjectEditorList.h:72
QTreeWidgetItem * myNextAddIsTo
Definition: simulationObjectEditorList.h:399
bool myDisableIfContainsObject
Definition: simulationObjectEditorList.h:413
QString myWarning
Definition: simulationObjectEditorList.h:153
DtDisplayWidget * displayWidget
Definition: simulationObjectEditorList.h:393
Definition: simulationObjectEditorList.h:114
bool executingFilter() const
Definition: simulationObjectEditorList.h:511
QImage * myWarningIcon
Definition: simulationObjectEditorList.h:154
DtModelSetEntry * mySelectedModel
Definition: simulationObjectEditorList.h:398
Description: A readable, writable list of DtForceType.
Definition: rwForces.h:34
std::map< std::string, QTreeWidgetItem * > myTopLevelItems
Definition: simulationObjectEditorList.h:411
DtAddObjectToHierarchy * myAddToHierarchyDialog
Definition: simulationObjectEditorList.h:397
bool myShowWarning
Definition: simulationObjectEditorList.h:152
makVrf::DtSearchWidget * mySearchWidget
Definition: simulationObjectEditorList.h:404
Base class to provide boost signal/slot management.
QString myForcePixmapKey
Definition: simulationObjectEditorList.h:148
QTreeWidgetItem * myCurrentlySelectedBeforeGrab
Definition: simulationObjectEditorList.h:402
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtSimulationObjectEditorTagSelectorWidget * myTags
Definition: simulationObjectEditorList.h:390
std::string myUsedByCountry
Definition: simulationObjectEditorList.h:106
Definition: simulationObjectEditorList.h:69
std::map< DtModelSetEntry *, DtEntityPaletteItem * > myItems
Definition: simulationObjectEditorList.h:418
The DtUiElement class is the base for which all UI elements are defined. If you wish to create a new ...
Definition: uiElement.h:97
Creator for the list.
Definition: simulationObjectEditorList.h:517
makVrv::DtDe & myDe
Definition: simulationObjectEditorList.h:424
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:72
makVrv::DtDe & myDe
Definition: simulationObjectEditorList.h:151
Definition: addObjectToHierarchy.h:20
void setPaletteParent(DtSimulationObjectEditorList *p)
Definition: simulationObjectEditorList.h:123
Definition: simulationObjectEditorList.h:169
Widget that allows the selection of a country.
Definition: countrySelectionEntryWidget.h:39
DtRwForces myFilterOnForces
Definition: simulationObjectEditorList.h:395
DtSimulationObjectEditorListItemDelegate(QWidget *parent)
Definition: simulationObjectEditorList.h:160
makVrf::DtTreeWidget * myEntities
Definition: simulationObjectEditorList.h:389
DtSimulationObjectEditorListRoles
Definition: simulationObjectEditorList.h:64
bool showWarning() const
Definition: simulationObjectEditorList.h:131
makVrv::DtDe & myDe
Definition: simulationObjectEditorList.h:109
bool hasSelection() const
Definition: simulationObjectEditorList.h:486
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:33
QTreeWidgetItem * currentlyDisplaying() const
Definition: simulationObjectEditorList.h:506
QWidget * myControlsWidget
Definition: simulationObjectEditorList.h:407
QImage myGrayscaleForcePixmap
Definition: simulationObjectEditorList.h:150
bool myRightClickEnabled
Definition: simulationObjectEditorList.h:396
QTreeWidgetItem * myCurrentlyDisplaying
Definition: simulationObjectEditorList.h:415
Definition: simulationObjectEditorList.h:157
Definition: simulationObjectEditorList.h:67