]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOWxGimmickView.h
Remove timestamp_database and timestamp files (now management only with maintenance_d...
[creaImageIO.git] / src2 / creaImageIOWxGimmickView.h
index 0b4c74d4896cd987952ff9b0c93874d242714ab2..b710bca54d2fe762b82e1fd69901276e1b70ad38 100644 (file)
@@ -8,6 +8,9 @@
 #include <creaImageIOWxGimmickTools.h>
 #include <creaImageIOListener.h>
 #include <creaWx.h>
+
+#include "wx/progdlg.h"
+
 #include "wx/wx.h"
 #include <wx/splitter.h>
 #include <wx/toolbar.h> 
@@ -150,6 +153,15 @@ namespace creaImageIO
     void OnSettings(wxCommandEvent& event);
        /// Callback for settings edition
     void OnTools(wxCommandEvent& event);
+       /// Callback for Import/Export images
+    void OnImportExport(wxCommandEvent& event);
+
+       // Import Images from an archive
+       void ImportImages();
+
+       //Export Images to an archive
+       void ExportImages();
+
        ///Creates the settings dialog (the pages inside and the information)
        void CreateSettingsDialog(wxNotebook* nb, wxDialog* dial);
     
@@ -158,6 +170,9 @@ namespace creaImageIO
 
        /// Test a directory to know if contains sub-directory to analyze
        bool isNeedRecursive(std::string i_name);
+
+       /// Determines number of files potentially to add to database
+       int NumberFilesToAdd(const std::string &dirpath, bool recursive);
     
     /// AddProgress Gimmick callback
     void OnAddProgress( Gimmick::AddProgress& );
@@ -170,6 +185,8 @@ namespace creaImageIO
        ///Create a DB from an Attributes Descriptor files 
        void OnCreateDB(wxCommandEvent& event);
 
+       std::string ExtractName(const std::string &i_name);
+
        ///Edits the fields of a given node
        void CreateEditFieldsDialog(tree::Node* node, std::vector<std::string> names, std::vector<std::string> keys);
  
@@ -194,150 +211,7 @@ namespace creaImageIO
   // EO class WxGimmickView
   //=====================================================================
   
-  
-  /*
-
-
-
-
-
-
-
-
-       //====================================================================
-       // General
-       //====================================================================
-
-    /// Returns the size of the current selection
-    virtual int GetSelectionSize() { return 0; } 
-    /// Returns true if there is a valid selection
-    virtual bool IsSelectionValid(){ return false; }
-    /// Returns the vector of full filenames of selected images
-    virtual void GetSelectedFiles(std::vector<std::string>&){ return; }
-    /// Returns the vector of images corresponding to selection
-    virtual void GetSelectedImages(std::vector<vtkImageData*>&){ return; }
-    /// Returns the vector of DicomNode corresponding to selection
-    virtual void GetSelectedDicomNodes(std::vector<DicomNode*>&){ return; }
-   /// Returns the DicomNode corresponding to the tree item
-    virtual DicomNode* GetDicomNodeOfItem(const TreeItemId& i);
-
-       
-       /// Type of list of DicomDatabase
-    typedef std::vector<DicomDatabase*> DicomDatabaseListType;
-    /// Returns the list of DicomDatabase open
-    virtual DicomDatabaseListType& GetDicomDatabaseList() 
-    { return null; }
-    /// Returns the list of DicomDatabase open (const)
-    virtual const DicomDatabaseListType& GetDicomDatabaseList() const 
-    { return null; }
-
-       protected:
-       ///Opens an existing database, or else, creates a local database.
-    virtual void OpenOrNewDatabase(bool open){ return; }
-       ///Shows the help
-       virtual void ShowHelp();
-
-       private:
-       ///Gets the extension of the database
-       const std::string& GetDatabaseExtension() { return null; }
-       ///Sets the extension of the database
-    virtual void SetDatabaseExtension(const std::string& ext){ return; }
-
-
-       //====================================================================
-    // Preview Display Related
-       //====================================================================
-
-
-    ///Shows the image sent as a parameter
-       private:
-        virtual void ShowImage(vtkImageData* image){ return; }
-
-       //====================================================================
-    // Favorites Related
-       //====================================================================
-
-
-       public:
-       ///Loads or creates a favorites database
-    virtual void LoadOrCreateFavoritesDatabase(){ return; }
-       private:
-       ///Creates the user settings directory
-    void CreateUserSettingsDirectory(){ return; }
-       ///Obtains the user settings directory
-       const std::string& GetUserSettingsDirectory(){ return null; }
-
-       //====================================================================  
-       // Attribute Display Related
-       //====================================================================
-
-
-       ///Shows the Information regarding the node sent as a parameter
-       private:
-     virtual void ShowInformation(DicomNode*){ return; }
-   
-       //====================================================================
-    // Tree Display Related
-    //====================================================================
-
-       protected:
-    /// Completely rebuilds the view with 
-    /// current DicomDatabaseList
-    virtual void RebuildView(){ return; }
-       /// Recursively updates the part of the view corresponding 
-    /// to the DicomDatabase passed
-    /// i.e. creates items for the DicomNode which do not have
-    ///      deletes obsolete items (whose DicomNode has been deleted)
-    virtual void UpdateDicomDatabaseView(DicomDatabase*){ return; }
-    /// Recursively updates the part of the view corresponding 
-    /// to the DicomNode provided.
-    /// parent is its parent in the tree (where to insert / remove it)
-       virtual void UpdateDicomNodeView(DicomNode* n, const TreeItemId& parent){ return; }
-    
-       private:
-       ///Type definition of the data regarding the tree
-    typedef WxGimmickTreeItemData TreeItemData;
-       ///Gets the item data of the tree item passed as a parameter
-    TreeItemData* GetItemData(const TreeItemId& id){ return null; }
-    ///Type definition of the data insid a node of the tree
-    typedef WxGimmickDicomNodeData NodeData;
-
-
-       //====================================================================
-    // Class Attributes
-    //====================================================================
-
-       
-       int mSelectionType;
-    int mSelectionMaxImageDimension;
-    int mCurrentSelectionImageSize[4];
-
-       ///Existent Database List
-    DicomDatabaseListType mDicomDatabaseList;
-       ///Favorites database
-    DicomDatabase* mFavoriteDatabase;
-
-       ///Path to the database list file
-    std::string mDatabaseListFile;
-       ///Extension of the database
-    std::string mDatabaseExtension;
-
-    bool mJustStarted;
-
-    int  mFirstDicomDatabaseIconIndex;
-
-   // Previewer
-    vtkImageViewer2* mViewer;
-    
-    int mx1,mx2,my1,my2,mz1,mz2;
-    double mspx,mspy,mspz;
-  
-    // Image preview :
-    // Multi-thread image reader
-    MultiThreadImageReader mReader;
-    // map of images name to node
-    std::map<std::string,DicomNode*> mImageFileNameToNode;
-  */
  
 } // EO namespace creaImageIO