r442: Fixes to application shutdown
[ctsim.git] / src / views.h
index f395c94df6cde30da3e1835648dcdae10743542b..de216d880cbd37f7d9276fd8420026ff40c2d98d 100644 (file)
@@ -9,7 +9,7 @@
 **  This is part of the CTSim program
 **  Copyright (C) 1983-2000 Kevin Rosenberg
 **
-**  $Id: views.h,v 1.31 2001/01/26 21:33:06 kevin Exp $
+**  $Id: views.h,v 1.32 2001/01/26 23:23:00 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
@@ -46,11 +46,16 @@ private:
   wxBitmap m_bitmap;
   
   ImageFileCanvas *CreateCanvas(wxView *view, wxFrame *parent);
-  wxFrame *CreateChildFrame(wxDocument *doc, wxView *view);
+#if CTSIM_MDI
+  wxDocMDIChildFrame* m_pFrame;
+  wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#else
+  wxDocChildFrame* m_pFrame;
+  wxDocChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#endif
   wxMenu* m_pFileMenu;
   
   ImageFileCanvas *m_canvas;
-  wxFrame *m_frame;
   bool m_bMinSpecified;
   bool m_bMaxSpecified;
   double m_dMinPixel;
@@ -63,14 +68,14 @@ private:
 #if CTSIM_MDI
   { return theApp->getMainFrame()->GetClientWindow(); }
 #else
-  { return m_frame; }
+  { return m_pFrame; }
 #endif
 
 public:
   ImageFileView();
   virtual ~ImageFileView();
   void canvasClosed()
-  { m_canvas = NULL; m_frame = NULL; }
+  { m_canvas = NULL; m_pFrame = NULL; }
 
   wxMenu* getFileMenu()
   { return m_pFileMenu; }
@@ -126,7 +131,7 @@ public:
   void OnCompareCol (wxCommandEvent& event);
   
   wxFrame* getFrame()
-  { return m_frame; }
+  { return m_pFrame; }
   
   ImageFileDocument* GetDocument() 
   { return dynamic_cast<ImageFileDocument*>(wxView::GetDocument()); }
@@ -170,10 +175,15 @@ class ProjectionFileView : public wxView
   
 private:
   ProjectionFileCanvas *CreateCanvas(wxView *view, wxFrame *parent);
-  wxFrame *CreateChildFrame(wxDocument *doc, wxView *view);
+#if CTSIM_MDI
+  wxDocMDIChildFrame* m_pFrame;
+  wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#else
+  wxDocChildFrame* m_pFrame;
+  wxDocChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#endif
   
   ProjectionFileCanvas *m_canvas;
-  wxFrame *m_frame;
   wxMenu* m_pFileMenu;
   
   int m_iDefaultNX;
@@ -197,14 +207,14 @@ private:
 #if CTSIM_MDI
   { return theApp->getMainFrame()->GetClientWindow(); }
 #else
-  { return m_frame; }
+  { return m_pFrame; }
 #endif
 
 public:
   ProjectionFileView();
   virtual ~ProjectionFileView();
   void canvasClosed()
-  { m_canvas = NULL; m_frame = NULL; }
+  { m_canvas = NULL; m_pFrame = NULL; }
   
   bool OnCreate(wxDocument *doc, long flags);
   void OnDraw(wxDC* dc);
@@ -216,7 +226,7 @@ public:
   void OnConvertPolar (wxCommandEvent& event);
   void OnConvertFFTPolar (wxCommandEvent& event);
   
-  wxFrame* getFrame ()   { return m_frame; }
+  wxFrame* getFrame ()   { return m_pFrame; }
   
   wxMenu* getFileMenu()  { return m_pFileMenu; }
 
@@ -249,10 +259,15 @@ private:
   DECLARE_EVENT_TABLE()
     
   PhantomCanvas *CreateCanvas(wxView *view, wxFrame *parent);
-  wxFrame *CreateChildFrame(wxDocument *doc, wxView *view);
+#if CTSIM_MDI
+  wxDocMDIChildFrame* m_pFrame;
+  wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#else
+  wxDocChildFrame* m_pFrame;
+  wxDocChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#endif
   
   PhantomCanvas *m_canvas;
-  wxFrame *m_frame;
   wxMenu* m_pFileMenu;
   
   int m_iDefaultNDet;
@@ -272,14 +287,14 @@ private:
 #if CTSIM_MDI
   { return theApp->getMainFrame()->GetClientWindow(); }
 #else
-  { return m_frame; }
+  { return m_pFrame; }
 #endif
 
 public:
   PhantomFileView();
   virtual ~PhantomFileView();
   void canvasClosed()
-  { m_canvas = NULL; m_frame = NULL; }
+  { m_canvas = NULL; m_pFrame = NULL; }
   
   bool OnCreate(wxDocument *doc, long flags);
   void OnUpdate(wxView *sender, wxObject *hint = NULL);
@@ -293,7 +308,7 @@ public:
   { return dynamic_cast<PhantomFileDocument*>(wxView::GetDocument()); }
   
   wxMenu* getFileMenu() { return m_pFileMenu; }
-  wxFrame* getFrame() { return m_frame; }
+  wxFrame* getFrame() { return m_pFrame; }
 };
 
 class PhantomCanvas: public wxScrolledWindow
@@ -317,10 +332,15 @@ class PlotFileView : public wxView
     
 private:
   PlotFileCanvas *CreateCanvas(wxView *view, wxFrame *parent);
-  wxFrame *CreateChildFrame(wxDocument *doc, wxView *view);
+#if CTSIM_MDI
+  wxDocMDIChildFrame* m_pFrame;
+  wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#else
+  wxDocChildFrame* m_pFrame;
+  wxDocChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#endif
   
   PlotFileCanvas *m_canvas;
-  wxFrame *m_frame;
   wxMenu* m_pFileMenu;
   EZPlot* m_pEZPlot;
   
@@ -334,14 +354,14 @@ private:
 #if CTSIM_MDI
   { return theApp->getMainFrame()->GetClientWindow(); }
 #else
-  { return m_frame; }
+  { return m_pFrame; }
 #endif
 
 public:
   PlotFileView();
   virtual ~PlotFileView();
   void canvasClosed()
-  { m_canvas = NULL; m_frame = NULL; }
+  { m_canvas = NULL; m_pFrame = NULL; }
   
   bool OnCreate(wxDocument *doc, long flags);
   void OnDraw(wxDC* dc);
@@ -354,7 +374,7 @@ public:
   void OnScaleFull (wxCommandEvent& event);
   
   wxFrame* getFrame ()
-  { return m_frame; }
+  { return m_pFrame; }
   
   wxMenu* getFileMenu() { return m_pFileMenu; }
   PlotFileDocument* GetDocument() 
@@ -385,7 +405,13 @@ class TextFileView: public wxView
 private:
   DECLARE_DYNAMIC_CLASS(TextFileView)
 
-    wxFrame *m_pFrame;
+#if CTSIM_MDI
+  wxDocMDIChildFrame* m_pFrame;
+  wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#else
+  wxDocChildFrame* m_pFrame;
+  wxDocChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
+#endif
     wxMenu* m_pFileMenu;
     TextFileCanvas *m_pCanvas;
   
@@ -397,8 +423,6 @@ public:
     void canvasClosed()
     { m_pFrame = NULL; }
 
-    wxFrame *CreateChildFrame(wxDocument *doc, wxView *view);
-
     bool OnCreate (wxDocument *doc, long flags);
     void OnDraw (wxDC *dc);
     void OnUpdate (wxView *sender, wxObject *hint = (wxObject *) NULL);