X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FcreaImageIOWxGimmickView.h;h=7ea39f2e84b6d054a1c5425c3a742c33c90f9101;hb=efe10f4ac0d8de45d26ca7b1f74f3676802c1b90;hp=f676eceb13a905e4b97b4859b054f228d47494a9;hpb=3a22e19184c369b130d4caa992a8e98e50c7a0ee;p=creaImageIO.git diff --git a/src/creaImageIOWxGimmickView.h b/src/creaImageIOWxGimmickView.h index f676ece..7ea39f2 100644 --- a/src/creaImageIOWxGimmickView.h +++ b/src/creaImageIOWxGimmickView.h @@ -1,3 +1,31 @@ +/* +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Santé) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ +*/ + + #ifndef __creaImageIOWxGimmickView_h_INCLUDED__ #define __creaImageIOWxGimmickView_h_INCLUDED__ @@ -8,6 +36,7 @@ #include #include #include +#include #include "wx/progdlg.h" @@ -27,11 +56,12 @@ namespace creaImageIO //===================================================================== /// Concrete derivative of GimmickView which implements a wxWidgets-based view - class WxGimmickView : public wxPanel, virtual public GimmickView + class CREAIMAGEIO_EXPORT WxGimmickView : public wxPanel, virtual public GimmickView { public: typedef int EventType; + OutStrGimmick m_out; /// Ctor WxGimmickView(boost::shared_ptr, @@ -48,11 +78,15 @@ namespace creaImageIO ///(overloaded from GimmickView) void GetSelectedFiles(std::vector& s); + /// Returns the selected files in output structure + void getSelectedFiles(std::vector &outG, std::vector< std::string> out_infos, bool mult = false, const std::string out_model = ""); + /// Returns the selected Images so that they comply with the /// given parameter(4D) (overloaded from GimmickView) void GetSelectedImages(std::vector& s, int dim); void GetSelectedImagesInVector(std::vector& s, int dim); + /// Returns the images indicated by the filenames in the vector /// so that they comply with the given parameter(dim) //(overloaded from GimmickView) @@ -104,10 +138,11 @@ namespace creaImageIO ///Called when there has been a change in the visible attributes of a tree view void OnAttributesChanged(const std::vector& nShown, int level); - + + protected: /// Creates the tool bar - void CreateToolBar(); + void CreateToolBar( ); /// Create the tree view for TreeHandler provided /// (overloaded from GimmickView) @@ -115,35 +150,38 @@ namespace creaImageIO private: - wxBoxSizer *mbottom_sizer; - wxBoxSizer *msizer; + wxBoxSizer *mbottom_sizer; + wxBoxSizer *msizer; /// 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; + bool mConstructed; /// The ToolBar and the tools - wxToolBar* mToolBar; - wxToolBarToolBase* mToolAddFile; - wxToolBarToolBase* mToolAddDir; - wxToolBarToolBase* mToolRemove; - wxToolBarToolBase* mToolAddDatabase; - wxToolBarToolBase* mToolHelp; - wxToolBarToolBase* mToolSynchronize; - wxToolBarToolBase* mToolSettings; - wxToolBarToolBase* mToolTools; - - wxSplitterWindow* mSplitter; - wxPanel* mBottomPanel; - wxStaticText * mText; - wxNotebook* mNotebook; +// wxToolBar *mToolBar; + wxPanel *mToolBar; + wxToolBarToolBase *mToolAddFile; + wxToolBarToolBase *mToolAddDir; + wxToolBarToolBase *mToolRemove; + wxToolBarToolBase *mToolAddDatabase; + wxToolBarToolBase *mToolHelp; + wxToolBarToolBase *mToolSynchronize; + wxToolBarToolBase *mToolSettings; + wxToolBarToolBase *mToolTools; + + wxSplitterWindow *mSplitter; + wxPanel *mBottomPanel; + wxStaticText *mText; + wxNotebook *mNotebook; /// The list of icons - wxImageList * mIcon; + wxImageList *mIcon; void CreateIconList(); + void AddBtnTool(wxPanel *panel, wxBoxSizer *sizerH, int id, wxString label, int idBitmap, wxString tooltip ); + boost::shared_ptr mGimmick; - Listener* mListener; + Listener *mListener; /// Callback for adding files void OnAddFiles(wxCommandEvent& event); @@ -177,7 +215,7 @@ namespace creaImageIO /// Display a message box with the last addition statistics void DisplayAddSummary(); - + time_t mstart; /// Test a directory to know if contains sub-directory to analyze bool isNeedRecursive(std::string i_name); @@ -212,7 +250,7 @@ namespace creaImageIO void ExportToStorage(const std::vector i_filenames); /// Progress dialog - wxProgressDialog* mProgressDialog; + wxProgressDialog *mProgressDialog; ///The selection's maximum dimension int mSelectionMaxDimension; @@ -221,14 +259,17 @@ namespace creaImageIO int mSelectionMinDimension; ///Image previewer - WxViewer* mViewer; + WxViewer *mViewer; ///Currently Displayed Node - tree::Node* mCurImageItemToShow; + tree::Node *mCurImageItemToShow; //Pointer holders for images to be shown std::vector< boost::shared_ptr > pointers; + //kill Progress DialogBar + void killProgress(); + wxString mCurrentDirectory; DECLARE_EVENT_TABLE()