]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/xti.h
wxLaunchDefaultBrowser() now supports wxBROWSER_NEW_WINDOW flag (and it actually...
[wxWidgets.git] / include / wx / xti.h
index c2e3b87d0d769bd16dc740584100b9698ec5c451..881ae54bec77d3703b19ee7efd3c7232db6583df 100644 (file)
 #ifndef _WX_XTIH__
 #define _WX_XTIH__
 
 #ifndef _WX_XTIH__
 #define _WX_XTIH__
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "xti.h"
-#endif
-
 // We want to support properties, event sources and events sinks through
 // explicit declarations, using templates and specialization to make the
 // effort as painless as possible.
 // We want to support properties, event sources and events sinks through
 // explicit declarations, using templates and specialization to make the
 // effort as painless as possible.
@@ -90,6 +86,7 @@ class WXDLLIMPEXP_BASE wxDynamicClassInfo;
 class WXDLLIMPEXP_BASE wxHashTable;
 class WXDLLIMPEXP_BASE wxObjectRefData;
 class WXDLLIMPEXP_BASE wxEvent;
 class WXDLLIMPEXP_BASE wxHashTable;
 class WXDLLIMPEXP_BASE wxObjectRefData;
 class WXDLLIMPEXP_BASE wxEvent;
+class WXDLLIMPEXP_BASE wxEvtHandler;
 
 typedef void (wxObject::*wxObjectEventFunction)(wxEvent&);
 
 
 typedef void (wxObject::*wxObjectEventFunction)(wxEvent&);
 
@@ -243,7 +240,7 @@ void wxSetToString( wxString &s , const wxBitset<e> &data )
         if ( data.test( value ) )
         {
             // this could also be done by the templated calls
         if ( data.test( value ) )
         {
             // this could also be done by the templated calls
-            if ( !s.IsEmpty() )
+            if ( !s.empty() )
                 s +=wxT("|") ;
             s += edata->GetEnumMemberNameByIndex(i) ;
         }
                 s +=wxT("|") ;
             s += edata->GetEnumMemberNameByIndex(i) ;
         }
@@ -303,7 +300,7 @@ void wxFlagsToString( wxString &s , const e& data )
             // clear the flags we just set
             dataValue &= ~value ;
             // this could also be done by the templated calls
             // clear the flags we just set
             dataValue &= ~value ;
             // this could also be done by the templated calls
-            if ( !s.IsEmpty() )
+            if ( !s.empty() )
                 s +=wxT("|") ;
             s += edata->GetEnumMemberNameByIndex(i) ;
         }
                 s +=wxT("|") ;
             s += edata->GetEnumMemberNameByIndex(i) ;
         }
@@ -667,7 +664,8 @@ public :
 
     wxxVariant& operator=(const wxxVariant &d)
     {
 
     wxxVariant& operator=(const wxxVariant &d)
     {
-        m_data = d.m_data->Clone() ;
+        delete m_data;
+        m_data = d.m_data ? d.m_data->Clone() : NULL ;
         m_name = d.m_name ;
         return *this ;
     }
         m_name = d.m_name ;
         return *this ;
     }
@@ -1974,7 +1972,7 @@ private :
 
 #define IMPLEMENT_DYNAMIC_CLASS_NO_WXOBJECT_NO_BASE_XTI( name , unit ) \
     const wxClassInfo* name::ms_classParents[] = { NULL } ; \
 
 #define IMPLEMENT_DYNAMIC_CLASS_NO_WXOBJECT_NO_BASE_XTI( name , unit ) \
     const wxClassInfo* name::ms_classParents[] = { NULL } ; \
-    wxClassInfo name::ms_classInfo(name::ms_classParents , wxT("") , wxT(#name),   \
+    wxClassInfo name::ms_classInfo(name::ms_classParents , wxEmptyString , wxT(#name),   \
     (int) sizeof(name),                              \
     (wxObjectConstructorFn) 0   ,   \
     name::GetPropertiesStatic(),name::GetHandlersStatic(),0 , 0 ,     \
     (int) sizeof(name),                              \
     (wxObjectConstructorFn) 0   ,   \
     name::GetPropertiesStatic(),name::GetHandlersStatic(),0 , 0 ,     \
@@ -1985,7 +1983,7 @@ private :
 
 #define IMPLEMENT_DYNAMIC_CLASS_NO_WXOBJECT_XTI( name , basename, unit ) \
     const wxClassInfo* name::ms_classParents[] = { &basename::ms_classInfo ,NULL } ; \
 
 #define IMPLEMENT_DYNAMIC_CLASS_NO_WXOBJECT_XTI( name , basename, unit ) \
     const wxClassInfo* name::ms_classParents[] = { &basename::ms_classInfo ,NULL } ; \
-    wxClassInfo name::ms_classInfo(name::ms_classParents , wxT("") , wxT(#name),   \
+    wxClassInfo name::ms_classInfo(name::ms_classParents , wxEmptyString , wxT(#name),   \
     (int) sizeof(name),                              \
     (wxObjectConstructorFn) 0   ,   \
     name::GetPropertiesStatic(),name::GetHandlersStatic(),0 , 0 ,     \
     (int) sizeof(name),                              \
     (wxObjectConstructorFn) 0   ,   \
     name::GetPropertiesStatic(),name::GetHandlersStatic(),0 , 0 ,     \
@@ -2030,7 +2028,7 @@ private :
     wxObject* wxVariantToObjectConverter##name ( wxxVariant &data ) { return data.wxTEMPLATED_MEMBER_CALL(Get , name*) ; } \
     wxObject* wxVariantOfPtrToObjectConverter##name ( wxxVariant &data ) { return data.wxTEMPLATED_MEMBER_CALL(Get , name*) ; } \
     wxxVariant wxObjectToVariantConverter##name ( wxObject *data ) { return wxxVariant( dynamic_cast<name*> (data)  ) ; } \
     wxObject* wxVariantToObjectConverter##name ( wxxVariant &data ) { return data.wxTEMPLATED_MEMBER_CALL(Get , name*) ; } \
     wxObject* wxVariantOfPtrToObjectConverter##name ( wxxVariant &data ) { return data.wxTEMPLATED_MEMBER_CALL(Get , name*) ; } \
     wxxVariant wxObjectToVariantConverter##name ( wxObject *data ) { return wxxVariant( dynamic_cast<name*> (data)  ) ; } \
-    wxClassInfo name::ms_classInfo(name::ms_classParents , wxT("") , wxT(#name),   \
+    wxClassInfo name::ms_classInfo(name::ms_classParents , wxEmptyString , wxT(#name),   \
     (int) sizeof(name),                              \
     (wxObjectConstructorFn) 0   ,   \
     name::GetPropertiesStatic(),name::GetHandlersStatic(),0 , 0 ,     \
     (int) sizeof(name),                              \
     (wxObjectConstructorFn) 0   ,   \
     name::GetPropertiesStatic(),name::GetHandlersStatic(),0 , 0 ,     \