X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIOWxGimmickView.cpp;h=b445d82955383e73fc4855fe525c3401579f507a;hb=4ac76c07b4bfbdf3c69da3faa347e1f14c7c217c;hp=4fdf0fc3fc71b47227d11eeb20e2509d385b1908;hpb=8279b278e033c618adcaf00bc0a217ff323ee972;p=creaImageIO.git diff --git a/src2/creaImageIOWxGimmickView.cpp b/src2/creaImageIOWxGimmickView.cpp index 4fdf0fc..b445d82 100644 --- a/src2/creaImageIOWxGimmickView.cpp +++ b/src2/creaImageIOWxGimmickView.cpp @@ -1,4 +1,4 @@ -#include +#include #include #include using namespace crea; @@ -673,26 +673,110 @@ 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(); } //================================================= - //================================================= + //================================================= + //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(); + + } + + */ } //=================================================