X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6aa89a22b8e47000c98bff05c6f545f331f1c353..d5693ba91e351b099892c16a809230017bffd6b2:/samples/docvwmdi/view.h?ds=sidebyside diff --git a/samples/docvwmdi/view.h b/samples/docvwmdi/view.h index 46ce8a2466..8ac7c98ca9 100644 --- a/samples/docvwmdi/view.h +++ b/samples/docvwmdi/view.h @@ -9,73 +9,77 @@ // 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, wxMDIChildFrame *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, wxMDIChildFrame *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: - wxMDIChildFrame *frame; - MyCanvas *canvas; - - DrawingView() { canvas = (MyCanvas *) NULL; frame = (wxMDIChildFrame *) 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: - wxMDIChildFrame *frame; - MyTextWindow *textsw; - - TextEditView(): wxView() { frame = (wxMDIChildFrame *) 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