Now wxFrame derives from wxFrameMSW/GTK in non-wxUniv mode. Fixes RTTI problems.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2001-06-27 17:19:49 +00:00
parent 22bd93879d
commit 3a12b404f8
4 changed files with 50 additions and 11 deletions

View File

@@ -239,19 +239,55 @@ protected:
// include the real class declaration
#if defined(__WXMSW__)
#ifndef __WXUNIVERSAL__
#define wxFrameMSW wxFrame
#define sm_classwxFrameMSW sm_classwxFrame
#endif
#include "wx/msw/frame.h"
#ifndef __WXUNIVERSAL__
class WXDLLEXPORT wxFrame : public wxFrameMSW
{
public:
// construction
wxFrame() { Init(); }
wxFrame(wxWindow *parent,
wxWindowID id,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE,
const wxString& name = wxFrameNameStr)
{
Init();
Create(parent, id, title, pos, size, style, name);
}
DECLARE_DYNAMIC_CLASS(wxFrame)
};
#endif
#elif defined(__WXMOTIF__)
#include "wx/motif/frame.h"
#elif defined(__WXGTK__)
#ifndef __WXUNIVERSAL__
#define wxFrameGTK wxFrame
#define sm_classwxFrameGTK sm_classwxFrame
#endif
#include "wx/gtk/frame.h"
#ifndef __WXUNIVERSAL__
class WXDLLEXPORT wxFrame : public wxFrameGTK
{
public:
// construction
wxFrame() { Init(); }
wxFrame(wxWindow *parent,
wxWindowID id,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE,
const wxString& name = wxFrameNameStr)
{
Init();
Create(parent, id, title, pos, size, style, name);
}
DECLARE_DYNAMIC_CLASS(wxFrame)
};
#endif
#elif defined(__WXMGL__)
#include "wx/mgl/frame.h"
#elif defined(__WXQT__)

View File

@@ -67,7 +67,8 @@ extern int g_openDialogs;
#ifdef __WXUNIVERSAL__
IMPLEMENT_DYNAMIC_CLASS(wxFrameGTK, wxWindow)
#else
IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxWindow)
IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxFrameGTK)
IMPLEMENT_DYNAMIC_CLASS(wxFrameGTK, wxWindow)
#endif
// ----------------------------------------------------------------------------

View File

@@ -67,7 +67,8 @@ extern int g_openDialogs;
#ifdef __WXUNIVERSAL__
IMPLEMENT_DYNAMIC_CLASS(wxFrameGTK, wxWindow)
#else
IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxWindow)
IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxFrameGTK)
IMPLEMENT_DYNAMIC_CLASS(wxFrameGTK, wxWindow)
#endif
// ----------------------------------------------------------------------------

View File

@@ -81,6 +81,7 @@ BEGIN_EVENT_TABLE(wxFrameMSW, wxFrameBase)
END_EVENT_TABLE()
IMPLEMENT_DYNAMIC_CLASS(wxFrameMSW, wxWindow)
IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxFrameMSW)
// ============================================================================
// implementation
@@ -403,7 +404,7 @@ void wxFrameMSW::SetIcon(const wxIcon& icon)
}
// generate an artificial resize event
void wxFrame::SendSizeEvent()
void wxFrameMSW::SendSizeEvent()
{
RECT r;
#ifdef __WIN16__