]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/serbase.cpp
fix for the initial size of the dialogs
[wxWidgets.git] / src / common / serbase.cpp
index 1f2ea96f9c00f8b5b884169b75a6878d8bf05d3d..6b89bea73d59ac11fb6b3181beb8ec9cade98c6c 100644 (file)
@@ -15,6 +15,9 @@
 
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
+#if defined(__WINDOWS__)
+#include "wx/msw/private.h"
+#endif
 
 #include "wx/serbase.h"
 #include "wx/datstrm.h"
 #pragma hdrstop
 #endif
 
+#if wxUSE_SERIAL
+
 // ----------------------------------------------------------------------------
 // wxObject_Serialize
 // ----------------------------------------------------------------------------
 
-#if !USE_SHARED_LIBRARY
 IMPLEMENT_DYNAMIC_CLASS(wxObject_Serialize,wxObject)
+
 IMPLEMENT_SERIAL_CLASS(wxList, wxObject)
 IMPLEMENT_SERIAL_CLASS(wxHashTable, wxObject)
-#endif
 
 void WXSERIAL(wxList)::StoreObject(wxObjectOutputStream& s)
 {
@@ -55,7 +59,7 @@ void WXSERIAL(wxList)::StoreObject(wxObjectOutputStream& s)
 
   if (lst_object->GetKeyType() == wxKEY_INTEGER) {
     while (node) {
-      data_s.Write32(node->GetKeyInteger());
+      data_s.Write32((size_t)node->GetKeyInteger());
       node = node->Next();
     }
   } else {
@@ -72,7 +76,7 @@ void WXSERIAL(wxList)::LoadObject(wxObjectInputStream& s)
   wxList *list = (wxList *)Object();
   int number, i;
 
-  list->DeleteContents( data_s.Read8() );
+  list->DeleteContents( data_s.Read8() != 0 );
   list->SetKeyType( (wxKeyType) data_s.Read8() );
   number = data_s.Read32();
 
@@ -118,3 +122,5 @@ void WXSERIAL(wxHashTable)::LoadObject(wxObjectInputStream& s)
   for (i=0;i<n;i++)
     table->hash_table[i] = (wxList *)s.GetChild();
 }
+
+#endif // wxUSE_SERIAL