]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/richtext/richtextxml.h
support for iPhone callbacks
[wxWidgets.git] / interface / wx / richtext / richtextxml.h
index 309a5e0142314c5651ede7cd34dd411c613271a4..b5a838c6ea2506b364b5a10944f2de799f623d9d 100644 (file)
@@ -3,7 +3,7 @@
 // Purpose:     interface of wxRichTextXMLHandler
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /**
@@ -35,8 +35,8 @@ public:
     /**
         Constructor.
     */
-    wxRichTextXMLHandler(const wxString& name = wxT("XML"),
-                         const wxString& ext = wxT("xml"),
+    wxRichTextXMLHandler(const wxString& name = "XML",
+                         const wxString& ext = "xml",
                          int type = wxRICHTEXT_TYPE_XML);
 
     /**
@@ -49,28 +49,10 @@ public:
     */
     virtual bool CanSave() const;
 
-    /**
-        Creates XML code for a given character or paragraph style.
-    */
-    wxString CreateStyle(const wxTextAttr& attr, bool isPara = false);
-
-    /**
-        Loads buffer context from the given stream.
-    */
-    virtual bool DoLoadFile(wxRichTextBuffer* buffer, wxInputStream& stream);
-
-    /**
-        Saves buffer context to the given stream.
-    */
-    virtual bool DoSaveFile(wxRichTextBuffer* buffer, wxOutputStream& stream);
-
     /**
         Recursively exports an object to the stream.
     */
-    bool ExportXML(wxOutputStream& stream, wxMBConv* convMem,
-                   wxMBConv* convFile,
-                   wxRichTextObject& obj,
-                   int level);
+    bool ExportXML(wxOutputStream& stream, wxRichTextObject& obj, int level);
 
     /**
         Helper function: gets node context.
@@ -87,12 +69,6 @@ public:
     */
     wxString GetParamValue(wxXmlNode* node, const wxString& param);
 
-    /**
-        Helper function: gets style parameters from the given XML node.
-    */
-    bool GetStyle(wxTextAttr& attr, wxXmlNode* node,
-                  bool isPara = false);
-
     /**
         Helper function: gets text from the node.
     */
@@ -108,6 +84,29 @@ public:
     /**
         Recursively imports an object.
     */
-    bool ImportXML(wxRichTextBuffer* buffer, wxXmlNode* node);
+    bool ImportXML(wxRichTextBuffer* buffer, wxRichTextObject* obj, wxXmlNode* node);
+
+    /**
+        Call with XML node name, C++ class name so that wxRTC can read in the node.
+        If you add a custom object, call this.
+    */
+    static void RegisterNodeName(const wxString& nodeName, const wxString& className) { sm_nodeNameToClassMap[nodeName] = className; }
+
+    /**
+        Cleans up the mapping between node name and C++ class.
+    */
+    static void ClearNodeToClassMap() { sm_nodeNameToClassMap.clear(); }
+
+protected:
+
+    /**
+        Loads buffer context from the given stream.
+    */
+    virtual bool DoLoadFile(wxRichTextBuffer* buffer, wxInputStream& stream);
+
+    /**
+        Saves buffer context to the given stream.
+    */
+    virtual bool DoSaveFile(wxRichTextBuffer* buffer, wxOutputStream& stream);
 };