1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>wxWidgets: XRC File Format</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="extra_stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="page_container">
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0" style="width: 100%;">
<tbody>
<tr>
<td id="projectlogo">
<a href="http://www.wxwidgets.org/" target="_new">
<img alt="wxWidgets" src="logo.png"/>
</a>
</td>
<td style="padding-left: 0.5em; text-align: right;">
<span id="projectnumber">Version: 3.0.2</span>
</td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.8.2 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Categories</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="index.html">Documentation</a></li><li class="navelem"><a class="el" href="page_topics.html">Programming Guides</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">XRC File Format </div> </div>
</div><!--header-->
<div class="contents">
<div class="toc"><h3>Table of Contents</h3>
<ul><li class="level1"><a href="#overview_xrcformat_root">Resource Root Element</a></li>
<li class="level1"><a href="#overview_xrcformat_objects">Defining Objects</a><ul><li class="level2"><a href="#overview_xrcformat_object">Object Element</a></li>
<li class="level2"><a href="#overview_xrcformat_object_ref">Object References</a></li>
</ul>
</li>
<li class="level1"><a href="#overview_xrcformat_datatypes">Data Types</a><ul><li class="level2"><a href="#overview_xrcformat_type_bool">Boolean</a></li>
<li class="level2"><a href="#overview_xrcformat_type_float">Floating-point value</a></li>
<li class="level2"><a href="#overview_xrcformat_type_colour">Colour</a></li>
<li class="level2"><a href="#overview_xrcformat_type_size">Size</a></li>
<li class="level2"><a href="#overview_xrcformat_type_pos">Position</a></li>
<li class="level2"><a href="#overview_xrcformat_type_dimension">Dimension</a></li>
<li class="level2"><a href="#overview_xrcformat_type_text">Text</a></li>
<li class="level2"><a href="#overview_xrcformat_type_text_notrans">Non-Translatable Text</a></li>
<li class="level2"><a href="#overview_xrcformat_type_string">String</a></li>
<li class="level2"><a href="#overview_xrcformat_type_url">URL</a></li>
<li class="level2"><a href="#overview_xrcformat_type_bitmap">Bitmap</a></li>
<li class="level2"><a href="#overview_xrcformat_type_style">Style</a></li>
<li class="level2"><a href="#overview_xrcformat_type_font">Font</a></li>
<li class="level2"><a href="#overview_xrcformat_type_imagelist">Image List</a></li>
</ul>
</li>
<li class="level1"><a href="#overview_xrcformat_windows">Controls and Windows</a><ul><li class="level2"><a href="#overview_xrcformat_std_props">Standard Properties</a></li>
<li class="level2"><a href="#overview_xrcformat_controls">Supported Controls</a><ul><li class="level3"><a href="#xrc_wxanimationctrl">wxAnimationCtrl</a></li>
<li class="level3"><a href="#xrc_wxauinotebook">wxAuiNotebook</a></li>
<li class="level3"><a href="#xrc_wxbannerwindow">wxBannerWindow</a></li>
<li class="level3"><a href="#xrc_wxbitmapbutton">wxBitmapButton</a></li>
<li class="level3"><a href="#xrc_wxbitmapcombobox">wxBitmapComboBox</a></li>
<li class="level3"><a href="#xrc_wxbitmaptogglebutton">wxBitmapToggleButton</a></li>
<li class="level3"><a href="#xrc_wxbutton">wxButton</a></li>
<li class="level3"><a href="#xrc_wxcalendarctrl">wxCalendarCtrl</a></li>
<li class="level3"><a href="#xrc_wxcheckbox">wxCheckBox</a></li>
<li class="level3"><a href="#xrc_wxchecklistbox">wxCheckListBox</a></li>
<li class="level3"><a href="#xrc_wxchoice">wxChoice</a></li>
<li class="level3"><a href="#xrc_wxchoicebook">wxChoicebook</a></li>
<li class="level3"><a href="#xrc_wxcommandlinkbutton">wxCommandLinkButton</a></li>
<li class="level3"><a href="#xrc_wxcollapsiblepane">wxCollapsiblePane</a></li>
<li class="level3"><a href="#xrc_wxcolourpickerctrl">wxColourPickerCtrl</a></li>
<li class="level3"><a href="#xrc_wxcombobox">wxComboBox</a></li>
<li class="level3"><a href="#xrc_wxcomboctrl">wxComboCtrl</a></li>
<li class="level3"><a href="#xrc_wxdatepickerctrl">wxDatePickerCtrl</a></li>
<li class="level3"><a href="#xrc_wxdialog">wxDialog</a></li>
<li class="level3"><a href="#xrc_wxdirpickerctrl">wxDirPickerCtrl</a></li>
<li class="level3"><a href="#xrc_wxeditablelistbox">wxEditableListBox</a></li>
<li class="level3"><a href="#xrc_wxfilectrl">wxFileCtrl</a></li>
<li class="level3"><a href="#xrc_wxfilepickerctrl">wxFilePickerCtrl</a></li>
<li class="level3"><a href="#xrc_wxfontpickerctrl">wxFontPickerCtrl</a></li>
<li class="level3"><a href="#xrc_wxfrane">wxFrame</a></li>
<li class="level3"><a href="#xrc_wxgauge">wxGauge</a></li>
<li class="level3"><a href="#xrc_wxgenericdirctrl">wxGenericDirCtrl</a></li>
<li class="level3"><a href="#xrc_wxgrid">wxGrid</a></li>
<li class="level3"><a href="#xrc_wxhtmlwindow">wxHtmlWindow</a></li>
<li class="level3"><a href="#xrc_wxhyperlinkctrl">wxHyperlinkCtrl</a></li>
<li class="level3"><a href="#xrc_wxlistbox">wxListBox</a></li>
<li class="level3"><a href="#xrc_wxlistbook">wxListbook</a></li>
<li class="level3"><a href="#xrc_wxlistctrl">wxListCtrl</a><ul><li class="level4"><a href="#xrc_wxlistcol">listcol</a></li>
<li class="level4"><a href="#xrc_wxlistitem">listitem</a></li>
</ul>
</li>
<li class="level3"><a href="#xrc_wxmdiparentframe">wxMDIParentFrame</a></li>
<li class="level3"><a href="#xrc_wxmdichildframe">wxMDIChildFrame</a></li>
<li class="level3"><a href="#xrc_wxmenu">wxMenu</a></li>
<li class="level3"><a href="#xrc_wxmenubar">wxMenuBar</a></li>
<li class="level3"><a href="#xrc_wxnotebook">wxNotebook</a></li>
<li class="level3"><a href="#xrc_wxownerdrawncombobox">wxOwnerDrawnComboBox</a></li>
<li class="level3"><a href="#xrc_wxpanel">wxPanel</a></li>
<li class="level3"><a href="#xrc_wxpropertysheetdialog">wxPropertySheetDialog</a></li>
<li class="level3"><a href="#xrc_wxradiobutton">wxRadioButton</a></li>
<li class="level3"><a href="#xrc_wxradiobox">wxRadioBox</a></li>
<li class="level3"><a href="#xrc_wxribbonbar">wxRibbonBar</a></li>
<li class="level3"><a href="#xrc_wxribbonbuttonbar">wxRibbonButtonBar</a></li>
<li class="level3"><a href="#xrc_wxribboncontrol">wxRibbonControl</a></li>
<li class="level3"><a href="#xrc_wxribbongallery">wxRibbonGallery</a></li>
<li class="level3"><a href="#xrc_wxribbonpage">wxRibbonPage</a></li>
<li class="level3"><a href="#xrc_wxribbonpanel">wxRibbonPanel</a></li>
<li class="level3"><a href="#xrc_wxrichtextctrl">wxRichTextCtrl</a></li>
<li class="level3"><a href="#xrc_wxscrollbar">wxScrollBar</a></li>
<li class="level3"><a href="#xrc_wxscrolledwindow">wxScrolledWindow</a></li>
<li class="level3"><a href="#xrc_wxsimplehtmllistbox">wxSimpleHtmlListBox</a></li>
<li class="level3"><a href="#xrc_wxsimplebook">wxSimplebook</a></li>
<li class="level3"><a href="#xrc_wxslider">wxSlider</a></li>
<li class="level3"><a href="#xrc_wxspinbutton">wxSpinButton</a></li>
<li class="level3"><a href="#xrc_wxspinctrl">wxSpinCtrl</a></li>
<li class="level3"><a href="#xrc_wxsplitterwindow">wxSplitterWindow</a></li>
<li class="level3"><a href="#xrc_wxsearchctrl">wxSearchCtrl</a></li>
<li class="level3"><a href="#xrc_wxstatusbar">wxStatusBar</a></li>
<li class="level3"><a href="#xrc_wxstaticbitmap">wxStaticBitmap</a></li>
<li class="level3"><a href="#xrc_wxstaticbox">wxStaticBox</a></li>
<li class="level3"><a href="#xrc_wxstaticline">wxStaticLine</a></li>
<li class="level3"><a href="#xrc_wxstatictext">wxStaticText</a></li>
<li class="level3"><a href="#xrc_wxtextctrl">wxTextCtrl</a></li>
<li class="level3"><a href="#xrc_wxtimepickerctrl">wxTimePickerCtrl</a></li>
<li class="level3"><a href="#xrc_wxtogglebutton">wxToggleButton</a></li>
<li class="level3"><a href="#xrc_wxtoolbar">wxToolBar</a></li>
<li class="level3"><a href="#xrc_wxtoolbook">wxToolbook</a></li>
<li class="level3"><a href="#xrc_wxtreectrl">wxTreeCtrl</a></li>
<li class="level3"><a href="#xrc_wxtreebook">wxTreebook</a></li>
<li class="level3"><a href="#xrc_wxwizard">wxWizard</a></li>
</ul>
</li>
<li class="level1"><a href="#overview_xrcformat_sizers">Sizers</a><ul></li>
<li class="level2"><a href="#overview_xrcformat_wxboxsizer">wxBoxSizer</a></li>
<li class="level2"><a href="#overview_xrcformat_wxstaticsboxizer">wxStaticBoxSizer</a></li>
<li class="level2"><a href="#overview_xrcformat_wxgridsizer">wxGridSizer</a></li>
<li class="level2"><a href="#overview_xrcformat_wxflexgridsizer">wxFlexGridSizer</a></li>
<li class="level2"><a href="#overview_xrcformat_wxgridbagsizer">wxGridBagSizer</a></li>
<li class="level2"><a href="#overview_xrcformat_wxwrapsizer">wxWrapSizer</a></li>
<li class="level2"><a href="#overview_xrcformat_wxstddialogbuttonsizer">wxStdDialogButtonSizer</a></li>
</ul>
</li>
<li class="level1"><a href="#overview_xrcformat_other_objects">Other Objects</a><ul><li class="level2"><a href="#overview_xrcformat_bitmap">wxBitmap</a></li>
<li class="level2"><a href="#overview_xrcformat_icon">wxIcon</a></li>
</ul>
</li>
<li class="level1"><a href="#overview_xrcformat_platform">Platform Specific Content</a></li>
<li class="level1"><a href="#overview_xrcformat_idranges">ID Ranges</a></li>
<li class="level1"><a href="#overview_xrcformat_extending">Extending the XRC Format</a><ul><li class="level2"><a href="#overview_xrcformat_extending_subclass">Subclassing</a></li>
<li class="level2"><a href="#overview_xrcformat_extending_unknown">Unknown Objects</a></li>
<li class="level2"><a href="#overview_xrcformat_extending_custom">Adding Custom Classes</a></li>
</ul>
</li>
<li class="level1"><a href="#overview_xrcformat_packed">Packed XRC Files</a></li>
<li class="level1"><a href="#overview_xrcformat_oldversions">Older Format Versions</a><ul><li class="level2"><a href="#overview_xrcformat_pre_v2530">Versions Before 2.5.3.0</a></li>
<li class="level2"><a href="#overview_xrcformat_pre_v2301">Versions Before 2.3.0.1</a></li>
</ul>
</li>
</ul>
</div>
<div class="textblock"><p>This document describes the format of XRC resource files, as used by <a class="el" href="classwx_xml_resource.html" title="This is the main class for interacting with the XML-based resource system.">wxXmlResource</a>.</p>
<p>Formal description in the form of a RELAX NG schema is located in the <code>misc/schema</code> subdirectory of the wxWidgets sources.</p>
<p>XRC file is a XML file with all of its elements in the <code><a href="http://www.wxwidgets.org/wxxrc">http://www.wxwidgets.org/wxxrc</a></code> namespace. For backward compatibility, <code><a href="http://www.wxwindows.org/wxxrc">http://www.wxwindows.org/wxxrc</a></code> namespace is accepted as well (and treated as identical to <code><a href="http://www.wxwidgets.org/wxxrc">http://www.wxwidgets.org/wxxrc</a></code>), but it shouldn't be used in new XRC files.</p>
<p>XRC file contains definitions for one or more <em>objects</em> – typically windows. The objects may themselves contain child objects.</p>
<p>Objects defined at the top level, under the <a class="el" href="overview_xrcformat.html#overview_xrcformat_root">root element</a>, can be accessed using <a class="el" href="classwx_xml_resource.html#aa9f2603cb55bfb2c696972be9875e229" title="Loads a dialog.">wxXmlResource::LoadDialog()</a> and other LoadXXX methods. They must have <code>name</code> attribute that is used as LoadXXX's argument (see <a class="el" href="overview_xrcformat.html#overview_xrcformat_object">Object Element</a> for details).</p>
<p>Child objects are not directly accessible via <a class="el" href="classwx_xml_resource.html" title="This is the main class for interacting with the XML-based resource system.">wxXmlResource</a>, they can only be accessed using XRCCTRL().</p>
<h1><a class="anchor" id="overview_xrcformat_root"></a>
Resource Root Element</h1>
<p>The root element is always <code><resource></code>. It has one optional attribute, <code>version</code>. If set, it specifies version of the file. In absence of <code>version</code> attribute, the default is <code>"0.0.0.0"</code>.</p>
<p>The version consists of four integers separated by periods. The first three components are major, minor and release number of the wxWidgets release when the change was introduced, the last one is revision number and is 0 for the first incompatible change in given wxWidgets release, 1 for the second and so on. The version changes only if there was an incompatible change introduced; merely adding new kind of objects does not constitute incompatible change.</p>
<p>At the time of writing, the latest version is <code>"2.5.3.0"</code>.</p>
<p>Note that even though <code>version</code> attribute is optional, it should always be specified to take advantage of the latest capabilities:</p>
<div class="fragment"><div class="line"><?xml version=<span class="stringliteral">"1.0"</span>?></div>
<div class="line"><resource xmlns=<span class="stringliteral">"http://www.wxwidgets.org/wxxrc"</span> version=<span class="stringliteral">"2.5.3.0"</span>></div>
<div class="line"> ...</div>
<div class="line"></resource></div>
</div><!-- fragment --><p><code><resource></code> may have arbitrary number of <a class="el" href="overview_xrcformat.html#overview_xrcformat_objects">object elements</a> as its children; they are referred to as <em>toplevel</em> objects in the rest of this document. Unlike objects defined deeper in the hierarchy, toplevel objects <em>must</em> have their <code>name</code> attribute set and it must be set to a value unique among root's children.</p>
<h1><a class="anchor" id="overview_xrcformat_objects"></a>
Defining Objects</h1>
<h2><a class="anchor" id="overview_xrcformat_object"></a>
Object Element</h2>
<p>The <code><object></code> element represents a single object (typically a GUI element) and it usually maps directly to a wxWidgets class instance. It has one mandatory attribute, <code>class</code>, and optional <code>name</code> and <code>subclass</code> attributes.</p>
<p>The <code>class</code> attribute must always be present, it tells XRC what wxWidgets object should be created and by which <a class="el" href="classwx_xml_resource_handler.html" title="wxSizerXmlHandler is a class for resource handlers capable of creating a wxSizer object from an XML n...">wxXmlResourceHandler</a>.</p>
<p><code>name</code> is the identifier used to identify the object. This name serves three purposes:</p>
<ol type="1">
<li>It is used by <a class="el" href="classwx_xml_resource.html" title="This is the main class for interacting with the XML-based resource system.">wxXmlResource</a>'s various LoadXXX() methods to find the resource by name passed as argument.</li>
<li><a class="el" href="classwx_window.html" title="wxWindow is the base class for all windows and represents any visible object on screen.">wxWindow</a>'s name (see <a class="el" href="classwx_window.html#aab1b302c4bdabd134ce8d401dbaaf990" title="Returns the window's name.">wxWindow::GetName()</a>) is set to it.</li>
<li>Numeric ID of a window or menu item is derived from the name. If the value represents an integer (in decimal notation), it is used for the numeric ID unmodified. If it is one of the wxID_XXX literals defined by wxWidgets (see <a class="el" href="page_stockitems.html">Stock Items</a>), its respective value is used. Otherwise, the name is transformed into dynamically generated ID. See <a class="el" href="classwx_xml_resource.html#a06ec24247401cda58f0a5eec251d8167" title="Returns a numeric ID that is equivalent to the string ID used in an XML resource.">wxXmlResource::GetXRCID()</a> for more information.</li>
</ol>
<p>Name attributes must be unique at the top level (where the name is used to load resources) and should be unique among all controls within the same toplevel window (<a class="el" href="classwx_dialog.html" title="A dialog box is a window with a title bar and sometimes a system menu, which can be moved around the ...">wxDialog</a>, <a class="el" href="classwx_frame.html" title="A frame is a window whose size and position can (usually) be changed by the user.">wxFrame</a>).</p>
<p>The <code>subclass</code> attribute optional name of class whose constructor will be called instead of the constructor for "class". See <a class="el" href="overview_xrcformat.html#overview_xrcformat_extending_subclass">Subclassing</a> for more details.</p>
<p><code><object></code> element may – and almost always do – have children elements. These come in two varieties:</p>
<ol type="1">
<li>Object's properties. A <em>property</em> is a value describing part of object's behaviour, for example the "label" property on <a class="el" href="classwx_button.html" title="A button is a control that contains a text string, and is one of the most common elements of a GUI...">wxButton</a> defines its label. In the most common form, property is a single element with text content ("\<label\>Cancel\</label\>"), but they may use nested subelements too (e.g. <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_font">font property</a>). A property can only be listed once in an object's definition.</li>
<li>Child objects. Window childs, sizers, sizer items or notebook pages are all examples of child objects. They are represented using nested <code><object></code> elements and are can be repeated more than once. The specifics of which object classes are allowed as children are class-specific and are documented below in <a class="el" href="overview_xrcformat.html#overview_xrcformat_controls">Supported Controls</a>.</li>
</ol>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxDialog"</span> name=<span class="stringliteral">"example_dialog"</span>></div>
<div class="line"> <!-- properties: --></div>
<div class="line"> <title>Non-Derived Dialog Example</title></div>
<div class="line"> <centered>1</centered></div>
<div class="line"> <!-- child objects: --></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxBoxSizer"</span>></div>
<div class="line"> <orient><a class="code" href="defs_8h.html#a1e6994f40bd9cb140e292afb165af971a2134d1cb8cf605532880c118190695b5">wxVERTICAL</a></orient></div>
<div class="line"> <cols>1</cols></div>
<div class="line"> <rows>0</rows></div>
<div class="line"> ...</div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h2><a class="anchor" id="overview_xrcformat_object_ref"></a>
Object References</h2>
<p>Anywhere an <code><object></code> element can be used, <code><object_ref></code> may be used instead. <code><object_ref></code> is a <em>reference</em> to another named (i.e. with the <code>name</code> attribute) <code><object></code> element. It has one mandatory attribute, <code>ref</code>, with value containing the name of a named <code><object></code> element. When an <code><object_ref></code> is encountered, a copy of the referenced <code><object></code> element is made in place of <code><object_ref></code> occurrence and processed as usual.</p>
<p>For example, the following code: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxDialog"</span> name=<span class="stringliteral">"my_dlg"</span>></div>
<div class="line"> ...</div>
<div class="line"></<span class="keywordtype">object</span>></div>
<div class="line"><object_ref name=<span class="stringliteral">"my_dlg_alias"</span> ref=<span class="stringliteral">"my_dlg"</span>/></div>
</div><!-- fragment --><p> is equivalent to </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxDialog"</span> name=<span class="stringliteral">"my_dlg"</span>></div>
<div class="line"> ...</div>
<div class="line"></<span class="keywordtype">object</span>></div>
<div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxDialog"</span> name=<span class="stringliteral">"my_dlg_alias"</span>></div>
<div class="line"> ... <!-- same as in my_dlg --></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><p>Additionally, it is possible to override some parts of the referenced object in the <code><object_ref></code> pointing to it. This is useful for putting repetitive parts of XRC definitions into a template that can be reused and customized in several places. The two parts are merged as follows:</p>
<ol type="1">
<li>The referred object is used as the initial content.</li>
<li>All attributes set on <code><object_ref></code> are added to it.</li>
<li>All child elements of <code><object_ref></code> are scanned. If an element with the same name (and, if specified, the <code>name</code> attribute too) is found in the referred object, they are recursively merged.</li>
<li>Child elements in <code><object_ref></code> that do not have a match in the referred object are appended to the list of children of the resulting element by default. Optionally, they may have <code>insert_at</code> attribute with two possible values, "begin" or "end". When set to "begin", the element is prepended to the list of children instead of appended.</li>
</ol>
<p>For example, "my_dlg" in this snippet: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxDialog"</span> name=<span class="stringliteral">"template"</span>></div>
<div class="line"> <title>Dummy dialog</title></div>
<div class="line"> <size>400,400</size></div>
<div class="line"></<span class="keywordtype">object</span>></div>
<div class="line"><object_ref ref=<span class="stringliteral">"template"</span> name=<span class="stringliteral">"my_dlg"</span>></div>
<div class="line"> <title>My dialog</title></div>
<div class="line"> <centered>1</centered></div>
<div class="line"></object_ref></div>
</div><!-- fragment --><p> is identical to: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxDialog"</span> name=<span class="stringliteral">"my_dlg"</span>></div>
<div class="line"> <title>My dialog</title></div>
<div class="line"> <size>400,400</size></div>
<div class="line"> <centered>1</centered></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h1><a class="anchor" id="overview_xrcformat_datatypes"></a>
Data Types</h1>
<p>There are several property data types that are frequently reused by different properties. Rather than describing their format in the documentation of every property, we list commonly used types in this section and document their format.</p>
<h2><a class="anchor" id="overview_xrcformat_type_bool"></a>
Boolean</h2>
<p>Boolean values are expressed using either "1" literal (true) or "0" (false).</p>
<h2><a class="anchor" id="overview_xrcformat_type_float"></a>
Floating-point value</h2>
<p>Floating point values use POSIX (C locale) formatting – decimal separator is "." regardless of the locale.</p>
<h2><a class="anchor" id="overview_xrcformat_type_colour"></a>
Colour</h2>
<p>Colour specification can be either any string colour representation accepted by <a class="el" href="classwx_colour.html#a362d7d0a873b770d6623d4cd547868a0" title="Sets the RGB intensity values using the given values (first overload), extracting them from the packe...">wxColour::Set()</a> or any wxSYS_COLOUR_XXX symbolic name accepted by <a class="el" href="classwx_system_settings.html#ab252414b60f16a233bc17df2a19bd804" title="Returns a system colour.">wxSystemSettings::GetColour()</a>. In particular, the following forms are supported:</p>
<ul>
<li>named colours from <a class="el" href="classwx_colour_database.html" title="wxWidgets maintains a database of standard RGB colours for a predefined set of named colours...">wxColourDatabase</a> </li>
<li>HTML-like "#rrggbb" syntax (but not "#rgb") </li>
<li>CSS-style "rgb(r,g,b)" and "rgba(r,g,b,a)" </li>
<li>wxSYS_COLOUR_XXX symbolic names</li>
</ul>
<p>Some examples: </p>
<div class="fragment"><div class="line"><fg>red</fg></div>
<div class="line"><fg>#ff0000</fg></div>
<div class="line"><fg>rgb(255,0,0)</fg></div>
<div class="line"><fg><a class="code" href="settings_8h.html#a44ad26cbd8d579d1b7eff7015c8bd24ba0b6915f6847f8f86598f4eb986fe24d5" title="Colour of item(s) selected in a control.">wxSYS_COLOUR_HIGHLIGHT</a></fg></div>
</div><!-- fragment --><h2><a class="anchor" id="overview_xrcformat_type_size"></a>
Size</h2>
<p>Sizes and positions have the form of string with two comma-separated integer components, with optional "d" suffix. Semi-formally:</p>
<p>size := x "," y ["d"]</p>
<p>where x and y are integers. Either of the components (or both) may be "-1" to signify default value. As a shortcut, empty string is equivalent to "-1,-1" (= wxDefaultSize or wxDefaultPosition).</p>
<p>When the "d" suffix is used, integer values are interpreted as <a class="el" href="classwx_window.html#acb6787b6c3c314f9e015658a89ad0265">dialog units</a> in the parent window.</p>
<p>Examples: </p>
<div class="fragment"><div class="line">42,-1</div>
<div class="line">100,100</div>
<div class="line">100,50d</div>
</div><!-- fragment --><h2><a class="anchor" id="overview_xrcformat_type_pos"></a>
Position</h2>
<p>Same as <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a>.</p>
<h2><a class="anchor" id="overview_xrcformat_type_dimension"></a>
Dimension</h2>
<p>Similarly to <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">sizes</a>, dimensions are expressed as integers with optional "d" suffix. When "d" suffix is used, the integer preceding it is interpreted as dialog units in the parent window.</p>
<h2><a class="anchor" id="overview_xrcformat_type_text"></a>
Text</h2>
<p>String properties use several escape sequences that are translated according to the following table: </p>
<table class="doclist" border="1" cellspacing="0">
<tr>
<td><span class="itemdef"> "_"</span> </td><td>"&" (used for accelerators in wxWidgets) </td></tr>
<tr>
<td><span class="itemdef"> "__"</span> </td><td>"_" </td></tr>
<tr>
<td><span class="itemdef"> "\n"</span> </td><td>line break </td></tr>
<tr>
<td><span class="itemdef"> "\r"</span> </td><td>carriage return </td></tr>
<tr>
<td><span class="itemdef"> "\t"</span> </td><td>tab </td></tr>
<tr>
<td><span class="itemdef"> "\\"</span> </td><td>"\" </td></tr>
</table>
<p>By default, the text is translated using wxLocale::GetTranslation() before it is used. This can be disabled either globally by not passing wxXRC_USE_LOCALE to <a class="el" href="classwx_xml_resource.html" title="This is the main class for interacting with the XML-based resource system.">wxXmlResource</a> constructor, or by setting the <code>translate</code> attribute on the property node to "0": </p>
<div class="fragment"><div class="line"><!-- <span class="keyword">this</span> is not translated: --></div>
<div class="line"><label translate=<span class="stringliteral">"0"</span>>_Unix</label></div>
<div class="line"><!-- but <span class="keyword">this</span> is: --></div>
<div class="line"><help>Use Unix-style newlines</help></div>
</div><!-- fragment --><dl class="section note"><dt>Note</dt><dd>Even though the "_" character is used instead of "&" for accelerators, it is still possible to use "&". The latter has to be encoded as "&amp;", though, so using "_" is more convenient.</dd></dl>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="overview_xrcformat.html#overview_xrcformat_pre_v2530">Versions Before 2.5.3.0</a>, <a class="el" href="overview_xrcformat.html#overview_xrcformat_pre_v2301">Versions Before 2.3.0.1</a></dd></dl>
<h2><a class="anchor" id="overview_xrcformat_type_text_notrans"></a>
Non-Translatable Text</h2>
<p>Like <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a>, but the text is never translated and <code>translate</code> attribute cannot be used.</p>
<h2><a class="anchor" id="overview_xrcformat_type_string"></a>
String</h2>
<p>An unformatted string. Unlike with <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a>, no escaping or translations are done.</p>
<h2><a class="anchor" id="overview_xrcformat_type_url"></a>
URL</h2>
<p>Any URL accepted by <a class="el" href="classwx_file_system.html" title="This class provides an interface for opening files on different file systems.">wxFileSystem</a> (typically relative to XRC file's location, but can be absolute too). Unlike with <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a>, no escaping or translations are done.</p>
<h2><a class="anchor" id="overview_xrcformat_type_bitmap"></a>
Bitmap</h2>
<p>Bitmap properties contain specification of a single bitmap or icon. In the most basic form, their text value is simply a relative filename (or another <a class="el" href="classwx_file_system.html" title="This class provides an interface for opening files on different file systems.">wxFileSystem</a> URL) of the bitmap to use. For example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"tool"</span> name=<span class="stringliteral">"wxID_NEW"</span>></div>
<div class="line"> <tooltip>New</tooltip></div>
<div class="line"> <bitmap><span class="keyword">new</span>.png</bitmap></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><p> The value is interpreted as path relative to the location of XRC file where the reference occurs.</p>
<p>Alternatively, it is possible to specify the bitmap using <a class="el" href="classwx_art_provider.html" title="wxArtProvider class is used to customize the look of wxWidgets application.">wxArtProvider</a> IDs. In this case, the property element has no textual value (filename) and instead has the <code>stock_id</code> XML attribute that contains stock art ID as accepted by <a class="el" href="classwx_art_provider.html#a405ecf7cdead6dbfb092376a51a856c4" title="Query registered providers for bitmap with given ID.">wxArtProvider::GetBitmap()</a>. This can be either custom value (if the app uses app-specific art provider) or one of the predefined wxART_XXX constants.</p>
<p>Optionally, <code>stock_client</code> attribute may be specified too and contain one of the predefined wxArtClient values. If it is not specified, the default client ID most appropriate in the context where the bitmap is referenced will be used. In most cases, specifying <code>stock_client</code> is not needed.</p>
<p>Examples of stock bitmaps usage: </p>
<div class="fragment"><div class="line"><bitmap stock_id=<span class="stringliteral">"fixed-width"</span>/> <!-- custom app-specific art --></div>
<div class="line"><bitmap stock_id=<span class="stringliteral">"wxART_FILE_OPEN"</span>/> <!-- standard art --></div>
</div><!-- fragment --><p>If both specifications are provided, then <code>stock_id</code> is used if it is recognized by <a class="el" href="classwx_art_provider.html" title="wxArtProvider class is used to customize the look of wxWidgets application.">wxArtProvider</a> and the provided bitmap file is used as a fallback.</p>
<h2><a class="anchor" id="overview_xrcformat_type_style"></a>
Style</h2>
<p>Style properties (such as window's style or sizer flags) use syntax similar to C++: the style value is OR-combination of individual flags. Symbolic names identical to those used in C++ code are used for the flags. Flags are separated with "|" (whitespace is allowed but not required around it).</p>
<p>The flags that are allowed for a given property are context-dependent.</p>
<p>Examples: </p>
<div class="fragment"><div class="line"><style><a class="code" href="defs_8h.html#ab9dd38fb28514dc86647c9bab14a5abe">wxCAPTION</a>|<a class="code" href="defs_8h.html#a91d9a8267007044d4baf172e6173009d">wxSYSTEM_MENU</a> | <a class="code" href="defs_8h.html#ab2e7b3533b073e1df781c5b60ccc92d5">wxRESIZE_BORDER</a></style></div>
<div class="line"><exstyle><a class="code" href="defs_8h.html#ae7509ab29e40dcdf0b20685c8cfb7950">wxDIALOG_EX_CONTEXTHELP</a></exstyle></div>
</div><!-- fragment --><h2><a class="anchor" id="overview_xrcformat_type_font"></a>
Font</h2>
<p>XRC uses similar, but more flexible, abstract description of fonts to that used by <a class="el" href="classwx_font.html" title="A font is an object which determines the appearance of text.">wxFont</a> class. A font can be described either in terms of its elementary properties, or it can be derived from one of system fonts or the parent window font.</p>
<p>The font property element is a "composite" element: unlike majority of properties, it doesn't have text value but contains several child elements instead. These children are handled in the same way as object properties and can be one of the following "sub-properties":</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>size </td><td>unsigned integer </td><td>Pixel size of the font (default: wxNORMAL_FONT's size or <code>sysfont's</code> size if the <code>sysfont</code> property is used or the current size of the font of the enclosing control if the <code>inherit</code> property is used. </td></tr>
<tr>
<td>style </td><td>enum </td><td>One of "normal", "italic" or "slant" (default: normal). </td></tr>
<tr>
<td>weight </td><td>enum </td><td>One of "normal", "bold" or "light" (default: normal). </td></tr>
<tr>
<td>family </td><td>enum </td><td>One of "default", "roman", "script", "decorative", "swiss", "modern" or "teletype" (default: default). </td></tr>
<tr>
<td>underlined </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Whether the font should be underlined (default: 0). </td></tr>
<tr>
<td>face </td><td></td><td>Comma-separated list of face names; the first one available is used (default: unspecified). </td></tr>
<tr>
<td>encoding </td><td></td><td>Charset of the font, unused in Unicode build), as string (default: unspecified). </td></tr>
<tr>
<td>sysfont </td><td></td><td>Symbolic name of system standard font(one of wxSYS_*_FONT constants). </td></tr>
<tr>
<td>inherit </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>If true, the font of the enclosing control is used. If this property and the <code>sysfont</code> property are specified the <code>sysfont</code> property takes precedence. </td></tr>
<tr>
<td>relativesize </td><td>float </td><td>Float, font size relative to chosen system font's or inherited font's size; can only be used when 'sysfont' or 'inherit' is used and when 'size' is not used. </td></tr>
</table>
<p>All of them are optional, if they are missing, appropriate <a class="el" href="classwx_font.html" title="A font is an object which determines the appearance of text.">wxFont</a> default is used. If the <code>sysfont</code> or <code>inherit</code> property is used, then the defaults are taken from it instead.</p>
<p>Examples: </p>
<div class="fragment"><div class="line"><font></div>
<div class="line"> <!-- fixed font: Arial <span class="keywordflow">if</span> available, fall back to Helvetica --></div>
<div class="line"> <face>arial,helvetica</face></div>
<div class="line"> <size>12</size></div>
<div class="line"></font></div>
<div class="line"></div>
<div class="line"><font></div>
<div class="line"> <!-- enlarged, enboldened standard font: --></div>
<div class="line"> <sysfont><a class="code" href="settings_8h.html#ac542cdc9950a6cf3b7a42f7e77ada05bad6e70f8ce1b2f8814cfee46a6036b3e6" title="Default font for user interface objects such as menus and dialog boxes.">wxSYS_DEFAULT_GUI_FONT</a></sysfont></div>
<div class="line"> <weight>bold</weight></div>
<div class="line"> <relativesize>1.5</relativesize></div>
<div class="line"></font></div>
</div><!-- fragment --><dl class="section note"><dt>Note</dt><dd>You cannot use <code>inherit</code> for a font that gets used before the enclosing control is created, e.g. if the control gets the font passed as parameter for its constructor, or if the control is not derived from <a class="el" href="classwx_window.html" title="wxWindow is the base class for all windows and represents any visible object on screen.">wxWindow</a>.</dd></dl>
<h2><a class="anchor" id="overview_xrcformat_type_imagelist"></a>
Image List</h2>
<p>Defines a <a class="el" href="classwx_image_list.html" title="A wxImageList contains a list of images, which are stored in an unspecified form.">wxImageList</a>.</p>
<p>The imagelist property element is a "composite" element: unlike majority of properties, it doesn't have text value but contains several child elements instead. These children are handled similarly to object properties and can be one of the following "sub-properties":</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>mask </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>If masks should be created for all images (default: 1). </td></tr>
<tr>
<td>size </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>The size of the images in the list (default: the size of the first bitmap). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Adds a new image. Unlike normal object properties, <code>bitmap</code> may be used more than once to add multiple images to the list. At least one <code>bitmap</code> value is required. </td></tr>
</table>
<p>Example: </p>
<div class="fragment"><div class="line"><imagelist></div>
<div class="line"> <size>32,32</size></div>
<div class="line"> <bitmap stock_id=<span class="stringliteral">"wxART_QUESTION"</span>/></div>
<div class="line"> <bitmap stock_id=<span class="stringliteral">"wxART_INFORMATION"</span>/></div>
<div class="line"></imagelist></div>
</div><!-- fragment --><h1><a class="anchor" id="overview_xrcformat_windows"></a>
Controls and Windows</h1>
<p>This section describes support wxWindow-derived classes in XRC format.</p>
<h2><a class="anchor" id="overview_xrcformat_std_props"></a>
Standard Properties</h2>
<p>The following properties are always (unless stated otherwise in control-specific docs) available for <em>windows</em> objects. They are omitted from properties lists below.</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>pos </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_pos">Position</a> </td><td>Initial position of the window (default: wxDefaultPosition). </td></tr>
<tr>
<td>size </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Initial size of the window (default: wxDefaultSize). </td></tr>
<tr>
<td>style </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Window style for this control. The allowed values depend on what window is being created, consult respective class' constructor documentation for details (default: window-dependent default, usually wxFOO_DEFAULT_STYLE if defined for class wxFoo, 0 if not). </td></tr>
<tr>
<td>exstyle </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Extra style for the window, if any. See <a class="el" href="classwx_window.html#ae9655f7c35ce7ac89cac2f6c0054b103" title="Sets the extra style bits for the window.">wxWindow::SetExtraStyle()</a> (default: not set). </td></tr>
<tr>
<td>fg </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>Foreground colour of the window (default: window's default). </td></tr>
<tr>
<td>ownfg </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>Non-inheritable foreground colour of the window, see <a class="el" href="classwx_window.html#a53f4a878e4e2d440bd00543f8014aaaa" title="Sets the foreground colour of the window but prevents it from being inherited by the children of this...">wxWindow::SetOwnForegroundColour()</a> (default: none). </td></tr>
<tr>
<td>bg </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>Background colour of the window (default: window's default). </td></tr>
<tr>
<td>ownbg </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>Non-inheritable background colour of the window, see <a class="el" href="classwx_window.html#a9a3f9d8477aab1d9176cd66ee56e75d9" title="Sets the background colour of the window but prevents it from being inherited by the children of this...">wxWindow::SetOwnBackgroundColour()</a> (default: none). </td></tr>
<tr>
<td>enabled </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>If set to 0, the control is disabled (default: 1). </td></tr>
<tr>
<td>focused </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>If set to 1, the control has focus initially (default: 0). </td></tr>
<tr>
<td>hidden </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>If set to 1, the control is created hidden (default: 0). </td></tr>
<tr>
<td>tooltip </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Tooltip to use for the control (default: not set). </td></tr>
<tr>
<td>variant </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Window variant (see <a class="el" href="classwx_window.html#acd955418c336e73b3e32cadf1ca46e29" title="Chooses a different variant of the window display to use.">wxWindow::SetWindowVariant()</a>), one of "normal", "small", "mini" or "large" (default: "normal") (new since wxWidgets 3.0.2). </td></tr>
<tr>
<td>font </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_font">Font</a> </td><td>Font to use for the control (default: window's default). </td></tr>
<tr>
<td>ownfont </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_font">Font</a> </td><td>Non-inheritable font to use for the control, see <a class="el" href="classwx_window.html#a89a4f62f23c1e7c845b8d07cecae4c43" title="Sets the font of the window but prevents it from being inherited by the children of this window...">wxWindow::SetOwnFont()</a> (default: none). </td></tr>
<tr>
<td>help </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Context-sensitive help for the control, used by <a class="el" href="classwx_help_provider.html" title="wxHelpProvider is an abstract class used by a program implementing context-sensitive help to show the...">wxHelpProvider</a> (default: not set). </td></tr>
</table>
<p>All of these properties are optional.</p>
<h2><a class="anchor" id="overview_xrcformat_controls"></a>
Supported Controls</h2>
<p>This section lists all controls supported by default. For each control, its control-specific properties are listed. If the control can have child objects, it is documented there too; unless said otherwise, XRC elements for these controls cannot have children.</p>
<h3><a class="anchor" id="xrc_wxanimationctrl"></a>
wxAnimationCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>animation </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_url">URL</a> </td><td>Animation file to load into the control (default: none). </td></tr>
<tr>
<td>inactive-bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to use when not playing the animation (default: the default). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxauinotebook"></a>
wxAuiNotebook</h3>
<p>A <a class="el" href="classwx_aui_notebook.html" title="wxAuiNotebook is part of the wxAUI class framework, which represents a notebook control, managing multiple windows with associated tabs.">wxAuiNotebook</a> can have one or more child objects of the <code>notebookpage</code> pseudo-class. <code>notebookpage</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Page label (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap shown alongside the label (default: none). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the page selected initially (only one page can be selected; default: 0)? </td></tr>
</table>
<p>Each <code>notebookpage</code> must have exactly one non-toplevel window as its child.</p>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxAuiNotebook"</span>></div>
<div class="line"> <style><a class="code" href="interface_2wx_2bookctrl_8h.html#ae5e1e857ef24fe84d9ca7d6720e31cc2">wxBK_BOTTOM</a></style></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"notebookpage"</span>></div>
<div class="line"> <label>Page 1</label></div>
<div class="line"> <bitmap>bitmap.png</bitmap></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span> name=<span class="stringliteral">"page_1"</span>></div>
<div class="line"> ...</div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><p>Notice that <a class="el" href="classwx_aui_notebook.html" title="wxAuiNotebook is part of the wxAUI class framework, which represents a notebook control, managing multiple windows with associated tabs.">wxAuiNotebook</a> support in XRC is available in wxWidgets 2.9.5 and later only and you need to explicitly register its handler using </p>
<div class="fragment"><div class="line"><span class="preprocessor">#include <wx/xrc/xh_auinotbk.h></span></div>
<div class="line"></div>
<div class="line">AddHandler(<span class="keyword">new</span> wxAuiNotebookXmlHandler);</div>
</div><!-- fragment --><p> to use it.</p>
<h3><a class="anchor" id="xrc_wxbannerwindow"></a>
wxBannerWindow</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>direction </td><td><code>wxLEFT|wxRIGHT|wxTOP|wxBOTTOM</code> </td><td>The side along which the banner will be positioned (default: wxLEFT). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to use as the banner background (default: none). </td></tr>
<tr>
<td>title </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Banner title, should be single line (default: none). </td></tr>
<tr>
<td>message </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Possibly multi-line banner message (default: none). </td></tr>
<tr>
<td>gradient-start </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>Starting colour of the gradient used as banner background. (Optional. Can't be used if a valid bitmap is specified. If used, both gradient values must be set.) </td></tr>
<tr>
<td>gradient-end </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>End colour of the gradient used as banner background. (Optional. Can't be used if a valid bitmap is specified. If used, both gradient values must be set.) </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxbitmapbutton"></a>
wxBitmapButton</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>default </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Should this button be the default button in dialog (default: 0)? </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to show on the button (default: none). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to show when the button is selected (default: none, same as <code>bitmap</code>). </td></tr>
<tr>
<td>focus </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to show when the button has focus (default: none, same as <code>bitmap</code>). </td></tr>
<tr>
<td>disabled </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to show when the button is disabled (default: none, same as <code>bitmap</code>). </td></tr>
<tr>
<td>hover </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to show when mouse cursor hovers above the bitmap (default: none, same as <code>bitmap</code>). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxbitmapcombobox"></a>
wxBitmapComboBox</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>selection </td><td>integer </td><td>Index of the initially selected item or -1 for no selection (default: -1). </td></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Initial value in the control (doesn't have to be one of @ content values; default: empty). </td></tr>
</table>
<p>If both <code>value</code> and <code>selection</code> are specified and <code>selection</code> is not -1, then <code>selection</code> takes precedence.</p>
<p>A <a class="el" href="classwx_bitmap_combo_box.html" title="A combobox that displays bitmap in front of the list items.">wxBitmapComboBox</a> can have one or more child objects of the <code>ownerdrawnitem</code> pseudo-class. <code>ownerdrawnitem</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>text </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Item's label (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Item's bitmap (default: no bitmap). </td></tr>
</table>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxBitmapComboBox"</span>></div>
<div class="line"> <selection>1</selection></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"ownerdrawnitem"</span>></div>
<div class="line"> <text>Foo</text></div>
<div class="line"> <bitmap>foo.png</bitmap></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"ownerdrawnitem"</span>></div>
<div class="line"> <text>Bar</text></div>
<div class="line"> <bitmap>bar.png</bitmap></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxbitmaptogglebutton"></a>
wxBitmapToggleButton</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Label to display on the button (default: none). </td></tr>
<tr>
<td>checked </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Should the button be checked/pressed initially (default: 0)? </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxbutton"></a>
wxButton</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label to display on the button (may be omitted if only the bitmap or stock ID is used). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to display in the button (optional). </td></tr>
<tr>
<td>bitmapposition </td><td><code>wxLEFT|wxRIGHT|wxTOP|wxBOTTOM</code> </td><td>Position of the bitmap in the button, see <a class="el" href="classwx_any_button.html#a841c7747f78ea37110338b0ce1aa97dd" title="Set the position at which the bitmap is displayed.">wxButton::SetBitmapPosition()</a> (default: wxLEFT). </td></tr>
<tr>
<td>default </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Should this button be the default button in dialog (default: 0)? </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxcalendarctrl"></a>
wxCalendarCtrl</h3>
<p>No additional properties.</p>
<h3><a class="anchor" id="xrc_wxcheckbox"></a>
wxCheckBox</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label to use for the checkbox (default: empty). </td></tr>
<tr>
<td>checked </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Should the checkbox be checked initially (default: 0)? </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxchecklistbox"></a>
wxCheckListBox</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>content </td><td>items </td><td>Content of the control; this property has any number of <code><item></code> XML elements as its children, with the items text as their text values (default: empty). </td></tr>
</table>
<p>The <code><item></code> elements have listbox items' labels as their text values. They can also have optional <code>checked</code> XML attribute – if set to "1", the value is initially checked.</p>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxCheckListBox"</span>></div>
<div class="line"> <content></div>
<div class="line"> <item checked=<span class="stringliteral">"1"</span>>Download library</item></div>
<div class="line"> <item checked=<span class="stringliteral">"1"</span>>Compile samples</item></div>
<div class="line"> <item checked=<span class="stringliteral">"1"</span>>Skim docs</item></div>
<div class="line"> <item checked=<span class="stringliteral">"1"</span>>Finish project</item></div>
<div class="line"> <item>Wash car</item></div>
<div class="line"> </content></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxchoice"></a>
wxChoice</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>selection </td><td>integer </td><td>Index of the initially selected item or -1 for no selection (default: -1). </td></tr>
<tr>
<td>content </td><td>items </td><td>Content of the control; this property has any number of <code><item></code> XML elements as its children, with the items text as their text values (default: empty). </td></tr>
</table>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxChoice"</span> name=<span class="stringliteral">"controls_choice"</span>></div>
<div class="line"> <content></div>
<div class="line"> <item>See</item></div>
<div class="line"> <item>Hear</item></div>
<div class="line"> <item>Feel</item></div>
<div class="line"> <item>Smell</item></div>
<div class="line"> <item>Taste</item></div>
<div class="line"> <item>The Sixth Sense!</item></div>
<div class="line"> </content></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxchoicebook"></a>
wxChoicebook</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>imagelist </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> </td><td>Image list to use for the images (default: none, built implicitly). </td></tr>
</table>
<p>Additionally, a choicebook can have one or more child objects of the <code>choicebookpage</code> pseudo-class (similarly to <a class="el" href="overview_xrcformat.html#xrc_wxnotebook">wxNotebook</a> and its <code>notebookpage</code>).</p>
<p><code>choicebookpage</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Sheet page's title (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap shown alongside the label (default: none, mutually exclusive with <code>image</code>). </td></tr>
<tr>
<td>image </td><td>integer </td><td>The zero-based index of the image associated with the item into the image list (default: none, mutually exclusive with <code>bitmap</code>, only if imagelist was set). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the page selected initially (only one page can be selected; default: 0)? </td></tr>
</table>
<p>Each <code>choicebookpage</code> has exactly one non-toplevel window as its child.</p>
<h3><a class="anchor" id="xrc_wxcommandlinkbutton"></a>
wxCommandLinkButton</h3>
<p>The <a class="el" href="classwx_command_link_button.html" title="Objects of this class are similar in appearance to the normal wxButtons but are similar to the links ...">wxCommandLinkButton</a> contains a main title-like <code>label</code> and an optional <code>note</code> for longer description. The main <code>label</code> and the <code>note</code> can be concatenated into a single string using a new line character between them (notice that the <code>note</code> part can have more new lines in it).</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>First line of text on the button, typically the label of an action that will be made when the button is pressed (default: empty). </td></tr>
<tr>
<td>note </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Second line of text describing the action performed when the button is pressed (default: none). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxcollapsiblepane"></a>
wxCollapsiblePane</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label to use for the collapsible section (default: empty). </td></tr>
<tr>
<td>collapsed </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Should the pane be collapsed initially (default: 0)? </td></tr>
</table>
<p><a class="el" href="classwx_collapsible_pane.html" title="A collapsible pane is a container with an embedded button-like control which can be used by the user ...">wxCollapsiblePane</a> may contain single optional child object of the <code>panewindow</code> pseudo-class type. <code>panewindow</code> itself must contain exactly one child that is a <a class="el" href="overview_xrcformat.html#overview_xrcformat_sizers">sizer</a> or a non-toplevel window object.</p>
<h3><a class="anchor" id="xrc_wxcolourpickerctrl"></a>
wxColourPickerCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>Initial value of the control (default: wxBLACK). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxcombobox"></a>
wxComboBox</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>selection </td><td>integer </td><td>Index of the initially selected item or -1 for no selection (default: not used). </td></tr>
<tr>
<td>content </td><td>items </td><td>Content of the control; this property has any number of <code><item></code> XML elements as its children, with the items text as their text values (default: empty). </td></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Initial value in the control (doesn't have to be one of @ content values; default: empty). </td></tr>
</table>
<p>If both <code>value</code> and <code>selection</code> are specified and <code>selection</code> is not -1, then <code>selection</code> takes precedence.</p>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxComboBox"</span> name=<span class="stringliteral">"controls_combobox"</span>></div>
<div class="line"> <style><a class="code" href="defs_8h.html#a4ccc842aa2f4e12acb26e61d53fa2965">wxCB_DROPDOWN</a></style></div>
<div class="line"> <value>nedit</value></div>
<div class="line"> <content></div>
<div class="line"> <item>vim</item></div>
<div class="line"> <item>emacs</item></div>
<div class="line"> <item>notepad.exe</item></div>
<div class="line"> <item>bbedit</item></div>
<div class="line"> </content></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxcomboctrl"></a>
wxComboCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Initial value in the control (default: empty). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxdatepickerctrl"></a>
wxDatePickerCtrl</h3>
<p>No additional properties.</p>
<h3><a class="anchor" id="xrc_wxdialog"></a>
wxDialog</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>title </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Dialog's title (default: empty). </td></tr>
<tr>
<td>icon </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Dialog's icon (default: not used). </td></tr>
<tr>
<td>centered </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Whether the dialog should be centered on the screen (default: 0). </td></tr>
</table>
<p><a class="el" href="classwx_dialog.html" title="A dialog box is a window with a title bar and sometimes a system menu, which can be moved around the ...">wxDialog</a> may have optional children: either exactly one <a class="el" href="overview_xrcformat.html#overview_xrcformat_sizers">sizer</a> child or any number of non-toplevel window objects. If sizer child is used, it sets <a class="el" href="classwx_sizer.html#abc460cd0e2bb3bde72142fdb434bc546">size hints</a> too.</p>
<h3><a class="anchor" id="xrc_wxdirpickerctrl"></a>
wxDirPickerCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Initial value of the control (default: empty). </td></tr>
<tr>
<td>message </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Message shown to the user in <a class="el" href="classwx_dir_dialog.html" title="This class represents the directory chooser dialog.">wxDirDialog</a> shown by the control (default: empty). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxeditablelistbox"></a>
wxEditableListBox</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label shown above the list (default: empty). </td></tr>
<tr>
<td>content </td><td>items </td><td>Content of the control; this property has any number of <code><item></code> XML elements as its children, with the items text as their text values (default: empty). </td></tr>
</table>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxEditableListBox"</span> name=<span class="stringliteral">"controls_listbox"</span>></div>
<div class="line"> <size>250,160</size></div>
<div class="line"> <label>List of things</label></div>
<div class="line"> <content></div>
<div class="line"> <item>Milk</item></div>
<div class="line"> <item>Pizza</item></div>
<div class="line"> <item>Bread</item></div>
<div class="line"> <item>Orange juice</item></div>
<div class="line"> <item>Paper towels</item></div>
<div class="line"> </content></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxfilectrl"></a>
wxFileCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>defaultdirectory </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Sets the current directory displayed in the control (default: empty). </td></tr>
<tr>
<td>defaultfilename </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Selects a certain file (default: empty). </td></tr>
<tr>
<td>wildcard </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Sets the wildcard, which can contain multiple file types, for example: "BMP files (*.bmp)|*.bmp|GIF files (*.gif)|*.gif" (default: all files). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxfilepickerctrl"></a>
wxFilePickerCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Initial value of the control (default: empty). </td></tr>
<tr>
<td>message </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Message shown to the user in <a class="el" href="classwx_dir_dialog.html" title="This class represents the directory chooser dialog.">wxDirDialog</a> shown by the control (default: empty). </td></tr>
<tr>
<td>wildcard </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Sets the wildcard, which can contain multiple file types, for example: "BMP files (*.bmp)|*.bmp|GIF files (*.gif)|*.gif" (default: all files). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxfontpickerctrl"></a>
wxFontPickerCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_font">Font</a> </td><td>Initial value of the control (default: wxNORMAL_FONT). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxfrane"></a>
wxFrame</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>title </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Frame's title (default: empty). </td></tr>
<tr>
<td>icon </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Frame's icon (default: not used). </td></tr>
<tr>
<td>centered </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Whether the frame should be centered on the screen (default: 0). </td></tr>
</table>
<p><a class="el" href="classwx_frame.html" title="A frame is a window whose size and position can (usually) be changed by the user.">wxFrame</a> may have optional children: either exactly one <a class="el" href="overview_xrcformat.html#overview_xrcformat_sizers">sizer</a> child or any number of non-toplevel window objects. If sizer child is used, it sets <a class="el" href="classwx_sizer.html#abc460cd0e2bb3bde72142fdb434bc546">size hints</a> too.</p>
<h3><a class="anchor" id="xrc_wxgauge"></a>
wxGauge</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>range </td><td>integer </td><td>Maximum value of the gauge (default: 100). </td></tr>
<tr>
<td>value </td><td>integer </td><td>Initial value of the control (default: 0). </td></tr>
<tr>
<td>shadow </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Rendered shadow size (default: none; ignored by most platforms). </td></tr>
<tr>
<td>bezel </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Rendered bezel size (default: none; ignored by most platforms). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxgenericdirctrl"></a>
wxGenericDirCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>defaultfolder </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Initial folder (default: empty). </td></tr>
<tr>
<td>filter </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Filter string, using the same syntax as used by <a class="el" href="classwx_file_dialog.html" title="This class represents the file chooser dialog.">wxFileDialog</a>, e.g. "All files (*.*)|*.*|JPEG files (*.jpg)|*.jpg" (default: empty). </td></tr>
<tr>
<td>defaultfilter </td><td>integer </td><td>Zero-based index of default filter (default: 0). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxgrid"></a>
wxGrid</h3>
<p>No additional properties.</p>
<h3><a class="anchor" id="xrc_wxhtmlwindow"></a>
wxHtmlWindow</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>url </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_url">URL</a> </td><td>Page to display in the window (default: none). </td></tr>
<tr>
<td>htmlcode </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>HTML markup to display in the window (default: none). </td></tr>
<tr>
<td>borders </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Border around HTML content (default: 0). </td></tr>
</table>
<p>At most one of <code>url</code> and <code>htmlcode</code> properties may be specified, they are mutually exclusive. If neither is set, the window is initialized to show empty page.</p>
<h3><a class="anchor" id="xrc_wxhyperlinkctrl"></a>
wxHyperlinkCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label to display on the control (default: empty). </td></tr>
<tr>
<td>url </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_url">URL</a> </td><td>URL to open when the link is clicked (default: empty). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxlistbox"></a>
wxListBox</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>selection </td><td>integer </td><td>Index of the initially selected item or -1 for no selection (default: -1). </td></tr>
<tr>
<td>content </td><td>items </td><td>Content of the control; this property has any number of <code><item></code> XML elements as its children, with the items text as their text values (default: empty). </td></tr>
</table>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxListBox"</span> name=<span class="stringliteral">"controls_listbox"</span>></div>
<div class="line"> <size>250,160</size></div>
<div class="line"> <style><a class="code" href="defs_8h.html#ad31ba3d9b905cada9d4d3c3f165dae3a">wxLB_SINGLE</a></style></div>
<div class="line"> <content></div>
<div class="line"> <item>Milk</item></div>
<div class="line"> <item>Pizza</item></div>
<div class="line"> <item>Bread</item></div>
<div class="line"> <item>Orange juice</item></div>
<div class="line"> <item>Paper towels</item></div>
<div class="line"> </content></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxlistbook"></a>
wxListbook</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>imagelist </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> </td><td>Image list to use for the images (default: none, built implicitly). </td></tr>
</table>
<p>Additionally, a listbook can have one or more child objects of the <code>listbookpage</code> pseudo-class (similarly to <a class="el" href="overview_xrcformat.html#xrc_wxnotebook">wxNotebook</a> and its <code>notebookpage</code>).</p>
<p><code>listbookpage</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Sheet page's title (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap shown alongside the label (default: none, mutually exclusive with <code>image</code>). </td></tr>
<tr>
<td>image </td><td>integer </td><td>The zero-based index of the image associated with the item into the image list (default: none, mutually exclusive with <code>bitmap</code>, only if imagelist was set). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the page selected initially (only one page can be selected; default: 0)? </td></tr>
</table>
<p>Each <code>listbookpage</code> has exactly one non-toplevel window as its child.</p>
<h3><a class="anchor" id="xrc_wxlistctrl"></a>
wxListCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>imagelist </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> </td><td>The normal (wxIMAGE_LIST_NORMAL) image list (default: none, built implicitly). </td></tr>
<tr>
<td>imagelist-small </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> </td><td>The small (wxIMAGE_LIST_SMALL) image list (default: none, built implicitly). </td></tr>
</table>
<p>A list control can have optional child objects of the <a class="el" href="overview_xrcformat.html#xrc_wxlistitem">listitem</a> class. Report mode list controls (i.e. created with <code>wxLC_REPORT</code> style) can in addition have optional <a class="el" href="overview_xrcformat.html#xrc_wxlistcol">listcol</a> child objects.</p>
<h4><a class="anchor" id="xrc_wxlistcol"></a>
listcol</h4>
<p>The <code>listcol</code> class can only be used for <a class="el" href="classwx_list_ctrl.html" title="A list control presents lists in a number of formats: list view, report view, icon view and small ico...">wxListCtrl</a> children. It can have the following properties (all of them optional):</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>align </td><td>wxListColumnFormat </td><td>The alignment for the item. Can be one of <code>wxLIST_FORMAT_LEFT</code>, <code>wxLIST_FORMAT_RIGHT</code> or <code>wxLIST_FORMAT_CENTRE</code>. </td></tr>
<tr>
<td>text </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>The title of the column. </td></tr>
<tr>
<td>width </td><td>integer </td><td>The column width. </td></tr>
<tr>
<td>image </td><td>integer </td><td>The zero-based index of the image associated with the item in the 'small' image list. </td></tr>
</table>
<p>The columns are appended to the control in order of their appearance and may be referenced by 0-based index in the <code>col</code> attributes of subsequent <code>listitem</code> objects.</p>
<h4><a class="anchor" id="xrc_wxlistitem"></a>
listitem</h4>
<p>The <code>listitem</code> is a child object for the class <a class="el" href="overview_xrcformat.html#xrc_wxlistctrl">wxListCtrl</a>. It can have the following properties (all of them optional):</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>align </td><td>wxListColumnFormat </td><td>The alignment for the item. Can be one of <code>wxLIST_FORMAT_LEFT</code>, <code>wxLIST_FORMAT_RIGHT</code> or <code>wxLIST_FORMAT_CENTRE</code>. </td></tr>
<tr>
<td>bg </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>The background color for the item. </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Add a bitmap to the (normal) <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> associated with the <a class="el" href="overview_xrcformat.html#xrc_wxlistctrl">wxListCtrl</a> parent and associate it with this item. If the imagelist is not defined it will be created implicitly (default: none, mutually exclusive with <code>image</code>). </td></tr>
<tr>
<td>bitmap-small </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Add a bitmap in the 'small' <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> associated with the <a class="el" href="overview_xrcformat.html#xrc_wxlistctrl">wxListCtrl</a> parent and associate it with this item. If the 'small' imagelist is not defined it will be created implicitly (default: none, mutually exclusive with <code>image-small</code>). </td></tr>
<tr>
<td>col </td><td>integer </td><td>The zero-based column index. </td></tr>
<tr>
<td>image </td><td>integer </td><td>The zero-based index of the image associated with the item in the (normal) image list (default: none, mutually exclusive with <code>bitmap</code>, only if imagelist was set). </td></tr>
<tr>
<td>image-small </td><td>integer </td><td>The zero-based index of the image associated with the item in the 'small' image list (default: none, mutually exclusive with <code>bitmap-small</code>, only if imagelist-small was set). </td></tr>
<tr>
<td>data </td><td>integer </td><td>The client data for the item. </td></tr>
<tr>
<td>font </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_font">Font</a> </td><td>The font for the item. </td></tr>
<tr>
<td>state </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>The item state. Can be any combination of the following values:<ul>
<li><code>wxLIST_STATE_FOCUSED:</code> The item has the focus.</li>
<li><code>wxLIST_STATE_SELECTED:</code> The item is selected. </li>
</ul>
</td></tr>
<tr>
<td>text </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>The text label for the item. </td></tr>
<tr>
<td>textcolour </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_colour">Colour</a> </td><td>The text colour for the item. </td></tr>
</table>
<p>Notice that the item position can't be specified here, the items are appended to the list control in order of their appearance.</p>
<h3><a class="anchor" id="xrc_wxmdiparentframe"></a>
wxMDIParentFrame</h3>
<p><a class="el" href="classwx_m_d_i_parent_frame.html" title="An MDI (Multiple Document Interface) parent frame is a window which can contain MDI child frames in i...">wxMDIParentFrame</a> supports the same properties that <a class="el" href="overview_xrcformat.html#xrc_wxfrane">wxFrame</a> does.</p>
<p><a class="el" href="classwx_m_d_i_parent_frame.html" title="An MDI (Multiple Document Interface) parent frame is a window which can contain MDI child frames in i...">wxMDIParentFrame</a> may have optional children. When used, the child objects must be of <a class="el" href="classwx_m_d_i_child_frame.html" title="An MDI child frame is a frame that can only exist inside a wxMDIClientWindow, which is itself a child...">wxMDIChildFrame</a> type.</p>
<h3><a class="anchor" id="xrc_wxmdichildframe"></a>
wxMDIChildFrame</h3>
<p><a class="el" href="classwx_m_d_i_child_frame.html" title="An MDI child frame is a frame that can only exist inside a wxMDIClientWindow, which is itself a child...">wxMDIChildFrame</a> supports the same properties that <a class="el" href="overview_xrcformat.html#xrc_wxfrane">wxFrame</a> and <a class="el" href="overview_xrcformat.html#xrc_wxmdiparentframe">wxMDIParentFrame</a> do.</p>
<p><a class="el" href="classwx_m_d_i_child_frame.html" title="An MDI child frame is a frame that can only exist inside a wxMDIClientWindow, which is itself a child...">wxMDIChildFrame</a> can only be used as as immediate child of <a class="el" href="overview_xrcformat.html#xrc_wxmdiparentframe">wxMDIParentFrame</a>.</p>
<p><a class="el" href="classwx_m_d_i_child_frame.html" title="An MDI child frame is a frame that can only exist inside a wxMDIClientWindow, which is itself a child...">wxMDIChildFrame</a> may have optional children: either exactly one <a class="el" href="overview_xrcformat.html#overview_xrcformat_sizers">sizer</a> child or any number of non-toplevel window objects. If sizer child is used, it sets <a class="el" href="classwx_sizer.html#abc460cd0e2bb3bde72142fdb434bc546">size hints</a> too.</p>
<h3><a class="anchor" id="xrc_wxmenu"></a>
wxMenu</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Menu's label (default: empty, but required for menus other than popup menus). </td></tr>
<tr>
<td>style </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Window style for the menu. </td></tr>
<tr>
<td>help </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Help shown in statusbar when the menu is selected (only for submenus of another <a class="el" href="classwx_menu.html" title="A menu is a popup (or pull down) list of items, one of which may be selected before the menu goes awa...">wxMenu</a>, default: none). </td></tr>
<tr>
<td>enabled </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the submenu item enabled (only for submenus of another <a class="el" href="classwx_menu.html" title="A menu is a popup (or pull down) list of items, one of which may be selected before the menu goes awa...">wxMenu</a>, default: 1)? </td></tr>
</table>
<p>Note that unlike most controls, <a class="el" href="classwx_menu.html" title="A menu is a popup (or pull down) list of items, one of which may be selected before the menu goes awa...">wxMenu</a> does <em>not</em> have <a class="el" href="overview_xrcformat.html#overview_xrcformat_std_props">Standard Properties</a>, with the exception of <code>style</code>.</p>
<p>A menu object can have one or more child objects of the <a class="el" href="classwx_menu_item.html" title="A menu item represents an item in a menu.">wxMenuItem</a> or <a class="el" href="classwx_menu.html" title="A menu is a popup (or pull down) list of items, one of which may be selected before the menu goes awa...">wxMenu</a> classes or <code>break</code> or <code>separator</code> pseudo-classes.</p>
<p>The <code>separator</code> pseudo-class is used to insert separators into the menu and has neither properties nor children. Likewise, <code>break</code> inserts a break (see <a class="el" href="classwx_menu.html#a3728d2f96ee825b042e0b6d0e08d21d3" title="Inserts a break in a menu, causing the next appended item to appear in a new column.">wxMenu::Break()</a>).</p>
<p><a class="el" href="classwx_menu_item.html" title="A menu item represents an item in a menu.">wxMenuItem</a> objects support the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Item's label (may be omitted if stock ID is used). </td></tr>
<tr>
<td>accel </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text_notrans">Non-Translatable Text</a> </td><td>Item's accelerator (default: none). </td></tr>
<tr>
<td>radio </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Item's kind is wxITEM_RADIO (default: 0)? </td></tr>
<tr>
<td>checkable </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Item's kind is wxITEM_CHECK (default: 0)? </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to show with the item (default: none). </td></tr>
<tr>
<td>bitmap2 </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap for the checked state (wxMSW, if checkable; default: none). </td></tr>
<tr>
<td>help </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Help shown in statusbar when the item is selected (default: none). </td></tr>
<tr>
<td>enabled </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the item enabled (default: 1)? </td></tr>
<tr>
<td>checked </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the item checked initially (default: 0)? </td></tr>
</table>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenu"</span> name=<span class="stringliteral">"menu_edit"</span>></div>
<div class="line"> <style><a class="code" href="defs_8h.html#a7558352cb328c7801175178cb1393304">wxMENU_TEAROFF</a></style></div>
<div class="line"> <label>_Edit</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenuItem"</span> name=<span class="stringliteral">"wxID_FIND"</span>></div>
<div class="line"> <label>_Find...</label></div>
<div class="line"> <accel>Ctrl-F</accel></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"separator"</span>/></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenuItem"</span> name=<span class="stringliteral">"menu_fuzzy"</span>></div>
<div class="line"> <label>Translation is _fuzzy</label></div>
<div class="line"> <checkable>1</checkable></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenu"</span> name=<span class="stringliteral">"submenu"</span>></div>
<div class="line"> <label>A submenu</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenuItem"</span> name=<span class="stringliteral">"foo"</span>>...</<span class="keywordtype">object</span>></div>
<div class="line"> ...</div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"separator"</span> platform=<span class="stringliteral">"unix"</span>/></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenuItem"</span> name=<span class="stringliteral">"wxID_PREFERENCES"</span> platform=<span class="stringliteral">"unix"</span>></div>
<div class="line"> <label>_Preferences</label></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxmenubar"></a>
wxMenuBar</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>style </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Window style for the menu bar. </td></tr>
</table>
<p>Note that unlike most controls, <a class="el" href="classwx_menu_bar.html" title="A menu bar is a series of menus accessible from the top of a frame.">wxMenuBar</a> does <em>not</em> have <a class="el" href="overview_xrcformat.html#overview_xrcformat_std_props">Standard Properties</a>, with the exception of <code>style</code>.</p>
<p>A menubar can have one or more child objects of the <a class="el" href="overview_xrcformat.html#xrc_wxmenu">wxMenu</a> class.</p>
<h3><a class="anchor" id="xrc_wxnotebook"></a>
wxNotebook</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>imagelist </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> </td><td>Image list to use for the images (default: none, built implicitly). </td></tr>
</table>
<p>A notebook can have one or more child objects of the <code>notebookpage</code> pseudo-class.</p>
<p><code>notebookpage</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Page's title (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap shown alongside the label (default: none, mutually exclusive with <code>image</code>). </td></tr>
<tr>
<td>image </td><td>integer </td><td>The zero-based index of the image associated with the item into the image list (default: none, mutually exclusive with <code>bitmap</code>, only if imagelist was set). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the page selected initially (only one page can be selected; default: 0)? </td></tr>
</table>
<p>Each <code>notebookpage</code> has exactly one non-toplevel window as its child.</p>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxNotebook"</span>></div>
<div class="line"> <style><a class="code" href="interface_2wx_2bookctrl_8h.html#ae5e1e857ef24fe84d9ca7d6720e31cc2">wxBK_BOTTOM</a></style></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"notebookpage"</span>></div>
<div class="line"> <label>Page 1</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span> name=<span class="stringliteral">"page_1"</span>></div>
<div class="line"> ...</div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"notebookpage"</span>></div>
<div class="line"> <label>Page 2</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span> name=<span class="stringliteral">"page_2"</span>></div>
<div class="line"> ...</div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxownerdrawncombobox"></a>
wxOwnerDrawnComboBox</h3>
<p><a class="el" href="classwx_owner_drawn_combo_box.html" title="wxOwnerDrawnComboBox is a combobox with owner-drawn list items.">wxOwnerDrawnComboBox</a> has the same properties as <a class="el" href="overview_xrcformat.html#xrc_wxcombobox">wxComboBox</a>, plus the following additional properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>buttonsize </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Size of the dropdown button (default: default). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxpanel"></a>
wxPanel</h3>
<p>No additional properties.</p>
<p><a class="el" href="classwx_panel.html" title="A panel is a window on which controls are placed.">wxPanel</a> may have optional children: either exactly one <a class="el" href="overview_xrcformat.html#overview_xrcformat_sizers">sizer</a> child or any number of non-toplevel window objects.</p>
<h3><a class="anchor" id="xrc_wxpropertysheetdialog"></a>
wxPropertySheetDialog</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>title </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Dialog's title (default: empty). </td></tr>
<tr>
<td>icon </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Dialog's icon (default: not used). </td></tr>
<tr>
<td>centered </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Whether the dialog should be centered on the screen (default: 0). </td></tr>
<tr>
<td>buttons </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Buttons to show, combination of flags accepted by <a class="el" href="classwx_property_sheet_dialog.html#a74a83482c1a6aa508bcd8240e0461ac9" title="Call this to create the buttons for the dialog.">wxPropertySheetDialog::CreateButtons()</a> (default: 0). </td></tr>
</table>
<p>A sheet dialog can have one or more child objects of the <code>propertysheetpage</code> pseudo-class (similarly to <a class="el" href="overview_xrcformat.html#xrc_wxnotebook">wxNotebook</a> and its <code>notebookpage</code>). <code>propertysheetpage</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Sheet page's title (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap shown alongside the label (default: none). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the page selected initially (only one page can be selected; default: 0)? </td></tr>
</table>
<p>Each <code>propertysheetpage</code> has exactly one non-toplevel window as its child.</p>
<h3><a class="anchor" id="xrc_wxradiobutton"></a>
wxRadioButton</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label shown on the radio button (default: empty). </td></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Initial value of the control (default: 0). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxradiobox"></a>
wxRadioBox</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label for the whole box (default: empty). </td></tr>
<tr>
<td>dimension </td><td>integer </td><td>Specifies the maximum number of rows (if style contains <code>wxRA_SPECIFY_ROWS</code>) or columns (if style contains <code>wxRA_SPECIFY_COLS</code>) for a two-dimensional radiobox (default: 1). </td></tr>
<tr>
<td>selection </td><td>integer </td><td>Index of the initially selected item or -1 for no selection (default: -1). </td></tr>
<tr>
<td>content </td><td>items </td><td>Content of the control; this property has any number of <code><item></code> XML elements as its children, with the items text as their text values (see below; default: empty). </td></tr>
</table>
<p>The <code><item></code> elements have radio buttons' labels as their text values. They can also have some optional XML <em>attributes</em> (not properties!):</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>attribute </th><th>type </th><th>description </th></tr>
<tr>
<td>tooltip </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Tooltip to show over this ratio button (default: none). </td></tr>
<tr>
<td>helptext </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Contextual help for this radio button (default: none). </td></tr>
<tr>
<td>enabled </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the button enabled (default: 1)? </td></tr>
<tr>
<td>hidden </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the button hidden initially (default: 0)? </td></tr>
</table>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxRadioBox"</span> name=<span class="stringliteral">"controls_radiobox"</span>></div>
<div class="line"> <style><a class="code" href="defs_8h.html#a5a8469ecd014c152136d774fd5c5b82c">wxRA_SPECIFY_COLS</a></style></div>
<div class="line"> <label>Radio stations</label></div>
<div class="line"> <dimension>1</dimension></div>
<div class="line"> <selection>0</selection></div>
<div class="line"> <content></div>
<div class="line"> <item tooltip=<span class="stringliteral">"Powerful radio station"</span> helptext=<span class="stringliteral">"This station is for amateurs of hard rock and heavy metal"</span>>Power 108</item></div>
<div class="line"> <item tooltip=<span class="stringliteral">"Disabled radio station"</span> enabled=<span class="stringliteral">"0"</span>>Power 0</item></div>
<div class="line"> <item tooltip=<span class="stringliteral">""</span>>WMMS 100.7</item></div>
<div class="line"> <item tooltip=<span class="stringliteral">"E=mc^2"</span>>Energy 98.3</item></div>
<div class="line"> <item helptext=<span class="stringliteral">"Favourite chukcha's radio"</span>>CHUM FM</item></div>
<div class="line"> <item>92FM</item></div>
<div class="line"> <item hidden=<span class="stringliteral">"1"</span>>Very quit station</item></div>
<div class="line"> </content></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxribbonbar"></a>
wxRibbonBar</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>art-provider </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>One of <code>default</code>, <code>aui</code> or <code>msw</code> (default: <code>default</code>). </td></tr>
</table>
<p>A <a class="el" href="classwx_ribbon_bar.html" title="Top-level control in a ribbon user interface.">wxRibbonBar</a> may have <a class="el" href="overview_xrcformat.html#xrc_wxribbonpage">wxRibbonPage</a> child objects. The <code>page</code> pseudo-class may be used instead of <code><a class="el" href="classwx_ribbon_page.html" title="Container for related ribbon panels, and a tab within a ribbon bar.">wxRibbonPage</a></code> when used as <a class="el" href="classwx_ribbon_bar.html" title="Top-level control in a ribbon user interface.">wxRibbonBar</a> children.</p>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxRibbonBar"</span> name=<span class="stringliteral">"ribbonbar"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"page"</span> name=<span class="stringliteral">"FilePage"</span>></div>
<div class="line"> <label>First</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"panel"</span>></div>
<div class="line"> <label>File</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxRibbonButtonBar"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"button"</span> name=<span class="stringliteral">"Open"</span>></div>
<div class="line"> <bitmap>open.xpm</bitmap></div>
<div class="line"> <label>Open</label></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"page"</span> name=<span class="stringliteral">"ViewPage"</span>></div>
<div class="line"> <label>View</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"panel"</span>></div>
<div class="line"> <label>Zoom</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxRibbonGallery"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"item"</span>></div>
<div class="line"> <bitmap>zoomin.xpm</bitmap></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"item"</span>></div>
<div class="line"> <bitmap>zoomout.xpm</bitmap></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><p>Notice that <a class="el" href="classwx_ribbon_bar.html" title="Top-level control in a ribbon user interface.">wxRibbonBar</a> support in XRC is available in wxWidgets 2.9.5 and later only and you need to explicitly register its handler using </p>
<div class="fragment"><div class="line"><span class="preprocessor">#include <wx/xrc/xh_ribbon.h></span></div>
<div class="line"></div>
<div class="line">AddHandler(<span class="keyword">new</span> wxRibbonXmlHandler);</div>
</div><!-- fragment --><p> to use it.</p>
<h3><a class="anchor" id="xrc_wxribbonbuttonbar"></a>
wxRibbonButtonBar</h3>
<p>No additional properties.</p>
<p><a class="el" href="classwx_ribbon_button_bar.html" title="A ribbon button bar is similar to a traditional toolbar.">wxRibbonButtonBar</a> can have child objects of the <code>button</code> pseudo-class. <code>button</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>hybrid </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>If true, the <code>wxRIBBON_BUTTON_HYBRID</code> kind is used (default: false). </td></tr>
<tr>
<td>disabled </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Whether the button should be disabled (default: false). </td></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Item's label (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Item's bitmap (default: none). </td></tr>
<tr>
<td>small-bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Small bitmap (default: none). </td></tr>
<tr>
<td>disabled-bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Disabled bitmap (default: none). </td></tr>
<tr>
<td>small-disabled-bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Small disabled bitmap (default: none). </td></tr>
<tr>
<td>help </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Item's help text (default: none). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxribboncontrol"></a>
wxRibbonControl</h3>
<p>No additional properties.</p>
<p>Objects of this type <em>must</em> be subclassed with the <code>subclass</code> attribute.</p>
<h3><a class="anchor" id="xrc_wxribbongallery"></a>
wxRibbonGallery</h3>
<p>No additional properties.</p>
<p><a class="el" href="classwx_ribbon_gallery.html" title="A ribbon gallery is like a wxListBox, but for bitmaps rather than strings.">wxRibbonGallery</a> can have child objects of the <code>item</code> pseudo-class. <code>item</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Item's bitmap (default: none). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxribbonpage"></a>
wxRibbonPage</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label (default: none). </td></tr>
<tr>
<td>icon </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Icon (default: none). </td></tr>
</table>
<p>A <a class="el" href="classwx_ribbon_page.html" title="Container for related ribbon panels, and a tab within a ribbon bar.">wxRibbonPage</a> may have children of any type derived from <a class="el" href="classwx_ribbon_control.html" title="wxRibbonControl serves as a base class for all controls which share the ribbon characteristics of hav...">wxRibbonControl</a>. Most commontly, <a class="el" href="classwx_ribbon_panel.html" title="Serves as a container for a group of (ribbon) controls.">wxRibbonPanel</a> is used. As a special case, the <code>panel</code> pseudo-class may be used instead of <code><a class="el" href="classwx_ribbon_panel.html" title="Serves as a container for a group of (ribbon) controls.">wxRibbonPanel</a></code> when used as <a class="el" href="classwx_ribbon_page.html" title="Container for related ribbon panels, and a tab within a ribbon bar.">wxRibbonPage</a> children.</p>
<h3><a class="anchor" id="xrc_wxribbonpanel"></a>
wxRibbonPanel</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label (default: none). </td></tr>
<tr>
<td>icon </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Icon (default: none). </td></tr>
</table>
<p>A <a class="el" href="classwx_ribbon_panel.html" title="Serves as a container for a group of (ribbon) controls.">wxRibbonPanel</a> may have children of any type derived from <a class="el" href="classwx_ribbon_control.html" title="wxRibbonControl serves as a base class for all controls which share the ribbon characteristics of hav...">wxRibbonControl</a> or a single <a class="el" href="classwx_sizer.html" title="wxSizer is the abstract base class used for laying out subwindows in a window.">wxSizer</a> child with non-ribbon windows in it.</p>
<h3><a class="anchor" id="xrc_wxrichtextctrl"></a>
wxRichTextCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Initial value of the control (default: empty). </td></tr>
<tr>
<td>maxlength </td><td>integer </td><td>Maximum length of the text entered (default: unlimited). </td></tr>
</table>
<p>Notice that <a class="el" href="classwx_rich_text_ctrl.html" title="wxRichTextCtrl provides a generic, ground-up implementation of a text control capable of showing mult...">wxRichTextCtrl</a> support in XRC is available in wxWidgets 2.9.5 and later only and you need to explicitly register its handler using </p>
<div class="fragment"><div class="line"><span class="preprocessor">#include <wx/xrc/xh_richtext.h></span></div>
<div class="line"></div>
<div class="line">AddHandler(<span class="keyword">new</span> <a class="code" href="classwx_rich_text_ctrl.html" title="wxRichTextCtrl provides a generic, ground-up implementation of a text control capable of showing mult...">wxRichTextCtrl</a>);</div>
</div><!-- fragment --><p> to use it.</p>
<h3><a class="anchor" id="xrc_wxscrollbar"></a>
wxScrollBar</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td>integer </td><td>Initial position of the scrollbar (default: 0). </td></tr>
<tr>
<td>range </td><td>integer </td><td>Maximum value of the gauge (default: 10). </td></tr>
<tr>
<td>thumbsize </td><td>integer </td><td>Size of the thumb (default: 1). </td></tr>
<tr>
<td>pagesize </td><td>integer </td><td>Page size (default: 1). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxscrolledwindow"></a>
wxScrolledWindow</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>scrollrate </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Scroll rate in <em>x</em> and <em>y</em> directions (default: not set; required if the window has a sizer child). </td></tr>
</table>
<p>wxScrolledWindow may have optional children: either exactly one <a class="el" href="overview_xrcformat.html#overview_xrcformat_sizers">sizer</a> child or any number of non-toplevel window objects. If sizer child is used, <a class="el" href="classwx_sizer.html#a37904ed600fd389345295ff89aa09fdc" title="Tell the sizer to resize the virtual size of the window to match the sizer's minimal size...">wxSizer::FitInside()</a> is used (instead of <a class="el" href="classwx_sizer.html#abad9cedc0cbe9ade2c799da23462d17e" title="Tell the sizer to resize the window so that its client area matches the sizer's minimal size (Compute...">wxSizer::Fit()</a> as usual) and so the children don't determine scrolled window's minimal size, they only affect <em>virtual</em> size. Usually, both <code>scrollrate</code> and either <code>size</code> or <code>minsize</code> on containing sizer item should be used in this case.</p>
<h3><a class="anchor" id="xrc_wxsimplehtmllistbox"></a>
wxSimpleHtmlListBox</h3>
<p><a class="el" href="classwx_simple_html_list_box.html" title="wxSimpleHtmlListBox is an implementation of wxHtmlListBox which shows HTML content in the listbox row...">wxSimpleHtmlListBox</a> has same properties as <a class="el" href="overview_xrcformat.html#xrc_wxlistbox">wxListBox</a>. The only difference is that the text contained in <code><item></code> elements is HTML markup. Note that the markup has to be escaped:</p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxSimpleHtmlListBox"</span>></div>
<div class="line"> <content></div>
<div class="line"> <item>&lt;b&gt;Bold&lt;/b&gt; Milk</item></div>
<div class="line"> </content></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><p>(X)HTML markup elements cannot be included directly:</p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxSimpleHtmlListBox"</span>></div>
<div class="line"> <content></div>
<div class="line"> <!-- This is incorrect, doesn<span class="stringliteral">'t work! --></span></div>
<div class="line"><span class="stringliteral"> <item><b>Bold</b> Milk</item></span></div>
<div class="line"><span class="stringliteral"> </content></span></div>
<div class="line"><span class="stringliteral"></object></span></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxsimplebook"></a>
wxSimplebook</h3>
<p><a class="el" href="classwx_simplebook.html" title="wxSimplebook is a control showing exactly one of its several pages.">wxSimplebook</a> is similar to <a class="el" href="overview_xrcformat.html#xrc_wxnotebook">wxNotebook</a> but simpler: as it doesn't show any page headers, it doesn't use neither image list nor individual page bitmaps and while it still accepts page labels, they are optional as they are not shown to the user neither.</p>
<p>So <code>simplebookpage</code> child elements, that must occur inside this object, only have the following properties:</p>
<p><code>choicebookpage</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Page's label (default: empty). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the page selected initially (only one page can be selected; default: 0)? </td></tr>
</table>
<p>As with all the other book page elements, each <code>simplebookpage</code> must have exactly one non-toplevel window as its child.</p>
<dl class="section since"><dt>Since</dt><dd>3.0.2</dd></dl>
<h3><a class="anchor" id="xrc_wxslider"></a>
wxSlider</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td>integer </td><td>Initial value of the control (default: 0). </td></tr>
<tr>
<td>min </td><td>integer </td><td>Minimum allowed value (default: 0). </td></tr>
<tr>
<td>max </td><td>integer </td><td>Maximum allowed value (default: 100). </td></tr>
<tr>
<td>pagesize </td><td>integer </td><td>Page size; number of steps the slider moves when the user moves pages up or down (default: unset). </td></tr>
<tr>
<td>linesize </td><td>integer </td><td>Line size; number of steps the slider moves when the user moves it up or down a line (default: unset). </td></tr>
<tr>
<td>tickfreq </td><td>integer </td><td>Tick marks frequency (Windows only; default: unset). </td></tr>
<tr>
<td>tick </td><td>integer </td><td>Tick position (Windows only; default: unset). </td></tr>
<tr>
<td>thumb </td><td>integer </td><td>Thumb length (Windows only; default: unset). </td></tr>
<tr>
<td>selmin </td><td>integer </td><td>Selection start position (Windows only; default: unset). </td></tr>
<tr>
<td>selmax </td><td>integer </td><td>Selection end position (Windows only; default: unset). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxspinbutton"></a>
wxSpinButton</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td>integer </td><td>Initial value of the control (default: 0). </td></tr>
<tr>
<td>min </td><td>integer </td><td>Minimum allowed value (default: 0). </td></tr>
<tr>
<td>max </td><td>integer </td><td>Maximum allowed value (default: 100). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxspinctrl"></a>
wxSpinCtrl</h3>
<p><a class="el" href="classwx_spin_ctrl.html" title="wxSpinCtrl combines wxTextCtrl and wxSpinButton in one control.">wxSpinCtrl</a> supports the same properties as <a class="el" href="overview_xrcformat.html#xrc_wxspinbutton">wxSpinButton</a> and, since wxWidgets 2.9.5, another one: </p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<td>base </td><td>integer </td><td>Numeric base, currently can be only 10 or 16 (default: 10). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxsplitterwindow"></a>
wxSplitterWindow</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>orientation </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Orientation of the splitter, either "vertical" or "horizontal" (default: horizontal). </td></tr>
<tr>
<td>sashpos </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Initial position of the sash (default: 0). </td></tr>
<tr>
<td>minsize </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Minimum child size (default: not set). </td></tr>
<tr>
<td>gravity </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_float">Floating-point value</a> </td><td>Sash gravity, see <a class="el" href="classwx_splitter_window.html#a3c52925dffd02509d110086d4bb29373" title="Sets the sash gravity.">wxSplitterWindow::SetSashGravity()</a> (default: not set). </td></tr>
</table>
<p><a class="el" href="classwx_splitter_window.html" title="This class manages up to two subwindows.">wxSplitterWindow</a> must have one or two children that are non-toplevel window objects. If there's only one child, it is used as <a class="el" href="classwx_splitter_window.html" title="This class manages up to two subwindows.">wxSplitterWindow</a>'s only visible child. If there are two children, the first one is used for left/top child and the second one for right/bottom child window.</p>
<h3><a class="anchor" id="xrc_wxsearchctrl"></a>
wxSearchCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Initial value of the control (default: empty). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxstatusbar"></a>
wxStatusBar</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>fields </td><td>integer </td><td>Number of status bar fields (default: 1). </td></tr>
<tr>
<td>widths </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Comma-separated list of <em>fields</em> integers. Each value specifies width of one field; the values are interpreted using the same convention used by <a class="el" href="classwx_status_bar.html#a9abeb55a396c9ea4f0cea9fc06d124ee" title="Sets the widths of the fields in the status line.">wxStatusBar::SetStatusWidths()</a> (default: not set). </td></tr>
<tr>
<td>styles </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_string">String</a> </td><td>Comma-separated list of <em>fields</em> style values. Each value specifies style of one field and can be one of <code>wxSB_NORMAL</code>, <code>wxSB_FLAT</code>, <code>wxSB_RAISED</code> or <code>wxSB_SUNKEN</code> (default: not set). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxstaticbitmap"></a>
wxStaticBitmap</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to display (required). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxstaticbox"></a>
wxStaticBox</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Static box's label (default: empty). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxstaticline"></a>
wxStaticLine</h3>
<p>No additional properties.</p>
<h3><a class="anchor" id="xrc_wxstatictext"></a>
wxStaticText</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label to display (default: empty). </td></tr>
<tr>
<td>wrap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Wrap the text so that each line is at most the given number of pixels, see <a class="el" href="classwx_static_text.html#af997df62e849c890f0cac6900ee950f5" title="This functions wraps the controls label so that each of its lines becomes at most width pixels wide i...">wxStaticText::Wrap()</a> (default: no wrap). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxtextctrl"></a>
wxTextCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>value </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Initial value of the control (default: empty). </td></tr>
<tr>
<td>maxlength </td><td>integer </td><td>Maximum length of the text which can be entered by user (default: unlimited). </td></tr>
<tr>
<td>hint </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Hint shown in empty control (new since wxWidgets 3.0.1). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxtimepickerctrl"></a>
wxTimePickerCtrl</h3>
<p>No additional properties.</p>
<h3><a class="anchor" id="xrc_wxtogglebutton"></a>
wxToggleButton</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label to display on the button (default: empty). </td></tr>
<tr>
<td>checked </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Should the button be checked/pressed initially (default: 0)? </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxtoolbar"></a>
wxToolBar</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>bitmapsize </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Size of toolbar bitmaps (default: not set). </td></tr>
<tr>
<td>margins </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Margins (default: platform default). </td></tr>
<tr>
<td>packing </td><td>integer </td><td>Packing, see <a class="el" href="classwx_tool_bar.html#a26ddfe7e52a93fbc4c169159863c629c" title="Sets the value used for spacing tools.">wxToolBar::SetToolPacking()</a> (default: not set). </td></tr>
<tr>
<td>separation </td><td>integer </td><td>Default separator size, see <a class="el" href="classwx_tool_bar.html#a163c9bfdd0f9f30707688bf498ab788c" title="Sets the default separator size.">wxToolBar::SetToolSeparation()</a> (default: not set). </td></tr>
<tr>
<td>dontattachtoframe </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>If set to 0 and the toolbar object is child of a <a class="el" href="classwx_frame.html" title="A frame is a window whose size and position can (usually) be changed by the user.">wxFrame</a>, <a class="el" href="classwx_frame.html#ab4017f727aa97560f51457d7302b0ca5" title="Associates a toolbar with the frame.">wxFrame::SetToolBar()</a> is called; otherwise, you have to add it to a frame manually. The toolbar is attached by default, you have to set this property to 1 to disable this behaviour (default: 0). </td></tr>
</table>
<p>A toolbar can have one or more child objects of any wxControl-derived class or one of three pseudo-classes: <code>separator</code>, <code>space</code> or <code>tool</code>.</p>
<p>The <code>separator</code> pseudo-class is used to insert separators into the toolbar and has neither properties nor children. Similarly, the <code>space</code> pseudo-class is used for stretchable spaces (see <a class="el" href="classwx_tool_bar.html#adb30df5ae52f2fabc974d0dd1376f5cd" title="Adds a stretchable space to the toolbar.">wxToolBar::AddStretchableSpace()</a>, new since wxWidgets 2.9.1).</p>
<p>The <code>tool</code> pseudo-class objects specify toolbar buttons and have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Tool's bitmap (default: empty). </td></tr>
<tr>
<td>bitmap2 </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap for disabled tool (default: derived from <code>bitmap</code>). </td></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label to display on the tool (default: no label). </td></tr>
<tr>
<td>radio </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Item's kind is wxITEM_RADIO (default: 0)? </td></tr>
<tr>
<td>toggle </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Item's kind is wxITEM_CHECK (default: 0)? </td></tr>
<tr>
<td>dropdown </td><td>see below </td><td>Item's kind is wxITEM_DROPDOWN (default: 0)? (only available since wxWidgets 2.9.0) </td></tr>
<tr>
<td>tooltip </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Tooltip to use for the tool (default: none). </td></tr>
<tr>
<td>longhelp </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Help text shown in statusbar when the mouse is on the tool (default: none). </td></tr>
<tr>
<td>disabled </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the tool initially disabled (default: 0)? </td></tr>
<tr>
<td>checked </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the tool initially checked (default: 0)? (only available since wxWidgets 2.9.3) </td></tr>
</table>
<p>The presence of a <code>dropdown</code> property indicates that the tool is of type wxITEM_DROPDOWN. It must be either empty or contain exactly one <a class="el" href="overview_xrcformat.html#xrc_wxmenu">wxMenu</a> child object defining the drop-down button associated menu.</p>
<p>Notice that <code>radio</code>, <code>toggle</code> and <code>dropdown</code> are mutually exclusive.</p>
<p>Children that are not <code>tool</code>, <code>space</code> or <code>separator</code> must be instances of classes derived from <a class="el" href="classwx_control.html" title="This is the base class for a control or "widget".">wxControl</a> and are added to the toolbar using <a class="el" href="classwx_tool_bar.html#aec263a8e47372eb78e91b8db8797731d" title="Adds any control to the toolbar, typically e.g. a wxComboBox.">wxToolBar::AddControl()</a>.</p>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxToolBar"</span>></div>
<div class="line"> <style><a class="code" href="interface_2wx_2toolbar_8h.html#ae8a3b6a5d0d3244ed73924ab2421a0d0a7360f1b3df900eb618090c012d1caaea" title=""flat" buttons (Win32/GTK only)">wxTB_FLAT</a>|<a class="code" href="interface_2wx_2toolbar_8h.html#ae8a3b6a5d0d3244ed73924ab2421a0d0aedd850b575f017547a4d9396b51dd940" title="don't show the divider between toolbar and the window (Win32 only)">wxTB_NODIVIDER</a></style></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"tool"</span> name=<span class="stringliteral">"foo"</span>></div>
<div class="line"> <bitmap>foo.png</bitmap></div>
<div class="line"> <label>Foo</label></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"tool"</span> name=<span class="stringliteral">"bar"</span>></div>
<div class="line"> <bitmap>bar.png</bitmap></div>
<div class="line"> <label>Bar</label></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"separator"</span>/></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"tool"</span> name=<span class="stringliteral">"view_auto"</span>></div>
<div class="line"> <bitmap>view.png</bitmap></div>
<div class="line"> <label>View</label></div>
<div class="line"> <dropdown></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenu"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenuItem"</span> name=<span class="stringliteral">"view_as_text"</span>></div>
<div class="line"> <label>View as text</label></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxMenuItem"</span> name=<span class="stringliteral">"view_as_hex"</span>></div>
<div class="line"> <label>View as binary</label></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </dropdown></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"space"</span>/></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxComboBox"</span>></div>
<div class="line"> <content></div>
<div class="line"> <item>Just</item></div>
<div class="line"> <item>a combobox</item></div>
<div class="line"> <item>in the toolbar</item></div>
<div class="line"> </content></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h3><a class="anchor" id="xrc_wxtoolbook"></a>
wxToolbook</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>imagelist </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> </td><td>Image list to use for the images (default: none, built implicitly). </td></tr>
</table>
<p>A toolbook can have one or more child objects of the <code>toolbookpage</code> pseudo-class (similarly to <a class="el" href="overview_xrcformat.html#xrc_wxnotebook">wxNotebook</a> and its <code>notebookpage</code>).</p>
<p><code>toolbookpage</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Sheet page's title (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap shown alongside the label (default: none, mutually exclusive with <code>image</code>). </td></tr>
<tr>
<td>image </td><td>integer </td><td>The zero-based index of the image associated with the item into the image list (default: none, mutually exclusive with <code>bitmap</code>, only if imagelist was set). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the page selected initially (only one page can be selected; default: 0)? </td></tr>
</table>
<p>Each <code>toolbookpage</code> has exactly one non-toplevel window as its child.</p>
<h3><a class="anchor" id="xrc_wxtreectrl"></a>
wxTreeCtrl</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>imagelist </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> </td><td>Image list to use for the images (default: none). </td></tr>
</table>
<h3><a class="anchor" id="xrc_wxtreebook"></a>
wxTreebook</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>imagelist </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_imagelist">Image List</a> </td><td>Image list to use for the images (default: none, built implicitly). </td></tr>
</table>
<p>A treebook can have one or more child objects of the <code>treebookpage</code> pseudo-class (similarly to <a class="el" href="overview_xrcformat.html#xrc_wxnotebook">wxNotebook</a> and its <code>notebookpage</code>).</p>
<p><code>treebookpage</code> objects have the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>depth </td><td>integer </td><td>Page's depth in the labels tree (default: 0; see below). </td></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Sheet page's title (default: empty). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap shown alongside the label (default: none, mutually exclusive with <code>image</code>). </td></tr>
<tr>
<td>image </td><td>integer </td><td>The zero-based index of the image associated with the item into the image list (default: none, mutually exclusive with <code>bitmap</code>, only if imagelist was set). </td></tr>
<tr>
<td>selected </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>Is the page selected initially (only one page can be selected; default: 0)? </td></tr>
<tr>
<td>expanded </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bool">Boolean</a> </td><td>If set to 1, the page is initially expanded. By default all pages are initially collapsed. </td></tr>
</table>
<p>Each <code>treebookpage</code> has exactly one non-toplevel window as its child.</p>
<p>The tree of labels is not described using nested <code>treebookpage</code> objects, but using the <em>depth</em> property. Toplevel pages have depth 0, their child pages have depth 1 and so on. A <code>treebookpage's</code> label is inserted as child of the latest preceding page with depth equal to <em>depth-1</em>. For example, this XRC markup:</p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxTreebook"</span>></div>
<div class="line"> ...</div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"treebookpage"</span>></div>
<div class="line"> <depth>0</depth></div>
<div class="line"> <label>Page 1</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span>>...</<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"treebookpage"</span>></div>
<div class="line"> <depth>1</depth></div>
<div class="line"> <label>Subpage 1A</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span>>...</<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"treebookpage"</span>></div>
<div class="line"> <depth>2</depth></div>
<div class="line"> <label>Subsubpage 1</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span>>...</<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"treebookpage"</span>></div>
<div class="line"> <depth>1</depth></div>
<div class="line"> <label>Subpage 1B</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span>>...</<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"treebookpage"</span>></div>
<div class="line"> <depth>2</depth></div>
<div class="line"> <label>Subsubpage 2</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span>>...</<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"treebookpage"</span>></div>
<div class="line"> <depth>0</depth></div>
<div class="line"> <label>Page 2</label></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxPanel"</span>>...</<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><p>corresponds to the following tree of labels:</p>
<ul>
<li>Page 1<ul>
<li>Subpage 1A<ul>
<li>Subsubpage 1</li>
</ul>
</li>
<li>Subpage 1B<ul>
<li>Subsubpage 2</li>
</ul>
</li>
</ul>
</li>
<li>Page 2</li>
</ul>
<h3><a class="anchor" id="xrc_wxwizard"></a>
wxWizard</h3>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Bitmap to display on the left side of the wizard (default: none). </td></tr>
</table>
<p>A wizard object can have one or more child objects of the <a class="el" href="classwx_wizard_page.html" title="wxWizardPage is one of the screens in wxWizard: it must know what are the following and preceding pag...">wxWizardPage</a> or <a class="el" href="classwx_wizard_page_simple.html" title="wxWizardPageSimple is the simplest possible wxWizardPage implementation: it just returns the pointers...">wxWizardPageSimple</a> classes. They both support the following properties (in addition to <a class="el" href="overview_xrcformat.html#overview_xrcformat_std_props">Standard Properties</a>):</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>title </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Wizard window's title (default: none). </td></tr>
<tr>
<td>bitmap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">Bitmap</a> </td><td>Page-specific bitmap (default: none). </td></tr>
</table>
<p><a class="el" href="classwx_wizard_page.html" title="wxWizardPage is one of the screens in wxWizard: it must know what are the following and preceding pag...">wxWizardPage</a> and <a class="el" href="classwx_wizard_page_simple.html" title="wxWizardPageSimple is the simplest possible wxWizardPage implementation: it just returns the pointers...">wxWizardPageSimple</a> nodes may have optional children: either exactly one <a class="el" href="overview_xrcformat.html#overview_xrcformat_sizers">sizer</a> child or any number of non-toplevel window objects.</p>
<p><a class="el" href="classwx_wizard_page_simple.html" title="wxWizardPageSimple is the simplest possible wxWizardPage implementation: it just returns the pointers...">wxWizardPageSimple</a> pages are automatically chained together; <a class="el" href="classwx_wizard_page.html" title="wxWizardPage is one of the screens in wxWizard: it must know what are the following and preceding pag...">wxWizardPage</a> pages transitions must be handled programmatically.</p>
<h1><a class="anchor" id="overview_xrcformat_sizers"></a>
Sizers</h1>
<p>Sizers are handled slightly differently in XRC resources than they are in <a class="el" href="classwx_window.html" title="wxWindow is the base class for all windows and represents any visible object on screen.">wxWindow</a> hierarchy. <a class="el" href="classwx_window.html" title="wxWindow is the base class for all windows and represents any visible object on screen.">wxWindow</a>'s sizers hierarchy is parallel to the <a class="el" href="classwx_window.html" title="wxWindow is the base class for all windows and represents any visible object on screen.">wxWindow</a> children hierarchy: child windows are children of their parent window and the sizer (or sizers) form separate hierarchy attached to the window with <a class="el" href="classwx_window.html#abc95691b45e29a52c24aa9d33d46dec1" title="Sets the window to have the given layout sizer.">wxWindow::SetSizer()</a>.</p>
<p>In XRC, the two hierarchies are merged together: sizers are children of other sizers or windows and they can contain child window objects.</p>
<p>If a sizer is child of a window object in the resource, it must be the only child and it will be attached to the parent with <a class="el" href="classwx_window.html#abc95691b45e29a52c24aa9d33d46dec1" title="Sets the window to have the given layout sizer.">wxWindow::SetSizer()</a>. Additionally, if the window doesn't have its size explicitly set, <a class="el" href="classwx_sizer.html#abad9cedc0cbe9ade2c799da23462d17e" title="Tell the sizer to resize the window so that its client area matches the sizer's minimal size (Compute...">wxSizer::Fit()</a> is used to resize the window. If the parent window is toplevel window, <a class="el" href="classwx_sizer.html#abc460cd0e2bb3bde72142fdb434bc546" title="This method first calls Fit() and then wxTopLevelWindow::SetSizeHints() on the window passed to it...">wxSizer::SetSizeHints()</a> is called to set its hints.</p>
<p>A sizer object can have one or more child objects of one of two pseudo-classes: <code>sizeritem</code> or <code>spacer</code> (see <a class="el" href="overview_xrcformat.html#overview_xrcformat_wxstddialogbuttonsizer">wxStdDialogButtonSizer</a> for an exception). The former specifies an element (another sizer or a window) to include in the sizer, the latter adds empty space to the sizer.</p>
<p><code>sizeritem</code> objects have exactly one child object: either another sizer object, or a window object. <code>spacer</code> objects don't have any children, but they have one property:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>size </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Size of the empty space (default: <code>wxDefaultSize</code>). </td></tr>
</table>
<p>Both <code>sizeritem</code> and <code>spacer</code> objects can have any of the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>option </td><td>integer </td><td>The "option" value for sizers. Used by <a class="el" href="classwx_box_sizer.html" title="The basic idea behind a box sizer is that windows will most often be laid out in rather simple basic ...">wxBoxSizer</a> to set proportion of the item in the growable direction (default: 0). </td></tr>
<tr>
<td>flag </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td><a class="el" href="classwx_sizer_item.html" title="The wxSizerItem class is used to track the position, size and other attributes of each item managed b...">wxSizerItem</a> flags (default: 0). </td></tr>
<tr>
<td>border </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Size of the border around the item (directions are specified in flags) (default: 0). </td></tr>
<tr>
<td>minsize </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Minimal size of this item (default: no min size). </td></tr>
<tr>
<td>ratio </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Item ratio, see wxSizer::SetRatio() (default: no ratio). </td></tr>
<tr>
<td>cellpos </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_pos">Position</a> </td><td>(<a class="el" href="classwx_grid_bag_sizer.html" title="A wxSizer that can lay out items in a virtual grid like a wxFlexGridSizer but in this case explicit p...">wxGridBagSizer</a> only) Position, see <a class="el" href="classwx_g_b_sizer_item.html#a16f4cfb3084129107896cdcb6ab6e0df" title="If the item is already a member of a sizer then first ensure that there is no other item that would i...">wxGBSizerItem::SetPos()</a> (required). </td></tr>
<tr>
<td>cellspan </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>(<a class="el" href="classwx_grid_bag_sizer.html" title="A wxSizer that can lay out items in a virtual grid like a wxFlexGridSizer but in this case explicit p...">wxGridBagSizer</a> only) Span, see <a class="el" href="classwx_g_b_sizer_item.html#a62fe2aad8ca333ba7d99b688970ab23d" title="If the item is already a member of a sizer then first ensure that there is no other item that would i...">wxGBSizerItem::SetSpan()</a> (required). </td></tr>
</table>
<p>Example of sizers XRC code: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxDialog"</span> name=<span class="stringliteral">"derived_dialog"</span>></div>
<div class="line"> <title>Derived Dialog Example</title></div>
<div class="line"> <centered>1</centered></div>
<div class="line"> <!-- <span class="keyword">this</span> sizer is <span class="keyword">set</span> to be <span class="keyword">this</span> dialog<span class="stringliteral">'s sizer: --></span></div>
<div class="line"><span class="stringliteral"> <object class="wxFlexGridSizer"></span></div>
<div class="line"><span class="stringliteral"> <cols>1</cols></span></div>
<div class="line"><span class="stringliteral"> <rows>0</rows></span></div>
<div class="line"><span class="stringliteral"> <vgap>0</vgap></span></div>
<div class="line"><span class="stringliteral"> <hgap>0</hgap></span></div>
<div class="line"><span class="stringliteral"> <growablecols>0:1</growablecols></span></div>
<div class="line"><span class="stringliteral"> <growablerows>0:1</growablerows></span></div>
<div class="line"><span class="stringliteral"> <object class="sizeritem"></span></div>
<div class="line"><span class="stringliteral"> <flag>wxALIGN_CENTRE|wxALL</flag></span></div>
<div class="line"><span class="stringliteral"> <border>5</border></span></div>
<div class="line"><span class="stringliteral"> <object class="wxButton" name="my_button"></span></div>
<div class="line"><span class="stringliteral"> <label>My Button</label></span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"> <object class="sizeritem"></span></div>
<div class="line"><span class="stringliteral"> <flag>wxALIGN_CENTRE|wxALL</flag></span></div>
<div class="line"><span class="stringliteral"> <border>5</border></span></div>
<div class="line"><span class="stringliteral"> <object class="wxBoxSizer"></span></div>
<div class="line"><span class="stringliteral"> <orient>wxHORIZONTAL</orient></span></div>
<div class="line"><span class="stringliteral"> <object class="sizeritem"></span></div>
<div class="line"><span class="stringliteral"> <flag>wxALIGN_CENTRE|wxALL</flag></span></div>
<div class="line"><span class="stringliteral"> <border>5</border></span></div>
<div class="line"><span class="stringliteral"> <object class="wxCheckBox" name="my_checkbox"></span></div>
<div class="line"><span class="stringliteral"> <label>Enable this text control:</label></span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"> <object class="sizeritem"></span></div>
<div class="line"><span class="stringliteral"> <flag>wxALIGN_CENTRE|wxALL</flag></span></div>
<div class="line"><span class="stringliteral"> <border>5</border></span></div>
<div class="line"><span class="stringliteral"> <object class="wxTextCtrl" name="my_textctrl"></span></div>
<div class="line"><span class="stringliteral"> <size>80,-1</size></span></div>
<div class="line"><span class="stringliteral"> <value></value></span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"> ...</span></div>
<div class="line"><span class="stringliteral"> </object></span></div>
<div class="line"><span class="stringliteral"></object></span></div>
</div><!-- fragment --><p>The sizer classes that can be used are listed below, together with their class-specific properties. All classes support the following properties:</p>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>minsize </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_size">Size</a> </td><td>Minimal size that this sizer will have, see <a class="el" href="classwx_sizer.html#a97bbbf3ee6e55c321d7bb72b4c1b7d79" title="Call this to give the sizer a minimal size.">wxSizer::SetMinSize()</a> (default: no min size). </td></tr>
</table>
<h2><a class="anchor" id="overview_xrcformat_wxboxsizer"></a>
wxBoxSizer</h2>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>orient </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Sizer orientation, "wxHORIZONTAL" or "wxVERTICAL" (default: wxHORIZONTAL). </td></tr>
</table>
<h2><a class="anchor" id="overview_xrcformat_wxstaticsboxizer"></a>
wxStaticBoxSizer</h2>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>orient </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Sizer orientation, "wxHORIZONTAL" or "wxVERTICAL" (default: wxHORIZONTAL). </td></tr>
<tr>
<td>label </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_text">Text</a> </td><td>Label to be used for the static box around the sizer (default: empty). </td></tr>
</table>
<h2><a class="anchor" id="overview_xrcformat_wxgridsizer"></a>
wxGridSizer</h2>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>rows </td><td>unsigned integer </td><td>Number of rows in the grid (default: 0 - determine automatically). </td></tr>
<tr>
<td>cols </td><td>unsigned integer </td><td>Number of columns in the grid (default: 0 - determine automatically). </td></tr>
<tr>
<td>vgap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Vertical gap between children (default: 0). </td></tr>
<tr>
<td>hgap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Horizontal gap between children (default: 0). </td></tr>
</table>
<h2><a class="anchor" id="overview_xrcformat_wxflexgridsizer"></a>
wxFlexGridSizer</h2>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>rows </td><td>unsigned integer </td><td>Number of rows in the grid (default: 0 - determine automatically). </td></tr>
<tr>
<td>cols </td><td>unsigned integer </td><td>Number of columns in the grid (default: 0 - determine automatically). </td></tr>
<tr>
<td>vgap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Vertical gap between children (default: 0). </td></tr>
<tr>
<td>hgap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Horizontal gap between children (default: 0). </td></tr>
<tr>
<td>flexibledirection </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Flexible direction, <code>wxVERTICAL</code>, <code>wxHORIZONTAL</code> or <code>wxBOTH</code> (default). This property is only available since wxWidgets 2.9.5. </td></tr>
<tr>
<td>nonflexiblegrowmode </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Grow mode in the non-flexible direction, <code>wxFLEX_GROWMODE_NONE</code>, <code>wxFLEX_GROWMODE_SPECIFIED</code> (default) or <code>wxFLEX_GROWMODE_ALL</code>. This property is only available since wxWidgets 2.9.5. </td></tr>
<tr>
<td>growablerows </td><td>comma-separated integers list </td><td>Comma-separated list of indexes of rows that are growable (none by default). Since wxWidgets 2.9.5 optional proportion can be appended to each number after a colon (<code></code>:). </td></tr>
<tr>
<td>growablecols </td><td>comma-separated integers list </td><td>Comma-separated list of indexes of columns that are growable (none by default). Since wxWidgets 2.9.5 optional proportion can be appended to each number after a colon (<code></code>:). </td></tr>
</table>
<h2><a class="anchor" id="overview_xrcformat_wxgridbagsizer"></a>
wxGridBagSizer</h2>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>vgap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Vertical gap between children (default: 0). </td></tr>
<tr>
<td>hgap </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_dimension">Dimension</a> </td><td>Horizontal gap between children (default: 0). </td></tr>
<tr>
<td>flexibledirection </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Flexible direction, <code>wxVERTICAL</code>, <code>wxHORIZONTAL</code>, <code>wxBOTH</code> (default: <code>wxBOTH</code>). </td></tr>
<tr>
<td>nonflexiblegrowmode </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Grow mode in the non-flexible direction, <code>wxFLEX_GROWMODE_NONE</code>, <code>wxFLEX_GROWMODE_SPECIFIED</code>, <code>wxFLEX_GROWMODE_ALL</code> (default: <code>wxFLEX_GROWMODE_SPECIFIED</code>). </td></tr>
<tr>
<td>growablerows </td><td>comma-separated integers list </td><td>Comma-separated list of indexes of rows that are growable, optionally the proportion can be appended after each number separated by a <code></code>: (default: none). </td></tr>
<tr>
<td>growablecols </td><td>comma-separated integers list </td><td>Comma-separated list of indexes of columns that are growable, optionally the proportion can be appended after each number separated by a <code></code>: (default: none). </td></tr>
</table>
<h2><a class="anchor" id="overview_xrcformat_wxwrapsizer"></a>
wxWrapSizer</h2>
<table class="doctable" border="1" cellspacing="0" cellpadding="3">
<tr>
<th>property </th><th>type </th><th>description </th></tr>
<tr>
<td>orient </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td>Sizer orientation, "wxHORIZONTAL" or "wxVERTICAL" (default: wxHORIZONTAL). </td></tr>
<tr>
<td>flag </td><td><a class="el" href="overview_xrcformat.html#overview_xrcformat_type_style">Style</a> </td><td><a class="el" href="classwx_wrap_sizer.html" title="A wrap sizer lays out its items in a single line, like a box sizer – as long as there is space availa...">wxWrapSizer</a> flags (default: 0). </td></tr>
</table>
<h2><a class="anchor" id="overview_xrcformat_wxstddialogbuttonsizer"></a>
wxStdDialogButtonSizer</h2>
<p>Unlike other sizers, <a class="el" href="classwx_std_dialog_button_sizer.html" title="This class creates button layouts which conform to the standard button spacing and ordering defined b...">wxStdDialogButtonSizer</a> has neither <code>sizeritem</code> nor <code>spacer</code> children. Instead, it has one or more children of the <code>button</code> pseudo-class. <code>button</code> objects have no properties and they must always have exactly one child of the <code><a class="el" href="classwx_button.html" title="A button is a control that contains a text string, and is one of the most common elements of a GUI...">wxButton</a></code> class or a class derived from <a class="el" href="classwx_button.html" title="A button is a control that contains a text string, and is one of the most common elements of a GUI...">wxButton</a>.</p>
<p>Example: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxStdDialogButtonSizer"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"button"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxButton"</span> name=<span class="stringliteral">"wxID_OK"</span>></div>
<div class="line"> <label>OK</label></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"button"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxButton"</span> name=<span class="stringliteral">"wxID_CANCEL"</span>></div>
<div class="line"> <label>Cancel</label></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"> </<span class="keywordtype">object</span>></div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><h1><a class="anchor" id="overview_xrcformat_other_objects"></a>
Other Objects</h1>
<p>In addition to describing UI elements, XRC files can contain non-windows objects such as bitmaps or icons. This is a concession to Windows developers used to storing them in Win32 resources.</p>
<p>Note that unlike Win32 resources, bitmaps included in XRC files are <em>not</em> embedded in the XRC file itself. XRC file only contains a reference to another file with bitmap data.</p>
<h2><a class="anchor" id="overview_xrcformat_bitmap"></a>
wxBitmap</h2>
<p>Bitmaps are stored in <code><object></code> element with class set to <code><a class="el" href="classwx_bitmap.html" title="This class encapsulates the concept of a platform-dependent bitmap, either monochrome or colour or co...">wxBitmap</a></code>. Such bitmaps can then be loaded using <a class="el" href="classwx_xml_resource.html#a1afb7dad6af9fe2230184d755b4abc47" title="Loads a bitmap resource from a file.">wxXmlResource::LoadBitmap()</a>. The content of the element is exactly same as in the case of <a class="el" href="overview_xrcformat.html#overview_xrcformat_type_bitmap">bitmap properties</a>, except that toplevel <code><object></code> is used.</p>
<p>For example, instead of: </p>
<div class="fragment"><div class="line"><bitmap>mybmp.png</bitmap></div>
<div class="line"><bitmap stock_id=<span class="stringliteral">"wxART_NEW"</span>/></div>
</div><!-- fragment --><p> toplevel <a class="el" href="classwx_bitmap.html" title="This class encapsulates the concept of a platform-dependent bitmap, either monochrome or colour or co...">wxBitmap</a> resources would look like: </p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxBitmap"</span> name=<span class="stringliteral">"my_bitmap"</span>>mybmp.png</<span class="keywordtype">object</span>></div>
<div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxBitmap"</span> name=<span class="stringliteral">"my_new_bitmap"</span> stock_id=<span class="stringliteral">"wxART_NEW"</span>/></div>
</div><!-- fragment --><h2><a class="anchor" id="overview_xrcformat_icon"></a>
wxIcon</h2>
<p><a class="el" href="classwx_icon.html" title="An icon is a small rectangular bitmap usually used for denoting a minimized application.">wxIcon</a> resources are identical to <a class="el" href="overview_xrcformat.html#overview_xrcformat_bitmap">wxBitmap ones</a>, except that the class is <code><a class="el" href="classwx_icon.html" title="An icon is a small rectangular bitmap usually used for denoting a minimized application.">wxIcon</a></code>.</p>
<h1><a class="anchor" id="overview_xrcformat_platform"></a>
Platform Specific Content</h1>
<p>It is possible to conditionally process parts of XRC files on some platforms only and ignore them on other platforms. <em>Any</em> element in XRC file, be it toplevel or arbitrarily nested one, can have the <code>platform</code> attribute. When used, <code>platform</code> contains |-separated list of platforms that this element should be processed on. It is filtered out and ignored on any other platforms.</p>
<p>Possible elemental values are: </p>
<table class="doclist" border="1" cellspacing="0">
<tr>
<td><span class="itemdef"> <code>win</code> </span> </td><td>Windows </td></tr>
<tr>
<td><span class="itemdef"> <code>mac</code> </span> </td><td>Mac OS X (or Mac Classic in wxWidgets version supporting it) </td></tr>
<tr>
<td><span class="itemdef"> <code>unix</code> </span> </td><td>Any Unix platform <em>except</em> OS X </td></tr>
<tr>
<td><span class="itemdef"> <code>os2</code> </span> </td><td>OS/2 </td></tr>
</table>
<p>Examples: </p>
<div class="fragment"><div class="line"><label platform=<span class="stringliteral">"win"</span>>Windows</label></div>
<div class="line"><label platform=<span class="stringliteral">"unix"</span>>Unix</label></div>
<div class="line"><label platform=<span class="stringliteral">"mac"</span>>Mac OS X</label></div>
<div class="line"><help platform=<span class="stringliteral">"mac|unix"</span>>Not a Windows machine</help></div>
</div><!-- fragment --><h1><a class="anchor" id="overview_xrcformat_idranges"></a>
ID Ranges</h1>
<p>Usually you won't care what value the XRCID macro returns for the ID of an object. Sometimes though it is convenient to have a range of IDs that are guaranteed to be consecutive. An example of this would be connecting a group of similar controls to the same event handler.</p>
<p>The following XRC fragment 'declares' an ID range called <em>foo</em> and another called <em>bar</em>; each with some items.</p>
<div class="fragment"><div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxButton"</span> name=<span class="stringliteral">"foo[start]"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxButton"</span> name=<span class="stringliteral">"foo[end]"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxButton"</span> name=<span class="stringliteral">"foo[2]"</span>></div>
<div class="line"> ...</div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxButton"</span> name=<span class="stringliteral">"bar[0]"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxButton"</span> name=<span class="stringliteral">"bar[2]"</span>></div>
<div class="line"> <<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"wxButton"</span> name=<span class="stringliteral">"bar[1]"</span>></div>
<div class="line"> ...</div>
<div class="line"><ids-range name=<span class="stringliteral">"foo"</span> /></div>
<div class="line"><ids-range name=<span class="stringliteral">"bar"</span> size=<span class="stringliteral">"30"</span> start=<span class="stringliteral">"10000"</span> /></div>
</div><!-- fragment --><p>For the range foo, no <em>size</em> or <em>start</em> parameters were given, so the size will be calculated from the number of range items, and IDs allocated by <a class="el" href="classwx_window.html#a8175da594e6045635a1d1cfe775cdddb" title="Create a new ID or range of IDs that are not currently in use.">wxWindow::NewControlId</a> (so they'll be negative). Range bar asked for a size of 30, so this will be its minimum size: should it have more items, the range will automatically expand to fit them. It specified a start ID of 10000, so XRCID("bar[0]") will be 10000, XRCID("bar[1]") 10001 etc. Note that if you choose to supply a start value it must be positive, and it's your responsibility to avoid clashes.</p>
<p>For every ID range, the first item can be referenced either as <em>rangename</em>[0] or <em>rangename</em>[start]. Similarly <em>rangename</em>[end] is the last item. Using [start] and [end] is more descriptive in e.g. a Bind() event range or a <em>for</em> loop, and they don't have to be altered whenever the number of items changes.</p>
<p>Whether a range has positive or negative IDs, [start] is always a smaller number than [end]; so code like this works as expected:</p>
<div class="fragment"><div class="line"><span class="keywordflow">for</span> (<span class="keywordtype">int</span> n=XRCID(<span class="stringliteral">"foo[start]"</span>); n <= XRCID(<span class="stringliteral">"foo[end]"</span>); ++n)</div>
<div class="line"> ...</div>
</div><!-- fragment --><p>ID ranges can be seen in action in the <em>objref</em> dialog section of the <a class="el" href="page_samples.html#page_samples_xrc">XRC Sample</a>.</p>
<dl class="section note"><dt>Note</dt><dd><ul>
<li>All the items in an ID range must be contained in the same XRC file. </li>
<li>You can't use an ID range in a situation where static initialisation occurs; in particular, they won't work as expected in an event table. This is because the event table's IDs are set to their integer values before the XRC file is loaded, and aren't subsequently altered when the XRCID value changes.</li>
</ul>
</dd></dl>
<dl class="section since"><dt>Since</dt><dd>2.9.2</dd></dl>
<h1><a class="anchor" id="overview_xrcformat_extending"></a>
Extending the XRC Format</h1>
<p>The XRC format is designed to be extensible and allows specifying and loading custom controls. The three available mechanisms are described in the rest of this section in the order of increasing complexity.</p>
<h2><a class="anchor" id="overview_xrcformat_extending_subclass"></a>
Subclassing</h2>
<p>The simplest way to add custom controls is to set the <code>subclass</code> attribute of <code><object></code> element:</p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> name=<span class="stringliteral">"my_value"</span> <span class="keyword">class</span>=<span class="stringliteral">"wxTextCtrl"</span> subclass=<span class="stringliteral">"MyTextCtrl"</span>></div>
<div class="line"> <style><a class="code" href="textctrl_8h.html#af988f6550f22c211df70544355aed667">wxTE_MULTILINE</a></style></div>
<div class="line"> ...etc., setup <a class="code" href="classwx_text_ctrl.html" title="A text control allows text to be displayed and edited.">wxTextCtrl</a> as usual...</div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><p>In that case, <a class="el" href="classwx_xml_resource.html" title="This is the main class for interacting with the XML-based resource system.">wxXmlResource</a> will create an instance of the specified subclass (<code>MyTextCtrl</code> in the example above) instead of the class (<code><a class="el" href="classwx_text_ctrl.html" title="A text control allows text to be displayed and edited.">wxTextCtrl</a></code> above) when loading the resource. However, the rest of the object's loading (calling its Create() method, setting its properties, loading any children etc.) will proceed in <em>exactly</em> the same way as it would without <code>subclass</code> attribute. In other words, this approach is only sufficient when the custom class is just a small modification (e.g. overridden methods or customized events handling) of an already supported classes.</p>
<p>The subclass must satisfy a number of requirements:</p>
<ol type="1">
<li>It must be derived from the class specified in <code>class</code> attribute.</li>
<li>It must be visible in wxWidget's pseudo-RTTI mechanism, i.e. there must be a DECLARE_DYNAMIC_CLASS() entry for it.</li>
<li>It must support two-phase creation. In particular, this means that it has to have default constructor.</li>
<li>It cannot provide custom Create() method and must be constructible using base <code>class'</code> Create() method (this is because XRC will call Create() of <code>class</code>, not <code>subclass</code>). In other words, <em>creation</em> of the control must not be customized.</li>
</ol>
<h2><a class="anchor" id="overview_xrcformat_extending_unknown"></a>
Unknown Objects</h2>
<p>A more flexible solution is to put a <em>placeholder</em> in the XRC file and replace it with custom control after the resource is loaded. This is done by using the <code>unknown</code> pseudo-class:</p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> <span class="keyword">class</span>=<span class="stringliteral">"unknown"</span> name=<span class="stringliteral">"my_placeholder"</span>/></div>
</div><!-- fragment --><p>The placeholder is inserted as dummy <a class="el" href="classwx_panel.html" title="A panel is a window on which controls are placed.">wxPanel</a> that will hold custom control in it. At runtime, after the resource is loaded and a window created from it (using e.g. <a class="el" href="classwx_xml_resource.html#aa9f2603cb55bfb2c696972be9875e229" title="Loads a dialog.">wxXmlResource::LoadDialog()</a>), use code must call <a class="el" href="classwx_xml_resource.html#ab550cd29efdc7afdf72fd0a1990d0074" title="Attaches an unknown control to the given panel/window/dialog.">wxXmlResource::AttachUnknownControl()</a> to insert the desired control into placeholder container.</p>
<p>This method makes it possible to insert controls that are not known to XRC at all, but it's also impossible to configure the control in XRC description in any way. The only properties that can be specified are the <a class="el" href="overview_xrcformat.html#overview_xrcformat_std_props">standard window properties</a>.</p>
<dl class="section note"><dt>Note</dt><dd><code>unknown</code> class cannot be combined with <code>subclass</code> attribute, they are mutually exclusive.</dd></dl>
<h2><a class="anchor" id="overview_xrcformat_extending_custom"></a>
Adding Custom Classes</h2>
<p>Finally, XRC allows adding completely new classes in addition to the ones listed in this document. A class for which <a class="el" href="classwx_xml_resource_handler.html" title="wxSizerXmlHandler is a class for resource handlers capable of creating a wxSizer object from an XML n...">wxXmlResourceHandler</a> is implemented can be used as first-class object in XRC simply by passing class name as the value of <code>class</code> attribute:</p>
<div class="fragment"><div class="line"><<span class="keywordtype">object</span> name=<span class="stringliteral">"my_ctrl"</span> <span class="keyword">class</span>=<span class="stringliteral">"MyWidget"</span>></div>
<div class="line"> <my_prop>foo</my_prop></div>
<div class="line"> ...etc., whatever MyWidget handler accepts...</div>
<div class="line"></<span class="keywordtype">object</span>></div>
</div><!-- fragment --><p>The only requirements on the class are that</p>
<ol type="1">
<li>the class must derive from <a class="el" href="classwx_object.html" title="This is the root class of many of the wxWidgets classes.">wxObject</a></li>
<li>it must support wxWidget's pseudo-RTTI mechanism</li>
</ol>
<p>Child elements of <code><object></code> are handled by the custom handler and there are no limitations on them imposed by XRC format.</p>
<p>This is the only mechanism that works for toplevel objects – custom controls are accessible using the type-unsafe <a class="el" href="classwx_xml_resource.html#a92fb76bed2c93c283c940c0a02e0a543" title="Load an object from the resource specifying both the resource name and the class name.">wxXmlResource::LoadObject()</a> method.</p>
<h1><a class="anchor" id="overview_xrcformat_packed"></a>
Packed XRC Files</h1>
<p>In addition to plain XRC files, <a class="el" href="classwx_xml_resource.html" title="This is the main class for interacting with the XML-based resource system.">wxXmlResource</a> supports (if <a class="el" href="classwx_file_system.html" title="This class provides an interface for opening files on different file systems.">wxFileSystem</a> support is compiled in) compressed XRC resources. Compressed resources have either .zip or .xrs extension and are simply ZIP files that contain arbitrary number of XRC files and their dependencies (bitmaps, icons etc.).</p>
<h1><a class="anchor" id="overview_xrcformat_oldversions"></a>
Older Format Versions</h1>
<p>This section describes differences in older revisions of XRC format (i.e. files with older values of <code>version</code> attribute of <code><resource></code>).</p>
<h2><a class="anchor" id="overview_xrcformat_pre_v2530"></a>
Versions Before 2.5.3.0</h2>
<p>Version 2.5.3.0 introduced C-like handling of "\\" in text. In older versions, "\n", "\t" and "\r" escape sequences were replaced with respective characters in the same matter it's done in C, but "\\" was left intact instead of being replaced with single "\", as one would expect. Starting with 2.5.3.0, all of them are handled in C-like manner.</p>
<h2><a class="anchor" id="overview_xrcformat_pre_v2301"></a>
Versions Before 2.3.0.1</h2>
<p>Prior to version 2.3.0.1, "$" was used for accelerators instead of "_" or "&amp;". For example, </p>
<div class="fragment"><div class="line"><label>$File</label></div>
</div><!-- fragment --><p> was used in place of current version's </p>
<div class="fragment"><div class="line"><label>_File</label></div>
</div><!-- fragment --><p> (or "&amp;File"). </p>
</div></div><!-- contents -->
<address class="footer">
<small>
Generated on Thu Nov 27 2014 13:46:42 for wxWidgets by <a href="http://www.doxygen.org/index.html" target="_new">Doxygen</a> 1.8.2
</small>
</address>
<script src="wxwidgets.js" type="text/javascript"></script>
</div><!-- #page_container -->
</body>
</html>
|