1///////////////////////////////////////////////////////////////////////////// 2// Name: view.h 3// Purpose: View classes 4// Author: Julian Smart 5// Modified by: 6// Created: 04/01/98 7// RCS-ID: $Id: view.h 35650 2005-09-23 12:56:45Z MR $ 8// Copyright: (c) Julian Smart 9// Licence: wxWindows license 10///////////////////////////////////////////////////////////////////////////// 11 12#ifndef __VIEWSAMPLEH__ 13#define __VIEWSAMPLEH__ 14 15#include "wx/docview.h" 16 17class MyCanvas: public wxScrolledWindow 18{ 19public: 20 wxView *view; 21 22 MyCanvas(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style); 23 virtual void OnDraw(wxDC& dc); 24 void OnMouseEvent(wxMouseEvent& event); 25 26 DECLARE_EVENT_TABLE() 27}; 28 29class MyTextWindow: public wxTextCtrl 30{ 31public: 32 wxView *view; 33 34 MyTextWindow(wxView *v, wxFrame *frame, const wxPoint& pos, const wxSize& size, const long style); 35}; 36 37class DrawingView: public wxView 38{ 39 DECLARE_DYNAMIC_CLASS(DrawingView) 40private: 41public: 42 wxFrame *frame; 43 MyCanvas *canvas; 44 45 DrawingView(void) { canvas = (MyCanvas *) NULL; frame = (wxFrame *) NULL; }; 46 ~DrawingView(void) {}; 47 48 bool OnCreate(wxDocument *doc, long flags); 49 void OnDraw(wxDC *dc); 50 void OnUpdate(wxView *sender, wxObject *hint = (wxObject *) NULL); 51 bool OnClose(bool deleteWindow = true); 52 53 void OnCut(wxCommandEvent& event); 54 55 DECLARE_EVENT_TABLE() 56}; 57 58class TextEditView: public wxView 59{ 60 DECLARE_DYNAMIC_CLASS(TextEditView) 61private: 62public: 63 wxFrame *frame; 64 MyTextWindow *textsw; 65 66 TextEditView(): wxView() { frame = (wxFrame *) NULL; textsw = (MyTextWindow *) NULL; } 67 ~TextEditView(void) {} 68 69 bool OnCreate(wxDocument *doc, long flags); 70 void OnDraw(wxDC *dc); 71 void OnUpdate(wxView *sender, wxObject *hint = (wxObject *) NULL); 72 bool OnClose(bool deleteWindow = true); 73}; 74 75#endif 76