wxClassInfo* wxClassInfo::sm_first = (wxClassInfo *) NULL;
wxHashTable* wxClassInfo::sm_classTable = (wxHashTable*) NULL;
-#if defined(__WXDEBUG__) && defined(__VISAGECPP__)
- int wxObject::N = 0; // total number of objects
- int wxObject::Nid = 0;// object serial counter
-#endif // __WXDEBUG__
-
// These are here so we can avoid 'always true/false' warnings
// by referring to these instead of TRUE/FALSE
const bool wxTrue = TRUE;
#if wxUSE_SERIAL
m_serialObj = (wxObject_Serialize *)NULL;
#endif
-#if defined(__WXDEBUG__) && defined(__VISAGECPP__)
- id = Nid++;
- N++;
-// { printf("wxObject %i/%i \t",id,N);
-// }
-#endif
}
wxObject::~wxObject()
if (m_serialObj)
delete m_serialObj;
#endif
-#if defined(__WXDEBUG__) && defined(__VISAGECPP__)
- N--;
-// { printf("~wxObject %i/%i \t",id,N);
-// }
-#endif //__WXDEBUG__
}
/*
}
#if wxUSE_STD_IOSTREAM && (defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT)
-void wxObject::Dump(ostream& str)
+void wxObject::Dump(wxSTD ostream& str)
{
if (GetClassInfo() && GetClassInfo()->GetClassName())
str << GetClassInfo()->GetClassName();
* Class info: provides run-time class type information.
*/
-wxClassInfo::wxClassInfo(wxChar *cName, wxChar *baseName1, wxChar *baseName2, int sz, wxObjectConstructorFn constr)
+wxClassInfo::wxClassInfo(const wxChar *cName,
+ const wxChar *baseName1,
+ const wxChar *baseName2,
+ int sz,
+ wxObjectConstructorFn constr)
{
m_className = cName;
m_baseClassName1 = baseName1;
return (wxObject *) NULL;
}
-wxClassInfo *wxClassInfo::FindClass(wxChar *c)
+wxClassInfo *wxClassInfo::FindClass(const wxChar *c)
{
wxClassInfo *p = sm_first;
while (p)
{
- if (p && p->GetClassName() && wxStrcmp(p->GetClassName(), c) == 0)
- return p;
+ if ( wxStrcmp(p->GetClassName(), c) == 0 )
+ break;
+
p = p->m_next;
}
- return (wxClassInfo *) NULL;
+
+ return p;
}
// Climb upwards through inheritance hierarchy.
// Dual inheritance is catered for.
-bool wxClassInfo::IsKindOf(wxClassInfo *info) const
+bool wxClassInfo::IsKindOf(const wxClassInfo *info) const
{
if (info == NULL)
return FALSE;
wxObject *wxCreateDynamicObject(const wxChar *name)
{
+#if defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT
DEBUG_PRINTF(wxObject *wxCreateDynamicObject)
+#endif
if (wxClassInfo::sm_classTable)
{
void wxObject::StoreObject( wxObjectOutputStream& stream )
{
+#if defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT
DEBUG_PRINTF(wxObject::StoreObject)
+#endif
wxString obj_name = wxString(GetClassInfo()->GetClassName()) + "_Serialize";
wxLibrary *lib = wxTheLibraries.LoadLibrary("wxserial");
void wxObject::LoadObject( wxObjectInputStream& stream )
{
+#if defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT
DEBUG_PRINTF(wxObject::LoadObject)
+#endif
wxString obj_name = wxString(GetClassInfo()->GetClassName()) + "_Serialize";
wxLibrary *lib = wxTheLibraries.LoadLibrary("wxserial");
void wxObject::Ref(const wxObject& clone)
{
+#if defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT
DEBUG_PRINTF(wxObject::Ref)
- // delete reference to old data
+#endif
+ // delete reference to old data
UnRef();
// reference new data
if (clone.m_refData) {