]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/docmdi.h
include <string>
[wxWidgets.git] / include / wx / docmdi.h
index 089a328ce42ac3249ec589ce97f61ad2ba9c45f0..a94a48c73dda2ecb18d46ac7c52bfdc16cf2c73a 100644 (file)
@@ -5,20 +5,16 @@
 // Modified by:
 // Created:     01/02/97
 // RCS-ID:      $Id$
-// Copyright:   (c)
-// Licence:    wxWindows licence
+// Copyright:   (c) Julian Smart
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_DOCMDI_H_
 #define _WX_DOCMDI_H_
 
-#if defined(__GNUG__) && !defined(__APPLE__)
-#pragma interface "docmdi.h"
-#endif
-
 #include "wx/defs.h"
 
-#if wxUSE_MDI_ARCHITECTURE && wxUSE_DOC_VIEW_ARCHITECTURE
+#if wxUSE_MDI_ARCHITECTURE
 
 #include "wx/docview.h"
 #include "wx/mdi.h"
  * Use this instead of wxMDIParentFrame
  */
 
-class WXDLLEXPORT wxDocMDIParentFrame: public wxMDIParentFrame
+class WXDLLIMPEXP_CORE wxDocMDIParentFrame: public wxMDIParentFrame
 {
 public:
+    wxDocMDIParentFrame();
     wxDocMDIParentFrame(wxDocManager *manager, wxFrame *parent, wxWindowID id,
         const wxString& title, const wxPoint& pos = wxDefaultPosition,
         const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, const wxString& name = wxT("frame"));
 
+    bool Create(wxDocManager *manager, wxFrame *parent, wxWindowID id,
+        const wxString& title, const wxPoint& pos = wxDefaultPosition,
+        const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, const wxString& name = wxT("frame"));
+
     // Extend event processing to search the document manager's event table
     virtual bool ProcessEvent(wxEvent& event);
 
@@ -44,24 +45,37 @@ public:
     void OnCloseWindow(wxCloseEvent& event);
 
 protected:
+    void Init();
     wxDocManager *m_docManager;
 
 private:
     DECLARE_CLASS(wxDocMDIParentFrame)
     DECLARE_EVENT_TABLE()
+    DECLARE_NO_COPY_CLASS(wxDocMDIParentFrame)
 };
 
 /*
  * Use this instead of wxMDIChildFrame
  */
 
-class WXDLLEXPORT wxDocMDIChildFrame: public wxMDIChildFrame
+class WXDLLIMPEXP_CORE wxDocMDIChildFrame: public wxMDIChildFrame
 {
 public:
+    wxDocMDIChildFrame();
     wxDocMDIChildFrame(wxDocument *doc, wxView *view, wxMDIParentFrame *frame, wxWindowID id,
         const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
         long type = wxDEFAULT_FRAME_STYLE, const wxString& name = wxT("frame"));
-    ~wxDocMDIChildFrame();
+    virtual ~wxDocMDIChildFrame();
+
+    bool Create(wxDocument *doc,
+                wxView *view,
+                wxMDIParentFrame *frame,
+                wxWindowID id,
+                const wxString& title,
+                const wxPoint& pos = wxDefaultPosition,
+                const wxSize& size = wxDefaultSize,
+                long type = wxDEFAULT_FRAME_STYLE,
+                const wxString& name = wxFrameNameStr);
 
     // Extend event processing to search the view's event table
     virtual bool ProcessEvent(wxEvent& event);
@@ -74,14 +88,16 @@ public:
     inline void SetDocument(wxDocument *doc) { m_childDocument = doc; }
     inline void SetView(wxView *view) { m_childView = view; }
     bool Destroy() { m_childView = (wxView *)NULL; return wxMDIChildFrame::Destroy(); }
-    
+
 protected:
+    void Init();
     wxDocument*       m_childDocument;
     wxView*           m_childView;
 
 private:
     DECLARE_EVENT_TABLE()
     DECLARE_CLASS(wxDocMDIChildFrame)
+    DECLARE_NO_COPY_CLASS(wxDocMDIChildFrame)
 };
 
 #endif