X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIOTreeView.h;h=a1cb4b2e4cfac5f0ff75df1e651703aa2bf17cdd;hb=b029354f54449e058d14c671e7155e65b4086de6;hp=df5f92f25b32ed8b1cf387b1b6853062864ff06c;hpb=fcfe92562365cb738cf919d095d2f8d3608ec389;p=creaImageIO.git diff --git a/src2/creaImageIOTreeView.h b/src2/creaImageIOTreeView.h index df5f92f..a1cb4b2 100644 --- a/src2/creaImageIOTreeView.h +++ b/src2/creaImageIOTreeView.h @@ -2,36 +2,82 @@ #define __creaImageIOTreeView_h_INCLUDED__ #include +#include +#include +#include namespace creaImageIO { + + class GimmickView; + /** * \ingroup View */ + //===================================================================== - + //===================================================================== /// Abstract class that handles the view of a Tree through its TreeHandler class TreeView { public: /// Ctor - TreeView(TreeHandler*); + TreeView(TreeHandler*,GimmickView*); /// Virtual destructor virtual ~TreeView(); - /// Something like that ... - virtual void UpdateView(); - + /// Updates the view of a level given the selected items of upper level + virtual void UpdateLevel( int ) + { GimmickError("INTERNAL ERROR : TreeView::UpdateLevel not overloaded");} + + ///Removes selected nodes + virtual void RemoveSelected( ) + { GimmickError("INTERNAL ERROR : TreeView::RemoveSelected not overloaded");} + + ///Validates the selected images + virtual void ValidateSelectedImages() + { GimmickError("INTERNAL ERROR : TreeView::ValidateSelected not overloaded");} + + ///Returns the last selected level + virtual unsigned int GetLastSelectedLevel(){GimmickError("INTERNAL ERROR : TreeView::GetLastSelectedLevel not overloaded");} + ///Returns the maximum number of levels + virtual int GetNumberOfLevels(){ GimmickError("INTERNAL ERROR : TreeView::GetLevels not overloaded"); } + ///Gets the current selections filenames + virtual void GetSelectedAsString(std::vector&s){ GimmickError("INTERNAL ERROR : TreeView::GetSelectedAsString not overloaded"); } + + /// Gets the user selected data from the level passed as a parameter + virtual const std::vector& GetSelected(int level){ GimmickError("INTERNAL ERROR : TreeView::GetSelected not overloaded"); } + + /// Gets the next nodes on the list, be it up(true) or down(false). + virtual void GetNodes(std::vector& nodes, bool direction){ GimmickError("INTERNAL ERROR : TreeView::GetNodes not overloaded"); } + + /// Gets the attributes that are being shown and the ones that have been blocked on a specific level + virtual void GetAttributes(std::vector& areShown, std::vector& notShown, int level){ GimmickError("INTERNAL ERROR : TreeView::GetAttributes not overloaded"); } + + ///Sets the non visible attributes and refreshes the GUI + virtual void SetNonVisibleAttributes(const std::vector& notShown, int level){ GimmickError("INTERNAL ERROR : TreeView::SetNonVisibleAttributes not overloaded"); } + + ///Creates a new listctrl + virtual void CreateCtrl(std::vector& notShown, int nlevel){ GimmickError("INTERNAL ERROR : TreeView::CreateCtrl not overloaded"); } + + protected: + TreeHandler* GetTreeHandler() { return mTreeHandler; } + GimmickView* GetGimmickView() { return mGimmickView; } + private: /// The TreeHandler with which it corresponds TreeHandler* mTreeHandler; - }; + /// The GimmickView which holds the TreeView + GimmickView* mGimmickView; + + }; // EO class TreeView //===================================================================== + } // EO namespace creaImageIO // EOF