slowly documenting XRC...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@17471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -20,6 +20,7 @@ The XRC format is based on XML 1.0 (please consult W3C's specification). There
|
|||||||
is no DTD available since it is not possible to fully describe the format with
|
is no DTD available since it is not possible to fully describe the format with
|
||||||
the limited expressive power of DTDs.
|
the limited expressive power of DTDs.
|
||||||
|
|
||||||
|
|
||||||
1. Terminology
|
1. Terminology
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
@@ -43,6 +44,7 @@ of an <object> or <object_ref> node. In the example bellow, <pos>, <label> and
|
|||||||
</object>
|
</object>
|
||||||
</resource>
|
</resource>
|
||||||
|
|
||||||
|
|
||||||
2. Elementary description
|
2. Elementary description
|
||||||
-------------------------
|
-------------------------
|
||||||
|
|
||||||
@@ -70,9 +72,58 @@ The <resource> node contains namespace declaration, too:
|
|||||||
The <resource> node is only allowed to have <object> and <object_ref>
|
The <resource> node is only allowed to have <object> and <object_ref>
|
||||||
subnodes, all of which must have the "name" property.
|
subnodes, all of which must have the "name" property.
|
||||||
|
|
||||||
<object> - TODO (name, class, subclass)
|
The <object> node represents a single object (GUI element) and it usually maps
|
||||||
|
directly to a wxWindows class instance. It three properties: "name", "class"
|
||||||
|
and "subclass". "class" must always be present, it tells XRC what wxWindows
|
||||||
|
object should be created in this place. The other two are optional.
|
||||||
|
"name" is ID used to identify the object. It is the value passed to the XRCID() macro
|
||||||
|
and is also used to construct wxWindow's id and name attributes and must be unique
|
||||||
|
among all children of the neareset container object (wxDialog, wxFrame, wxPanel,
|
||||||
|
wxNotebook) upside from the object in XML nodes hiearchy (two distinct containers
|
||||||
|
may contain objects with same "name", though). "subclass" is
|
||||||
|
optional name of class whose constructor will be called instead of the constructor
|
||||||
|
for "class". Subclass must be available in the program that loads the resource,
|
||||||
|
must be derived from "class" and must be registered within wxWindows' RTTI system.
|
||||||
|
|
||||||
<object_ref> - TODO (name, ref, subclass)
|
Example:
|
||||||
|
|
||||||
|
<object name="MyList1" class="wxListCtrl" subclass="MyListCtrlClass">
|
||||||
|
...
|
||||||
|
</object>
|
||||||
|
|
||||||
|
<object> node may have arbitrary child nodes. What child nodes and their semantics
|
||||||
|
are class-dependent and are defined later in this document. The user is allowed
|
||||||
|
to register new object handlers within XRC and extend it to accept new <object>
|
||||||
|
classes (and therefore different <object>'s child nodes).
|
||||||
|
|
||||||
|
<object_ref> node is identical to <object>, except that it does _not_ have "class"
|
||||||
|
property and has additonal required property "ref". It's concept is similar to Unix
|
||||||
|
symlinks: value of the "ref" property is equal to the value of "name" property of
|
||||||
|
some existing node (called referred node) in the resources (not neccessary top-level).
|
||||||
|
Referred node's "class" property and all subnodes are copied in place of the referee
|
||||||
|
<object_ref> node which is then processed as regular <object> node. If the <object_ref>
|
||||||
|
node itself has child nodes, then these nodes _override_ any nodes from the referred node.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
<object name="foo" class="wxTextCtrl">
|
||||||
|
<value>hello</value>
|
||||||
|
<size>100,-1d</size>
|
||||||
|
</object>
|
||||||
|
<object_ref name="bar" ref="foo">
|
||||||
|
<value>bar</value> <!-- override! -->
|
||||||
|
</object>
|
||||||
|
|
||||||
|
is identical to:
|
||||||
|
|
||||||
|
<object name="foo" class="wxTextCtrl">
|
||||||
|
<value>hello</value>
|
||||||
|
<size>100,-1d</size>
|
||||||
|
</object>
|
||||||
|
<object name="bar" class="wxTextCtrl">
|
||||||
|
<value>bar</value>
|
||||||
|
<size>100,-1d</size>
|
||||||
|
</object>
|
||||||
|
|
||||||
|
|
||||||
3. Common attributes
|
3. Common attributes
|
||||||
|
Reference in New Issue
Block a user