If you only want to use the resources, you can choose from a number of editors:
a) wxDesigner (http://www.roebling.de)
b) XRCed (wxPython/tools)
- c) wxWorkshop (http://wxworkshop.sf.net)
- b) wxrcedit (contrib/utils/wxrcedit)
+ c) DialogBlocks (wxPython/tools)
+
+and others listed on the Resources section of the wxWidgets web
+site.
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
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 additional required property "ref". It's concept is
+"class" property and has additional required property "ref". Its 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 necessary top-level). Referred node's "class" property and all subnodes
Boolean value, either "0" (false) or "1" (true).
+Font
+----
+Font value. A font can be described either in terms of its elementary
+properties, or it can be derived from one of system fonts. The font node
+may contain following subnodes (the table lists subnode name on the left and
+variable type as per the definitions above on the right side):
+
+size UnsignedInteger
+style normal | italic | slant
+weight normal | bold | light
+family roman | script | decorative | swiss | modern | teletype
+underlined Boolean
+face comma-separated list of faces
+encoding charset of the font (meaningless in Unicode build), as string
+sysfont symbolic name of system standard font
+ (one of wxSYS_*_FONT constants)
+relativesize Float, font size relative to choosen system font's size;
+ can only be used when 'sysfont' is used and when 'size' is not
+ used
+
+All of them are optional, if they are missing, wxFont default is used.
+
+Examples:
+
+ <font>
+ <face>arial,helvetica</face>
+ <size>12</size>
+ </font>
+
+ <font>
+ <sysfont>wxSYS_DEFAULT_GUI_FONT</sysfont>
+ <weight>bold</weight>
+ <relativesize>1.5</relativesize>
+ </font>
+
+
+Colour
+------
+A colour value is either explicit RGB value in the standard #rrggbb format
+where rr, gg and bb are hexadecimal case-insensitive values in the 00..FF
+range, or a symbolic name. Symbolic names are wxSYS_COLOUR_* constants defined
+by wxWidgets, written as strings.
+
+Example:
+
+ <bg>wxSYS_COLOUR_SCROLLBAR</bg>
+ <fg>#FF0000</fg>
+
+
4. Supported classes
====================
wxButton
--------
-position Position -1,-1
+pos Position -1,-1
size Size -1,-1
style Style[wxButton]
wxCalendarCtrl
--------------
-position Position -1,-1
+pos Position -1,-1
size Size -1,-1
style Style[wxCalendarCtrl]
wxCheckBox
----------
-position Position -1,-1
+pos Position -1,-1
size Size -1,-1
style Style[wxCheckBox]
checked Boolean false
wxCheckList
-----------
-position Position -1,-1
+pos Position -1,-1
size Size -1,-1
style Style[wxCheckList]
content (see below) (empty)
</object>
+wxDatePickerCtrl
+----------------
+pos Position -1,-1
+size Size -1,-1
+style Style[wxDatePickerCtrl]
+
+
+wxDialog
+--------
+pos Position -1,-1
+size Size -1,-1
+style Style[wxDialog] wxDEFAULT_DIALOG_STYLE
+title I18nString ""
+icon Bitmap (empty)
+centered Boolean false
+
+wxDialog may have children objects.
+
+
+wxFrame
+--------
+pos Position -1,-1
+size Size -1,-1
+style Style[wxDialog] wxDEFAULT_FRAME_STYLE
+title I18nString ""
+icon Bitmap (empty)
+centered Boolean false
+
+wxFrame may have children objects. There can be at most one wxToolBar,
+wxMenuBar and wxStatusBar children; objects of these types are automatically
+set as frame's tool-, menu- and statusbar respectively.
+
+
+wxMDIParentFrame
+----------------
+
+Supports same attributes and children nodes as wxFrame. Additionally, children
+may be of the wxMDIChildFrame type.
+
+
+wxMDIChildFrame
+---------------
+
+Supports same attributes and children nodes as wxFrame.
+
+
wxScrolledWindow
----------------
-position Position -1,-1
+pos Position -1,-1
size Size -1,-1
style Style[wxScrolledWindow] wxHSCROLL | wxVSCROLL
+wxScolledWindow may have children objects.
+
wxSplitterWindow
----------------
-position Position -1,-1
+pos Position -1,-1
size Size -1,-1
style Style[wxSplitterWindow] wxSP_3D
sashpos Integer 0
splitter is created split, either horizontally or vertically depending
on the value of "orientation" attribute.
+
wxStatusBar
-----------
fields Integer number of fields
widths Width1, Width2, Width3, ...
+
wxToolBar
---------
-position Position -1,-1
+pos Position -1,-1
size Size -1,-1
style Style[wxToolBar] wxNO_BORDER|wxTB_HORIZONTAL
bitmapsize Size -1,-1
margins Size -1,-1
packing Integer -1
separation Integer -1
+bg Background colour None
wxToolBar node may have children <object> and <object_ref> nodes. Their class
may be either "tool", "separator" or any wxWidgets class derived from
bitmap2 Bitmap wxNullBitmap
toggle Boolean 0
radio Boolean 0
+ disabled Boolean 0
label I18nString ""
tooltip I18nString ""
longhelp I18nString ""
- position Position -1,-1
+ pos Position -1,-1
Constraints:
At most one of "toggle" and "radio" attributes may be 1.
- Attribute "position" may not appear if "label" or "radio" attributes
+ Attribute "pos" may not appear if "label" or "radio" attributes
are used or if parent wxToolBar's style contains wxTB_TEXT.
Note:
- Use of "position" attribute is strongly discouraged, it is deprecated
+ Use of "pos" attribute is strongly discouraged, it is deprecated
usage of wxToolBar and it is not supported by MSW and GTK
implementations.