#include "wx/encconv.h"
+#if wxUSE_EXTENDED_RTTI
+
+WX_BEGIN_ENUM( wxFontEncoding )
+ WX_ENUM_MEMBER( wxFONTENCODING_SYSTEM )
+ WX_ENUM_MEMBER( wxFONTENCODING_DEFAULT )
+
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_1 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_2 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_3 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_4 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_5 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_6 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_7 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_8 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_9 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_10 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_11 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_12 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_13 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_14 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_15 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ISO8859_MAX )
+ WX_ENUM_MEMBER( wxFONTENCODING_KOI8 )
+ WX_ENUM_MEMBER( wxFONTENCODING_ALTERNATIVE )
+ WX_ENUM_MEMBER( wxFONTENCODING_BULGARIAN )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP437 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP850 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP852 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP855 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP866 )
+
+ WX_ENUM_MEMBER( wxFONTENCODING_CP874 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP932 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP936 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP949 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP950 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP1250 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP1251 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP1252 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP1253 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP1254 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP1255 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP1256 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP1257 )
+ WX_ENUM_MEMBER( wxFONTENCODING_CP12_MAX )
+ WX_ENUM_MEMBER( wxFONTENCODING_UTF7 )
+ WX_ENUM_MEMBER( wxFONTENCODING_UTF8 )
+ WX_ENUM_MEMBER( wxFONTENCODING_GB2312 )
+ WX_ENUM_MEMBER( wxFONTENCODING_BIG5 )
+ WX_ENUM_MEMBER( wxFONTENCODING_SHIFT_JIS )
+ WX_ENUM_MEMBER( wxFONTENCODING_EUC_JP )
+ WX_ENUM_MEMBER( wxFONTENCODING_UNICODE )
+WX_END_ENUM( wxFontEncoding )
+#endif
+
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
#if wxUSE_EXTENDED_RTTI
const wxClassInfo* wxObject::sm_classParentswxObject[] = { NULL } ;
- wxObject* wxVariantToObjectConverterwxObject ( const wxxVariant &data )
+ wxObject* wxVariantToObjectConverterwxObject ( wxxVariant &data )
{ return data.Get<wxObject*>() ; }
+ wxObject* wxVariantOfPtrToObjectConverterwxObject ( wxxVariant &data )
+{ return &data.Get<wxObject>() ; }
wxxVariant wxObjectToVariantConverterwxObject ( wxObject *data )
{ return wxxVariant( dynamic_cast<wxObject*> (data) ) ; }
wxClassInfo wxObject::sm_classwxObject(sm_classParentswxObject , wxT("") , wxT("wxObject"),
(int) sizeof(wxObject), \
(wxObjectConstructorFn) 0 ,
(wxPropertyInfo*) NULL,(wxHandlerInfo*) NULL,0 , 0 ,
- 0 , wxVariantToObjectConverterwxObject , wxObjectToVariantConverterwxObject);
+ 0 , wxVariantOfPtrToObjectConverterwxObject , wxVariantToObjectConverterwxObject , wxObjectToVariantConverterwxObject);
template<> void wxStringReadValue(const wxString & , wxObject * & ){assert(0) ;}
template<> void wxStringWriteValue(wxString & , wxObject* const & ){assert(0) ;}
template<> const wxTypeInfo* wxGetTypeInfo( wxObject ** )
- { static wxClassTypeInfo s_typeInfo(&wxObject::sm_classwxObject) ; return &s_typeInfo ; }
+ { static wxClassTypeInfo s_typeInfo(wxT_OBJECT_PTR , &wxObject::sm_classwxObject) ; return &s_typeInfo ; }
#else
wxClassInfo wxObject::sm_classwxObject( wxT("wxObject"), 0, 0,
(int) sizeof(wxObject),
WX_DEFINE_EXPORTED_LIST( wxSizerItemList );
-
+/*
+ TODO PROPERTIES
+ sizeritem
+ object
+ object_ref
+ minsize
+ option
+ flag
+ border
+ spacer
+ option
+ flag
+ borfder
+ boxsizer
+ orient
+ staticboxsizer
+ orient
+ label
+ gridsizer
+ rows
+ cols
+ vgap
+ hgap
+ flexgridsizer
+ rows
+ cols
+ vgap
+ hgap
+ growablerows
+ growablecols
+ minsize
+*/
//---------------------------------------------------------------------------
// wxSizerItem
//---------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxGenericDirCtrl, wxControl)
+/*
+TODO PROPERTIES
+ defaultfolder string
+ filter string
+ (long) defaultfilter)
+*/
+
BEGIN_EVENT_TABLE(wxGenericDirCtrl, wxControl)
EVT_TREE_ITEM_EXPANDING (-1, wxGenericDirCtrl::OnExpandItem)
EVT_TREE_ITEM_COLLAPSED (-1, wxGenericDirCtrl::OnCollapseItem)
IMPLEMENT_DYNAMIC_CLASS_XTI(wxPanel, wxWindow,"wx/panel.h")
WX_BEGIN_PROPERTIES_TABLE(wxPanel)
+// style wxTAB_TRAVERSAL
WX_END_PROPERTIES_TABLE()
WX_BEGIN_HANDLERS_TABLE(wxPanel)
IMPLEMENT_CLASS(wxScrolledWindow, wxGenericScrolledWindow)
+/*
+ TODO PROPERTIES
+ style wxHSCROLL | wxVSCROLL
+*/
+
// ----------------------------------------------------------------------------
// wxScrollHelperEvtHandler: intercept the events from the window and forward
// them to wxScrollHelper
DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPLITTER_UNSPLIT)
IMPLEMENT_DYNAMIC_CLASS(wxSplitterWindow, wxWindow)
+
+/*
+ TODO PROPERTIES
+ style wxSP_3D
+ sashpos (long , 0 )
+ minsize (long -1 )
+ object, object_ref
+ orientation
+*/
+
IMPLEMENT_DYNAMIC_CLASS(wxSplitterEvent, wxNotifyEvent)
BEGIN_EVENT_TABLE(wxSplitterWindow, wxWindow)
END_EVENT_TABLE()
IMPLEMENT_DYNAMIC_CLASS(wxWizard, wxDialog)
+
+/*
+ TODO PROPERTIES :
+ wxWizard
+ extstyle
+ title
+*/
+
IMPLEMENT_ABSTRACT_CLASS(wxWizardPage, wxPanel)
IMPLEMENT_DYNAMIC_CLASS(wxWizardPageSimple, wxWizardPage)
IMPLEMENT_DYNAMIC_CLASS(wxWizardEvent, wxNotifyEvent)
IMPLEMENT_DYNAMIC_CLASS(wxBitmapButton, wxButton)
+/*
+TODO PROPERTIES :
+
+long "style" , wxBU_AUTODRAW
+bool "default" , 0
+bitmap "selected" ,
+bitmap "focus" ,
+bitmap "disabled" ,
+*/
+
#define BUTTON_HEIGHT_FACTOR (EDIT_CONTROL_FACTOR * 1.1)
bool wxBitmapButton::Create(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
WX_BEGIN_PROPERTIES_TABLE(wxButton)
WX_DELEGATE( OnClick , wxEVT_COMMAND_BUTTON_CLICKED , wxCommandEvent )
+ // default
WX_END_PROPERTIES_TABLE()
WX_BEGIN_HANDLERS_TABLE(wxButton)
IMPLEMENT_DYNAMIC_CLASS(wxCheckBox, wxControl)
+/*
+TODO PROPERTIES :
+
+bool "checked" , 0
+*/
+
// ----------------------------------------------------------------------------
// wxCheckBox
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxCheckListBox, wxListBox)
+/*
+TODO PROPERTIES
+ list content
+ item , checked (no)
+*/
// ----------------------------------------------------------------------------
// declaration and implementation of wxCheckListBoxItem class
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxChoice, wxControl)
+/*
+ TODO PROPERTIES
+ selection (long)
+ content (list)
+ item
+*/
+
// ============================================================================
// implementation
// ============================================================================
#include <string.h>
+#if wxUSE_EXTENDED_RTTI
+IMPLEMENT_DYNAMIC_CLASS_WITH_COPY_XTI( wxColour , wxObject , "wx/colour.h" )
+
+WX_BEGIN_PROPERTIES_TABLE(wxColour)
+ WX_READONLY_PROPERTY( Red, unsigned char , Red , 0 )
+ WX_READONLY_PROPERTY( Green, unsigned char , Green , 0 )
+ WX_READONLY_PROPERTY( Blue, unsigned char , Blue , 0 )
+WX_END_PROPERTIES_TABLE()
+
+WX_CONSTRUCTOR_3( wxColour , unsigned char , Red , unsigned char , Green , unsigned char , Blue )
+
+WX_BEGIN_HANDLERS_TABLE(wxColour)
+WX_END_HANDLERS_TABLE()
+#else
IMPLEMENT_DYNAMIC_CLASS(wxColour, wxObject)
+#endif
// Colour
IMPLEMENT_DYNAMIC_CLASS(wxComboBox, wxControl)
+/*
+ TODO PROPERTIES
+ selection (long¨)
+ content
+ value
+ item
+*/
+
// ----------------------------------------------------------------------------
// function prototypes
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxDialog, wxTopLevelWindow)
+/*
+ TODO PROPERTIES
+
+ style (wxDEFAULT_DIALOG_STYLE)
+ centered (bool, false )
+*/
+
BEGIN_EVENT_TABLE(wxDialog, wxDialogBase)
EVT_BUTTON(wxID_OK, wxDialog::OnOK)
EVT_BUTTON(wxID_APPLY, wxDialog::OnApply)
#include "wx/tokenzr.h"
-IMPLEMENT_DYNAMIC_CLASS(wxFont, wxGDIObject)
+#if wxUSE_EXTENDED_RTTI
+
+WX_BEGIN_ENUM( wxFontFamily )
+ WX_ENUM_MEMBER( wxDEFAULT )
+ WX_ENUM_MEMBER( wxDECORATIVE )
+ WX_ENUM_MEMBER( wxROMAN )
+ WX_ENUM_MEMBER( wxSCRIPT )
+ WX_ENUM_MEMBER( wxSWISS )
+ WX_ENUM_MEMBER( wxMODERN )
+ WX_ENUM_MEMBER( wxTELETYPE )
+WX_END_ENUM( wxFontFamily )
+
+WX_BEGIN_ENUM( wxFontStyle )
+ WX_ENUM_MEMBER( wxNORMAL )
+ WX_ENUM_MEMBER( wxITALIC )
+ WX_ENUM_MEMBER( wxSLANT )
+WX_END_ENUM( wxFontStyle )
+
+WX_BEGIN_ENUM( wxFontWeight )
+ WX_ENUM_MEMBER( wxNORMAL )
+ WX_ENUM_MEMBER( wxLIGHT )
+ WX_ENUM_MEMBER( wxBOLD )
+WX_END_ENUM( wxFontWeight )
+
+IMPLEMENT_DYNAMIC_CLASS_WITH_COPY_XTI(wxFont, wxGDIObject,"wx/font.h")
+
+WX_BEGIN_PROPERTIES_TABLE(wxFont)
+ WX_PROPERTY( Size,int, SetPointSize, GetPointSize, 12 )
+ WX_PROPERTY( Family, int , SetFamily, GetFamily, (int)wxDEFAULT ) // wxFontFamily
+ WX_PROPERTY( Style, int , SetStyle, GetStyle, (int)wxNORMAL ) // wxFontStyle
+ WX_PROPERTY( Weight, int , SetWeight, GetWeight, (int)wxNORMAL ) // wxFontWeight
+ WX_PROPERTY( Underlined, bool , SetUnderlined, GetUnderlined, false )
+ WX_PROPERTY_SET_BY_REF( Face, wxString , SetFaceName, GetFaceName, )
+ WX_PROPERTY( Encoding, wxFontEncoding , SetEncoding, GetEncoding, wxFONTENCODING_DEFAULT )
+WX_END_PROPERTIES_TABLE()
+
+WX_CONSTRUCTOR_6( wxFont , int , Size , int , Family , int , Style , int , Weight , bool , Underlined , wxString , Face )
+
+WX_BEGIN_HANDLERS_TABLE(wxFont)
+WX_END_HANDLERS_TABLE()
+
+#else
+ IMPLEMENT_DYNAMIC_CLASS(wxFont, wxGDIObject)
+#endif
+
// ----------------------------------------------------------------------------
// constants
IMPLEMENT_DYNAMIC_CLASS_XTI(wxFrame, wxTopLevelWindow,"wx/frame.h")
WX_BEGIN_PROPERTIES_TABLE(wxFrame)
+/*
+ TODO PROPERTIES
+
+ style (wxDEFAULT_FRAME_STYLE)
+ centered (bool, false )
+*/
WX_END_PROPERTIES_TABLE()
WX_BEGIN_HANDLERS_TABLE(wxFrame)
IMPLEMENT_DYNAMIC_CLASS(wxGauge95, wxControl)
+/*
+ TODO PROPERTIES
+ range (long)
+ value (long)
+ shadow (ShadowWidth)
+ bezel (BezelFace)
+*/
+
// ============================================================================
// implementation
// ============================================================================
IMPLEMENT_DYNAMIC_CLASS(wxListBox, wxControl)
+/*
+TODO PROPERTIES
+ selection
+ content
+ item
+*/
+
// ============================================================================
// list box item declaration and implementation
// ============================================================================
IMPLEMENT_DYNAMIC_CLASS(wxMenu, wxEvtHandler)
IMPLEMENT_DYNAMIC_CLASS(wxMenuBar, wxWindow)
+/*
+ TODO PROPERTIES
+ wxMenu
+ label
+ help
+
+ separator
+ break
+ label
+ accel
+ radio
+ checkable
+ help
+ bitmap
+ wxMenuItem
+*/
+
// ---------------------------------------------------------------------------
// wxMenu construction, adding and removing menu items
// ---------------------------------------------------------------------------
#include "wx/panel.h"
#endif
+/*
+ notebookpage
+ object
+ object_ref
+ label
+ selected
+ style
+ usenotebooksizer
+*/
+
// ----------------------------------------------------------------------------
// macros
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxRadioBox, wxControl)
+/*
+ selection
+ content
+ label
+ dimension
+ item
+*/
+
// there are two possible ways to create the radio buttons: either as children
// of the radiobox or as siblings of it - allow playing with both variants for
// now, eventually we will choose the best one for our purposes
IMPLEMENT_DYNAMIC_CLASS(wxRadioButton, wxControl)
+/*
+ TODO PROPERTIES
+
+ label
+ value (bool , 0 )
+*/
+
void wxRadioButton::Init()
{
m_focusJustSet = FALSE;
IMPLEMENT_DYNAMIC_CLASS(wxScrollBar, wxControl)
+/*
+ TODO PROPERTIES
+ value (long,0)
+ thumbsize(long,1)
+ range( long , 10 )
+ pagesize( long , 1)
+*/
+
BEGIN_EVENT_TABLE(wxScrollBar, wxControl)
#if WXWIN_COMPATIBILITY
EVT_SCROLL(wxScrollBar::OnScroll)
IMPLEMENT_DYNAMIC_CLASS(wxSlider95, wxControl)
+/*
+ TODO PROPERTIES
+ value wxSL_DEFAULT_VALUE
+ min wxSL_DEFAULT_MIN
+ max wxSL_DEFAULT_MAX
+ tickfreq (long , 0 )
+ pagesize ( long )
+ linesize (long)
+ thumg (long)
+ tick (long)
+ selmin / selmax (long)
+*/
// Slider
wxSlider95::wxSlider95()
{
IMPLEMENT_DYNAMIC_CLASS(wxSpinButton, wxControl)
+/*
+ TODO PROPERTIES
+
+ style wxSP_VERTICAL | wxSP_ARROW_KEYS
+ value wxSP_DEFAULT_VALUE
+ min wxSP_DEFAULT_MIN
+ max wxSP_DEFAULT_MAX
+
+*/
+
// ----------------------------------------------------------------------------
// wxSpinButton
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxSpinCtrl, wxControl)
+/*
+ TODO PROPERTIES
+ style wxSP_ARROW_KEYS
+ value wxSP_DEFAULT_VALUE
+ min wxSP_DEFAULT_MIN
+ max wxSP_DEFAULT_MAX
+
+*/
+
BEGIN_EVENT_TABLE(wxSpinCtrl, wxSpinButton)
EVT_CHAR(wxSpinCtrl::OnChar)
IMPLEMENT_DYNAMIC_CLASS(wxStaticBitmap, wxControl)
+/*
+ TODO PROPERTIES :
+ bitmap
+*/
+
// ===========================================================================
// implementation
// ===========================================================================
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxStaticBox, wxControl)
+/*
+ TODO PROPERTIES :
+ label
+*/
// ============================================================================
// implementation
// ============================================================================
IMPLEMENT_DYNAMIC_CLASS(wxStaticLine, wxControl)
+/*
+ TODO PROPERTIES :
+ style (wxLI_HORIZONTAL)
+*/
// ----------------------------------------------------------------------------
// wxStaticLine
#include <stdio.h>
IMPLEMENT_DYNAMIC_CLASS(wxStaticText, wxControl)
+/*
+ TODO PROPERTIES :
+ label
+*/
bool wxStaticText::Create(wxWindow *parent,
wxWindowID id,
IMPLEMENT_DYNAMIC_CLASS(wxToolBar, wxControl)
+/*
+ TOOLBAR PROPERTIES
+ tool
+ bitmap
+ bitmap2
+ tooltip
+ longhelp
+ radio (bool)
+ toggle (bool)
+ separator
+ style ( wxNO_BORDER | wxTB_HORIZONTAL)
+ bitmapsize
+ margins
+ packing
+ separation
+
+ dontattachtoframe
+*/
+
BEGIN_EVENT_TABLE(wxToolBar, wxToolBarBase)
EVT_MOUSE_EVENTS(wxToolBar::OnMouseEvent)
EVT_SYS_COLOUR_CHANGED(wxToolBar::OnSysColourChanged)
// ----------------------------------------------------------------------------
IMPLEMENT_DYNAMIC_CLASS(wxTextCtrl, wxControl)
+/*
+ TODO PROPERTIES :
+ value
+*/
BEGIN_EVENT_TABLE(wxTextCtrl, wxControl)
EVT_CHAR(wxTextCtrl::OnChar)
IMPLEMENT_DYNAMIC_CLASS_XTI(wxWindow, wxWindowBase,"wx/window.h")
WX_BEGIN_PROPERTIES_TABLE(wxWindow)
+ // WX_DEFAULT_CHILD_PARENT_RELATION( Parent , Children ) ;
WX_READONLY_PROPERTY( Parent,wxWindow*, GetParent, )
WX_PROPERTY( Id,wxWindowID, SetId, GetId, -1 )
+ // MaxHeight, Width , MinHeight , Width
+ // TODO switch label to control and title to toplevels
WX_PROPERTY_SET_BY_REF( Title,wxString, SetTitle, GetTitle, wxT("") )
WX_PROPERTY_SET_BY_REF( Label,wxString, SetLabel, GetLabel, wxT("") )
- WX_PROPERTY_SET_BY_REF( Position,wxPoint, SetPosition , GetPosition, wxDefaultPosition )
- WX_PROPERTY_SET_BY_REF( Size,wxSize, SetSize, GetSize, wxDefaultSize )
+ WX_PROPERTY_SET_BY_REF( Position,wxPoint, SetPosition , GetPosition, wxPoint(-1,-1) ) // pos
+ WX_PROPERTY_SET_BY_REF( Size,wxSize, SetSize, GetSize, wxSize(-1,-1) ) // size
+ WX_PROPERTY( WindowStyle , long , SetWindowStyle , GetWindowStyle , ) // style
+ WX_PROPERTY( ExtraStyle , long , SetExtraStyle , GetExtraStyle , ) // extstyle
+ WX_PROPERTY( ThemeEnabled , bool , SetThemeEnabled , GetThemeEnabled , )
+ WX_PROPERTY_SET_BY_REF_RET_BOOL( BackgroundColour , wxColour , SetBackgroundColour , GetBackgroundColour , ) // bg
+ WX_PROPERTY_SET_BY_REF_RET_BOOL( ForegroundColour , wxColour , SetForegroundColour , GetForegroundColour , ) // fg
+ //WX_PROPERTY_SET_BY_REF( Cursor , wxCursor , SetCursor , GetCursor , )
+ WX_PROPERTY_SET_AND_GET_BY_REF_RET_BOOL( Font , wxFont , SetFont , GetFont , )
+ // WX_PROPERTY( ToolTip , wxString , SetToolTip , GetToolTipText , )
+ WX_PROPERTY( AutoLayout , bool , SetAutoLayout , GetAutoLayout , )
+ WX_PROPERTY_SET_RET_BOOL( Enabled , bool , Enable , IsEnabled , wxxVariant((bool)true) )
+ WX_PROPERTY_SET_RET_BOOL( Shown , bool , Show , IsShown , wxxVariant((bool)true) )
WX_END_PROPERTIES_TABLE()
WX_BEGIN_HANDLERS_TABLE(wxWindow)