]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/objstrm.h
no message
[wxWidgets.git] / include / wx / objstrm.h
index f7e7f58d6f017cc4a61472852cc616361fe38ac5..699492671c183c6cb8369737e1b73ad322ad4feb 100644 (file)
@@ -8,8 +8,8 @@
 // Copyright:   (c) 1998 Guilhem Lavaux
 // Licence:     wxWindows license
 /////////////////////////////////////////////////////////////////////////////
-#ifndef __WXOBJSTRM_H__
-#define __WXOBJSTRM_H__
+#ifndef _WX_WXOBJSTRM_H__
+#define _WX_WXOBJSTRM_H__
 
 #ifdef __GNUG__
 #pragma interface
@@ -27,6 +27,7 @@ class wxObjectStreamInfo : public wxObject {
   wxList children;
   wxObjectStreamInfo *parent;
   wxObject *object;
+  bool duplicate, recall;
 };
 
 class wxObjectOutputStream : public wxFilterOutputStream {
@@ -49,13 +50,18 @@ class wxObjectOutputStream : public wxFilterOutputStream {
   int m_stage;
   bool m_saving;
   wxObjectStreamInfo *m_current_info;
+  wxList m_saved_objs;
 };
 
 class wxObjectInputStream : public wxFilterInputStream {
  public:
   wxObjectInputStream(wxInputStream& s);
 
+  bool SecondCall() const { return m_secondcall; }
+  void Recall(bool on = TRUE) { m_current_info->recall = on; }
+
   wxObject *GetChild(int no) const;
+  wxObject *GetChild();
   int NumberOfChildren() const { return m_current_info->n_children; }
   void RemoveChildren(int nb);
   wxObject *GetParent() const;
@@ -69,6 +75,7 @@ class wxObjectInputStream : public wxFilterInputStream {
   void ProcessObjectData(wxObjectStreamInfo *info);
 
  protected:
+  bool m_secondcall;
   wxObjectStreamInfo *m_current_info;
   wxList m_solver;
 };