--------------------Configuration: ctsim - Win32 Debug--------------------
</h3>
<h3>Command Lines</h3>
-Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP90.tmp" with contents
+Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP118.tmp" with contents
[
/nologo /G6 /MTd /W3 /Gm /GR /GX /Zi /Od /I "\wx2\include" /I "." /I "..\..\include" /I "..\..\getopt" /I "..\..\..\lpng108" /I "..\..\..\zlib" /I "..\..\..\fftw-2.1.3\fftw" /I "..\..\..\fftw-2.1.3\rfftw" /D VERSION=\"2.5.0\" /D "_DEBUG" /D "__WXMSW__" /D "HAVE_SGP" /D "HAVE_PNG" /D "HAVE_WXWINDOWS" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "HAVE_STRING_H" /D "HAVE_FFTW" /D "HAVE_RFFTW" /D "HAVE_GETOPT_H" /D "MSVC" /D "__WIN95__" /D "__WIN32__" /D WINVER=0x0400 /D "STRICT" /D CTSIMVERSION=\"3.0.0alpha5\" /FR"Debug/" /Fp"Debug/ctsim.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c
-"C:\ctsim\src\views.cpp"
+"C:\ctsim\src\ctsim.cpp"
]
-Creating command line "cl.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP90.tmp"
-Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP91.tmp" with contents
+Creating command line "cl.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP118.tmp"
+Creating temporary file "C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP119.tmp" with contents
[
comctl32.lib winmm.lib rpcrt4.lib ws2_32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ../libctsim/Debug/libctsim.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\..\lpng108\msvc\win32\libpng\lib_dbg\libpng.lib ..\..\..\lpng108\msvc\win32\zlib\lib_dbg\zlib.lib libcmtd.lib ..\..\..\fftw-2.1.3\Win32\FFTW2st\Debug\FFTW2st.lib ..\..\..\fftw-2.1.3\Win32\RFFTW2st\Debug\RFFTW2st.lib ../../../wx2/lib/wxd.lib xpmd.lib /nologo /subsystem:windows /incremental:yes /pdb:"Debug/ctsim.pdb" /debug /machine:I386 /out:"Debug/ctsim.exe" /pdbtype:sept /libpath:"..\..\..\lpng108\msvc\win32\libpng\lib" /libpath:"..\..\..\lpng108\msvc\win32\zlib\lib" /libpath:"..\..\..\wx2\lib"
.\Debug\ctsim.obj
\wx2\lib\wxd.lib
\wx2\lib\xpmd.lib
]
-Creating command line "link.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP91.tmp"
+Creating command line "link.exe @C:\DOCUME~1\kevin\LOCALS~1\Temp\RSP119.tmp"
<h3>Output Window</h3>
Compiling...
-views.cpp
+ctsim.cpp
Linking...
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: ctsim.cpp,v 1.41 2001/01/26 00:45:24 kevin Exp $
+** $Id: ctsim.cpp,v 1.42 2001/01/26 05:37:24 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
#endif
#endif
-static const char* rcsindent = "$Id: ctsim.cpp,v 1.41 2001/01/26 00:45:24 kevin Exp $";
+static const char* rcsindent = "$Id: ctsim.cpp,v 1.42 2001/01/26 05:37:24 kevin Exp $";
struct option CTSimApp::ctsimOptions[] =
{
m_docManager = new wxDocManager (wxDEFAULT_DOCMAN_FLAGS, true);
- new wxDocTemplate (m_docManager, "ImageFile", "*.if", "", "if", "ImageFile", "ImageView", CLASSINFO(ImageFileDocument), CLASSINFO(ImageFileView));
- new wxDocTemplate (m_docManager, "ProjectionFile", "*.pj", "", "pj", "ProjectionFile", "ProjectionView", CLASSINFO(ProjectionFileDocument), CLASSINFO(ProjectionFileView));
- new wxDocTemplate (m_docManager, "PhantomFile", "*.phm", "", "phm", "PhantomFile", "PhantomView", CLASSINFO(PhantomDocument), CLASSINFO(PhantomView));
- new wxDocTemplate (m_docManager, "PlotFile", "*.plt", "", "plt", "PlotFile", "PlotView", CLASSINFO(PlotFileDocument), CLASSINFO(PlotFileView));
- new wxDocTemplate (m_docManager, "TextEdit", "*.txt", "", "txt", "TextFile", "TextView", CLASSINFO(TextEditDocument), CLASSINFO(TextEditView), wxTEMPLATE_INVISIBLE);
+ m_pDocTemplImage = new wxDocTemplate (m_docManager, "ImageFile", "*.if", "", "if", "ImageFile", "ImageView", CLASSINFO(ImageFileDocument), CLASSINFO(ImageFileView));
+ m_pDocTemplProjection = new wxDocTemplate (m_docManager, "ProjectionFile", "*.pj", "", "pj", "ProjectionFile", "ProjectionView", CLASSINFO(ProjectionFileDocument), CLASSINFO(ProjectionFileView));
+ m_pDocTemplPhantom = new wxDocTemplate (m_docManager, "PhantomFile", "*.phm", "", "phm", "PhantomFile", "PhantomView", CLASSINFO(PhantomFileDocument), CLASSINFO(PhantomFileView));
+ m_pDocTemplPlot = new wxDocTemplate (m_docManager, "PlotFile", "*.plt", "", "plt", "PlotFile", "PlotView", CLASSINFO(PlotFileDocument), CLASSINFO(PlotFileView));
+ m_pDocTemplText = new wxDocTemplate (m_docManager, "TextFile", "*.txt", "", "txt", "TextFile", "TextView", CLASSINFO(TextFileDocument), CLASSINFO(TextFileView), wxTEMPLATE_INVISIBLE);
#if wxUSE_GIF
wxImage::AddHandler(new wxGIFHandler); // Required for images in the online documentation
::wxMessageBox ("Cannot initialize the help system", "Error");
#ifdef CTSIM_MDI
- TextEditDocument* pLogDoc = dynamic_cast<TextEditDocument*>(m_docManager->CreateDocument("Log.txt", wxDOC_SILENT));
+ TextFileDocument* pLogDoc = newTextDoc();
if (pLogDoc) {
m_pLog = pLogDoc->getTextCtrl();
+ pLogDoc->SetDocumentName("Log.txt");
+ pLogDoc->SetFilename("Log.txt");
+ pLogDoc->getView()->getFrame()->SetTitle("Log");
+ int xSize, ySize;
+ m_pFrame->GetSize(&xSize, &ySize);
+ int yLogSize = ySize / 4;
+ pLogDoc->getView()->getFrame()->SetSize (0, 0, xSize, yLogSize);
} else
#else
m_pLog = new wxTextCtrl (m_pFrame, -1, "Log Window\n", wxPoint(0, 0), wxSize(0,0), wxTE_MULTILINE | wxTE_READONLY);
}
}
+
+ProjectionFileDocument*
+CTSimApp::newProjectionDoc()
+{
+ wxString strFilename (getUntitledFilename());
+ strFilename += ".pj";
+
+ ProjectionFileDocument* newDoc = dynamic_cast<ProjectionFileDocument*>(m_pDocTemplProjection->CreateDocument (strFilename));
+ if (newDoc) {
+ ProjectionFileView* pView = newDoc->getView();
+ if (pView) {
+ wxFrame* pFrame = pView->getFrame();
+ if (pFrame)
+ pFrame->SetSize(0,0);
+ }
+ newDoc->SetDocumentName(strFilename);
+ newDoc->SetFilename(strFilename);
+ newDoc->SetDocumentTemplate(m_pDocTemplProjection);
+ newDoc->SetTitle(strFilename);
+ newDoc->OnNewDocument();
+ }
+
+ return newDoc;
+}
+
+ImageFileDocument*
+CTSimApp::newImageDoc()
+{
+ wxString strFilename (getUntitledFilename());
+ strFilename += ".pj";
+
+ ImageFileDocument* newDoc = dynamic_cast<ImageFileDocument*>(m_pDocTemplImage->CreateDocument (strFilename));
+ if (newDoc) {
+ ImageFileView* pView = newDoc->getView();
+ if (pView) {
+ wxFrame* pFrame = pView->getFrame();
+ if (pFrame)
+ pFrame->SetSize(0,0);
+ }
+ newDoc->SetDocumentName(strFilename);
+ newDoc->SetFilename(strFilename);
+ newDoc->SetDocumentTemplate(m_pDocTemplImage);
+ newDoc->SetTitle(strFilename);
+ newDoc->OnNewDocument();
+ }
+
+ return newDoc;
+}
+
+PlotFileDocument*
+CTSimApp::newPlotDoc()
+{
+ wxString strFilename (getUntitledFilename());
+ strFilename += ".plt";
+
+ PlotFileDocument* newDoc = dynamic_cast<PlotFileDocument*>(m_pDocTemplPlot->CreateDocument (strFilename));
+ if (newDoc) {
+ PlotFileView* pView = newDoc->getView();
+ if (pView) {
+ wxFrame* pFrame = pView->getFrame();
+ if (pFrame)
+ pFrame->SetSize(0,0);
+ }
+ newDoc->SetDocumentName(strFilename);
+ newDoc->SetFilename(strFilename);
+ newDoc->SetDocumentTemplate(m_pDocTemplPlot);
+ newDoc->SetTitle(strFilename);
+ newDoc->OnNewDocument();
+ }
+
+ return newDoc;
+}
+
+
+TextFileDocument*
+CTSimApp::newTextDoc()
+{
+ wxString strFilename (getUntitledFilename());
+ strFilename += ".txt";
+
+ TextFileDocument* newDoc = dynamic_cast<TextFileDocument*>(m_pDocTemplText->CreateDocument (strFilename));
+ if (newDoc) {
+ TextFileView* pView = newDoc->getView();
+ if (pView) {
+ wxFrame* pFrame = pView->getFrame();
+ if (pFrame)
+ pFrame->SetSize(0,0);
+ }
+ newDoc->SetDocumentName(strFilename);
+ newDoc->SetFilename(strFilename);
+ newDoc->SetDocumentTemplate(m_pDocTemplText);
+ newDoc->SetTitle(strFilename);
+ newDoc->OnNewDocument();
+ }
+
+ return newDoc;
+}
+
+
+PhantomFileDocument*
+CTSimApp::newPhantomDoc()
+{
+ wxString strFilename (getUntitledFilename());
+ strFilename += ".phm";
+
+ PhantomFileDocument* newDoc = dynamic_cast<PhantomFileDocument*>(m_pDocTemplPhantom->CreateDocument (strFilename));
+ if (newDoc) {
+ PhantomFileView* pView = newDoc->getView();
+ if (pView) {
+ wxFrame* pFrame = pView->getFrame();
+ if (pFrame)
+ pFrame->SetSize(0,0);
+ }
+ newDoc->SetDocumentName(strFilename);
+ newDoc->SetFilename(strFilename);
+ newDoc->SetDocumentTemplate(m_pDocTemplPhantom);
+ newDoc->SetTitle(strFilename);
+ newDoc->OnNewDocument();
+ }
+
+ return newDoc;
+}
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: ctsim.h,v 1.30 2001/01/20 17:43:41 kevin Exp $
+** $Id: ctsim.h,v 1.31 2001/01/26 05:37:24 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
class wxMenu;
class wxDocument;
-
class ImageFileDocument;
+class ProjectionFileDocument;
+class PhantomFileDocument;
+class PlotFileDocument;
+class TextFileDocument;
#include <vector>
-
#include "wx/docview.h"
#include "wx/textctrl.h"
#include "wx/menu.h"
class MainFrame: public wxDocParentFrame
#endif
{
- DECLARE_CLASS(MainFrame)
private:
+ DECLARE_CLASS(MainFrame)
+ DECLARE_EVENT_TABLE()
+
wxMenu* m_pWindowMenu;
enum { MAX_WINDOW_MENUITEMS = 20 };
double m_dDefaultFilterBandwidth;
double m_dDefaultFilterInputScale;
double m_dDefaultFilterOutputScale;
-
+
#if CTSIM_WINHELP
wxWinHelpController m_winHelp;
#endif
void OnWindowMenu19 (wxCommandEvent& event);
void DoWindowMenu (int iMenuPosition, wxCommandEvent& event);
-
- DECLARE_EVENT_TABLE()
};
class CTSimApp: public wxApp
{
private:
+ enum { O_HELP, O_VERSION };
+ static struct option ctsimOptions[];
+
wxDocManager* m_docManager;
MainFrame* m_pFrame;
wxConfig* m_pConfig;
-
- void usage (const char* program);
-
- static struct option ctsimOptions[];
-
- enum { O_HELP, O_VERSION };
wxTextCtrl* m_pLog;
+ wxDocTemplate* m_pDocTemplImage;
+ wxDocTemplate* m_pDocTemplProjection;
+ wxDocTemplate* m_pDocTemplPhantom;
+ wxDocTemplate* m_pDocTemplPlot;
+ wxDocTemplate* m_pDocTemplText;
+ void usage (const char* program);
+
public:
CTSimApp();
bool OnInit();
void setIconForFrame (wxFrame* pFrame);
wxConfig* getConfig()
{ return m_pConfig; }
+
+ wxDocTemplate* getDocTemplImage() { return m_pDocTemplImage; }
+ wxDocTemplate* getDocTemplProjection() { return m_pDocTemplProjection; }
+ wxDocTemplate* getDocTemplPhantom() { return m_pDocTemplPhantom; }
+ wxDocTemplate* getDocTemplPlot() { return m_pDocTemplPlot; }
+ wxDocTemplate* getDocTemplText() { return m_pDocTemplText; }
+
+ ProjectionFileDocument* newProjectionDoc();
+ ImageFileDocument* newImageDoc();
+ PhantomFileDocument* newPhantomDoc();
+ PlotFileDocument* newPlotDoc();
+ TextFileDocument* newTextDoc();
+
};
DECLARE_APP(CTSimApp)
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: docs.cpp,v 1.14 2001/01/20 17:43:41 kevin Exp $
+** $Id: docs.cpp,v 1.15 2001/01/26 05:37:24 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
bool ImageFileDocument::OnOpenDocument(const wxString& filename)
{
- if (filename == "untitled.if") {
- wxString untitledFilename = theApp->getUntitledFilename();
- SetFilename (untitledFilename, true);
- } else {
- if (! m_imageFile.fileRead (filename.c_str())) {
- *theApp->getLog() << "Unable to read image file " << filename << "\n";
- return false;
- }
- *theApp->getLog() << "Read image file " << filename << "\n";
- SetFilename(filename, true);
+ if (! m_imageFile.fileRead (filename.c_str())) {
+ *theApp->getLog() << "Unable to read image file " << filename << "\n";
+ return false;
}
+ *theApp->getLog() << "Read image file " << filename << "\n";
+ SetFilename(filename, true);
+
Modify(false);
UpdateAllViews();
GetFirstView()->OnUpdate (GetFirstView(), NULL);
-
+
return true;
}
void ImageFileDocument::Modify(bool mod)
{
- wxDocument::Modify(mod);
+ wxDocument::Modify(mod);
}
+ImageFileView*
+ImageFileDocument::getView() const
+{
+ return dynamic_cast<ImageFileView*>(GetFirstView());
+}
// ProjectionFileDocument
bool ProjectionFileDocument::OnOpenDocument(const wxString& filename)
{
- if (filename == "untitled.pj") {
- wxString untitledFilename = theApp->getUntitledFilename();
- SetFilename (untitledFilename, true);
- } else {
- if (! m_projectionFile.read (filename.c_str())) {
- *theApp->getLog() << "Unable to read projection file " << filename << "\n";
- return false;
- }
- *theApp->getLog() << "Read projection file " << filename << "\n";
- SetFilename(filename, true);
+ if (! m_projectionFile.read (filename.c_str())) {
+ *theApp->getLog() << "Unable to read projection file " << filename << "\n";
+ return false;
}
+ *theApp->getLog() << "Read projection file " << filename << "\n";
+ SetFilename(filename, true);
Modify(false);
UpdateAllViews();
GetFirstView()->OnUpdate (GetFirstView(), NULL);
-
+
return true;
}
void ProjectionFileDocument::Modify(bool mod)
{
- wxDocument::Modify(mod);
+ wxDocument::Modify(mod);
}
+ProjectionFileView*
+ProjectionFileDocument::getView() const
+{
+ return dynamic_cast<ProjectionFileView*>(GetFirstView());
+}
-// PhantomDocument
+// PhantomFileDocument
-IMPLEMENT_DYNAMIC_CLASS(PhantomDocument, wxDocument)
+IMPLEMENT_DYNAMIC_CLASS(PhantomFileDocument, wxDocument)
-bool PhantomDocument::OnOpenDocument(const wxString& filename)
+bool PhantomFileDocument::OnOpenDocument(const wxString& filename)
{
wxString myFilename = filename;
if (wxFile::Exists (myFilename)) {
Modify(false);
UpdateAllViews();
GetFirstView()->OnUpdate (GetFirstView(), NULL);
-
+
return true;
}
-bool PhantomDocument::OnSaveDocument(const wxString& filename)
+bool PhantomFileDocument::OnSaveDocument(const wxString& filename)
{
if (! m_phantom.fileWrite (filename.c_str())) {
*theApp->getLog() << "Unable to write phantom file " << filename << "\n";
return true;
}
-bool PhantomDocument::IsModified(void) const
+bool PhantomFileDocument::IsModified(void) const
{
return false;
}
-void PhantomDocument::Modify(bool mod)
+void PhantomFileDocument::Modify(bool mod)
{
- wxDocument::Modify(mod);
+ wxDocument::Modify(mod);
}
+PhantomFileView*
+PhantomFileDocument::getView() const
+{
+ return dynamic_cast<PhantomFileView*>(GetFirstView());
+}
+
// PlotFileDocument
IMPLEMENT_DYNAMIC_CLASS(PlotFileDocument, wxDocument)
bool PlotFileDocument::OnOpenDocument(const wxString& filename)
{
- if (filename == "untitled.plt") {
- wxString untitledFilename = theApp->getUntitledFilename();
- SetFilename (untitledFilename, true);
- } else {
- if (! m_plot.fileRead (filename.c_str())) {
- *theApp->getLog() << "Unable to read plot file " << filename << "\n";
- return false;
- }
- *theApp->getLog() << "Read plot file " << filename << "\n";
- SetFilename (filename, true);
- m_namePlot = filename.c_str();
+ if (! m_plot.fileRead (filename.c_str())) {
+ *theApp->getLog() << "Unable to read plot file " << filename << "\n";
+ return false;
}
+ *theApp->getLog() << "Read plot file " << filename << "\n";
+ SetFilename (filename, true);
+ m_namePlot = filename.c_str();
Modify (false);
UpdateAllViews();
GetFirstView()->OnUpdate (NULL, NULL);
-
+
return true;
}
void PlotFileDocument::Modify(bool mod)
{
- wxDocument::Modify(mod);
+ wxDocument::Modify(mod);
}
+PlotFileView*
+PlotFileDocument::getView() const
+{
+ return dynamic_cast<PlotFileView*>(GetFirstView());
+}
//////////////////////////////////////////////////////////////////////////
//
-// TextEditDocument
+// TextFileDocument
//
//////////////////////////////////////////////////////////////////////////
-IMPLEMENT_DYNAMIC_CLASS(TextEditDocument, wxDocument)
+IMPLEMENT_DYNAMIC_CLASS(TextFileDocument, wxDocument)
// Since text windows have their own method for saving to/loading from files,
// we override OnSave/OpenDocument instead of Save/LoadObject
-bool TextEditDocument::OnSaveDocument(const wxString& filename)
+bool TextFileDocument::OnSaveDocument(const wxString& filename)
{
- TextEditView *view = dynamic_cast<TextEditView*>(GetFirstView());
- if (! view->getTextCtrl()->SaveFile(filename))
- return false;
- Modify(false);
- return true;
+ TextFileView *view = getView();
+ if (! view->getTextCtrl()->SaveFile(filename))
+ return false;
+ Modify(false);
+ return true;
}
-bool TextEditDocument::OnOpenDocument(const wxString& filename)
+bool TextFileDocument::OnOpenDocument(const wxString& filename)
{
- TextEditView *view = dynamic_cast<TextEditView*>(GetFirstView());
-
- if (filename != "Log.txt" && ! view->getTextCtrl()->LoadFile(filename))
- return false;
-
- SetFilename (filename, true);
- Modify (false);
- UpdateAllViews();
- return true;
+ TextFileView *view = getView();
+
+ if (! view->getTextCtrl()->LoadFile(filename))
+ return false;
+
+ SetFilename (filename, true);
+ Modify (false);
+ UpdateAllViews();
+ return true;
}
-bool TextEditDocument::IsModified(void) const
+bool TextFileDocument::IsModified(void) const
{
return false;
-
- TextEditView *view = dynamic_cast<TextEditView*>(GetFirstView());
+
+ TextFileView *view = getView();
+
if (view)
return (wxDocument::IsModified() || view->getTextCtrl()->IsModified());
else
return wxDocument::IsModified();
}
+
+TextFileView*
+TextFileDocument::getView() const
+{
+ return dynamic_cast<TextFileView*>(GetFirstView());
+}
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: docs.h,v 1.13 2001/01/20 17:43:41 kevin Exp $
+** $Id: docs.h,v 1.14 2001/01/26 05:37:24 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
#include "wx/docview.h"
+// #include "views.h"
#include "imagefile.h"
#include "phantom.h"
#include "projections.h"
#include "plotfile.h"
+class ProjectionFileView;
+class PhantomFileView;
+class ImageFileView;
+class PlotFileView;
+class TextFileView;
class ImageFileDocument: public wxDocument
{
- DECLARE_DYNAMIC_CLASS(ImageFileDocument)
private:
+ DECLARE_DYNAMIC_CLASS(ImageFileDocument)
ImageFile m_imageFile;
public:
virtual void Modify (bool mod);
ImageFileDocument () {}
- ~ImageFileDocument () {}
+ virtual ~ImageFileDocument () {}
- const ImageFile& getImageFile() const
- { return m_imageFile; }
+ const ImageFile& getImageFile() const { return m_imageFile; }
- ImageFile& getImageFile()
- { return m_imageFile; }
+ ImageFile& getImageFile() { return m_imageFile; }
+ ImageFileView* getView() const;
};
class ProjectionFileDocument: public wxDocument
{
- DECLARE_DYNAMIC_CLASS(ProjectionFileDocument)
private:
+ DECLARE_DYNAMIC_CLASS(ProjectionFileDocument)
Projections m_projectionFile;
public:
virtual void Modify (bool mod);
ProjectionFileDocument () {}
- ~ProjectionFileDocument () {}
+ virtual ~ProjectionFileDocument () {}
- const Projections& getProjections () const
- { return m_projectionFile; }
+ const Projections& getProjections () const { return m_projectionFile; }
+ Projections& getProjections () { return m_projectionFile; }
- Projections& getProjections ()
- { return m_projectionFile; }
+ ProjectionFileView* getView() const;
};
-class PhantomDocument: public wxDocument
+class PhantomFileDocument: public wxDocument
{
- DECLARE_DYNAMIC_CLASS(PhantomDocument)
-
private:
+ DECLARE_DYNAMIC_CLASS(PhantomFileDocument)
Phantom m_phantom;
int m_idPhantom;
wxString m_namePhantom;
public:
- PhantomDocument ()
+ PhantomFileDocument ()
: m_idPhantom(Phantom::PHM_INVALID)
- {}
+ {}
- ~PhantomDocument ()
- {}
+ virtual ~PhantomFileDocument ()
+ {}
- const int getPhantomID () const
- { return m_idPhantom; }
+ const int getPhantomID () const { return m_idPhantom; }
- const wxString& getPhantomName () const
- { return m_namePhantom; }
+ const wxString& getPhantomName () const { return m_namePhantom; }
- const Phantom& getPhantom () const
- { return m_phantom; }
+ const Phantom& getPhantom () const { return m_phantom; }
- Phantom& getPhantom ()
- { return m_phantom; }
+ Phantom& getPhantom () { return m_phantom; }
virtual bool OnOpenDocument (const wxString& filename);
virtual bool OnSaveDocument (const wxString& filename);
virtual bool IsModified () const;
virtual void Modify (bool mod);
+ PhantomFileView* getView() const;
};
class PlotFileDocument: public wxDocument
{
- DECLARE_DYNAMIC_CLASS(PlotFileDocument)
-
private:
+ DECLARE_DYNAMIC_CLASS(PlotFileDocument)
PlotFile m_plot;
wxString m_namePlot;
PlotFileDocument ()
{}
- ~PlotFileDocument ()
+ virtual ~PlotFileDocument ()
{}
const wxString& getPlotName () const
virtual bool OnSaveDocument (const wxString& filename);
virtual bool IsModified () const;
virtual void Modify (bool mod);
+ PlotFileView* getView() const;
};
#include "views.h"
-class TextEditDocument: public wxDocument
+class TextFileDocument: public wxDocument
{
private:
- DECLARE_DYNAMIC_CLASS(TextEditDocument)
+ DECLARE_DYNAMIC_CLASS(TextFileDocument)
public:
- TextEditDocument(void) {}
- ~TextEditDocument(void) {}
+ TextFileDocument(void) {}
+ virtual ~TextFileDocument(void) {}
virtual bool OnSaveDocument(const wxString& filename);
virtual bool OnOpenDocument(const wxString& filename);
virtual bool IsModified(void) const;
wxTextCtrl* getTextCtrl()
- { return dynamic_cast<TextEditView*>(GetFirstView())->getTextCtrl(); }
+ { return dynamic_cast<TextFileView*>(GetFirstView())->getTextCtrl(); }
+
+ TextFileView* getView() const;
};
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: views.cpp,v 1.70 2001/01/26 00:45:24 kevin Exp $
+** $Id: views.cpp,v 1.71 2001/01/26 05:37:24 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
os << "Comparative Statistics: d=" << d << ", r=" << r << ", e=" << e << "\n";
*theApp->getLog() << os.str().c_str();
if (dialogGetCompare.getMakeDifferenceImage()) {
- ImageFileDocument* pDifferenceDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pDifferenceDoc = theApp->newImageDoc();
if (! pDifferenceDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
return;
ImageFile& rIF = GetDocument()->getImageFile();
ImageFileDocument* pRHSDoc = dialogGetCompare.getImageFileDocument();
const ImageFile& rRHSIF = pRHSDoc->getImageFile();
- ImageFileDocument* pNewDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pNewDoc = theApp->newImageDoc();
if (! pNewDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
return;
ImageFile& rIF = GetDocument()->getImageFile();
ImageFileDocument* pRHSDoc = dialogGetCompare.getImageFileDocument();
const ImageFile& rRHSIF = pRHSDoc->getImageFile();
- ImageFileDocument* pNewDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pNewDoc = theApp->newImageDoc();
if (! pNewDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
return;
ImageFile& rIF = GetDocument()->getImageFile();
ImageFileDocument* pRHSDoc = dialogGetCompare.getImageFileDocument();
const ImageFile& rRHSIF = pRHSDoc->getImageFile();
- ImageFileDocument* pNewDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pNewDoc = theApp->newImageDoc();
if (! pNewDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
return;
ImageFile& rIF = GetDocument()->getImageFile();
ImageFileDocument* pRHSDoc = dialogGetCompare.getImageFileDocument();
const ImageFile& rRHSIF = pRHSDoc->getImageFile();
- ImageFileDocument* pNewDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pNewDoc = theApp->newImageDoc();
if (! pNewDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
return;
unsigned int iNewNY = dialogGetXYSize.getYSize();
std::ostringstream os;
os << "Scale Size from (" << iOldNX << "," << iOldNY << ") to (" << iNewNX << "," << iNewNY << ")";
- ImageFileDocument* pScaledDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pScaledDoc = theApp->newImageDoc();
if (! pScaledDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
return;
pYMag[i] = ::sqrt (v[i][yCursor] * v[i][yCursor] + vImag[i][yCursor] * vImag[i][yCursor]);
}
}
- PlotFileDocument* pPlotDoc = dynamic_cast<PlotFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.plt", wxDOC_SILENT));
+ PlotFileDocument* pPlotDoc = theApp->newPlotDoc();
if (! pPlotDoc) {
sys_error (ERR_SEVERE, "Internal error: unable to create Plot file");
} else {
pYMag[i] = ::sqrt (v[xCursor][i] * v[xCursor][i] + vImag[xCursor][i] * vImag[xCursor][i]);
}
}
- PlotFileDocument* pPlotDoc = dynamic_cast<PlotFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.plt", wxDOC_SILENT));
+ PlotFileDocument* pPlotDoc = theApp->newPlotDoc();
if (! pPlotDoc) {
sys_error (ERR_SEVERE, "Internal error: unable to create Plot file");
} else {
Fourier::shuffleFourierToNaturalOrder (pYImag, nx);
Fourier::shuffleFourierToNaturalOrder (pYMag, nx);
- PlotFileDocument* pPlotDoc = dynamic_cast<PlotFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.plt", wxDOC_SILENT));
+ PlotFileDocument* pPlotDoc = theApp->newPlotDoc();
if (! pPlotDoc) {
sys_error (ERR_SEVERE, "Internal error: unable to create Plot file");
} else {
pYMag[i] = ::sqrt (pcIn[i].re * pcIn[i].re + pcIn[i].im * pcIn[i].im);
}
- PlotFileDocument* pPlotDoc = dynamic_cast<PlotFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.plt", wxDOC_SILENT));
+ PlotFileDocument* pPlotDoc = theApp->newPlotDoc();
if (! pPlotDoc) {
sys_error (ERR_SEVERE, "Internal error: unable to create Plot file");
} else {
pY1[i] = v1[xCursor][i];
pY2[i] = v2[xCursor][i];
}
- PlotFileDocument* pPlotDoc = dynamic_cast<PlotFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.plt", wxDOC_SILENT));
+ PlotFileDocument* pPlotDoc = theApp->newPlotDoc();
if (! pPlotDoc) {
sys_error (ERR_SEVERE, "Internal error: unable to create Plot file");
} else {
pY1[i] = v1[i][yCursor];
pY2[i] = v2[i][yCursor];
}
- PlotFileDocument* pPlotDoc = dynamic_cast<PlotFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.plt", wxDOC_SILENT));
+ PlotFileDocument* pPlotDoc = theApp->newPlotDoc();
if (! pPlotDoc) {
sys_error (ERR_SEVERE, "Internal error: unable to create Plot file");
} else {
int ny = rIF.ny();
if (v != NULL && nx > 0 && ny > 0) {
- PlotFileDocument* pPlotDoc = dynamic_cast<PlotFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.plt", wxDOC_SILENT));
+ PlotFileDocument* pPlotDoc = theApp->newPlotDoc();
if (! pPlotDoc) {
sys_error (ERR_SEVERE, "Internal error: unable to create Plot file");
return;
// PhantomCanvas
-PhantomCanvas::PhantomCanvas (PhantomView* v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style)
+PhantomCanvas::PhantomCanvas (PhantomFileView* v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style)
: wxScrolledWindow(frame, -1, pos, size, style)
{
m_pView = v;
}
-// PhantomView
+// PhantomFileView
-IMPLEMENT_DYNAMIC_CLASS(PhantomView, wxView)
+IMPLEMENT_DYNAMIC_CLASS(PhantomFileView, wxView)
-BEGIN_EVENT_TABLE(PhantomView, wxView)
-EVT_MENU(PHMMENU_FILE_PROPERTIES, PhantomView::OnProperties)
-EVT_MENU(PHMMENU_PROCESS_RASTERIZE, PhantomView::OnRasterize)
-EVT_MENU(PHMMENU_PROCESS_PROJECTIONS, PhantomView::OnProjections)
+BEGIN_EVENT_TABLE(PhantomFileView, wxView)
+EVT_MENU(PHMMENU_FILE_PROPERTIES, PhantomFileView::OnProperties)
+EVT_MENU(PHMMENU_PROCESS_RASTERIZE, PhantomFileView::OnRasterize)
+EVT_MENU(PHMMENU_PROCESS_PROJECTIONS, PhantomFileView::OnProjections)
END_EVENT_TABLE()
-PhantomView::PhantomView(void)
+PhantomFileView::PhantomFileView(void)
: wxView(), m_canvas(NULL), m_frame(NULL), m_pFileMenu(0)
{
m_iDefaultNDet = 367;
m_iDefaultRasterNSamples = 2;
}
-PhantomView::~PhantomView()
+PhantomFileView::~PhantomFileView()
{
}
void
-PhantomView::OnProperties (wxCommandEvent& event)
+PhantomFileView::OnProperties (wxCommandEvent& event)
{
const int idPhantom = GetDocument()->getPhantomID();
const wxString& namePhantom = GetDocument()->getPhantomName();
void
-PhantomView::OnProjections (wxCommandEvent& event)
+PhantomFileView::OnProjections (wxCommandEvent& event)
{
DialogGetProjectionParameters dialogProjection (getFrameForChild(), m_iDefaultNDet, m_iDefaultNView, m_iDefaultNSample, m_dDefaultRotation, m_dDefaultFocalLength, m_dDefaultFieldOfView, m_iDefaultGeometry, m_iDefaultTrace);
int retVal = dialogProjection.ShowModal();
if (m_iDefaultNDet > 0 && m_iDefaultNView > 0 && sGeometry != "") {
const Phantom& rPhantom = GetDocument()->getPhantom();
- ProjectionFileDocument* pProjectionDoc = dynamic_cast<ProjectionFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.pj", wxDOC_SILENT));
+ ProjectionFileDocument* pProjectionDoc = theApp->newProjectionDoc();
if (! pProjectionDoc) {
sys_error (ERR_SEVERE, "Unable to create projection document");
return;
void
-PhantomView::OnRasterize (wxCommandEvent& event)
+PhantomFileView::OnRasterize (wxCommandEvent& event)
{
DialogGetRasterParameters dialogRaster (getFrameForChild(), m_iDefaultRasterNX, m_iDefaultRasterNY, m_iDefaultRasterNSamples);
int retVal = dialogRaster.ShowModal();
m_iDefaultRasterNSamples = 1;
if (m_iDefaultRasterNX > 0 && m_iDefaultRasterNY > 0) {
const Phantom& rPhantom = GetDocument()->getPhantom();
- ImageFileDocument* pRasterDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pRasterDoc = theApp->newImageDoc();
if (! pRasterDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
return;
PhantomCanvas*
-PhantomView::CreateCanvas (wxView *view, wxFrame *parent)
+PhantomFileView::CreateCanvas (wxView *view, wxFrame *parent)
{
PhantomCanvas* pCanvas;
int width, height;
parent->GetClientSize(&width, &height);
- pCanvas = new PhantomCanvas (dynamic_cast<PhantomView*>(view), parent, wxPoint(0, 0), wxSize(width, height), 0);
+ pCanvas = new PhantomCanvas (dynamic_cast<PhantomFileView*>(view), parent, wxPoint(0, 0), wxSize(width, height), 0);
pCanvas->SetBackgroundColour(*wxWHITE);
pCanvas->Clear();
}
wxFrame*
-PhantomView::CreateChildFrame(wxDocument *doc, wxView *view)
+PhantomFileView::CreateChildFrame(wxDocument *doc, wxView *view)
{
#if CTSIM_MDI
wxDocMDIChildFrame *subframe = new wxDocMDIChildFrame (doc, view, theApp->getMainFrame(), -1, "Phantom Frame", wxPoint(10, 10), wxSize(256, 256), wxDEFAULT_FRAME_STYLE);
bool
-PhantomView::OnCreate(wxDocument *doc, long WXUNUSED(flags) )
+PhantomFileView::OnCreate(wxDocument *doc, long WXUNUSED(flags) )
{
m_frame = CreateChildFrame(doc, this);
SetFrame(m_frame);
int width, height;
m_frame->GetClientSize(&width, &height);
- m_frame->SetTitle("PhantomView");
+ m_frame->SetTitle("PhantomFileView");
m_canvas = CreateCanvas (this, m_frame);
#ifdef __X__
}
void
-PhantomView::OnUpdate(wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
+PhantomFileView::OnUpdate(wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
{
if (m_canvas)
m_canvas->Refresh();
}
bool
-PhantomView::OnClose (bool deleteWindow)
+PhantomFileView::OnClose (bool deleteWindow)
{
if (!GetDocument()->Close())
return false;
}
void
-PhantomView::OnDraw (wxDC* dc)
+PhantomFileView::OnDraw (wxDC* dc)
{
int xsize, ysize;
m_canvas->GetClientSize (&xsize, &ysize);
wxString strInterpolation (dialogPolar.getInterpolationName());
m_iDefaultPolarNX = dialogPolar.getXSize();
m_iDefaultPolarNY = dialogPolar.getYSize();
- ImageFileDocument* pPolarDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pPolarDoc = theApp->newImageDoc();
ImageFile& rIF = pPolarDoc->getImageFile();
if (! pPolarDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
m_iDefaultPolarNX = dialogPolar.getXSize();
m_iDefaultPolarNY = dialogPolar.getYSize();
m_iDefaultPolarZeropad = dialogPolar.getZeropad();
- ImageFileDocument* pPolarDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pPolarDoc = theApp->newImageDoc();
ImageFile& rIF = pPolarDoc->getImageFile();
if (! pPolarDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
m_iDefaultBackprojector = Backprojector::convertBackprojectNameToID (optBackprojectName.c_str());
m_iDefaultTrace = dialogReconstruction.getTrace();
if (m_iDefaultNX > 0 && m_iDefaultNY > 0) {
- ImageFileDocument* pReconDoc = dynamic_cast<ImageFileDocument*>(theApp->getDocManager()->CreateDocument("untitled.if", wxDOC_SILENT));
+ ImageFileDocument* pReconDoc = theApp->newImageDoc();
if (! pReconDoc) {
sys_error (ERR_SEVERE, "Unable to create image file");
return;
////////////////////////////////////////////////////////////////
-IMPLEMENT_DYNAMIC_CLASS(TextEditView, wxView)
+IMPLEMENT_DYNAMIC_CLASS(TextFileView, wxView)
-TextEditView::~TextEditView()
+TextFileView::~TextFileView()
{
}
-bool TextEditView::OnCreate(wxDocument *doc, long WXUNUSED(flags) )
+bool TextFileView::OnCreate(wxDocument *doc, long WXUNUSED(flags) )
{
m_pFrame = CreateChildFrame(doc, this);
SetFrame (m_pFrame);
int width, height;
m_pFrame->GetClientSize(&width, &height);
- m_pFrame->SetTitle("TextEdit");
- m_pCanvas = new TextEditCanvas (this, m_pFrame, wxPoint(0, 0), wxSize(width, height), wxTE_MULTILINE | wxTE_READONLY);
+ m_pFrame->SetTitle("TextFile");
+ m_pCanvas = new TextFileCanvas (this, m_pFrame, wxPoint(0, 0), wxSize(width, height), wxTE_MULTILINE | wxTE_READONLY);
m_pFrame->SetTitle("Log");
#ifdef __X__
}
// Handled by wxTextWindow
-void TextEditView::OnDraw(wxDC *WXUNUSED(dc) )
+void TextFileView::OnDraw(wxDC *WXUNUSED(dc) )
{
}
-void TextEditView::OnUpdate(wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
+void TextFileView::OnUpdate(wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
{
}
bool
-TextEditView::OnClose (bool deleteWindow)
+TextFileView::OnClose (bool deleteWindow)
{
return false;
}
wxFrame*
-TextEditView::CreateChildFrame (wxDocument *doc, wxView *view)
+TextFileView::CreateChildFrame (wxDocument *doc, wxView *view)
{
#if CTSIM_MDI
- wxDocMDIChildFrame* subframe = new wxDocMDIChildFrame (doc, view, theApp->getMainFrame(), -1, "TextEdit Frame", wxPoint(-1, -1), wxSize(300, 150), wxDEFAULT_FRAME_STYLE);
+ wxDocMDIChildFrame* subframe = new wxDocMDIChildFrame (doc, view, theApp->getMainFrame(), -1, "TextFile Frame", wxPoint(-1, -1), wxSize(300, 150), wxDEFAULT_FRAME_STYLE);
#else
- wxDocChildFrame* subframe = new wxDocChildFrame (doc, view, theApp->getMainFrame(), -1, "TextEdit Frame", wxPoint(-1, -1), wxSize(300, 150), wxDEFAULT_FRAME_STYLE);
+ wxDocChildFrame* subframe = new wxDocChildFrame (doc, view, theApp->getMainFrame(), -1, "TextFile Frame", wxPoint(-1, -1), wxSize(300, 150), wxDEFAULT_FRAME_STYLE);
#endif
theApp->setIconForFrame (subframe);
// Define a constructor for my text subwindow
-TextEditCanvas::TextEditCanvas (TextEditView* v, wxFrame* frame, const wxPoint& pos, const wxSize& size, long style)
+TextFileCanvas::TextFileCanvas (TextFileView* v, wxFrame* frame, const wxPoint& pos, const wxSize& size, long style)
: wxTextCtrl (frame, -1, "", pos, size, style), m_pView(v)
{
}
-TextEditCanvas::~TextEditCanvas ()
+TextFileCanvas::~TextFileCanvas ()
{
if (m_pView) {
wxMenu* pMenu = m_pView->getFileMenu();
** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: views.h,v 1.29 2001/01/26 00:45:24 kevin Exp $
+** $Id: views.h,v 1.30 2001/01/26 05:37:24 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
class PhantomCanvas;
-class PhantomView : public wxView
+class PhantomFileView : public wxView
{
private:
- DECLARE_DYNAMIC_CLASS(PhantomView)
+ DECLARE_DYNAMIC_CLASS(PhantomFileView)
DECLARE_EVENT_TABLE()
PhantomCanvas *CreateCanvas(wxView *view, wxFrame *parent);
#endif
public:
- PhantomView(void);
- virtual ~PhantomView(void);
+ PhantomFileView(void);
+ virtual ~PhantomFileView(void);
void canvasClosed()
{ m_canvas = NULL; m_frame = NULL; }
void OnRasterize (wxCommandEvent& event);
void OnProjections (wxCommandEvent& event);
- PhantomDocument* GetDocument(void)
- { return dynamic_cast<PhantomDocument*>(wxView::GetDocument()); }
+ PhantomFileDocument* GetDocument(void)
+ { return dynamic_cast<PhantomFileDocument*>(wxView::GetDocument()); }
wxMenu* getFileMenu() { return m_pFileMenu; }
+ wxFrame* getFrame() { return m_frame; }
};
class PhantomCanvas: public wxScrolledWindow
{
private:
- PhantomView* m_pView;
+ PhantomFileView* m_pView;
public:
- PhantomCanvas (PhantomView* v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style);
+ PhantomCanvas (PhantomFileView* v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style);
virtual ~PhantomCanvas();
- void setView(PhantomView* pView)
+ void setView(PhantomFileView* pView)
{ m_pView = pView; }
virtual void OnDraw(wxDC& dc);
};
};
-class TextEditCanvas;
-class TextEditView: public wxView
+class TextFileCanvas;
+class TextFileView: public wxView
{
private:
- DECLARE_DYNAMIC_CLASS(TextEditView)
+ DECLARE_DYNAMIC_CLASS(TextFileView)
wxFrame *m_pFrame;
wxMenu* m_pFileMenu;
- TextEditCanvas *m_pCanvas;
+ TextFileCanvas *m_pCanvas;
public:
- TextEditView()
+ TextFileView()
: wxView() , m_pFrame(0), m_pCanvas(0)
{}
- ~TextEditView();
+ ~TextFileView();
void canvasClosed()
{ m_pFrame = NULL; }
- wxFrame *CreateChildFrame(wxDocument *doc, wxView *view);
+ wxFrame *CreateChildFrame(wxDocument *doc, wxView *view);
bool OnCreate (wxDocument *doc, long flags);
void OnDraw (wxDC *dc);
void OnUpdate (wxView *sender, wxObject *hint = (wxObject *) NULL);
bool OnClose (bool deleteWindow = TRUE);
- TextEditCanvas* getTextCtrl() { return m_pCanvas; }
-
- wxMenu* getFileMenu() { return m_pFileMenu; }
+ TextFileCanvas* getTextCtrl() { return m_pCanvas; }
+ wxFrame* getFrame() { return m_pFrame; }
+ wxMenu* getFileMenu() { return m_pFileMenu; }
};
-class TextEditCanvas: public wxTextCtrl
+class TextFileCanvas: public wxTextCtrl
{
- TextEditView *m_pView;
+ TextFileView *m_pView;
public:
- TextEditCanvas (TextEditView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, long style);
- ~TextEditCanvas ();
+ TextFileCanvas (TextFileView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, long style);
+ ~TextFileCanvas ();
};