]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOWxGimmickView.cpp
*** empty log message ***
[creaImageIO.git] / src2 / creaImageIOWxGimmickView.cpp
index 9ece06de714dc60ebb13b918bcbb5de7f186a4ff..b445d82955383e73fc4855fe525c3401579f507a 100644 (file)
@@ -1,4 +1,4 @@
-#include <creaImageIOWxGimmickView.h>
+#include <creaImageIOWxGimmickView.h>
 #include <creaImageIOWxTreeView.h>
 #include <creaImageIOSystem.h>
 using namespace crea;
@@ -673,16 +673,16 @@ namespace creaImageIO
   //=================================================
   void WxGimmickView::OnSettings(wxCommandEvent& event)
   {
-         wxDialog* dial= new wxDialog (this,-1,"System Settings",wxDefaultPosition, wxSize(450,600));
-         wxBoxSizer    *siz = new wxBoxSizer(wxVERTICAL);
-         // Notebook
-      wxNotebook* nb= new wxNotebook(dial,
-                              -1,wxDefaultPosition, wxDefaultSize, 0);
-
-         siz->Add( nb,1,wxGROW  ,0);  
-         CreateSettingsDialog(nb);
-         dial->SetSizer(siz);
-         dial->ShowModal();
+    wxDialog* dial= new wxDialog (this,-1,_T("System Settings"),wxDefaultPosition, wxSize(450,600));
+    wxBoxSizer *siz = new wxBoxSizer(wxVERTICAL);
+    // Notebook
+    wxNotebook* nb= new wxNotebook(dial,
+                                  -1,wxDefaultPosition, wxDefaultSize, 0);
+    
+    siz->Add( nb,1,wxGROW  ,0);  
+    CreateSettingsDialog(nb);
+    dial->SetSizer(siz);
+    dial->ShowModal();
   }
   //=================================================
 
@@ -690,10 +690,93 @@ namespace creaImageIO
   //AndresDonadio
   void WxGimmickView::OnTools(wxCommandEvent& event)
   {
-         wxDialog* dial= new wxDialog (this,-1,"Tools",wxDefaultPosition, wxDefaultSize);
-         wxBoxSizer    *siz = new wxBoxSizer(wxVERTICAL);
-         dial->SetSizer(siz);
-         dial->ShowModal();
+               mViewer->StopPlayer();
+               
+               wxDialog* dial= new wxDialog (this,-1,"Tools",wxDefaultPosition, wxSize(300,200));
+
+
+               WxGimmickTools * gimmickTools = new WxGimmickTools(dial, mCurrentDirectory);
+
+               wxBoxSizer *topsizer = new wxBoxSizer(wxVERTICAL);      
+               
+
+               wxSizer* bsizer = dial->CreateSeparatedButtonSizer(wxOK|wxCANCEL);
+               topsizer->Add(gimmickTools,1,wxGROW,0);
+               topsizer->Add(bsizer,0,wxGROW);
+
+               dial->SetSizer(topsizer, true);
+               dial->Layout();
+               dial->ShowModal();
+               
+               if (dial->GetReturnCode() == wxID_OK)
+               {
+                       wxString inputDir = gimmickTools->getInputDir();
+                       wxString outputDir = gimmickTools->getOutputDir();
+                       bool addToDB = gimmickTools->getCheckBoxValue();        
+/*
+                       Bruker2Dicom b2d;    
+                       b2d.SetInputDirectory(crea::wx2std(inputDir));
+                       b2d.SetOutputDirectory(crea::wx2std(outputDir));
+                       b2d.SetConvertModeToDicom();
+                       b2d.Execute();
+*/                     
+                       if (addToDB)
+                       {
+                               mProgressDialog = new wxProgressDialog(_T("Adding directory"),_T(""),1000,this,wxPD_ELAPSED_TIME |wxPD_CAN_ABORT );
+                               mCurrentDirectory = outputDir;  
+                               mGimmick->AddDir(crea::wx2std(mNotebook->GetPageText(mNotebook->GetSelection())),crea::wx2std(outputDir),true);
+                               mProgressDialog->Pulse(_T("Updating view..."));
+                               
+                               UpdateTreeViewLevel(crea::wx2std(mNotebook->GetPageText(mNotebook->GetSelection())),1);
+                               delete mProgressDialog;
+                               DisplayAddSummary();
+                       }       
+               }
+               
+               mViewer->StartPlayer();
+
+               /*
+                       
+               std::string name = crea::wx2std(mNotebook->GetCurrentPage()->GetName());
+               long style = wxDD_DEFAULT_STYLE | wxDD_DIR_MUST_EXIST;
+               wxDirDialog* FD = new wxDirDialog( 0, _T("Select directory"), mCurrentDirectory, style);
+           
+               if (FD->ShowModal()==wxID_OK)
+               {
+
+               
+                       std::string dirname = wx2std (FD->GetPath());
+                       bool recurse =  isNeedRecursive(dirname);
+                       if (recurse)
+                       {
+                               recurse = wxMessageBox(_T("Recurse into sub-directories ?"),  _T("Scan directory"),      wxYES_NO,this ) == wxYES ? true : false;
+                       }
+                       
+                       wxBusyCursor busy;
+                       wxString title(_T("Adding directory"));
+                       if (recurse) 
+                       title = _T("Adding directory (recursive)");
+                       mProgressDialog = 
+                       new wxProgressDialog(_T("Adding directory"),
+                                               _T(""),
+                                               1000,
+                                               this,
+                                               wxPD_ELAPSED_TIME |
+                                               //                             wxPD_ESTIMATED_TIME | 
+                                               //                             wxPD_REMAINING_TIME |
+                                               wxPD_CAN_ABORT );
+                       
+                       mCurrentDirectory = FD->GetPath();  
+                       mGimmick->AddDir(crea::wx2std(mNotebook->GetPageText(mNotebook->GetSelection())),dirname,recurse);
+                       mProgressDialog->Pulse(_T("Updating view..."));
+                       
+                       UpdateTreeViewLevel(crea::wx2std(mNotebook->GetPageText(mNotebook->GetSelection())),1);
+                       delete mProgressDialog;
+                       DisplayAddSummary();
+
+               }
+               
+               */
   }
   //=================================================