Salome HOME
refs #1327: debug of scaling operations
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_ListModel.h
index 11fd1dfa3fcb0cafd28fe0eea9da80a91fb2b520..f8246036bb41fbddfd441ba776d2f5783daf5bb3 100644 (file)
@@ -23,6 +23,8 @@
 #include <HYDROData_Entity.h>
 #include <QAbstractListModel>
 #include <QPixmap>
+#include <QMap>
+#include <QColor>
 
 const int HYDROGUI_VisibleRole = Qt::UserRole + 1;
 const int HYDROGUI_EntryRole   = Qt::UserRole + 2;
@@ -33,8 +35,6 @@ const int HYDROGUI_EntryRole   = Qt::UserRole + 2;
  */
 class HYDRO_EXPORT HYDROGUI_ListModel : public QAbstractListModel
 {
-  Q_OBJECT
-
 public:
   enum OpType { Top, Up, Down, Bottom, DragAndDrop };
 
@@ -59,6 +59,7 @@ public:
   virtual bool dropMimeData( const QMimeData* theData, Qt::DropAction theAction,
                              int theRow, int theColumn, const QModelIndex& theParent );
   virtual Qt::DropActions supportedDropActions() const;
+  virtual Qt::DropActions supportedDragActions() const;
 
   QList<int> getIds( const QModelIndexList& theIndexes, bool theIsToSort = true ) const;
 
@@ -75,6 +76,12 @@ public:
 
   void setDecorationEnabled( const bool theIsToEnable );
 
+  void undoLastMove();
+
+  void setBackgroundColor(int theInd, const QColor theColor);
+  QColor getBackgroundColor(int theInd) const;
+  void clearAllBackgroundColors ();
+
 protected:
   bool isObjectVisible( int theIndex ) const;
   bool isDragAndDropAllowed( const QList<int>& theItems, const int theDropItem ) const;
@@ -82,10 +89,11 @@ protected:
 private:
   friend class test_HYDROGUI_ListModel;
 
-  Object2VisibleList myObjects;
+  Object2VisibleList myObjects, myPrevObjects;
   QPixmap myEmpty, myEye;
+  QMap<int, QColor> myColoredRow;
 
   bool myIsDecorationEnabled;
 };
 
-#endif
\ No newline at end of file
+#endif