X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2f6c54eb076d760cbb6fb15e899f15fbbd575850..b6db2d145af115920246a91cee384c5a260b2da0:/samples/docvwmdi/view.h diff --git a/samples/docvwmdi/view.h b/samples/docvwmdi/view.h index 11f2ff6aed..8ac7c98ca9 100644 --- a/samples/docvwmdi/view.h +++ b/samples/docvwmdi/view.h @@ -5,77 +5,81 @@ // Modified by: // Created: 04/01/98 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem +// Copyright: (c) Julian Smart // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ -// #pragma interface -#endif - -#ifndef __VIEWSAMPLEH__ -#define __VIEWSAMPLEH__ +#ifndef __VIEW_H__ +#define __VIEW_H__ #include "wx/docview.h" -class MyCanvas: public wxScrolledWindow +class DrawingView; +class MyCanvas : public wxScrolledWindow { public: - wxView *view; - - MyCanvas(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, long style); - virtual void OnDraw(wxDC& dc); - void OnMouseEvent(wxMouseEvent& event); + DrawingView* m_view; -private: + MyCanvas(DrawingView*, wxMDIChildFrame*, const wxPoint&, const wxSize&, long style); + virtual void OnDraw(wxDC&); +protected: + void OnMouseEvent(wxMouseEvent&); DECLARE_EVENT_TABLE() }; class MyTextWindow: public wxTextCtrl { public: - wxView *view; - - MyTextWindow(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, long style); + wxView* m_view; + + MyTextWindow(wxView*, wxMDIChildFrame*, const wxPoint&, const wxSize&, long style); }; -class DrawingView: public wxView +class DrawingDocument; +class DrawingView : public wxView { + DECLARE_DYNAMIC_CLASS(DrawingView) public: - wxFrame *frame; - MyCanvas *canvas; - - DrawingView() { canvas = (MyCanvas *) NULL; frame = (wxFrame *) NULL; } - ~DrawingView() {} + wxMDIChildFrame* m_frame; + MyCanvas* m_canvas; - bool OnCreate(wxDocument *doc, long flags); - void OnDraw(wxDC *dc); - void OnUpdate(wxView *sender, wxObject *hint = (wxObject *) NULL); - bool OnClose(bool deleteWindow = TRUE); + DrawingView() { m_canvas = NULL; m_frame = NULL; } + virtual ~DrawingView() {} - void OnCut(wxCommandEvent& event); + virtual bool OnCreate(wxDocument *doc, long flags); + virtual void OnDraw(wxDC *dc); + virtual void OnUpdate(wxView *sender, wxObject *hint = NULL); + virtual bool OnClose(bool deleteWindow = true); -private: - DECLARE_DYNAMIC_CLASS(DrawingView) + DrawingDocument* GetDocument(); + +protected: + void OnCut(wxCommandEvent& event); DECLARE_EVENT_TABLE() }; class TextEditView: public wxView { public: - wxFrame *frame; - MyTextWindow *textsw; - - TextEditView(): wxView() { frame = (wxFrame *) NULL; textsw = (MyTextWindow *) NULL; } - ~TextEditView() {} - - bool OnCreate(wxDocument *doc, long flags); - void OnDraw(wxDC *dc); - void OnUpdate(wxView *sender, wxObject *hint = (wxObject *) NULL); - bool OnClose(bool deleteWindow = TRUE); - + wxMDIChildFrame* m_frame; + MyTextWindow* m_textsw; + + TextEditView() : wxView() { m_frame = NULL; m_textsw = NULL; } + virtual ~TextEditView() {} + + virtual bool OnCreate(wxDocument*, long flags); + virtual void OnDraw(wxDC* dc); + virtual void OnUpdate(wxView *sender, wxObject *hint = NULL); + virtual bool OnClose(bool deleteWindow = true); + virtual bool ProcessEvent(wxEvent&); + private: - DECLARE_DYNAMIC_CLASS(TextEditView) + void OnCopy(wxCommandEvent& WXUNUSED(event)) { m_textsw->Copy(); } + void OnPaste(wxCommandEvent& WXUNUSED(event)) { m_textsw->Paste(); } + void OnSelectAll(wxCommandEvent& WXUNUSED(event)) { m_textsw->SelectAll(); } + + DECLARE_EVENT_TABLE() + DECLARE_DYNAMIC_CLASS(TextEditView) }; #endif