15 #include <QtCore/QHash>
16 #include <QtGui/QImage>
17 #include <QtCore/QMap>
18 #include <QtCore/QString>
19 #include <QtCore/QVariant>
20 #include <QtWidgets/QMessageBox>
21 #include <QtWidgets/QItemDelegate>
26 #include <boost/function.hpp>
32 class DtEntityMapperKey;
67 void setCategories(
const std::vector<std::string>&);
68 void setUsedByCountry(
const QString&);
78 virtual void removeIgnoreObjectType(
const DtObjectType&);
85 std::vector<DtEntityFilterFunction> myFilterFunctions;
98 virtual QVariant data(
int column,
int role)
const;
105 bool isInMasterSMS()
const;
108 virtual void clearVisuals();
110 virtual void setShowWarning(
bool);
111 bool showWarning()
const
113 return myShowWarning;
116 virtual void setWarning(
const QString&);
117 const QString& warning()
const
123 virtual QImage getPixmap(
const DtObjectType& o,
int force)
const;
124 virtual void createGrayscaleForcePixmap()
const;
144 virtual void paint(QPainter *painter,
145 const QStyleOptionViewItem &option,
146 const QModelIndex &index)
const;
164 bool hasSelection()
const;
165 virtual void clear();
166 virtual std::set<makVrf::DtEntityMapperKey> getSelectedInformation()
const;
167 virtual std::set<makVrf::DtEntityMapperKey> getRevertableKeys()
const;
168 virtual void getSelectedInformation(
DtObjectType& key)
const;
173 virtual bool canRevertExisting()
const;
174 virtual bool canMakeTemplate()
const;
177 virtual bool canDeleteExisting(
bool any =
false)
const;
178 virtual bool selectedIsInMasterSMS()
const;
180 virtual bool canAddSubordinateToSelected()
const;
183 virtual bool hasCategory(
const QString&)
const;
185 virtual void select(
const std::vector<DtObjectType>&);
187 virtual std::vector<std::string> selectedCategories()
const;
189 virtual QString textFilter()
const;
190 virtual void setTextFilter(
const QString&);
193 virtual std::vector<DtObjectType> selectedObjectTypes()
const;
196 virtual void setSelected(
const QString&,
bool forceReselect =
true);
198 virtual void selectPath(
const QString& path);
200 virtual int selectedItemsCount()
const;
201 virtual bool selectedIsPartOfSimulationObjectGroup()
const;
202 virtual bool itemIsPartOfSimulationObjectGroup(
QTreeWidgetItem*)
const;
209 virtual void removeIgnoreObjectType(
const DtObjectType&);
210 virtual void clearIgnoreObjectTypes();
212 virtual void selectUncategorized();
213 virtual void selectCategory(
const QString&);
214 virtual void selectUsedByCountry(
const QString&);
219 virtual void setRightClickEnabled(
bool b);
220 bool rightClickEnabled()
const;
222 virtual void setShowWarningForFilteredItems(
bool b);
223 bool showWarningForFilteredItems()
const;
225 virtual QStringList selectedNames()
const;
226 virtual void selectNames(
const QStringList&);
232 virtual void setFilterOnForces(
const DtRwForces& forces);
241 virtual QString selectedUsedByCountry()
const;
242 virtual QString selectedPath()
const;
247 virtual void setShowIncluded(
bool);
248 bool showIncluded()
const
250 return myShowIncluded;
254 virtual void setShowAllTags(
bool);
255 bool showAllTags()
const
257 return myShowAllTags;
260 virtual DtObjectType stringToType(
const QString&)
const;
269 virtual void disableItemsThatHaveThisAsAChild(
const DtObjectType&);
270 virtual void enableAllItems();
276 bool executingFilter()
const;
277 virtual QSize sizeHint()
const;
278 virtual QSize minimumSizeHint()
const;
281 virtual void removeFromHierarchy();
282 virtual void moveUp();
283 virtual void moveDown();
284 virtual void replaceInHierarchy();
285 virtual void addNewSubordinate();
286 virtual void addNewSubordinateFromExisting();
287 virtual void addToHierarchy();
288 virtual void addSubordinatesFromPalette();
292 virtual void fillInList();
293 virtual void deleteExisting();
294 virtual void revertExisting();
295 virtual void executeFilter();
296 virtual void redisplayListIcons();
297 virtual void executeTextFilter();
298 virtual void selectionChanged();
299 virtual void copyListContentsToClipboard();
302 virtual void resetTextFilter();
303 virtual void exitAddSubordinatesFromPalette();
309 virtual void moveInHierarchy(
int iFrom,
int iTo,
QTreeWidgetItem* parent);
326 virtual void attachItemsToParent(
QTreeWidgetItem* parent,
const std::vector<LoadInformation>& toLoad);
335 virtual void createForcesList();
337 virtual void disableInvalidItems();
339 virtual void createTreeWidgetItemsFor(
const std::vector<LoadInformation>&, QVector<QTreeWidgetItem*>& items);
344 virtual void runHealthCheck();
345 virtual void updateHealthResults();
349 void healthCheckResults(
const QString&);
354 boost::signal<void (const QVector<QTreeWidgetItem*>&)> signal_itemsAdded;
399 void setBlockSelectionByKeypad(
bool b)
401 myBlockSelectionByKeypad = b;
404 bool blockSelectionByKeypad()
const
406 return myBlockSelectionByKeypad;
409 virtual void keyPressEvent(QKeyEvent*);
410 virtual void focusOutEvent(QFocusEvent* e);
418 virtual QStringList mimeTypes()
const;
419 virtual void dragEnterEvent(QDragEnterEvent *d);
420 virtual void dragMoveEvent(QDragMoveEvent *d);
421 virtual void dropEvent(QDropEvent* d);