r473: no message
[ctsim.git] / src / views.h
index eca72d488c56603fdacdc54f9037037096876972..88f0e2145bbea15a4f231883d2565fcee329a041 100644 (file)
@@ -7,9 +7,9 @@
 **   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.h,v 1.35 2001/01/27 03:08:16 kevin Exp $
+**  $Id: views.h,v 1.43 2001/01/30 10:58:14 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
@@ -35,6 +35,7 @@
 #include "wx/wx.h"
 #include "docs.h"
 #include "imagefile.h"
+#include "graph3dview.h"
 
 class ImageFileCanvas;
 class ImageFileView : public wxView
@@ -44,8 +45,9 @@ private:
     
   wxMemoryDC m_memoryDC;
   wxBitmap m_bitmap;
+  wxMenu* m_pMenuAnalyze;
   
-  ImageFileCanvas *CreateCanvas(wxView *view, wxFrame *parent);
+  ImageFileCanvas *CreateCanvas (wxFrame* parent);
 #if CTSIM_MDI
   wxDocMDIChildFrame* m_pFrame;
   wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
@@ -66,7 +68,7 @@ private:
 
   wxWindow* getFrameForChild() 
 #if CTSIM_MDI
-  { return theApp->getMainFrame()->GetClientWindow(); }
+  { return theApp->getMainFrame(); }
 #else
   { return m_pFrame; }
 #endif
@@ -85,12 +87,12 @@ public:
   void OnUpdate(wxView *sender, wxObject *hint = NULL);
   bool OnClose (bool deleteWindow = true);
   
-  void OnScaleSize (wxCommandEvent& event);
-  void OnExport (wxCommandEvent& event);
-  
+  void OnRevert (wxCommandEvent& event);
+  void OnExport (wxCommandEvent& event);  
   void OnProperties (wxCommandEvent& event);
-  void OnCompare (wxCommandEvent& event);
-  
+
+  void OnCompare (wxCommandEvent& event);  
+  void OnScaleSize (wxCommandEvent& event);
   void OnInvertValues (wxCommandEvent& event);
   void OnSquare (wxCommandEvent& event);
   void OnSquareRoot (wxCommandEvent& event);
@@ -104,6 +106,7 @@ public:
   void OnInverseFourier (wxCommandEvent& event);
   void OnShuffleNaturalToFourierOrder (wxCommandEvent& event);
   void OnShuffleFourierToNaturalOrder (wxCommandEvent& event);
+  void OnConvert3d (wxCommandEvent& event);
   
 #ifdef HAVE_FFT
   void OnFFT (wxCommandEvent& event);
@@ -135,7 +138,9 @@ public:
 #else
   wxDocChildFrame* getFrame() { return m_pFrame; }
 #endif
-  
+
+  wxMenu* getMenuAnalyze() { return m_pMenuAnalyze; }
+
   ImageFileDocument* GetDocument() 
   { return dynamic_cast<ImageFileDocument*>(wxView::GetDocument()); }
   
@@ -146,6 +151,7 @@ class ImageFileCanvas: public wxScrolledWindow
 {
 private:
   ImageFileView* m_pView;
+
   int m_xCursor;
   int m_yCursor;
   
@@ -154,6 +160,7 @@ public:
   virtual ~ImageFileCanvas();
 
   virtual void OnDraw(wxDC& dc);
+  void OnChar(wxKeyEvent& event);
   void OnMouseEvent(wxMouseEvent& event);
   void DrawRubberBandCursor (wxDC& dc, int x, int y);
   bool GetCurrentCursor (int& x, int& y);
@@ -176,7 +183,7 @@ class ProjectionFileView : public wxView
   wxBitmap m_bitmap;
   
 private:
-  ProjectionFileCanvas *CreateCanvas(wxView *view, wxFrame *parent);
+  ProjectionFileCanvas *CreateCanvas (wxFrame* parent);
 #if CTSIM_MDI
   wxDocMDIChildFrame* m_pFrame;
   wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
@@ -207,7 +214,7 @@ private:
 
   wxWindow* getFrameForChild() 
 #if CTSIM_MDI
-  { return theApp->getMainFrame()->GetClientWindow(); }
+  { return theApp->getMainFrame(); }
 #else
   { return m_pFrame; }
 #endif
@@ -233,6 +240,8 @@ public:
 #else
   wxDocChildFrame* getFrame() { return m_pFrame; }
 #endif
+  ProjectionFileCanvas* getCanvas() { return m_pCanvas; }
+
   wxMenu* getFileMenu()  { return m_pFileMenu; }
 
   ProjectionFileDocument* GetDocument() 
@@ -263,7 +272,7 @@ private:
   DECLARE_DYNAMIC_CLASS(PhantomFileView)
   DECLARE_EVENT_TABLE()
     
-  PhantomCanvas *CreateCanvas(wxView *view, wxFrame *parent);
+  PhantomCanvas *CreateCanvas (wxFrame* parent);
 #if CTSIM_MDI
   wxDocMDIChildFrame* m_pFrame;
   wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
@@ -290,7 +299,7 @@ private:
 
   wxWindow* getFrameForChild() 
 #if CTSIM_MDI
-  { return theApp->getMainFrame()->GetClientWindow(); }
+  { return theApp->getMainFrame(); }
 #else
   { return m_pFrame; }
 #endif
@@ -358,10 +367,10 @@ private:
   double m_dMaxPixel;
   double m_dAutoScaleFactor;
   
-  PlotFileCanvas *CreateCanvas(wxView *view, wxFrame *parent);
+  PlotFileCanvas *CreateCanvas (wxFrame* parent);
   wxWindow* getFrameForChild() 
 #if CTSIM_MDI
-  { return theApp->getMainFrame()->GetClientWindow(); }
+  { return theApp->getMainFrame(); }
 #else
   { return m_pFrame; }
 #endif
@@ -440,6 +449,9 @@ public:
     void OnUpdate (wxView *sender, wxObject *hint = (wxObject *) NULL);
     bool OnClose (bool deleteWindow = TRUE);
 
+    TextFileDocument* GetDocument() 
+    { return dynamic_cast<TextFileDocument*>(wxView::GetDocument()); }
+  
     TextFileCanvas* getTextCtrl() { return m_pCanvas; }
     wxMenu* getFileMenu() { return m_pFileMenu; }
 #if CTSIM_MDI