X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIOWxGimmickView.h;h=314d1720b414b32bc66725f19e8d8e7ab9d54ed2;hb=76e207a0161dd493be1b96d93d54d35cf3e88422;hp=235c8f0cd1f4619369e32205b328548a4efa3299;hpb=2f0e50f69eb904d629cf8db62eb9a4094db93097;p=creaImageIO.git diff --git a/src2/creaImageIOWxGimmickView.h b/src2/creaImageIOWxGimmickView.h index 235c8f0..314d172 100644 --- a/src2/creaImageIOWxGimmickView.h +++ b/src2/creaImageIOWxGimmickView.h @@ -4,6 +4,7 @@ #ifdef USE_WXWIDGETS #include +#include #include #include @@ -20,9 +21,11 @@ namespace creaImageIO //===================================================================== /// Concrete derivative of GimmickView which implements a wxWidgets-based view + class WxGimmickView : public wxPanel, virtual public GimmickView { public: + typedef int EventType; /// Ctor @@ -32,17 +35,28 @@ namespace creaImageIO const wxPoint& pos, const wxSize& size, int min_dim = GIMMICK_2D_IMAGE_SELECTION, int max_dim = GIMMICK_3D_IMAGE_SELECTION, - int out_dim = NATIVE, 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) - void GetSelectedImages(std::vector& s, int dim); + 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, bool isSelection, int selection, bool mProcess); + ///Stops the player + void StopPlayer(){mViewer->StopPlayer();} + ///Resets the default image + void ClearSelection(); + + + ///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 @@ -54,6 +68,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; @@ -64,6 +82,7 @@ namespace creaImageIO wxSplitterWindow* mSplitter; wxPanel* mBottomPanel; + wxStaticText * mText; wxNotebook* mNotebook; /// The list of icons @@ -77,20 +96,28 @@ namespace creaImageIO void OnAddDir(wxCommandEvent& event); /// Callback for removing files void OnRemove(wxCommandEvent& event); - /// Display a message box with the last addition statistics + + /// Display a message box with the last addition statistics void DisplayAddSummary(); /// AddProgress Gimmick callback void OnAddProgress( Gimmick::AddProgress& ); + /// Called upon to refresh the viewer once there are no actions to be done + void OnInternalIdle(); + /// Progress dialog wxProgressDialog* mProgressDialog; - //The selection's maximum dimension + ///The selection's maximum dimension int mSelectionMaxDimension; - //The selection's minimum dimension + ///The selection's minimum dimension int mSelectionMinDimension; - //The user desired output dimension - int mOutputDimension; + ///Image previewer + WxViewer* mViewer; + ///Currently Displayed Node + tree::Node* mCurImageItemToShow; + //Pointer holders for images to be shown + std::vector pointers; wxString mCurrentDirectory;