]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOWxTreeView.h
Remove timestamp_database and timestamp files (now management only with maintenance_d...
[creaImageIO.git] / src2 / creaImageIOWxTreeView.h
index 465d704bb3fe42aaa2189eecd50f5cb089fb448a..126c9410a6aabe86abfa02274f783ad9c7609874 100644 (file)
@@ -63,8 +63,20 @@ namespace creaImageIO
       ///Callback on mouse click
       void OnMouseClick(wxMouseEvent& event);
 
-         // Display a menu for items
+         /// Displays a menu for items
          void OnItemMenu(wxListEvent &event);
+         
+         /// Gets the attributes that are being shown and the ones that have been blocked on a specific level
+         void GetAttributes(std::vector<std::string>& areShown, std::vector<std::string>& notShown, int level);
+
+         ///Sets the non visible attributes and refreshes the GUI
+         void SetNonVisibleAttributes(const std::vector<std::string>& notShown, int level);
+
+         ///Creates a new listctrl
+         void CreateCtrl(std::vector<std::string>& notShown, int nlevel);
+  
+         ///Returns true if the attribute passed as a parameter is visible or not
+         bool IsAttributeVisible(const std::string& val, int level);
       
       /// Actual processing of item selection/deselection 
       /// Called by OnItemSelected and OnItemDeSelected
@@ -88,7 +100,8 @@ namespace creaImageIO
        ///Boolean that defines the direction of the sort
        ///True is ascending order and false is descending
        bool SortAscending;
-       // 
+       //The vector of not shown attributes
+       std::vector<std::string> notShownAtts; 
       };
       /// The vector of levels : one for each level of the tree      
       std::vector<LevelType> mLevelList;
@@ -110,17 +123,13 @@ namespace creaImageIO
       void ValidateSelectedImages(bool isSelection);   
       ///Gets selected filenames
       void GetSelectedAsString(std::vector<std::string>&s);
-          ///Gets the filenames of the given nodes and returns them on the given vector. Is recursive.
+         ///Gets the filenames of the given nodes and returns them on the given vector. Is recursive.
          void GetFilenamesAsString(const std::vector<tree::Node*>& nodes, std::vector<std::string>&s);
-        /// Gets the next nodes on the list, be it up(true) or down(false).
+      /// Gets the next nodes on the list, be it up(true) or down(false).
       void GetNodes(std::vector<tree::Node*>& nodes, bool direction);
       /// Updates the view of a level given the selected items of upper level
       /// Recursive method
       virtual void RecursiveUpdateLevel( int );
-      ///Sets the color of a selected item
-      void SetColor(int level, int item);
-      ///Creates the color palette for the first level
-      void CreateColorPalette();
       ///Selects all the elements of a level 
       void SelectAll(int level);
       ///UnSelects all the elements of a level 
@@ -132,8 +141,14 @@ namespace creaImageIO
       
       /// Currently Selected Column
       int mColumnSelected;
-      ///The last selected item on the list
+      ///The last selected item on the list (left click)
       long mLastSelected;
+
+         ///The last selected item on the list (right click)
+         long mLastRightSelected;
+
+         ///The last selected level (by right click)
+         int mLastRightLevel;
       ///The color map
       typedef std::map<tree::Node*,wxColour> ColorMap;
       typedef std::pair<tree::Node*,wxColour> NodeColorPair;
@@ -153,6 +168,7 @@ namespace creaImageIO
          int mAnonymizingID;
          int mLocalCopyID;
          int mEditFieldID;
+         
       // If set to true then OnSelectedChanged returns immediately.
       // Used to do avoid useless process during multiple selections 
       // or sorting