class WXDLLEXPORT 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();
+ 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);
bool Destroy() { m_childView = (wxView *)NULL; return wxMDIChildFrame::Destroy(); }
protected:
+ void Init();
wxDocument* m_childDocument;
wxView* m_childView;
EVT_CLOSE(wxDocMDIChildFrame::OnCloseWindow)
END_EVENT_TABLE()
+void wxDocMDIChildFrame::Init()
+{
+ m_childDocument = (wxDocument*) NULL;
+ m_childView = (wxView*) NULL;
+}
+
+wxDocMDIChildFrame::wxDocMDIChildFrame()
+{
+ Init();
+}
+
wxDocMDIChildFrame::wxDocMDIChildFrame(wxDocument *doc, wxView *view, wxMDIParentFrame *frame, wxWindowID id,
- const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name):
- wxMDIChildFrame(frame, id, title, pos, size, style, name)
+ const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name)
+{
+ Init();
+ Create(doc, view, frame, id, title, pos, size, style, name);
+}
+
+bool wxDocMDIChildFrame::Create(wxDocument *doc, wxView *view, wxMDIParentFrame *frame, wxWindowID id,
+ const wxString& title, const wxPoint& pos, const wxSize& size, long style, const wxString& name)
{
m_childDocument = doc;
m_childView = view;
+ if (wxMDIChildFrame::Create(frame, id, title, pos, size, style, name)) {
if (view)
view->SetFrame(this);
+ return TRUE;
+ }
+
+ return FALSE;
}
wxDocMDIChildFrame::~wxDocMDIChildFrame(void)