]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/docview/doc.h
Fix various gtk webkit warnings.
[wxWidgets.git] / samples / docview / doc.h
index a4547ec65fe5df42f994df7c21b9f0cb17d29e7b..d79f8275de31b43f0a7376e7dd6b8098b5140059 100644 (file)
@@ -7,7 +7,7 @@
 // RCS-ID:      $Id$
 // Copyright:   (c) 1998 Julian Smart
 //              (c) 2008 Vadim Zeitlin
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_SAMPLES_DOCVIEW_DOC_H_
@@ -16,6 +16,7 @@
 #include "wx/docview.h"
 #include "wx/cmdproc.h"
 #include "wx/vector.h"
+#include "wx/image.h"
 
 // This sample is written to build both with wxUSE_STD_IOSTREAM==0 and 1, which
 // somewhat complicates its code but is necessary in order to support building
@@ -157,23 +158,64 @@ public:
 
 
 // ----------------------------------------------------------------------------
-// A simple text document class
+// wxTextDocument: wxDocument and wxTextCtrl married
 // ----------------------------------------------------------------------------
 
-class TextEditView;
-class TextEditDocument : public wxDocument
+class wxTextDocument : public wxDocument
 {
 public:
-    TextEditDocument() : wxDocument() { }
-    TextEditView *GetFirstView() const;
+    wxTextDocument() : wxDocument() { }
+
+    virtual bool OnCreate(const wxString& path, long flags);
+
+    virtual wxTextCtrl* GetTextCtrl() const = 0;
 
-    virtual bool DoSaveDocument(const wxString& filename);
-    virtual bool DoOpenDocument(const wxString& filename);
     virtual bool IsModified() const;
     virtual void Modify(bool mod);
 
-    DECLARE_NO_COPY_CLASS(TextEditDocument)
+protected:
+    virtual bool DoSaveDocument(const wxString& filename);
+    virtual bool DoOpenDocument(const wxString& filename);
+
+    void OnTextChange(wxCommandEvent& event);
+
+    wxDECLARE_NO_COPY_CLASS(wxTextDocument);
+    DECLARE_CLASS(wxTextDocument)
+};
+
+// ----------------------------------------------------------------------------
+// A very simple text document class
+// ----------------------------------------------------------------------------
+
+class TextEditDocument : public wxTextDocument
+{
+public:
+    TextEditDocument() : wxTextDocument() { }
+    virtual wxTextCtrl* GetTextCtrl() const;
+
+    wxDECLARE_NO_COPY_CLASS(TextEditDocument);
     DECLARE_DYNAMIC_CLASS(TextEditDocument)
 };
 
+// ----------------------------------------------------------------------------
+// A document class representing an image
+// ----------------------------------------------------------------------------
+
+class ImageDocument : public wxDocument
+{
+public:
+    ImageDocument() : wxDocument() { }
+
+    wxImage GetImage() const { return m_image; }
+
+protected:
+    virtual bool DoOpenDocument(const wxString& file);
+
+private:
+    wxImage m_image;
+
+    wxDECLARE_NO_COPY_CLASS(ImageDocument);
+    DECLARE_DYNAMIC_CLASS(ImageDocument)
+};
+
 #endif // _WX_SAMPLES_DOCVIEW_DOC_H_