+
+// This class is used to create instances of XRC "object" nodes with "subclass"
+// property. It is _not_ supposed to be used by XRC users, you should instead
+// register your subclasses via wxWindows' RTTI mechanism. This class is useful
+// only for language bindings developer who need a way to implement subclassing
+// in wxWindows ports that don't support wxRTTI (e.g. wxPython).
+class WXXMLDLLEXPORT wxXmlSubclassFactory
+{
+public:
+ // Try to create instance of given class and return it, return NULL on failure:
+ virtual wxObject *Create(const wxString& className) = 0;
+ virtual ~wxXmlSubclassFactory() {}
+};
+
+
+/* -------------------------------------------------------------------------
+ Backward compatibility macros. Do *NOT* use, they may disappear in future
+ versions of the XRC library!
+ ------------------------------------------------------------------------- */
+#if WXWIN_COMPATIBILITY_2_4
+ #define ADD_STYLE XRC_ADD_STYLE
+ #define wxTheXmlResource wxXmlResource::Get()
+ #define XMLID XRCID
+ #define XMLCTRL XRCCTRL
+ #define GetXMLID GetXRCID
+#endif
+
+