projects
/
ctsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
r633: no message
[ctsim.git]
/
src
/
views.h
diff --git
a/src/views.h
b/src/views.h
index eca72d488c56603fdacdc54f9037037096876972..9aca9648cc4565f8a58cb96e4fe0777eeb284563 100644
(file)
--- a/
src/views.h
+++ b/
src/views.h
@@
-7,9
+7,9
@@
** Date Started: July 2000
**
** This is part of the CTSim program
** 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.
50 2001/03/11 17:55:29
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
**
** 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,11
@@
#include "wx/wx.h"
#include "docs.h"
#include "imagefile.h"
#include "wx/wx.h"
#include "docs.h"
#include "imagefile.h"
+#include "threadrecon.h"
+
+#if wxUSE_GLCANVAS
+#include "graph3dview.h"
+#endif
class ImageFileCanvas;
class ImageFileView : public wxView
class ImageFileCanvas;
class ImageFileView : public wxView
@@
-44,8
+49,9
@@
private:
wxMemoryDC m_memoryDC;
wxBitmap m_bitmap;
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);
#if CTSIM_MDI
wxDocMDIChildFrame* m_pFrame;
wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
@@
-66,7
+72,7
@@
private:
wxWindow* getFrameForChild()
#if CTSIM_MDI
wxWindow* getFrameForChild()
#if CTSIM_MDI
- { return theApp->getMainFrame()
->GetClientWindow()
; }
+ { return theApp->getMainFrame(); }
#else
{ return m_pFrame; }
#endif
#else
{ return m_pFrame; }
#endif
@@
-85,12
+91,16
@@
public:
void OnUpdate(wxView *sender, wxObject *hint = NULL);
bool OnClose (bool deleteWindow = true);
void OnUpdate(wxView *sender, wxObject *hint = NULL);
bool OnClose (bool deleteWindow = true);
- void OnScaleSize (wxCommandEvent& event);
- void OnExport (wxCommandEvent& event);
-
+ void OnEditCopy (wxCommandEvent& event);
+ void OnEditCut (wxCommandEvent& event);
+ void OnEditPaste (wxCommandEvent& event);
+
+ void OnRevert (wxCommandEvent& event);
+ void OnExport (wxCommandEvent& event);
void OnProperties (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);
void OnInvertValues (wxCommandEvent& event);
void OnSquare (wxCommandEvent& event);
void OnSquareRoot (wxCommandEvent& event);
@@
-104,7
+114,10
@@
public:
void OnInverseFourier (wxCommandEvent& event);
void OnShuffleNaturalToFourierOrder (wxCommandEvent& event);
void OnShuffleFourierToNaturalOrder (wxCommandEvent& event);
void OnInverseFourier (wxCommandEvent& event);
void OnShuffleNaturalToFourierOrder (wxCommandEvent& event);
void OnShuffleFourierToNaturalOrder (wxCommandEvent& event);
-
+#if wxUSE_GLCANVAS
+ void OnConvert3d (wxCommandEvent& event);
+#endif
+
#ifdef HAVE_FFT
void OnFFT (wxCommandEvent& event);
void OnIFFT (wxCommandEvent& event);
#ifdef HAVE_FFT
void OnFFT (wxCommandEvent& event);
void OnIFFT (wxCommandEvent& event);
@@
-135,7
+148,9
@@
public:
#else
wxDocChildFrame* getFrame() { return m_pFrame; }
#endif
#else
wxDocChildFrame* getFrame() { return m_pFrame; }
#endif
-
+
+ wxMenu* getMenuAnalyze() { return m_pMenuAnalyze; }
+
ImageFileDocument* GetDocument()
{ return dynamic_cast<ImageFileDocument*>(wxView::GetDocument()); }
ImageFileDocument* GetDocument()
{ return dynamic_cast<ImageFileDocument*>(wxView::GetDocument()); }
@@
-146,6
+161,7
@@
class ImageFileCanvas: public wxScrolledWindow
{
private:
ImageFileView* m_pView;
{
private:
ImageFileView* m_pView;
+
int m_xCursor;
int m_yCursor;
int m_xCursor;
int m_yCursor;
@@
-154,6
+170,7
@@
public:
virtual ~ImageFileCanvas();
virtual void OnDraw(wxDC& dc);
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);
void OnMouseEvent(wxMouseEvent& event);
void DrawRubberBandCursor (wxDC& dc, int x, int y);
bool GetCurrentCursor (int& x, int& y);
@@
-170,13
+187,13
@@
public:
class ProjectionFileCanvas;
class ProjectionFileView : public wxView
{
class ProjectionFileCanvas;
class ProjectionFileView : public wxView
{
+private:
DECLARE_DYNAMIC_CLASS(ProjectionFileView)
DECLARE_DYNAMIC_CLASS(ProjectionFileView)
-
wxMemoryDC m_memoryDC;
+ wxMemoryDC m_memoryDC;
wxBitmap m_bitmap;
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);
#if CTSIM_MDI
wxDocMDIChildFrame* m_pFrame;
wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
@@
-187,7
+204,7
@@
private:
ProjectionFileCanvas *m_pCanvas;
wxMenu* m_pFileMenu;
ProjectionFileCanvas *m_pCanvas;
wxMenu* m_pFileMenu;
-
+
int m_iDefaultNX;
int m_iDefaultNY;
int m_iDefaultFilter;
int m_iDefaultNX;
int m_iDefaultNY;
int m_iDefaultFilter;
@@
-207,7
+224,7
@@
private:
wxWindow* getFrameForChild()
#if CTSIM_MDI
wxWindow* getFrameForChild()
#if CTSIM_MDI
- { return theApp->getMainFrame()
->GetClientWindow()
; }
+ { return theApp->getMainFrame(); }
#else
{ return m_pFrame; }
#endif
#else
{ return m_pFrame; }
#endif
@@
-227,12
+244,17
@@
public:
void OnReconstructFourier (wxCommandEvent& event);
void OnConvertPolar (wxCommandEvent& event);
void OnConvertFFTPolar (wxCommandEvent& event);
void OnReconstructFourier (wxCommandEvent& event);
void OnConvertPolar (wxCommandEvent& event);
void OnConvertFFTPolar (wxCommandEvent& event);
-
+ void OnPlotTThetaSampling (wxCommandEvent& event);
+ void OnConvertParallel (wxCommandEvent& event);
+ void OnArtifactReduction (wxCommandEvent& event);
+
#if CTSIM_MDI
wxDocMDIChildFrame* getFrame() { return m_pFrame; }
#else
wxDocChildFrame* getFrame() { return m_pFrame; }
#endif
#if CTSIM_MDI
wxDocMDIChildFrame* getFrame() { return m_pFrame; }
#else
wxDocChildFrame* getFrame() { return m_pFrame; }
#endif
+ ProjectionFileCanvas* getCanvas() { return m_pCanvas; }
+
wxMenu* getFileMenu() { return m_pFileMenu; }
ProjectionFileDocument* GetDocument()
wxMenu* getFileMenu() { return m_pFileMenu; }
ProjectionFileDocument* GetDocument()
@@
-263,7
+285,7
@@
private:
DECLARE_DYNAMIC_CLASS(PhantomFileView)
DECLARE_EVENT_TABLE()
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);
#if CTSIM_MDI
wxDocMDIChildFrame* m_pFrame;
wxDocMDIChildFrame* CreateChildFrame(wxDocument *doc, wxView *view);
@@
-282,15
+304,18
@@
private:
int m_iDefaultTrace;
double m_dDefaultRotation;
double m_dDefaultFocalLength;
int m_iDefaultTrace;
double m_dDefaultRotation;
double m_dDefaultFocalLength;
- double m_dDefaultFieldOfView;
+ double m_dDefaultCenterDetectorLength;
+ double m_dDefaultViewRatio;
+ double m_dDefaultScanRatio;
int m_iDefaultRasterNX;
int m_iDefaultRasterNY;
int m_iDefaultRasterNSamples;
int m_iDefaultRasterNX;
int m_iDefaultRasterNY;
int m_iDefaultRasterNSamples;
+ double m_dDefaultRasterViewRatio;
wxWindow* getFrameForChild()
#if CTSIM_MDI
wxWindow* getFrameForChild()
#if CTSIM_MDI
- { return theApp->getMainFrame()
->GetClientWindow()
; }
+ { return theApp->getMainFrame(); }
#else
{ return m_pFrame; }
#endif
#else
{ return m_pFrame; }
#endif
@@
-329,6
+354,7
@@
public:
PhantomCanvas (PhantomFileView* v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style);
virtual ~PhantomCanvas();
PhantomCanvas (PhantomFileView* v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style);
virtual ~PhantomCanvas();
+ virtual wxSize GetBestSize() const;
void setView(PhantomFileView* pView)
{ m_pView = pView; }
virtual void OnDraw(wxDC& dc);
void setView(PhantomFileView* pView)
{ m_pView = pView; }
virtual void OnDraw(wxDC& dc);
@@
-358,10
+384,10
@@
private:
double m_dMaxPixel;
double m_dAutoScaleFactor;
double m_dMaxPixel;
double m_dAutoScaleFactor;
- PlotFileCanvas *CreateCanvas
(wxView *view, wxFrame *
parent);
+ PlotFileCanvas *CreateCanvas
(wxFrame*
parent);
wxWindow* getFrameForChild()
#if CTSIM_MDI
wxWindow* getFrameForChild()
#if CTSIM_MDI
- { return theApp->getMainFrame()
->GetClientWindow()
; }
+ { return theApp->getMainFrame(); }
#else
{ return m_pFrame; }
#endif
#else
{ return m_pFrame; }
#endif
@@
-440,6
+466,9
@@
public:
void OnUpdate (wxView *sender, wxObject *hint = (wxObject *) NULL);
bool OnClose (bool deleteWindow = TRUE);
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
TextFileCanvas* getTextCtrl() { return m_pCanvas; }
wxMenu* getFileMenu() { return m_pFileMenu; }
#if CTSIM_MDI