** This is part of the CTSim program
** Copyright (C) 1983-2000 Kevin Rosenberg
**
-** $Id: views.cpp,v 1.76 2001/01/27 01:51:47 kevin Exp $
+** $Id: views.cpp,v 1.82 2001/01/28 03:48:55 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
ImageFileCanvas::~ImageFileCanvas()
{
- m_pView = NULL;
+ m_pView = NULL;
}
void
END_EVENT_TABLE()
ImageFileView::ImageFileView()
-: wxView(), m_pCanvas(NULL), m_pFrame(NULL), m_bMinSpecified(false), m_bMaxSpecified(false), m_pFileMenu(0)
+: wxView(), m_pFrame(NULL), m_pCanvas(NULL), m_pFileMenu(0), m_bMinSpecified(false), m_bMaxSpecified(false)
{
m_iDefaultExportFormatID = ImageFile::FORMAT_PNG;
}
ImageFileView::~ImageFileView()
{
- theApp->getDocManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->FileHistoryRemoveMenu (m_pFileMenu);
+ GetDocumentManager()->ActivateView(this, FALSE, TRUE);
}
void
differenceImage.setArraySize (rIF.nx(), rIF.ny());
if (! rIF.subtractImages (rCompareIF, differenceImage)) {
- pDifferenceDoc->DeleteAllViews();
+ pDifferenceDoc->getView()->getFrame()->Close(true);
return;
}
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;
return false;
if (m_pCanvas) {
- m_pCanvas->Clear();
- m_pCanvas->Show(false);
+// m_pCanvas->Show(false);
+// m_pCanvas->Clear();
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->Destroy();
-// delete m_pFrame;
+ m_pFrame->Show(false);
+ //m_pFrame->Close(true);
+ m_pFrame->Destroy();
+ // delete m_pFrame;
m_pFrame = NULL;
}
return true;
PhantomCanvas::~PhantomCanvas ()
{
- m_pView = NULL;
+ m_pView = NULL;
}
void
END_EVENT_TABLE()
PhantomFileView::PhantomFileView()
-: wxView(), m_pCanvas(NULL), m_pFrame(NULL), m_pFileMenu(0)
+: 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
if (m_iDefaultTrace > Trace::TRACE_CONSOLE) {
ProjectionsDialog dialogProjections (theScanner, rProj, rPhantom, m_iDefaultTrace, dynamic_cast<wxWindow*>(getFrameForChild()));
for (int iView = 0; iView < rProj.nView(); iView++) {
- ::wxYield();
::wxYield();
if (dialogProjections.isCancelled() || ! dialogProjections.projectView (iView)) {
- pProjectionDoc->DeleteAllViews();
+ pProjectionDoc->getView()->getFrame()->Close(true);
return;
}
::wxYield();
- ::wxYield();
while (dialogProjections.isPaused()) {
::wxYield();
::wxUsleep(50);
for (int i = 0; i < rProj.nView(); i++) {
theScanner.collectProjections (rProj, rPhantom, i, 1, true, m_iDefaultTrace);
if (! dlgProgress.Update (i+1)) {
- pProjectionDoc->DeleteAllViews();
+ pProjectionDoc->getView()->getFrame()->Close(true);
return;
}
}
pFrame->SetFocus();
pFrame->Raise();
}
- theApp->getDocManager()->ActivateView (pView, true, false);
+ GetDocumentManager()->ActivateView (pView, true, false);
}
::wxYield();
if (theApp->getSetModifyNewDocs())
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)) {
- pRasterDoc->DeleteAllViews();
+ pRasterDoc->Close();
+ pRasterDoc->getView()->getFrame()->Close(true);
return;
}
}
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");
return false;
if (m_pCanvas) {
- m_pCanvas->Clear();
+ //m_pCanvas->Show(false);
+ //m_pCanvas->Clear();
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);
+ m_pFrame->Destroy();
+ //GetDocumentManager()->ActivateView(this, FALSE, TRUE);
+ // delete m_pFrame;
m_pFrame = NULL;
}
ProjectionFileCanvas::~ProjectionFileCanvas ()
{
- m_pView = NULL;
+ m_pView = NULL;
}
void
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
pPolarDoc->UpdateAllViews();
pPolarDoc->getView()->OnUpdate (this, NULL);
pPolarDoc->getView()->getFrame()->Show(true);
-}
+ }
}
void
if (pDlgReconstruct->isCancelled() || ! pDlgReconstruct->reconstructView (iView)) {
delete pDlgReconstruct;
delete pReconstruct;
- pReconDoc->DeleteAllViews();
+ pReconDoc->getView()->getFrame()->Close(true);
return;
}
::wxYield();
pReconstruct->reconstructView (i, 1);
if (! dlgProgress.Update(i + 1)) {
delete pReconstruct;
- pReconDoc->DeleteAllViews();
+ pReconDoc->getView()->getFrame()->Close(true);
return;
}
}
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");
return false;
if (m_pCanvas) {
- m_pCanvas->Clear();
+ //m_pCanvas->Show(false);
+ //m_pCanvas->Clear();
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);
+ m_pFrame->Destroy();
+ // delete m_pFrame;
+ //m_pFrame->Close(true);
m_pFrame = NULL;
}
return true;
PlotFileCanvas::~PlotFileCanvas ()
{
- m_pView = NULL;
+ m_pView = NULL;
}
void
{
if (m_pEZPlot)
delete m_pEZPlot;
-
- theApp->getDocManager()->FileHistoryRemoveMenu (m_pFileMenu);
+
+ GetDocumentManager()->FileHistoryRemoveMenu (m_pFileMenu);
}
void
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");
return false;
if (m_pCanvas) {
- m_pCanvas->Clear();
+// m_pCanvas->Show(false);
+// m_pCanvas->Clear();
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);
+ m_pFrame->Destroy();
+ //m_pFrame->Close(true);
+ //GetDocumentManager()->ActivateView(this, FALSE, TRUE);
+ // delete m_pFrame;
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) )
bool
TextFileView::OnClose (bool deleteWindow)
{
- if (m_pFrame && m_pFrame->GetTitle() == "Log")
- return false;
+ // if (m_pFrame && m_pFrame->GetTitle() == "Log")
+ return false;
if (! GetDocument() || ! GetDocument()->Close())
return false;
-
+
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 = NULL;
-
+ m_pFrame->Show(false);
+ m_pFrame->Destroy();
+ //m_pFrame->Close(true);
+ //GetDocumentManager()->ActivateView(this, FALSE, TRUE);
+ // delete m_pFrame;
+ m_pFrame = NULL;
+
}
return TRUE;
}
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");
// Define a constructor for my text subwindow
TextFileCanvas::TextFileCanvas (TextFileView* v, wxFrame* frame, const wxPoint& pos, const wxSize& size, long style)
- : wxTextCtrl (frame, -1, "", pos, size, style), m_pView(v)
+: wxTextCtrl (frame, -1, "", pos, size, style), m_pView(v)
{
}
TextFileCanvas::~TextFileCanvas ()
{
- m_pView = NULL;
+ m_pView = NULL;
}