]> Creatis software - creaImageIO.git/blobdiff - src2/creaImageIOWxGimmickView.cpp
*** empty log message ***
[creaImageIO.git] / src2 / creaImageIOWxGimmickView.cpp
index 1a423ebc3c52be0efee184b18ed5d7f6a709bfd1..6c84edb0baacf5343a997b9426f08dd00d20d406 100644 (file)
@@ -1,4 +1,4 @@
-#include <creaImageIOWxGimmickView.h>
+#include <creaImageIOWxGimmickView.h>
 #include <creaImageIOWxTreeView.h>
 #include <creaImageIOSystem.h>
 using namespace crea;
@@ -676,8 +676,7 @@ namespace creaImageIO
     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);
+    wxNotebook* nb= new wxNotebook(dial, -1, wxDefaultPosition, wxDefaultSize, 0);
     
     siz->Add( nb,1,wxGROW  ,0);  
     CreateSettingsDialog(nb);
@@ -690,61 +689,64 @@ namespace creaImageIO
   //AndresDonadio
   void WxGimmickView::OnTools(wxCommandEvent& event)
   {
-    wxDialog* dial= new wxDialog (this,-1,_T("Tools"),wxDefaultPosition, wxDefaultSize);
-               wxBoxSizer      *siz = new wxBoxSizer(wxVERTICAL);
+               mViewer->StopPlayer();
                
-               wxButton *inBtn = new wxButton(dial,-1,_T("Input Directory"), wxDefaultPosition, wxSize(200,30) );
-               wxButton *outBtn = new wxButton(dial,-1,_T("Output Directory"), wxDefaultPosition, wxSize(200,30) );
+               wxDialog* dial = new wxDialog (this,-1,"Tools",wxDefaultPosition, wxSize(300,250));
 
-               dial->SetSizer(siz);
-               dial->ShowModal();
+               wxSizer* buttonsSizer = dial->CreateSeparatedButtonSizer(wxOK|wxCANCEL);
+               wxNotebook* nb= new wxNotebook(dial, -1, wxDefaultPosition, wxDefaultSize, 0);
 
-               /*
-                       mViewer->StopPlayer();
-               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)
-               {
+               wxBoxSizer *dialSizer = new wxBoxSizer(wxVERTICAL);     
+               dialSizer->Add(nb,1,wxGROW,0);
+               dialSizer->Add(buttonsSizer,0,wxGROW);
 
-               
-                       std::string dirname = wx2std (FD->GetPath());
-                       bool recurse =  isNeedRecursive(dirname);
-                       if (recurse)
+               //First page: Bruker Image Reader
+               WxGimmickTools * gimmickTools = new WxGimmickTools(nb, mCurrentDirectory);
+               nb->AddPage( gimmickTools, crea::std2wx("Bruker Image Reader") );
+
+               dial->SetSizer(dialSizer, true);
+               dial->Layout();
+               dial->ShowModal();
+
+               if (dial->GetReturnCode() == wxID_OK)
                        {
-                               recurse = wxMessageBox(_T("Recurse into sub-directories ?"),  _T("Scan directory"),      wxYES_NO,this ) == wxYES ? true : false;
+                               if (nb->GetSelection()==0)//Selection: Bruker Image Reader
+                               {
+                                       std::string inputDir = crea::wx2std(gimmickTools->getInputDir());
+                                       std::string outputDir = crea::wx2std(gimmickTools->getOutputDir());
+                                       bool addToDB = gimmickTools->getCheckBoxValue();
+
+                                       if (inputDir.compare("")!=0 && outputDir.compare("")!=0)
+                                       {
+                                               /*
+                                               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();
+                                               }       
+                                       }
+
+                                       else
+                                       {
+                                               wxMessageBox(_T("One or both of the directory fields are empty"),_T("Empty Fields"),wxOK,this);
+                                       }
+                               }
                        }
-                       
-                       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();
 
-               }
                mViewer->StartPlayer();
-               */
   }
   //=================================================
 
@@ -762,10 +764,8 @@ namespace creaImageIO
          //Fourth page: Selection of attributes to show (edit)
          wxPanel* attSelection=new wxPanel(nb);
          nb->AddPage( attSelection, crea::std2wx("Selection of Attributes") );
-
   }
 
-
   //=================================================
   /// AddProgress Gimmick callback
   void WxGimmickView::OnAddProgress( Gimmick::AddProgress& p)