]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/persist.h
restore the default bitmap icons size to 16*15, making them larger if necessary is...
[wxWidgets.git] / include / wx / persist.h
index ff2aabab10e8dc3b4ba4a5851520568d98473f55..24cd503142d3278ce910eca0727094367879ce01 100644 (file)
@@ -215,5 +215,23 @@ private:
     DECLARE_NO_COPY_CLASS(wxPersistentObject)
 };
 
+// FIXME-VC6: VC6 has troubles with template methods of DLL-exported classes,
+//            apparently it believes they should be defined in the DLL (which
+//            is, of course, impossible as the DLL doesn't know for which types
+//            will they be instantiated) instead of compiling them when
+//            building the main application itself. Because of this problem
+//            (which only arises in debug build!) we can't use the usual
+//            RegisterAndRestore(obj) with it and need to explicitly create the
+//            persistence adapter. To hide this ugliness we define a global
+//            function which does it for us.
+template <typename T>
+inline bool wxPersistentRegisterAndRestore(T *obj)
+{
+    wxPersistentObject * const pers = wxCreatePersistentObject(obj);
+
+    return wxPersistenceManager::Get().RegisterAndRestore(obj, pers);
+                                            
+}
+
 #endif // _WX_PERSIST_H_