#pragma implementation "objstrm.h"
#endif
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+ #pragma hdrstop
+#endif
+
+#if wxUSE_SERIAL && wxUSE_STREAMS
+
#include "wx/object.h"
#include "wx/objstrm.h"
#include "wx/datstrm.h"
{
wxString name;
- name.Printf("%x", (unsigned long)obj);
+ name.Printf(_T("%x"), (unsigned long)obj);
return name;
}
if (info.duplicate) {
data_s.WriteString(TAG_DUPLICATE_OBJECT);
data_s.WriteString(GetObjectName(info.object));
+ wxPrintf(_T("info.object (dup %s)\n"), info.object->GetClassInfo()->GetClassName());
return;
}
if (info.object) {
data_s.WriteString(info.object->GetClassInfo()->GetClassName());
+ wxPrintf(_T("info.object (%s)\n"), info.object->GetClassInfo()->GetClassName());
} else {
data_s.WriteString(TAG_EMPTY_OBJECT);
+ wxPrintf(_T("info.object (NULL)\n"));
return;
}
wxObjectInputStream::wxObjectInputStream(wxInputStream& s)
: wxFilterInputStream(s)
{
+ m_secondcall = FALSE;
}
wxObject *wxObjectInputStream::SolveName(const wxString& name) const
wxObjectStreamInfo *info;
if (m_current_info->children_removed >= m_current_info->n_children)
- return NULL;
+ return (wxObject *) NULL;
node = m_current_info->children.Nth(m_current_info->children_removed+no);
class_name = data_s.ReadString();
info->children_removed = 0;
+ info->n_children = 0;
if (class_name == TAG_EMPTY_OBJECT)
info->object = (wxObject *) NULL;
else if (class_name == TAG_DUPLICATE_OBJECT) {
info->object_name = data_s.ReadString();
info->object = SolveName(info->object_name);
- info->n_children = 0;
} else {
info->object_name = data_s.ReadString();
info->object = wxCreateDynamicObject( WXSTRINGCAST class_name);
return object;
}
+
+#endif
+