From 7e25260c0df5cad7fbf9bca7720ba4893a9f4cad Mon Sep 17 00:00:00 2001
From: Robin Dunn <robin@alldunn.com>
Date: Sat, 6 May 2006 21:57:09 +0000
Subject: [PATCH] GetXRCID has a new parameter

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39088 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
---
 wxPython/src/_xmlres.i | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/wxPython/src/_xmlres.i b/wxPython/src/_xmlres.i
index e99138573a..851a32f454 100644
--- a/wxPython/src/_xmlres.i
+++ b/wxPython/src/_xmlres.i
@@ -168,10 +168,13 @@ public:
     bool AttachUnknownControl(const wxString& name, wxWindow *control,
                               wxWindow *parent = NULL);
 
-    // Returns numeric ID that is equivalent to string id used in XML
-    // resource. To be used in event tables
-    // Macro XMLID is provided for convenience
-    static int GetXRCID(const wxString& str_id);
+    // Returns a numeric ID that is equivalent to the string ID used in an XML
+    // resource. If an unknown str_id is requested (i.e. other than wxID_XXX
+    // or integer), a new record is created which associates the given string
+    // with a number. If value_if_not_found == wxID_NONE, the number is obtained via
+    // wxNewId(). Otherwise value_if_not_found is used.
+    // Macro XRCID(name) is provided for convenient use in event tables.
+    static int GetXRCID(const wxChar *str_id, int value_if_not_found = wxID_NONE);
 
     // Returns version info (a.b.c.d = d+ 256*c + 256^2*b + 256^3*a)
     long GetVersion() const;
@@ -197,8 +200,8 @@ public:
 //----------------------------------------------------------------------
 
 %pythoncode {
-def XRCID(str_id):
-    return XmlResource_GetXRCID(str_id)
+def XRCID(str_id, value_if_not_found = wx.ID_NONE):
+    return XmlResource_GetXRCID(str_id, value_if_not_found)
 
 def XRCCTRL(window, str_id, *ignoreargs):
     return window.FindWindowById(XRCID(str_id))
-- 
2.47.2