1///////////////////////////////////////////////////////////////////////////// 2// Name: sashtest.h 3// Purpose: Layout window/sash sample 4// Author: Julian Smart 5// Modified by: 6// Created: 04/01/98 7// RCS-ID: $Id: sashtest.h 34525 2005-06-02 12:04:48Z JS $ 8// Copyright: (c) Julian Smart 9// Licence: wxWindows license 10///////////////////////////////////////////////////////////////////////////// 11 12#include "wx/toolbar.h" 13 14// Define a new application 15class MyApp: public wxApp 16{ 17 public: 18 bool OnInit(void); 19}; 20 21class MyCanvas: public wxScrolledWindow 22{ 23 public: 24 MyCanvas(wxWindow *parent, const wxPoint& pos, const wxSize& size); 25 virtual void OnDraw(wxDC& dc); 26 void OnEvent(wxMouseEvent& event); 27 28 DECLARE_EVENT_TABLE() 29}; 30 31// Define a new frame 32class MyFrame: public wxMDIParentFrame 33{ 34 public: 35 36 MyFrame(wxWindow *parent, const wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, const long style); 37 38 void OnSize(wxSizeEvent& event); 39 void OnAbout(wxCommandEvent& event); 40 void OnNewWindow(wxCommandEvent& event); 41 void OnQuit(wxCommandEvent& event); 42 void OnToggleWindow(wxCommandEvent& event); 43 void OnSashDrag(wxSashEvent& event); 44 45protected: 46 wxSashLayoutWindow* m_topWindow; 47 wxSashLayoutWindow* m_leftWindow1; 48 wxSashLayoutWindow* m_leftWindow2; 49 wxSashLayoutWindow* m_bottomWindow; 50 51DECLARE_EVENT_TABLE() 52}; 53 54class MyChild: public wxMDIChildFrame 55{ 56 public: 57 MyCanvas *canvas; 58 MyChild(wxMDIParentFrame *parent, const wxString& title, const wxPoint& pos, const wxSize& size, const long style); 59 ~MyChild(void); 60 void OnActivate(wxActivateEvent& event); 61 void OnQuit(wxCommandEvent& event); 62 63DECLARE_EVENT_TABLE() 64}; 65 66#define SASHTEST_QUIT wxID_EXIT 67#define SASHTEST_NEW_WINDOW 2 68#define SASHTEST_REFRESH 3 69#define SASHTEST_CHILD_QUIT 4 70#define SASHTEST_ABOUT wxID_ABOUT 71#define SASHTEST_TOGGLE_WINDOW 6 72 73#define ID_WINDOW_TOP 100 74#define ID_WINDOW_LEFT1 101 75#define ID_WINDOW_LEFT2 102 76#define ID_WINDOW_BOTTOM 103 77 78