home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / wxos2233.zip / wxOS2-2_3_3.zip / wxWindows-2.3.3 / contrib / samples / ogl / ogledit / view.h < prev   
C/C++ Source or Header  |  2002-09-08  |  2KB  |  80 lines

  1. /////////////////////////////////////////////////////////////////////////////
  2. // Name:        view.h
  3. // Purpose:     View-related classes
  4. // Author:      Julian Smart
  5. // Modified by:
  6. // Created:     12/07/98
  7. // RCS-ID:      $Id: view.h,v 1.2 2002/09/07 12:12:21 GD Exp $
  8. // Copyright:   (c) Julian Smart
  9. // Licence:       wxWindows licence
  10. /////////////////////////////////////////////////////////////////////////////
  11.  
  12. #ifndef _OGLSAMPLE_VIEW_H_
  13. #define _OGLSAMPLE_VIEW_H_
  14.  
  15. #if defined(__GNUG__) && !defined(__APPLE__)
  16. // #pragma interface "view.h"
  17. #endif
  18.  
  19. #include "doc.h"
  20. #include <wx/ogl/ogl.h>
  21.  
  22. class MyCanvas: public wxShapeCanvas
  23. {
  24. // DECLARE_DYNAMIC_CLASS(wxShapeCanvas)
  25.  protected:
  26.  public:
  27.   wxView *view;
  28.  
  29.   MyCanvas(wxView *view, wxWindow *parent = NULL, wxWindowID id = -1,
  30.             const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
  31.             long style = wxRETAINED);
  32.   ~MyCanvas(void);
  33.  
  34.   void OnMouseEvent(wxMouseEvent& event);
  35.   void OnPaint(wxPaintEvent& event);
  36.  
  37.   virtual void OnLeftClick(double x, double y, int keys = 0);
  38.   virtual void OnRightClick(double x, double y, int keys = 0);
  39.  
  40.   virtual void OnDragLeft(bool draw, double x, double y, int keys=0); // Erase if draw false
  41.   virtual void OnBeginDragLeft(double x, double y, int keys=0);
  42.   virtual void OnEndDragLeft(double x, double y, int keys=0);
  43.  
  44.   virtual void OnDragRight(bool draw, double x, double y, int keys=0); // Erase if draw false
  45.   virtual void OnBeginDragRight(double x, double y, int keys=0);
  46.   virtual void OnEndDragRight(double x, double y, int keys=0);
  47.  
  48. DECLARE_EVENT_TABLE()
  49. };
  50.  
  51. class DiagramView: public wxView
  52. {
  53.   DECLARE_DYNAMIC_CLASS(DiagramView)
  54.  private:
  55.  public:
  56.   wxFrame *frame;
  57.   MyCanvas *canvas;
  58.   
  59.   DiagramView(void) { canvas = NULL; frame = NULL; };
  60.   ~DiagramView(void) {};
  61.  
  62.   bool OnCreate(wxDocument *doc, long flags);
  63.   void OnDraw(wxDC *dc);
  64.   void OnUpdate(wxView *sender, wxObject *hint = NULL);
  65.   bool OnClose(bool deleteWindow = TRUE);
  66.  
  67.   wxShape *FindSelectedShape(void);
  68.  
  69. //  void OnMenuCommand(int cmd);
  70.  
  71.   void OnCut(wxCommandEvent& event);
  72.   void OnChangeBackgroundColour(wxCommandEvent& event);
  73.   void OnEditLabel(wxCommandEvent& event);
  74.  
  75. DECLARE_EVENT_TABLE()
  76. };
  77.  
  78. #endif
  79.     // _OGLSAMPLE_VIEW_H_
  80.