]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/object.cpp
A few weeks of Unicode fixes (my old win95 laptop compiles sloowly,
[wxWidgets.git] / src / common / object.cpp
index ec127bd3ae5a83b0fd1fd9034ac61c6b2421f326..dbc9d46ef41a7b4159ca34cdbe249e804c5e6ca9 100644 (file)
@@ -87,6 +87,18 @@ bool wxObject::IsKindOf(wxClassInfo *info) const
         return FALSE;
 }
 
+wxObject *wxObject::Clone() const
+{
+    wxObject *object = GetClassInfo()->CreateObject();
+    CopyObject(*object);
+    return object;
+}
+
+void wxObject::CopyObject(wxObject& object_dest) const
+{
+    wxASSERT(object_dest.GetClassInfo()->IsKindOf(GetClassInfo()));
+}
+
 #if defined(__WXDEBUG__) || wxUSE_DEBUG_CONTEXT
 void wxObject::Dump(ostream& str)
 {
@@ -103,7 +115,7 @@ void wxObject::Dump(ostream& str)
 #undef new
 #endif
 
-void *wxObject::operator new (size_t size, char * fileName, int lineNum)
+void *wxObject::operator new (size_t size, wxChar * fileName, int lineNum)
 {
     return wxDebugAlloc(size, fileName, lineNum, TRUE);
 }
@@ -123,7 +135,7 @@ void wxObject::operator delete(void* pData, char* /* fileName */, int /* lineNum
 
 // Cause problems for VC++ - crashes
 #if !defined(__VISUALC__) && wxUSE_ARRAY_MEMORY_OPERATORS
-void * wxObject::operator new[] (size_t size, char * fileName, int lineNum)
+void * wxObject::operator new[] (size_t size, wxChar * fileName, int lineNum)
 {
     return wxDebugAlloc(size, fileName, lineNum, TRUE, TRUE);
 }