X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=src%2Fviews.h;h=8a9bd7917adfcb3266e48eae2433c3d808926bae;hb=739e435359d44546dd812fff8c86b815a214d587;hp=08fd7a8fbce9539016abf7027a9b9b51b6859d73;hpb=3147cd44cff6132e51eac1a179c1fc3d405faacc;p=ctsim.git diff --git a/src/views.h b/src/views.h index 08fd7a8..8a9bd79 100644 --- a/src/views.h +++ b/src/views.h @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: views.h,v 1.10 2000/09/04 09:06:46 kevin Exp $ +** $Id: views.h,v 1.13 2000/12/20 14:39:09 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 @@ -67,6 +67,11 @@ public: void OnProperties (wxCommandEvent& event); void OnScaleAuto (wxCommandEvent& event); void OnScaleMinMax (wxCommandEvent& event); + void OnPlotRow (wxCommandEvent& event); + void OnPlotCol (wxCommandEvent& event); + + wxFrame* getFrame() + { return m_frame; } ImageFileDocument* GetDocument(void) { return dynamic_cast(wxView::GetDocument()); } @@ -76,12 +81,19 @@ public: class ImageFileCanvas: public wxScrolledWindow { +private: + int m_xCursor; + int m_yCursor; + public: ImageFileView* m_pView; ImageFileCanvas (ImageFileView* v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style); virtual void OnDraw(wxDC& dc); void OnMouseEvent(wxMouseEvent& event); + + void DrawRubberBandCursor (wxDC& dc, int x, int y); + bool GetCurrentCursor (int& x, int& y); DECLARE_EVENT_TABLE() }; @@ -124,6 +136,9 @@ public: bool OnClose (bool deleteWindow = true); void OnProperties (wxCommandEvent& event); void OnReconstruct (wxCommandEvent& event); + + wxFrame* getFrame () + { return m_frame; } ProjectionFileDocument* GetDocument(void) { return dynamic_cast(wxView::GetDocument()); } @@ -190,6 +205,47 @@ public: }; +class PlotFileCanvas; +class PlotFileView : public wxView +{ + DECLARE_DYNAMIC_CLASS(PlotFileView) + +private: + PlotFileCanvas *CreateCanvas(wxView *view, wxFrame *parent); + wxFrame *CreateChildFrame(wxDocument *doc, wxView *view); + + PlotFileCanvas *m_canvas; + wxFrame *m_frame; + +public: + PlotFileView(void); + virtual ~PlotFileView(void); + + bool OnCreate(wxDocument *doc, long flags); + void OnDraw(wxDC* dc); + void OnUpdate(wxView *sender, wxObject *hint = NULL); + bool OnClose (bool deleteWindow = true); + void OnProperties (wxCommandEvent& event); + + wxFrame* getFrame () + { return m_frame; } + + PlotFileDocument* GetDocument(void) + { return dynamic_cast(wxView::GetDocument()); } + + DECLARE_EVENT_TABLE() +}; + +class PlotFileCanvas: public wxScrolledWindow +{ +public: + PlotFileView* m_pView; + + PlotFileCanvas (PlotFileView* v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style); + virtual void OnDraw(wxDC& dc); +}; + + #endif