X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIOWxGimmickView.h;h=fa2b3abcca4790b4d1d5664e6f305bb8b62350c8;hb=7c5180e6b19690ba9a264f2a66c04bc0a03c53ef;hp=a156b164fdf3d91fced2062258cadb466ab3f119;hpb=403cc3cf787a717b7a9cdf2d148758a66dbdce27;p=creaImageIO.git diff --git a/src2/creaImageIOWxGimmickView.h b/src2/creaImageIOWxGimmickView.h index a156b16..fa2b3ab 100644 --- a/src2/creaImageIOWxGimmickView.h +++ b/src2/creaImageIOWxGimmickView.h @@ -4,6 +4,7 @@ #ifdef USE_WXWIDGETS #include +#include #include #include @@ -35,18 +36,25 @@ namespace creaImageIO int number_of_threads = 0); /// Virtual destructor virtual ~WxGimmickView(); - - /// Returns the selected Images so that they comply with the given parameter(<4D) - ///(overloaded from GimmickView) - vtkImageData* GetSelectedImage(int dim); - /// Returns the selected files - ///(overloaded from GimmickView) - void GetSelectedFiles(std::vector& s); + + /// Returns the selected Images so that they comply with the given parameter(<4D) + ///(overloaded from GimmickView) + vtkImageData* GetSelectedImage(int dim); + /// Returns the selected files + ///(overloaded from GimmickView) + void GetSelectedFiles(std::vector& s); /// Returns the selected Images so that they comply with the given parameter(4D) //(overloaded from GimmickView) - void GetSelectedImages(std::vector& s, int dim); - /// Validates the selected images - bool ValidateSelection(void *); + void GetSelectedImages(std::vector& s, int dim); + /// Callback called when a selection from a TreeView has changed + //(overloaded from GimmickView) + void OnSelectionChange(std::vector& s); + + + + ///Sends a request to read the currently selected node and the ones that surround it. + void ReadImageThreaded(std::vector sel); + protected: /// Creates the tool bar @@ -58,6 +66,10 @@ namespace creaImageIO private: + /// Is set to true at the end of constructor + /// (in order to lock callbacks from threaded objects or event + /// before everything is ok) + bool mConstructed; /// The ToolBar and the tools wxToolBar* mToolBar; wxToolBarToolBase* mToolAddFile; @@ -89,6 +101,12 @@ namespace creaImageIO /// AddProgress Gimmick callback void OnAddProgress( Gimmick::AddProgress& ); + /// Processes the queue of image events + /// Called in OnInternalIdle(); + /// (locks the MultiThreadImageReaderEvent mutex) + void ProcessImageEvents(); + /// Called upon to refresh the viewer once there are no actions to be done + void OnInternalIdle(); /// Progress dialog wxProgressDialog* mProgressDialog; @@ -96,6 +114,10 @@ namespace creaImageIO int mSelectionMaxDimension; ///The selection's minimum dimension int mSelectionMinDimension; + ///Image previewer + WxViewer* mViewer; + ///Currently Displayed Node + tree::Node* mCurImageItemToShow; wxString mCurrentDirectory;