X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=src%2Fctsim.cpp;h=9befa24c35cbc67c036c3e0d36df8b51d6adf6a5;hp=9b7957966c5fbc06b5668510edf909e944be53c1;hb=52e0918dbbadcf53d4f4a9d1ec1748f854a4e4bf;hpb=a2ac3119d9f9572f113b1f32d7be996dd49037ae diff --git a/src/ctsim.cpp b/src/ctsim.cpp index 9b79579..9befa24 100644 --- a/src/ctsim.cpp +++ b/src/ctsim.cpp @@ -193,9 +193,9 @@ CTSimApp::OnInit() m_pLogDoc = newTextDoc(); if (m_pLogDoc) { m_pLog = m_pLogDoc->getTextCtrl(); - m_pLogDoc->SetDocumentName("Log.txt"); - m_pLogDoc->SetFilename("Log.txt"); - m_pLogDoc->getView()->getFrame()->SetTitle("Log"); + m_pLogDoc->SetDocumentName(_T("Log.txt")); + m_pLogDoc->SetFilename(_T("Log.txt")); + m_pLogDoc->getView()->getFrame()->SetTitle(_T("Log")); int xSize, ySize; m_pFrame->GetClientSize(&xSize, &ySize); int yLogSize = ySize / 4; @@ -347,18 +347,6 @@ CTSimApp::closeConfig() } -wxString -CTSimApp::getUntitledFilename() -{ - static int untitledNumber = 1; - - wxString filename (_T("Untitled")); - filename << untitledNumber++; - - return (filename); -} - - // Top-level window for CTSim #if CTSIM_MDI @@ -428,7 +416,7 @@ END_EVENT_TABLE() #if CTSIM_MDI MainFrame::MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long type) -: wxDocMDIParentFrame(manager, NULL, id, title, pos, size, type, "MainFrame") +: wxDocMDIParentFrame(manager, NULL, id, title, pos, size, type, _T("MainFrame")) #else MainFrame::MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long type) : wxDocParentFrame(manager, frame, id, title, pos, size, type, _T("MainFrame")) @@ -597,7 +585,6 @@ MainFrame::OnCreateFilter (wxCommandEvent& WXUNUSED(event)) m_dDefaultFilterBandwidth << _T(", inputScale=") << m_dDefaultFilterInputScale << _T(", outputScale=") << m_dDefaultFilterOutputScale; *theApp->getLog() << os << _T("\n"); - wxString filename = _T("untitled.if"); ImageFileDocument* pFilterDoc = theApp->newImageDoc(); pFilterDoc->setBadFileOpen(); if (! pFilterDoc) { @@ -973,13 +960,8 @@ MainFrame::OnImport (wxCommandEvent& WXUNUSED(event) ) return; } -#if WXWIN_COMPATIBILITY_2_4 - wxString strFilename = wxFileSelector (wxString(wxConvUTF8.cMB2WX("Import Filename")), wxString(wxConvUTF8.cMB2WX("")), - wxString(wxConvUTF8.cMB2WX("")), strExt, strWildcard, wxHIDE_READONLY | wxOPEN); -#else wxString strFilename = wxFileSelector (wxString(wxConvUTF8.cMB2WX("Import Filename")), wxString(wxConvUTF8.cMB2WX("")), wxString(wxConvUTF8.cMB2WX("")), strExt, strWildcard, wxOPEN); -#endif if (! strFilename.IsEmpty()) { if (m_iDefaultImportFormat == ImageFile::IMPORT_FORMAT_PPM || m_iDefaultImportFormat == ImageFile::IMPORT_FORMAT_PNG) { @@ -1081,28 +1063,40 @@ MainFrame::OnAbout(wxCommandEvent& WXUNUSED(event) ) // Create new documents -ProjectionFileDocument* -CTSimApp::newProjectionDoc() -{ - ProjectionFileDocument* newDoc = dynamic_cast(m_pDocTemplProjection->CreateDocument (_T(""))); +wxDocument* +CTSimApp::newDocumentHelper (wxDocTemplate* tmpl) { + wxDocument* newDoc = tmpl->CreateDocument (_T("")); if (newDoc) { - newDoc->SetDocumentName (m_pDocTemplProjection->GetDocumentName()); - newDoc->SetDocumentTemplate (m_pDocTemplProjection); + newDoc->SetDocumentTemplate (tmpl); newDoc->OnNewDocument(); + wxString fname = newDoc->GetFilename(); + fname += _T("."); + fname += tmpl->GetDefaultExtension(); + newDoc->SetDocumentName(fname); + newDoc->SetTitle(fname); + newDoc->SetFilename(fname, true); } return newDoc; } +ProjectionFileDocument* +CTSimApp::newProjectionDoc() +{ + ProjectionFileDocument* newDoc = dynamic_cast + (newDocumentHelper(m_pDocTemplProjection)); + if (newDoc) + newDoc->getView()->getFrame()->SetTitle(newDoc->GetDocumentName()); + return newDoc; +} + ImageFileDocument* CTSimApp::newImageDoc() { - ImageFileDocument* newDoc = dynamic_cast(m_pDocTemplImage->CreateDocument (_T(""))); - if (newDoc) { - newDoc->SetDocumentName (m_pDocTemplImage->GetDocumentName()); - newDoc->SetDocumentTemplate (m_pDocTemplImage); - newDoc->OnNewDocument(); - } + ImageFileDocument* newDoc = dynamic_cast + (newDocumentHelper(m_pDocTemplImage)); + if (newDoc) + newDoc->getView()->getFrame()->SetTitle(newDoc->GetDocumentName()); return newDoc; } @@ -1110,12 +1104,10 @@ CTSimApp::newImageDoc() PlotFileDocument* CTSimApp::newPlotDoc() { - PlotFileDocument* newDoc = dynamic_cast(m_pDocTemplPlot->CreateDocument (_T(""))); - if (newDoc) { - newDoc->SetDocumentName (m_pDocTemplPlot->GetDocumentName()); - newDoc->SetDocumentTemplate (m_pDocTemplPlot); - newDoc->OnNewDocument(); - } + PlotFileDocument* newDoc = dynamic_cast + (newDocumentHelper(m_pDocTemplPlot)); + if (newDoc) + newDoc->getView()->getFrame()->SetTitle(newDoc->GetDocumentName()); return newDoc; } @@ -1124,15 +1116,10 @@ CTSimApp::newPlotDoc() TextFileDocument* CTSimApp::newTextDoc() { - wxString strFilename (getUntitledFilename()); - strFilename += wxString(".txt", *wxConvCurrent); - - TextFileDocument* newDoc = dynamic_cast(m_pDocTemplText->CreateDocument (_T(""))); - if (newDoc) { - newDoc->SetDocumentName (m_pDocTemplText->GetDocumentName()); - newDoc->SetDocumentTemplate (m_pDocTemplText); - newDoc->OnNewDocument(); - } + TextFileDocument* newDoc = dynamic_cast + (newDocumentHelper(m_pDocTemplText)); + if (newDoc) + newDoc->getView()->getFrame()->SetTitle(newDoc->GetDocumentName()); return newDoc; } @@ -1141,12 +1128,10 @@ CTSimApp::newTextDoc() PhantomFileDocument* CTSimApp::newPhantomDoc() { - PhantomFileDocument* newDoc = dynamic_cast(m_pDocTemplPhantom->CreateDocument (_T(""))); - if (newDoc) { - newDoc->SetDocumentName (m_pDocTemplPhantom->GetDocumentName()); - newDoc->SetDocumentTemplate (m_pDocTemplPhantom); - newDoc->OnNewDocument(); - } + PhantomFileDocument* newDoc = dynamic_cast + (newDocumentHelper(m_pDocTemplPhantom)); + if (newDoc) + newDoc->getView()->getFrame()->SetTitle(newDoc->GetDocumentName()); return newDoc; } @@ -1156,13 +1141,12 @@ CTSimApp::newPhantomDoc() Graph3dFileDocument* CTSimApp::newGraph3dDoc() { - Graph3dFileDocument* newDoc = dynamic_cast(m_pDocTemplGraph3d->CreateDocument (_T(""))); - if (newDoc) { - newDoc->SetDocumentName (m_pDocTemplGraph3d->GetDocumentName()); - newDoc->SetDocumentTemplate (m_pDocTemplGraph3d); - newDoc->OnNewDocument(); - } + Graph3dFileDocument* newDoc = dynamic_cast + (newDocumentHelper(m_pDocTemplGraph3d)); + if (newDoc) + newDoc->getView()->getFrame()->SetTitle(newDoc->GetDocumentName()); return newDoc; } + #endif