]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/xrc/xmlres.h
don't use wxDELETE unnecessarily
[wxWidgets.git] / include / wx / xrc / xmlres.h
index efaba14f723acbe3592ebd982b438156c55aa65e..7d29dd260d14a5a2d25348b0d2c932572d54cefa 100644 (file)
@@ -17,6 +17,7 @@
 
 #include "wx/string.h"
 #include "wx/dynarray.h"
 
 #include "wx/string.h"
 #include "wx/dynarray.h"
+#include "wx/arrstr.h"
 #include "wx/datetime.h"
 #include "wx/list.h"
 #include "wx/gdicmn.h"
 #include "wx/datetime.h"
 #include "wx/list.h"
 #include "wx/gdicmn.h"
@@ -107,8 +108,6 @@ public:
     // Destructor.
     virtual ~wxXmlResource();
 
     // Destructor.
     virtual ~wxXmlResource();
 
-    wxXmlNode *GetFirstRoot();
-
     // Loads resources from XML files that match given filemask.
     // This method understands VFS (see filesys.h).
     bool Load(const wxString& filemask);
     // Loads resources from XML files that match given filemask.
     // This method understands VFS (see filesys.h).
     bool Load(const wxString& filemask);
@@ -210,6 +209,15 @@ public:
     // version for internal use only
     static int DoGetXRCID(const char *str_id, int value_if_not_found = wxID_NONE);
 
     // version for internal use only
     static int DoGetXRCID(const char *str_id, int value_if_not_found = wxID_NONE);
 
+
+    // Find the string ID with the given numeric value, returns an empty string
+    // if no such ID is found.
+    //
+    // Notice that unlike GetXRCID(), which is fast, this operation is slow as
+    // it checks all the IDs used in XRC.
+    static wxString FindXRCIDById(int numId);
+
+
     // Returns version information (a.b.c.d = d+ 256*c + 256^2*b + 256^3*a).
     long GetVersion() const { return m_version; }
 
     // Returns version information (a.b.c.d = d+ 256*c + 256^2*b + 256^3*a).
     long GetVersion() const { return m_version; }
 
@@ -273,7 +281,7 @@ private:
     long m_version;
 
     int m_flags;
     long m_version;
 
     int m_flags;
-    class WXDLLIMPEXP_FWD_XRC wxVector<wxXmlResourceHandler*> m_handlers;
+    wxVector<wxXmlResourceHandler*> m_handlers;
     wxXmlResourceDataRecords *m_data;
 #if wxUSE_FILESYSTEM
     wxFileSystem m_curFileSystem;
     wxXmlResourceDataRecords *m_data;
 #if wxUSE_FILESYSTEM
     wxFileSystem m_curFileSystem;
@@ -326,10 +334,10 @@ private:
 //   <size>400, 300</size>
 // </object>
 //
 //   <size>400, 300</size>
 // </object>
 //
-// wxSizerItem* item = XRCSIZERITEM(*this, wxT("area"))
+// wxSizerItem* item = XRCSIZERITEM(*this, "area")
 
 #define XRCSIZERITEM(window, id) \
 
 #define XRCSIZERITEM(window, id) \
-    ((window).GetSizer() ? (window).GetSizer()->GetItemById(id) : NULL)    
+    ((window).GetSizer() ? (window).GetSizer()->GetItemById(XRCID(id)) : NULL)
 
 // wxXmlResourceHandler is an abstract base class for resource handlers
 // capable of creating a control from an XML node.
 
 // wxXmlResourceHandler is an abstract base class for resource handlers
 // capable of creating a control from an XML node.
@@ -461,6 +469,10 @@ protected:
     // Gets a font.
     wxFont GetFont(const wxString& param = wxT("font"));
 
     // Gets a font.
     wxFont GetFont(const wxString& param = wxT("font"));
 
+    // Gets the value of a boolean attribute (only "0" and "1" are valid values)
+    bool GetBoolAttr(const wxString& attr, bool defaultv);
+
+
     // Sets common window options.
     void SetupWindow(wxWindow *wnd);
 
     // Sets common window options.
     void SetupWindow(wxWindow *wnd);