** Date Started: July 2000
**
** This is part of the CTSim program
-** Copyright (C) 1983-2000 Kevin Rosenberg
+** Copyright (c) 1983-2001 Kevin Rosenberg
**
-** $Id: views.cpp,v 1.81 2001/01/27 22:31:57 kevin Exp $
+** $Id: views.cpp,v 1.85 2001/01/28 20:05:17 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
ImageFileView::~ImageFileView()
{
- theApp->getDocManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->ActivateView(this, FALSE, TRUE);
}
void
<< os.str().c_str();
differenceImage.labelAdd (os.str().c_str());
if (theApp->getSetModifyNewDocs())
- pDifferenceDoc->Modify(true);
- pDifferenceDoc->UpdateAllViews(this);
+ pDifferenceDoc->Modify (true);
+ pDifferenceDoc->UpdateAllViews (this);
pDifferenceDoc->getView()->OnUpdate (this, NULL);
pDifferenceDoc->getView()->getFrame()->Show(true);
}
rIF.labelAdd ("Invert Pixel Values");
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
rIF.labelAdd ("Square Pixel Values");
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
rIF.labelAdd ("Square-root Pixel Values");
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
rIF.labelAdd ("Logrithm base-e Pixel Values");
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
rIF.labelAdd ("Exponent base-e Pixel Values");
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
*theApp->getLog() << os.str().c_str() << "\n";
if (theApp->getSetModifyNewDocs())
pNewDoc->Modify(TRUE);
- pNewDoc->UpdateAllViews(this);
+ pNewDoc->UpdateAllViews (this);
pNewDoc->getView()->OnUpdate (this, NULL);
pNewDoc->getView()->getFrame()->Show(true);
}
*theApp->getLog() << os.str().c_str() << "\n";
if (theApp->getSetModifyNewDocs())
pNewDoc->Modify(TRUE);
- pNewDoc->UpdateAllViews(this);
+ pNewDoc->UpdateAllViews (this);
pNewDoc->getView()->OnUpdate (this, NULL);
pNewDoc->getView()->getFrame()->Show(true);
}
*theApp->getLog() << os.str().c_str() << "\n";
if (theApp->getSetModifyNewDocs())
pNewDoc->Modify(TRUE);
- pNewDoc->UpdateAllViews(this);
+ pNewDoc->UpdateAllViews (this);
pNewDoc->getView()->OnUpdate (this, NULL);
pNewDoc->getView()->getFrame()->Show(true);
}
*theApp->getLog() << os.str().c_str() << "\n";
if (theApp->getSetModifyNewDocs())
pNewDoc->Modify(TRUE);
- pNewDoc->UpdateAllViews(this);
+ pNewDoc->UpdateAllViews (this);
pNewDoc->getView()->OnUpdate (this, NULL);
pNewDoc->getView()->getFrame()->Show(true);
}
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
#endif
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
void
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
}
m_bMaxSpecified = false;
if (theApp->getSetModifyNewDocs())
GetDocument()->Modify(TRUE);
- GetDocument()->UpdateAllViews(this);
+ GetDocument()->UpdateAllViews (this);
}
}
ImageFileCanvas*
-ImageFileView::CreateCanvas (wxView *view, wxFrame *parent)
+ImageFileView::CreateCanvas (wxFrame* parent)
{
ImageFileCanvas* pCanvas;
int width, height;
parent->GetClientSize(&width, &height);
- pCanvas = new ImageFileCanvas (dynamic_cast<ImageFileView*>(view), parent, wxPoint(0, 0), wxSize(width, height), 0);
+ pCanvas = new ImageFileCanvas (this, parent, wxPoint(0, 0), wxSize(width, height), 0);
pCanvas->SetScrollbars(20, 20, 50, 50);
pCanvas->SetBackgroundColour(*wxWHITE);
m_pFileMenu->AppendSeparator();
m_pFileMenu->Append(MAINMENU_FILE_EXIT, "E&xit");
#endif
- theApp->getDocManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
- theApp->getDocManager()->FileHistoryUseMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryUseMenu(m_pFileMenu);
wxMenu *view_menu = new wxMenu;
view_menu->Append(IFMENU_VIEW_SCALE_MINMAX, "Display Scale S&et...\tCtrl-E");
ImageFileView::OnCreate (wxDocument *doc, long WXUNUSED(flags) )
{
m_pFrame = CreateChildFrame(doc, this);
- SetFrame (m_pFrame);
+ (m_pFrame);
m_bMinSpecified = false;
m_bMaxSpecified = false;
int width, height;
m_pFrame->GetClientSize (&width, &height);
m_pFrame->SetTitle("ImageFileView");
- m_pCanvas = CreateCanvas (this, m_pFrame);
+ m_pCanvas = CreateCanvas (m_pFrame);
int x, y; // X requires a forced resize
m_pFrame->GetSize(&x, &y);
void
ImageFileView::OnUpdate (wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
{
- const ImageFile& rIF = dynamic_cast<ImageFileDocument*>(GetDocument())->getImageFile();
+ const ImageFile& rIF = GetDocument()->getImageFile();
ImageFileArrayConst v = rIF.getArray();
int nx = rIF.nx();
int ny = rIF.ny();
return false;
if (m_pCanvas) {
- m_pCanvas->Clear();
- m_pCanvas->Show(false);
+ m_pCanvas->Show(false);
m_pCanvas->setView(NULL);
m_pCanvas = NULL;
}
wxString s(theApp->GetAppName());
if (m_pFrame)
m_pFrame->SetTitle(s);
- SetFrame(NULL);
+ SetFrame(NULL);
Activate(false);
-
+
if (deleteWindow) {
- //m_pFrame->Show(false);
+ m_pFrame->Show(false);
+ ::wxYield();
m_pFrame->Destroy();
- // delete m_pFrame;
m_pFrame = NULL;
}
return true;
void
ImageFileView::OnExport (wxCommandEvent& event)
{
- ImageFile& rIF = dynamic_cast<ImageFileDocument*>(GetDocument())->getImageFile();
+ ImageFile& rIF = GetDocument()->getImageFile();
ImageFileArrayConst v = rIF.getArray();
int nx = rIF.nx();
int ny = rIF.ny();
return;
}
- const ImageFile& rIF = dynamic_cast<ImageFileDocument*>(GetDocument())->getImageFile();
+ const ImageFile& rIF = GetDocument()->getImageFile();
ImageFileArrayConst v = rIF.getArray();
ImageFileArrayConst vImag = rIF.getImaginaryArray();
int nx = rIF.nx();
}
if (theApp->getSetModifyNewDocs())
pPlotDoc->Modify(true);
- pPlotDoc->UpdateAllViews();
+ pPlotDoc->UpdateAllViews ();
}
}
return;
}
- const ImageFile& rIF = dynamic_cast<ImageFileDocument*>(GetDocument())->getImageFile();
+ const ImageFile& rIF = GetDocument()->getImageFile();
ImageFileArrayConst v = rIF.getArray();
ImageFileArrayConst vImag = rIF.getImaginaryArray();
int nx = rIF.nx();
}
if (theApp->getSetModifyNewDocs())
pPlotDoc->Modify(true);
- pPlotDoc->UpdateAllViews();
+ pPlotDoc->UpdateAllViews ();
}
}
return;
}
- const ImageFile& rIF = dynamic_cast<ImageFileDocument*>(GetDocument())->getImageFile();
+ const ImageFile& rIF = GetDocument()->getImageFile();
ImageFileArrayConst v = rIF.getArray();
ImageFileArrayConst vImag = rIF.getImaginaryArray();
int nx = rIF.nx();
if (theApp->getSetModifyNewDocs())
pPlotDoc->Modify(true);
- pPlotDoc->UpdateAllViews();
+ pPlotDoc->UpdateAllViews ();
}
}
return;
}
- const ImageFile& rIF = dynamic_cast<ImageFileDocument*>(GetDocument())->getImageFile();
+ const ImageFile& rIF = GetDocument()->getImageFile();
ImageFileArrayConst v = rIF.getArray();
ImageFileArrayConst vImag = rIF.getImaginaryArray();
int nx = rIF.nx();
if (theApp->getSetModifyNewDocs())
pPlotDoc->Modify(true);
- pPlotDoc->UpdateAllViews();
+ pPlotDoc->UpdateAllViews ();
}
}
#endif
delete pY2;
if (theApp->getSetModifyNewDocs())
pPlotDoc->Modify(true);
- pPlotDoc->UpdateAllViews();
+ pPlotDoc->UpdateAllViews ();
}
}
}
delete pY2;
if (theApp->getSetModifyNewDocs())
pPlotDoc->Modify(true);
- pPlotDoc->UpdateAllViews();
+ pPlotDoc->UpdateAllViews ();
}
}
}
void
ImageFileView::OnPlotHistogram (wxCommandEvent& event)
{
- const ImageFile& rIF = dynamic_cast<ImageFileDocument*>(GetDocument())->getImageFile();
+ const ImageFile& rIF = GetDocument()->getImageFile();
ImageFileArrayConst v = rIF.getArray();
int nx = rIF.nx();
int ny = rIF.ny();
delete pY;
if (theApp->getSetModifyNewDocs())
pPlotDoc->Modify(true);
- pPlotDoc->UpdateAllViews();
+ pPlotDoc->UpdateAllViews ();
}
}
PhantomFileView::PhantomFileView()
: wxView(), m_pFrame(NULL), m_pCanvas(NULL), m_pFileMenu(0)
{
+#if defined(DEBUG) || defined(_DEBUG)
+ m_iDefaultNDet = 165;
+ m_iDefaultNView = 180;
+#else
m_iDefaultNDet = 367;
m_iDefaultNView = 320;
+#endif
m_iDefaultNSample = 1;
m_dDefaultRotation = 1;
m_dDefaultFocalLength = 2;
m_iDefaultGeometry = Scanner::GEOMETRY_PARALLEL;
m_iDefaultTrace = Trace::TRACE_NONE;
+#ifdef DEBUG
+ m_iDefaultRasterNX = 115;
+ m_iDefaultRasterNY = 115;
+ m_iDefaultRasterNSamples = 1;
+#else
m_iDefaultRasterNX = 256;
m_iDefaultRasterNY = 256;
m_iDefaultRasterNSamples = 2;
+#endif
}
PhantomFileView::~PhantomFileView()
{
- theApp->getDocManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->ActivateView(this, FALSE, TRUE);
}
void
for (int i = 0; i < rProj.nView(); i++) {
theScanner.collectProjections (rProj, rPhantom, i, 1, true, m_iDefaultTrace);
if (! dlgProgress.Update (i+1)) {
- pProjectionDoc->getView()->getFrame()->Close(true);
+ pProjectionDoc->getView()->OnClose(true);
+ delete pProjectionDoc;
return;
}
}
rProj.setRemark (os.str());
*theApp->getLog() << os.str().c_str() << "\n";
- m_pFrame->Lower();
::wxYield();
- ProjectionFileView* projView = dynamic_cast<ProjectionFileView*>(pProjectionDoc->GetFirstView());
+ ProjectionFileView* projView = pProjectionDoc->getView();
if (projView) {
- projView->getFrame()->SetFocus();
projView->OnUpdate (projView, NULL);
- }
- if (wxView* pView = pProjectionDoc->GetFirstView()) {
- if (wxFrame* pFrame = pView->GetFrame()) {
+ if (projView->getCanvas())
+ projView->getCanvas()->SetClientSize (m_iDefaultNDet, m_iDefaultNView);
+ if (wxFrame* pFrame = projView->getFrame()) {
+ pFrame->Show(true);
pFrame->SetFocus();
pFrame->Raise();
}
- theApp->getDocManager()->ActivateView (pView, true, false);
+ GetDocumentManager()->ActivateView (projView, true, false);
}
::wxYield();
if (theApp->getSetModifyNewDocs())
pProjectionDoc->Modify(true);
- pProjectionDoc->getView()->getFrame()->Show(true);
- pProjectionDoc->UpdateAllViews(this);
+ pProjectionDoc->UpdateAllViews (this);
}
}
}
}
ImageFile& imageFile = pRasterDoc->getImageFile();
- imageFile.setArraySize (m_iDefaultRasterNX, m_iDefaultRasterNX);
+ imageFile.setArraySize (m_iDefaultRasterNX, m_iDefaultRasterNY);
wxProgressDialog dlgProgress (wxString("Rasterize"), wxString("Rasterization Progress"), imageFile.nx() + 1, getFrameForChild(), wxPD_CAN_ABORT);
Timer timer;
for (unsigned int i = 0; i < imageFile.nx(); i++) {
rPhantom.convertToImagefile (imageFile, m_iDefaultRasterNSamples, Trace::TRACE_NONE, i, 1, true);
- if (! dlgProgress.Update(i+1)) {
+ if (! dlgProgress.Update (i+1)) {
pRasterDoc->Close();
- pRasterDoc->getView()->getFrame()->Close(true);
+ pRasterDoc->getView()->OnClose(true);
+ delete pRasterDoc;
return;
}
}
if (theApp->getSetModifyNewDocs())
pRasterDoc->Modify(true);
- pRasterDoc->UpdateAllViews(this);
+ pRasterDoc->UpdateAllViews (this);
pRasterDoc->getView()->getFrame()->Show(true);
std::ostringstream os;
os << "Rasterize Phantom " << rPhantom.name() << ": XSize=" << m_iDefaultRasterNX << ", YSize="
<< m_iDefaultRasterNY << ", nSamples=" << m_iDefaultRasterNSamples;
*theApp->getLog() << os.str().c_str() << "\n";
imageFile.labelAdd (os.str().c_str(), timer.timerEnd());
- ImageFileView* rasterView = dynamic_cast<ImageFileView*>(pRasterDoc->GetFirstView());
+ ImageFileView* rasterView = pRasterDoc->getView();
if (rasterView) {
rasterView->getFrame()->SetFocus();
rasterView->OnUpdate (rasterView, NULL);
PhantomCanvas*
-PhantomFileView::CreateCanvas (wxView *view, wxFrame *parent)
+PhantomFileView::CreateCanvas (wxFrame *parent)
{
PhantomCanvas* pCanvas;
int width, height;
parent->GetClientSize(&width, &height);
- pCanvas = new PhantomCanvas (dynamic_cast<PhantomFileView*>(view), parent, wxPoint(0, 0), wxSize(width, height), 0);
+ pCanvas = new PhantomCanvas (this, parent, wxPoint(0, 0), wxSize(width, height), 0);
pCanvas->SetBackgroundColour(*wxWHITE);
pCanvas->Clear();
m_pFileMenu->AppendSeparator();
m_pFileMenu->Append(MAINMENU_FILE_EXIT, "E&xit");
#endif
- theApp->getDocManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
- theApp->getDocManager()->FileHistoryUseMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryUseMenu(m_pFileMenu);
wxMenu *process_menu = new wxMenu;
process_menu->Append(PHMMENU_PROCESS_RASTERIZE, "&Rasterize...\tCtrl-R");
int width, height;
m_pFrame->GetClientSize(&width, &height);
m_pFrame->SetTitle("PhantomFileView");
- m_pCanvas = CreateCanvas (this, m_pFrame);
+ m_pCanvas = CreateCanvas (m_pFrame);
#ifdef __X__
int x, y; // X requires a forced resize
}
void
-PhantomFileView::OnUpdate(wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
+PhantomFileView::OnUpdate (wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
{
if (m_pCanvas)
m_pCanvas->Refresh();
return false;
if (m_pCanvas) {
- m_pCanvas->Clear();
+ m_pCanvas->Show(false);
m_pCanvas->setView(NULL);
- m_pCanvas->Show(false);
m_pCanvas = NULL;
}
wxString s(wxTheApp->GetAppName());
if (m_pFrame)
m_pFrame->SetTitle(s);
- SetFrame(NULL);
+ SetFrame(NULL);
Activate(false);
if (deleteWindow) {
- // m_pFrame->Show(false);
- m_pFrame->Destroy();
- // delete m_pFrame;
+ m_pFrame->Show(false);
+ ::wxYield();
+ m_pFrame->Destroy();
m_pFrame = NULL;
}
ProjectionFileView::ProjectionFileView()
: wxView(), m_pCanvas(NULL), m_pFrame(NULL), m_pFileMenu(0)
{
+#ifdef DEBUG
+ m_iDefaultNX = 115;
+ m_iDefaultNY = 115;
+#else
m_iDefaultNX = 256;
m_iDefaultNY = 256;
+#endif
+
m_iDefaultFilter = SignalFilter::FILTER_ABS_BANDLIMIT;
m_dDefaultFilterParam = 1.;
#if HAVE_FFTW
ProjectionFileView::~ProjectionFileView()
{
- theApp->getDocManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->ActivateView(this, FALSE, TRUE);;
}
void
rIF.labelAdd (os.str().c_str());
if (theApp->getSetModifyNewDocs())
pPolarDoc->Modify(true);
- pPolarDoc->UpdateAllViews();
+ pPolarDoc->UpdateAllViews ();
pPolarDoc->getView()->OnUpdate (this, NULL);
pPolarDoc->getView()->getFrame()->Show(true);
}
rIF.labelAdd (os.str().c_str());
if (theApp->getSetModifyNewDocs())
pPolarDoc->Modify(true);
- pPolarDoc->UpdateAllViews();
+ pPolarDoc->UpdateAllViews ();
pPolarDoc->getView()->OnUpdate (this, NULL);
pPolarDoc->getView()->getFrame()->Show(true);
}
wxProgressDialog dlgProgress (wxString("Reconstruction"), wxString("Reconstruction Progress"), rProj.nView() + 1, getFrameForChild(), wxPD_CAN_ABORT);
for (int i = 0; i < rProj.nView(); i++) {
pReconstruct->reconstructView (i, 1);
- if (! dlgProgress.Update(i + 1)) {
+ if (! dlgProgress.Update (i + 1)) {
delete pReconstruct;
- pReconDoc->getView()->getFrame()->Close(true);
+ pReconDoc->getView()->OnClose(true);
+ delete pReconDoc;
return;
}
}
delete pReconstruct;
if (theApp->getSetModifyNewDocs())
pReconDoc->Modify(true);
- pReconDoc->UpdateAllViews(this);
- pReconDoc->getView()->getFrame()->Show(true);
- ImageFileView* rasterView = dynamic_cast<ImageFileView*>(pReconDoc->GetFirstView());
- if (rasterView) {
- rasterView->getFrame()->SetFocus();
+ pReconDoc->UpdateAllViews (this);
+ if (ImageFileView* rasterView = pReconDoc->getView()) {
rasterView->OnUpdate (rasterView, NULL);
+ rasterView->getFrame()->SetFocus();
+ rasterView->getFrame()->Show(true);
}
std::ostringstream os;
os << "Reconstruct " << rProj.getFilename() << ": xSize=" << m_iDefaultNX << ", ySize=" << m_iDefaultNY << ", Filter=" << optFilterName.c_str() << ", FilterParam=" << m_dDefaultFilterParam << ", FilterMethod=" << optFilterMethodName.c_str() << ", FilterGeneration=" << optFilterGenerationName.c_str() << ", Zeropad=" << m_iDefaultZeropad << ", Interpolation=" << optInterpName.c_str() << ", InterpolationParam=" << m_iDefaultInterpParam << ", Backprojection=" << optBackprojectName.c_str();
ProjectionFileCanvas*
-ProjectionFileView::CreateCanvas (wxView *view, wxFrame *parent)
+ProjectionFileView::CreateCanvas (wxFrame *parent)
{
ProjectionFileCanvas* pCanvas;
int width, height;
parent->GetClientSize(&width, &height);
- pCanvas = new ProjectionFileCanvas (dynamic_cast<ProjectionFileView*>(view), parent, wxPoint(0, 0), wxSize(width, height), 0);
+ pCanvas = new ProjectionFileCanvas (this, parent, wxPoint(0, 0), wxSize(width, height), 0);
pCanvas->SetScrollbars(20, 20, 50, 50);
pCanvas->SetBackgroundColour(*wxWHITE);
m_pFileMenu->AppendSeparator();
m_pFileMenu->Append(MAINMENU_FILE_EXIT, "E&xit");
#endif
- theApp->getDocManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
- theApp->getDocManager()->FileHistoryUseMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryUseMenu(m_pFileMenu);
wxMenu *convert_menu = new wxMenu;
convert_menu->Append (PJMENU_CONVERT_POLAR, "&Polar Image...\tCtrl-L");
SetFrame(m_pFrame);
int width, height;
- m_pFrame->GetClientSize(&width, &height);
- m_pFrame->SetTitle("ProjectionFileView");
- m_pCanvas = CreateCanvas(this, m_pFrame);
+ m_pFrame->GetClientSize (&width, &height);
+ m_pFrame->SetTitle ("ProjectionFileView");
+ m_pCanvas = CreateCanvas (m_pFrame);
#ifdef __X__
int x, y; // X requires a forced resize
void
-ProjectionFileView::OnUpdate(wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
+ProjectionFileView::OnUpdate (wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
{
const Projections& rProj = GetDocument()->getProjections();
const int nDet = rProj.nDet();
return false;
if (m_pCanvas) {
- m_pCanvas->Clear();
+ m_pCanvas->Show(false);
m_pCanvas->setView(NULL);
- m_pCanvas->Show(false);
m_pCanvas = NULL;
}
wxString s(wxTheApp->GetAppName());
if (m_pFrame)
m_pFrame->SetTitle(s);
- // SetFrame(NULL);
+ SetFrame(NULL);
Activate(false);
if (deleteWindow) {
- //m_pFrame->Show(false);
+ m_pFrame->Show(false);
+ ::wxYield();
m_pFrame->Destroy();
- // delete m_pFrame;
m_pFrame = NULL;
}
return true;
if (m_pEZPlot)
delete m_pEZPlot;
- theApp->getDocManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->FileHistoryRemoveMenu (m_pFileMenu);
}
void
PlotFileCanvas*
-PlotFileView::CreateCanvas (wxView *view, wxFrame *parent)
+PlotFileView::CreateCanvas (wxFrame* parent)
{
PlotFileCanvas* pCanvas;
int width, height;
parent->GetClientSize(&width, &height);
- pCanvas = new PlotFileCanvas (dynamic_cast<PlotFileView*>(view), parent, wxPoint(0, 0), wxSize(width, height), 0);
+ pCanvas = new PlotFileCanvas (this, parent, wxPoint(0, 0), wxSize(width, height), 0);
pCanvas->SetBackgroundColour(*wxWHITE);
pCanvas->Clear();
m_pFileMenu->AppendSeparator();
m_pFileMenu->Append(MAINMENU_FILE_EXIT, "E&xit");
#endif
- theApp->getDocManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
- theApp->getDocManager()->FileHistoryUseMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryUseMenu(m_pFileMenu);
wxMenu *view_menu = new wxMenu;
view_menu->Append(PLOTMENU_VIEW_SCALE_MINMAX, "Display Scale &Set...\tCtrl-E");
int width, height;
m_pFrame->GetClientSize(&width, &height);
m_pFrame->SetTitle ("Plot File");
- m_pCanvas = CreateCanvas (this, m_pFrame);
+ m_pCanvas = CreateCanvas (m_pFrame);
#ifdef __X__
int x, y; // X requires a forced resize
return false;
if (m_pCanvas) {
- m_pCanvas->Clear();
+ m_pCanvas->Show(false);
m_pCanvas->setView (NULL);
- m_pCanvas->Show(false);
m_pCanvas = NULL;
}
wxString s(wxTheApp->GetAppName());
if (m_pFrame)
m_pFrame->SetTitle(s);
- SetFrame(NULL);
Activate(false);
+ m_pFrame->SetView(NULL);
+ SetFrame(NULL);
if (deleteWindow) {
- //m_pFrame->Show(false);
- m_pFrame->Destroy();
- // delete m_pFrame;
+ m_pFrame->Show(false);
+ ::wxYield();
+ m_pFrame->Destroy();
m_pFrame = NULL;
}
return true;
TextFileView::~TextFileView()
{
- theApp->getDocManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->ActivateView(this, FALSE, TRUE);;
}
bool TextFileView::OnCreate(wxDocument *doc, long WXUNUSED(flags) )
{
}
-void TextFileView::OnUpdate(wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
+void TextFileView::OnUpdate (wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint) )
{
}
bool
TextFileView::OnClose (bool deleteWindow)
{
- if (m_pFrame && m_pFrame->GetTitle() == "Log")
+ // if (m_pFrame && m_pFrame->GetTitle() == "Log")
return false;
if (! GetDocument() || ! GetDocument()->Close())
m_pCanvas->Show(false);
Activate(false);
-
+
+ SetFrame(NULL);
+ m_pFrame->SetView(NULL);
if (deleteWindow) {
- //m_pFrame->Show(false);
- m_pFrame->Destroy();
- // delete m_pFrame;
+ m_pFrame->Show(false);
+ ::wxYield();
+ m_pFrame->Destroy();
m_pFrame = NULL;
}
m_pFileMenu->AppendSeparator();
m_pFileMenu->Append(MAINMENU_FILE_EXIT, "E&xit");
#endif
- theApp->getDocManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
- theApp->getDocManager()->FileHistoryUseMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryAddFilesToMenu(m_pFileMenu);
+ GetDocumentManager()->FileHistoryUseMenu(m_pFileMenu);
wxMenu *help_menu = new wxMenu;
help_menu->Append(MAINMENU_HELP_CONTENTS, "&Contents\tF1");