From 51596bcb982d1147c00f869acf18062ca150fa91 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Mon, 28 Jul 2003 20:17:37 +0000 Subject: [PATCH] preliminary EXTENDED_RTTI git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/generic/panelg.cpp | 13 +++++++++++++ src/msw/button.cpp | 15 +++++++++++++++ src/msw/frame.cpp | 13 +++++++++++++ src/msw/notebook.cpp | 13 +++++++++++++ src/msw/window.cpp | 18 ++++++++++++++++++ 5 files changed, 72 insertions(+) diff --git a/src/generic/panelg.cpp b/src/generic/panelg.cpp index 188f142cb2..3bc06cc3be 100644 --- a/src/generic/panelg.cpp +++ b/src/generic/panelg.cpp @@ -43,7 +43,20 @@ // wxWin macros // ---------------------------------------------------------------------------- +#if wxUSE_EXTENDED_RTTI +IMPLEMENT_DYNAMIC_CLASS_XTI(wxPanel, wxWindow,"wx/panel.h") + +WX_BEGIN_PROPERTIES_TABLE(wxPanel) +WX_END_PROPERTIES_TABLE() + +WX_BEGIN_HANDLERS_TABLE(wxPanel) +WX_END_HANDLERS_TABLE() + +WX_CONSTRUCTOR_4( wxPanel , wxWindow* , Parent , wxWindowID , Id , wxPoint , Position , wxSize , Size ) + +#else IMPLEMENT_DYNAMIC_CLASS(wxPanel, wxWindow) +#endif BEGIN_EVENT_TABLE(wxPanel, wxWindow) EVT_SYS_COLOUR_CHANGED(wxPanel::OnSysColourChanged) diff --git a/src/msw/button.cpp b/src/msw/button.cpp index 52dbe0b5bd..4e93fe7cd8 100644 --- a/src/msw/button.cpp +++ b/src/msw/button.cpp @@ -46,7 +46,22 @@ // macros // ---------------------------------------------------------------------------- +#if wxUSE_EXTENDED_RTTI +IMPLEMENT_DYNAMIC_CLASS_XTI(wxButton, wxControl,"wx/button.h") + +WX_BEGIN_PROPERTIES_TABLE(wxButton) + WX_DELEGATE( OnClick , wxEVT_COMMAND_BUTTON_CLICKED , wxCommandEvent ) +WX_END_PROPERTIES_TABLE() + +WX_BEGIN_HANDLERS_TABLE(wxButton) +WX_END_HANDLERS_TABLE() + +WX_CONSTRUCTOR_5( wxButton , wxWindow* , Parent , wxWindowID , Id , wxString , Title , wxPoint , Position , wxSize , Size ) + + +#else IMPLEMENT_DYNAMIC_CLASS(wxButton, wxControl) +#endif // this macro tries to adjust the default button height to a reasonable value // using the char height as the base diff --git a/src/msw/frame.cpp b/src/msw/frame.cpp index f17d23dddb..0d51775ff8 100644 --- a/src/msw/frame.cpp +++ b/src/msw/frame.cpp @@ -79,7 +79,20 @@ BEGIN_EVENT_TABLE(wxFrame, wxFrameBase) EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged) END_EVENT_TABLE() +#if wxUSE_EXTENDED_RTTI +IMPLEMENT_DYNAMIC_CLASS_XTI(wxFrame, wxTopLevelWindow,"wx/frame.h") + +WX_BEGIN_PROPERTIES_TABLE(wxFrame) +WX_END_PROPERTIES_TABLE() + +WX_BEGIN_HANDLERS_TABLE(wxFrame) +WX_END_HANDLERS_TABLE() + +WX_CONSTRUCTOR_5( wxFrame , wxWindow* , Parent , wxWindowID , Id , wxString , Title , wxPoint , Position , wxSize , Size ) + +#else IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow) +#endif // ============================================================================ // implementation diff --git a/src/msw/notebook.cpp b/src/msw/notebook.cpp index a69381be92..edbeaa0c3e 100644 --- a/src/msw/notebook.cpp +++ b/src/msw/notebook.cpp @@ -112,7 +112,20 @@ BEGIN_EVENT_TABLE(wxNotebook, wxControl) EVT_NAVIGATION_KEY(wxNotebook::OnNavigationKey) END_EVENT_TABLE() +#if wxUSE_EXTENDED_RTTI +IMPLEMENT_DYNAMIC_CLASS_XTI(wxNotebook, wxControl,"wx/notebook.h") + +WX_BEGIN_PROPERTIES_TABLE(wxNotebook) +WX_END_PROPERTIES_TABLE() + +WX_BEGIN_HANDLERS_TABLE(wxNotebook) +WX_END_HANDLERS_TABLE() + +WX_CONSTRUCTOR_4( wxNotebook , wxWindow* , Parent , wxWindowID , Id , wxPoint , Position , wxSize , Size ) + +#else IMPLEMENT_DYNAMIC_CLASS(wxNotebook, wxControl) +#endif IMPLEMENT_DYNAMIC_CLASS(wxNotebookEvent, wxNotifyEvent) // ============================================================================ diff --git a/src/msw/window.cpp b/src/msw/window.cpp index 3d22361214..e17c2ef59e 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -229,7 +229,25 @@ static inline void wxBringWindowToTop(HWND hwnd) #ifdef __WXUNIVERSAL__ IMPLEMENT_ABSTRACT_CLASS(wxWindowMSW, wxWindowBase) #else // __WXMSW__ +#if wxUSE_EXTENDED_RTTI +IMPLEMENT_DYNAMIC_CLASS_XTI(wxWindow, wxWindowBase,"wx/window.h") + +WX_BEGIN_PROPERTIES_TABLE(wxWindow) + WX_PROPERTY( Parent,wxWindow*, NULL, GetParent, ) + WX_PROPERTY( Id,wxWindowID, SetId, GetId, -1 ) + WX_PROPERTY( Title,wxString, SetTitle, GetTitle, wxT("") ) + WX_PROPERTY( Label,wxString, SetLabel, GetLabel, wxT("") ) + WX_PROPERTY( Position,wxPoint, NULL , GetPosition, wxDefaultPosition ) + WX_PROPERTY( Size,wxSize, SetSize, GetSize, wxDefaultSize ) +WX_END_PROPERTIES_TABLE() + +WX_BEGIN_HANDLERS_TABLE(wxWindow) +WX_END_HANDLERS_TABLE() + +WX_CONSTRUCTOR_DUMMY(wxWindow) +#else IMPLEMENT_DYNAMIC_CLASS(wxWindow, wxWindowBase) +#endif #endif // __WXUNIVERSAL__/__WXMSW__ BEGIN_EVENT_TABLE(wxWindowMSW, wxWindowBase) -- 2.45.2