]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/docview/view.h
Fix recreating of wxBitmapComboBox using untyped client data.
[wxWidgets.git] / samples / docview / view.h
index cb05b2ebcbc83d74470ad2525174fef54b8f6b71..9102144b7cbe2e2276acab092fc24e51a9275712 100644 (file)
@@ -4,10 +4,9 @@
 // Author:      Julian Smart
 // Modified by: Vadim Zeitlin: merge with the MDI version and general cleanup
 // Created:     04/01/98
-// RCS-ID:      $Id$
 // Copyright:   (c) 1998 Julian Smart
 //              (c) 2008 Vadim Zeitlin
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_SAMPLES_DOCVIEW_VIEW_H_
@@ -25,7 +24,7 @@ class MyCanvas : public wxScrolledWindow
 public:
     // view may be NULL if we're not associated with one yet, but parent must
     // be a valid pointer
-    MyCanvas(wxView *view, wxWindow *parent);
+    MyCanvas(wxView *view, wxWindow *parent = NULL);
     virtual ~MyCanvas();
 
     virtual void OnDraw(wxDC& dc);
@@ -67,7 +66,7 @@ private:
 class DrawingView : public wxView
 {
 public:
-    DrawingView() { m_canvas = NULL; m_frame = NULL; }
+    DrawingView() : wxView(), m_canvas(NULL) {}
 
     virtual bool OnCreate(wxDocument *doc, long flags);
     virtual void OnDraw(wxDC *dc);
@@ -79,7 +78,6 @@ public:
 private:
     void OnCut(wxCommandEvent& event);
 
-    wxFrame *m_frame;
     MyCanvas *m_canvas;
 
     DECLARE_EVENT_TABLE()
@@ -94,7 +92,7 @@ private:
 class TextEditView : public wxView
 {
 public:
-    TextEditView() : wxView() { m_frame = NULL; m_text = NULL; }
+    TextEditView() : wxView(), m_text(NULL) {}
 
     virtual bool OnCreate(wxDocument *doc, long flags);
     virtual void OnDraw(wxDC *dc);
@@ -107,7 +105,6 @@ private:
     void OnPaste(wxCommandEvent& WXUNUSED(event)) { m_text->Paste(); }
     void OnSelectAll(wxCommandEvent& WXUNUSED(event)) { m_text->SelectAll(); }
 
-    wxFrame *m_frame;
     wxTextCtrl *m_text;
 
     DECLARE_EVENT_TABLE()
@@ -121,29 +118,9 @@ private:
 class ImageCanvas : public wxScrolledWindow
 {
 public:
-    ImageCanvas(wxView*, wxWindow* parent);
+    ImageCanvas(wxView*);
 
     virtual void OnDraw(wxDC& dc);
-
-    // in a normal multiple document application a canvas is associated with
-    // one view from the beginning until the end, but to support the single
-    // document mode in which all documents reuse the same MyApp::GetCanvas()
-    // we need to allow switching the canvas from one view to another one
-
-    void SetView(wxView* view)
-    {
-        wxASSERT_MSG( !m_view, "shouldn't be already associated with a view" );
-
-        m_view = view;
-    }
-
-    void ResetView()
-    {
-        wxASSERT_MSG( m_view, "should be associated with a view" );
-
-        m_view = NULL;
-    }
-
 private:
     wxView *m_view;
 };
@@ -155,7 +132,7 @@ private:
 class ImageView : public wxView
 {
 public:
-    ImageView() : wxView(), m_frame(NULL) {}
+    ImageView() : wxView() {}
 
     virtual bool OnCreate(wxDocument*, long flags);
     virtual void OnDraw(wxDC*);
@@ -165,10 +142,27 @@ public:
     ImageDocument* GetDocument();
 
 private:
-    wxFrame* m_frame;
     ImageCanvas* m_canvas;
 
     DECLARE_DYNAMIC_CLASS(ImageView)
 };
 
+// ----------------------------------------------------------------------------
+// ImageDetailsView
+// ----------------------------------------------------------------------------
+
+class ImageDetailsView : public wxView
+{
+public:
+    ImageDetailsView(ImageDetailsDocument *doc);
+
+    virtual void OnDraw(wxDC *dc);
+    virtual bool OnClose(bool deleteWindow);
+
+private:
+    wxFrame *m_frame;
+
+    wxDECLARE_NO_COPY_CLASS(ImageDetailsView);
+};
+
 #endif // _WX_SAMPLES_DOCVIEW_VIEW_H_