ui-layout-winforms-controls.xsd 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
  3. targetNamespace="http://quadarax.com/ui-layout-winforms-controls"
  4. xmlns:tns="http://quadarax.com/ui-layout-winforms-controls"
  5. xmlns:basic="http://quadarax.com/ui-layout-basic-controls"
  6. elementFormDefault="qualified"
  7. version="1.3">
  8. <!-- Import basic controls -->
  9. <xs:import namespace="http://quadarax.com/ui-layout-basic-controls" schemaLocation="ui-layout-basic-controls.xsd"/>
  10. <!-- WinForms Control Instance Type -->
  11. <xs:complexType name="WinFormsControlInstanceType" mixed="true">
  12. <xs:group ref="tns:WinFormsControlContentGroup" minOccurs="0" maxOccurs="unbounded"/>
  13. <!-- ENHANCEMENT: v1.3 WinForms-specific attributes -->
  14. <xs:attribute name="schema-version" type="xs:string" default="1.3"/>
  15. <xs:attribute name="net-framework-version" type="xs:string" default="4.8"/>
  16. <xs:attribute name="net-version" type="xs:string" default="6.0"/>
  17. <xs:attribute name="visual-styles" type="xs:boolean" default="true"/>
  18. <xs:attribute name="dpi-awareness" type="tns:DpiAwarenessEnum" default="system"/>
  19. <xs:attribute name="theme-support" type="xs:boolean" default="false"/>
  20. <xs:anyAttribute processContents="lax"/>
  21. </xs:complexType>
  22. <!-- ENHANCEMENT: DPI Awareness Enumeration -->
  23. <xs:simpleType name="DpiAwarenessEnum">
  24. <xs:restriction base="xs:string">
  25. <xs:enumeration value="unaware"/>
  26. <xs:enumeration value="system"/>
  27. <xs:enumeration value="per-monitor"/>
  28. <xs:enumeration value="per-monitor-v2"/>
  29. </xs:restriction>
  30. </xs:simpleType>
  31. <!-- WinForms Control Content Group -->
  32. <xs:group name="WinFormsControlContentGroup">
  33. <xs:choice>
  34. <!-- Include all basic controls -->
  35. <xs:group ref="basic:BasicControlContentGroup"/>
  36. <!-- WinForms-Specific Controls -->
  37. <xs:element name="RichTextBox" type="tns:WinFormsControlInstanceType"/>
  38. <xs:element name="MaskedTextBox" type="tns:WinFormsControlInstanceType"/>
  39. <xs:element name="CheckedListBox" type="tns:WinFormsControlInstanceType"/>
  40. <xs:element name="GroupBox" type="tns:WinFormsControlInstanceType"/>
  41. <xs:element name="SplitContainer" type="tns:WinFormsControlInstanceType"/>
  42. <xs:element name="TableLayoutPanel" type="tns:WinFormsControlInstanceType"/>
  43. <xs:element name="FlowLayoutPanel" type="tns:WinFormsControlInstanceType"/>
  44. <xs:element name="DataGridView" type="tns:WinFormsControlInstanceType"/>
  45. <xs:element name="ProgressBar" type="tns:WinFormsControlInstanceType"/>
  46. <xs:element name="StatusStrip" type="tns:WinFormsControlInstanceType"/>
  47. <xs:element name="MenuStrip" type="tns:WinFormsControlInstanceType"/>
  48. <xs:element name="ToolStrip" type="tns:WinFormsControlInstanceType"/>
  49. <xs:element name="ContextMenuStrip" type="tns:WinFormsControlInstanceType"/>
  50. <xs:element name="NumericUpDown" type="tns:WinFormsControlInstanceType"/>
  51. <xs:element name="DateTimePicker" type="tns:WinFormsControlInstanceType"/>
  52. <xs:element name="MonthCalendar" type="tns:WinFormsControlInstanceType"/>
  53. <xs:element name="TrackBar" type="tns:WinFormsControlInstanceType"/>
  54. <xs:element name="HScrollBar" type="tns:WinFormsControlInstanceType"/>
  55. <xs:element name="VScrollBar" type="tns:WinFormsControlInstanceType"/>
  56. <xs:element name="PictureBox" type="tns:WinFormsControlInstanceType"/>
  57. <xs:element name="Timer" type="tns:WinFormsControlInstanceType"/>
  58. <xs:element name="OpenFileDialog" type="tns:WinFormsControlInstanceType"/>
  59. <xs:element name="SaveFileDialog" type="tns:WinFormsControlInstanceType"/>
  60. <xs:element name="FolderBrowserDialog" type="tns:WinFormsControlInstanceType"/>
  61. <xs:element name="ColorDialog" type="tns:WinFormsControlInstanceType"/>
  62. <xs:element name="FontDialog" type="tns:WinFormsControlInstanceType"/>
  63. <xs:element name="PrintDialog" type="tns:WinFormsControlInstanceType"/>
  64. <xs:element name="PrintPreviewDialog" type="tns:WinFormsControlInstanceType"/>
  65. <xs:element name="WebBrowser" type="tns:WinFormsControlInstanceType"/>
  66. <xs:element name="NotifyIcon" type="tns:WinFormsControlInstanceType"/>
  67. <xs:element name="ErrorProvider" type="tns:WinFormsControlInstanceType"/>
  68. <xs:element name="ToolTip" type="tns:WinFormsControlInstanceType"/>
  69. <xs:element name="HelpProvider" type="tns:WinFormsControlInstanceType"/>
  70. <xs:element name="LinkLabel" type="tns:WinFormsControlInstanceType"/>
  71. <xs:element name="TabPage" type="tns:WinFormsControlInstanceType"/>
  72. <!-- ENHANCEMENT: v1.3 new WinForms controls -->
  73. <xs:element name="PropertyGrid" type="tns:WinFormsControlInstanceType"/>
  74. <xs:element name="ImageList" type="tns:WinFormsControlInstanceType"/>
  75. <xs:element name="BindingSource" type="tns:WinFormsControlInstanceType"/>
  76. <xs:element name="BindingNavigator" type="tns:WinFormsControlInstanceType"/>
  77. <xs:element name="WebView2" type="tns:WinFormsControlInstanceType"/>
  78. <xs:element name="Chart" type="tns:WinFormsControlInstanceType"/>
  79. <xs:element name="CrystalReportViewer" type="tns:WinFormsControlInstanceType"/>
  80. <xs:element name="PrintDocument" type="tns:WinFormsControlInstanceType"/>
  81. <xs:element name="PageSetupDialog" type="tns:WinFormsControlInstanceType"/>
  82. <xs:element name="PrintPreviewControl" type="tns:WinFormsControlInstanceType"/>
  83. <xs:element name="DomainUpDown" type="tns:WinFormsControlInstanceType"/>
  84. <xs:element name="Splitter" type="tns:WinFormsControlInstanceType"/>
  85. <xs:element name="Form" type="tns:WinFormsControlInstanceType"/>
  86. <xs:element name="MDIForm" type="tns:WinFormsControlInstanceType"/>
  87. <xs:element name="UserControl" type="tns:WinFormsControlInstanceType"/>
  88. <!-- WinForms ToolStrip Items -->
  89. <xs:element name="ToolStripMenuItem" type="tns:WinFormsControlInstanceType"/>
  90. <xs:element name="ToolStripButton" type="tns:WinFormsControlInstanceType"/>
  91. <xs:element name="ToolStripLabel" type="tns:WinFormsControlInstanceType"/>
  92. <xs:element name="ToolStripSeparator" type="tns:WinFormsControlInstanceType"/>
  93. <xs:element name="ToolStripComboBox" type="tns:WinFormsControlInstanceType"/>
  94. <xs:element name="ToolStripTextBox" type="tns:WinFormsControlInstanceType"/>
  95. <xs:element name="ToolStripStatusLabel" type="tns:WinFormsControlInstanceType"/>
  96. <xs:element name="ToolStripProgressBar" type="tns:WinFormsControlInstanceType"/>
  97. <xs:element name="ToolStripDropDownButton" type="tns:WinFormsControlInstanceType"/>
  98. <xs:element name="ToolStripSplitButton" type="tns:WinFormsControlInstanceType"/>
  99. <!-- ENHANCEMENT: v1.3 new ToolStrip items -->
  100. <xs:element name="ToolStripControlHost" type="tns:WinFormsControlInstanceType"/>
  101. <xs:element name="ToolStripSpring" type="tns:WinFormsControlInstanceType"/>
  102. <xs:element name="ToolStripContainer" type="tns:WinFormsControlInstanceType"/>
  103. <xs:element name="ToolStripPanel" type="tns:WinFormsControlInstanceType"/>
  104. <xs:element name="ToolStripContentPanel" type="tns:WinFormsControlInstanceType"/>
  105. <!-- WinForms-specific supporting elements -->
  106. <xs:element name="tabpages" type="tns:TabPagesType"/>
  107. <xs:element name="panels" type="tns:PanelsType"/>
  108. <xs:element name="table-layout" type="tns:TableLayoutType"/>
  109. <!-- ENHANCEMENT: v1.3 new supporting elements -->
  110. <xs:element name="data-binding" type="tns:WinFormsDataBindingType"/>
  111. <xs:element name="validation" type="tns:WinFormsValidationType"/>
  112. <xs:element name="localization" type="tns:WinFormsLocalizationType"/>
  113. <xs:element name="accessibility" type="tns:WinFormsAccessibilityType"/>
  114. <xs:element name="printing" type="tns:PrintingType"/>
  115. <xs:element name="help-system" type="tns:HelpSystemType"/>
  116. </xs:choice>
  117. </xs:group>
  118. <!-- ENHANCEMENT: WinForms Data Binding Type -->
  119. <xs:complexType name="WinFormsDataBindingType">
  120. <xs:sequence>
  121. <xs:element name="binding" type="tns:WinFormsBindingType" maxOccurs="unbounded"/>
  122. <xs:element name="binding-source" type="tns:BindingSourceType" minOccurs="0" maxOccurs="unbounded"/>
  123. </xs:sequence>
  124. </xs:complexType>
  125. <xs:complexType name="WinFormsBindingType">
  126. <xs:attribute name="property-name" type="xs:string" use="required"/>
  127. <xs:attribute name="data-source" type="xs:string" use="required"/>
  128. <xs:attribute name="data-member" type="xs:string"/>
  129. <xs:attribute name="format-string" type="xs:string"/>
  130. <xs:attribute name="null-value" type="xs:string"/>
  131. <xs:attribute name="data-source-update-mode" type="tns:DataSourceUpdateModeEnum" default="OnValidation"/>
  132. <xs:attribute name="control-update-mode" type="tns:ControlUpdateModeEnum" default="OnPropertyChanged"/>
  133. </xs:complexType>
  134. <xs:complexType name="BindingSourceType">
  135. <xs:attribute name="name" type="xs:string" use="required"/>
  136. <xs:attribute name="data-source" type="xs:string"/>
  137. <xs:attribute name="data-member" type="xs:string"/>
  138. <xs:attribute name="allow-new" type="xs:boolean" default="true"/>
  139. <xs:attribute name="sort" type="xs:string"/>
  140. <xs:attribute name="filter" type="xs:string"/>
  141. </xs:complexType>
  142. <xs:simpleType name="DataSourceUpdateModeEnum">
  143. <xs:restriction base="xs:string">
  144. <xs:enumeration value="OnValidation"/>
  145. <xs:enumeration value="OnPropertyChanged"/>
  146. <xs:enumeration value="Never"/>
  147. </xs:restriction>
  148. </xs:simpleType>
  149. <xs:simpleType name="ControlUpdateModeEnum">
  150. <xs:restriction base="xs:string">
  151. <xs:enumeration value="OnPropertyChanged"/>
  152. <xs:enumeration value="Never"/>
  153. </xs:restriction>
  154. </xs:simpleType>
  155. <!-- ENHANCEMENT: WinForms Validation Type -->
  156. <xs:complexType name="WinFormsValidationType">
  157. <xs:sequence>
  158. <xs:element name="error-provider" type="tns:ErrorProviderType" maxOccurs="unbounded"/>
  159. <xs:element name="validation-rule" type="tns:ValidationRuleType" minOccurs="0" maxOccurs="unbounded"/>
  160. </xs:sequence>
  161. </xs:complexType>
  162. <xs:complexType name="ErrorProviderType">
  163. <xs:attribute name="name" type="xs:string" use="required"/>
  164. <xs:attribute name="control" type="xs:string" use="required"/>
  165. <xs:attribute name="error-message" type="xs:string" use="required"/>
  166. <xs:attribute name="icon-alignment" type="tns:ErrorIconAlignmentEnum" default="MiddleRight"/>
  167. <xs:attribute name="icon-padding" type="xs:int" default="0"/>
  168. <xs:attribute name="blink-style" type="tns:ErrorBlinkStyleEnum" default="BlinkIfDifferentError"/>
  169. <xs:attribute name="blink-rate" type="xs:int" default="250"/>
  170. </xs:complexType>
  171. <xs:complexType name="ValidationRuleType">
  172. <xs:attribute name="control" type="xs:string" use="required"/>
  173. <xs:attribute name="validation-type" type="tns:ValidationTypeEnum" use="required"/>
  174. <xs:attribute name="pattern" type="xs:string"/>
  175. <xs:attribute name="min-value" type="xs:string"/>
  176. <xs:attribute name="max-value" type="xs:string"/>
  177. <xs:attribute name="required" type="xs:boolean" default="false"/>
  178. <xs:attribute name="error-message" type="xs:string"/>
  179. </xs:complexType>
  180. <xs:simpleType name="ErrorIconAlignmentEnum">
  181. <xs:restriction base="xs:string">
  182. <xs:enumeration value="TopLeft"/>
  183. <xs:enumeration value="TopRight"/>
  184. <xs:enumeration value="MiddleLeft"/>
  185. <xs:enumeration value="MiddleRight"/>
  186. <xs:enumeration value="BottomLeft"/>
  187. <xs:enumeration value="BottomRight"/>
  188. </xs:restriction>
  189. </xs:simpleType>
  190. <xs:simpleType name="ErrorBlinkStyleEnum">
  191. <xs:restriction base="xs:string">
  192. <xs:enumeration value="BlinkIfDifferentError"/>
  193. <xs:enumeration value="AlwaysBlink"/>
  194. <xs:enumeration value="NeverBlink"/>
  195. </xs:restriction>
  196. </xs:simpleType>
  197. <xs:simpleType name="ValidationTypeEnum">
  198. <xs:restriction base="xs:string">
  199. <xs:enumeration value="Required"/>
  200. <xs:enumeration value="RegularExpression"/>
  201. <xs:enumeration value="Range"/>
  202. <xs:enumeration value="StringLength"/>
  203. <xs:enumeration value="Email"/>
  204. <xs:enumeration value="Phone"/>
  205. <xs:enumeration value="Url"/>
  206. <xs:enumeration value="CreditCard"/>
  207. <xs:enumeration value="Custom"/>
  208. </xs:restriction>
  209. </xs:simpleType>
  210. <!-- ENHANCEMENT: WinForms Localization Type -->
  211. <xs:complexType name="WinFormsLocalizationType">
  212. <xs:sequence>
  213. <xs:element name="localizable-property" type="tns:LocalizablePropertyType" maxOccurs="unbounded"/>
  214. </xs:sequence>
  215. <xs:attribute name="culture" type="xs:string" default="en-US"/>
  216. <xs:attribute name="right-to-left" type="tns:RightToLeftEnum" default="No"/>
  217. </xs:complexType>
  218. <xs:complexType name="LocalizablePropertyType">
  219. <xs:attribute name="control" type="xs:string" use="required"/>
  220. <xs:attribute name="property" type="xs:string" use="required"/>
  221. <xs:attribute name="resource-key" type="xs:string" use="required"/>
  222. <xs:attribute name="resource-file" type="xs:string"/>
  223. </xs:complexType>
  224. <xs:simpleType name="RightToLeftEnum">
  225. <xs:restriction base="xs:string">
  226. <xs:enumeration value="No"/>
  227. <xs:enumeration value="Yes"/>
  228. <xs:enumeration value="Inherit"/>
  229. </xs:restriction>
  230. </xs:simpleType>
  231. <!-- ENHANCEMENT: WinForms Accessibility Type -->
  232. <xs:complexType name="WinFormsAccessibilityType">
  233. <xs:sequence>
  234. <xs:element name="accessibility-info" type="tns:AccessibilityInfoType" maxOccurs="unbounded"/>
  235. </xs:sequence>
  236. </xs:complexType>
  237. <xs:complexType name="AccessibilityInfoType">
  238. <xs:attribute name="control" type="xs:string" use="required"/>
  239. <xs:attribute name="accessible-name" type="xs:string"/>
  240. <xs:attribute name="accessible-description" type="xs:string"/>
  241. <xs:attribute name="accessible-role" type="tns:AccessibleRoleEnum" default="Default"/>
  242. <xs:attribute name="accessible-default-action-description" type="xs:string"/>
  243. <xs:attribute name="tab-index" type="xs:int"/>
  244. <xs:attribute name="tab-stop" type="xs:boolean" default="true"/>
  245. </xs:complexType>
  246. <xs:simpleType name="AccessibleRoleEnum">
  247. <xs:restriction base="xs:string">
  248. <xs:enumeration value="Default"/>
  249. <xs:enumeration value="None"/>
  250. <xs:enumeration value="Button"/>
  251. <xs:enumeration value="CheckBox"/>
  252. <xs:enumeration value="ComboBox"/>
  253. <xs:enumeration value="Link"/>
  254. <xs:enumeration value="List"/>
  255. <xs:enumeration value="ListItem"/>
  256. <xs:enumeration value="MenuBar"/>
  257. <xs:enumeration value="MenuItem"/>
  258. <xs:enumeration value="MenuPopup"/>
  259. <xs:enumeration value="ProgressBar"/>
  260. <xs:enumeration value="RadioButton"/>
  261. <xs:enumeration value="ScrollBar"/>
  262. <xs:enumeration value="Slider"/>
  263. <xs:enumeration value="StaticText"/>
  264. <xs:enumeration value="Text"/>
  265. <xs:enumeration value="ToolBar"/>
  266. <xs:enumeration value="ToolTip"/>
  267. <xs:enumeration value="Tree"/>
  268. <xs:enumeration value="TreeItem"/>
  269. <xs:enumeration value="Window"/>
  270. </xs:restriction>
  271. </xs:simpleType>
  272. <!-- ENHANCEMENT: Printing Type -->
  273. <xs:complexType name="PrintingType">
  274. <xs:sequence>
  275. <xs:element name="print-document" type="tns:PrintDocumentType" minOccurs="0"/>
  276. <xs:element name="print-preview" type="tns:PrintPreviewType" minOccurs="0"/>
  277. <xs:element name="page-setup" type="tns:PageSetupType" minOccurs="0"/>
  278. </xs:sequence>
  279. </xs:complexType>
  280. <xs:complexType name="PrintDocumentType">
  281. <xs:attribute name="document-name" type="xs:string" default="Document"/>
  282. <xs:attribute name="default-page-settings" type="xs:string"/>
  283. <xs:attribute name="printer-settings" type="xs:string"/>
  284. <xs:attribute name="origin-at-margins" type="xs:boolean" default="false"/>
  285. </xs:complexType>
  286. <xs:complexType name="PrintPreviewType">
  287. <xs:attribute name="auto-zoom" type="xs:boolean" default="true"/>
  288. <xs:attribute name="zoom" type="xs:decimal" default="0.3"/>
  289. <xs:attribute name="columns" default="1">
  290. <xs:simpleType>
  291. <xs:restriction base="xs:int">
  292. <xs:minInclusive value="1"/>
  293. <xs:maxInclusive value="10"/>
  294. </xs:restriction>
  295. </xs:simpleType>
  296. </xs:attribute>
  297. <xs:attribute name="rows" default="1">
  298. <xs:simpleType>
  299. <xs:restriction base="xs:int">
  300. <xs:minInclusive value="1"/>
  301. <xs:maxInclusive value="10"/>
  302. </xs:restriction>
  303. </xs:simpleType>
  304. </xs:attribute>
  305. <xs:attribute name="start-page" type="xs:int" default="0"/>
  306. </xs:complexType>
  307. <xs:complexType name="PageSetupType">
  308. <xs:attribute name="margins" type="xs:string" default="100,100,100,100"/>
  309. <xs:attribute name="paper-size" type="tns:PaperSizeEnum" default="Letter"/>
  310. <xs:attribute name="landscape" type="xs:boolean" default="false"/>
  311. <xs:attribute name="color" type="xs:boolean" default="false"/>
  312. </xs:complexType>
  313. <xs:simpleType name="PaperSizeEnum">
  314. <xs:restriction base="xs:string">
  315. <xs:enumeration value="Letter"/>
  316. <xs:enumeration value="Legal"/>
  317. <xs:enumeration value="A4"/>
  318. <xs:enumeration value="A3"/>
  319. <xs:enumeration value="A5"/>
  320. <xs:enumeration value="Tabloid"/>
  321. <xs:enumeration value="Custom"/>
  322. </xs:restriction>
  323. </xs:simpleType>
  324. <!-- ENHANCEMENT: Help System Type -->
  325. <xs:complexType name="HelpSystemType">
  326. <xs:sequence>
  327. <xs:element name="help-provider" type="tns:HelpProviderType" minOccurs="0"/>
  328. <xs:element name="context-help" type="tns:ContextHelpType" minOccurs="0" maxOccurs="unbounded"/>
  329. </xs:sequence>
  330. </xs:complexType>
  331. <xs:complexType name="HelpProviderType">
  332. <xs:attribute name="help-namespace" type="xs:string"/>
  333. <xs:attribute name="help-navigator" type="tns:HelpNavigatorEnum" default="Topic"/>
  334. </xs:complexType>
  335. <xs:complexType name="ContextHelpType">
  336. <xs:attribute name="control" type="xs:string" use="required"/>
  337. <xs:attribute name="help-string" type="xs:string"/>
  338. <xs:attribute name="help-keyword" type="xs:string"/>
  339. <xs:attribute name="help-navigator" type="tns:HelpNavigatorEnum" default="Topic"/>
  340. <xs:attribute name="show-help" type="xs:boolean" default="true"/>
  341. </xs:complexType>
  342. <xs:simpleType name="HelpNavigatorEnum">
  343. <xs:restriction base="xs:string">
  344. <xs:enumeration value="Topic"/>
  345. <xs:enumeration value="TableOfContents"/>
  346. <xs:enumeration value="Index"/>
  347. <xs:enumeration value="Find"/>
  348. <xs:enumeration value="AssociateIndex"/>
  349. <xs:enumeration value="KeywordIndex"/>
  350. <xs:enumeration value="TopicId"/>
  351. </xs:restriction>
  352. </xs:simpleType>
  353. <!-- WinForms-specific supporting types -->
  354. <xs:complexType name="TabPagesType">
  355. <xs:sequence>
  356. <xs:element name="tabpage" maxOccurs="unbounded">
  357. <xs:complexType>
  358. <xs:attribute name="name" type="xs:string" use="required"/>
  359. <xs:attribute name="text" type="xs:string" use="required"/>
  360. <xs:attribute name="tooltip" type="xs:string"/>
  361. <xs:attribute name="imageindex" type="xs:int" default="-1"/>
  362. <!-- ENHANCEMENT: v1.3 additions -->
  363. <xs:attribute name="image-key" type="xs:string"/>
  364. <xs:attribute name="use-visual-style-back-color" type="xs:boolean" default="false"/>
  365. <xs:attribute name="back-color" type="xs:string"/>
  366. <xs:attribute name="fore-color" type="xs:string"/>
  367. <xs:attribute name="font" type="xs:string"/>
  368. <xs:attribute name="padding" type="xs:string" default="3,3,3,3"/>
  369. <xs:attribute name="auto-scroll" type="xs:boolean" default="false"/>
  370. </xs:complexType>
  371. </xs:element>
  372. </xs:sequence>
  373. </xs:complexType>
  374. <xs:complexType name="PanelsType">
  375. <xs:sequence>
  376. <xs:element name="panel" maxOccurs="2">
  377. <xs:complexType>
  378. <xs:attribute name="name" type="xs:string" use="required"/>
  379. <!-- ENHANCEMENT: v1.3 additions -->
  380. <xs:attribute name="fixed-panel" type="tns:FixedPanelEnum" default="None"/>
  381. <xs:attribute name="splitter-distance" type="xs:int"/>
  382. <xs:attribute name="min-size" type="xs:int" default="25"/>
  383. <xs:attribute name="collapsed" type="xs:boolean" default="false"/>
  384. </xs:complexType>
  385. </xs:element>
  386. </xs:sequence>
  387. </xs:complexType>
  388. <xs:simpleType name="FixedPanelEnum">
  389. <xs:restriction base="xs:string">
  390. <xs:enumeration value="None"/>
  391. <xs:enumeration value="Panel1"/>
  392. <xs:enumeration value="Panel2"/>
  393. </xs:restriction>
  394. </xs:simpleType>
  395. <xs:complexType name="TableLayoutType">
  396. <xs:sequence>
  397. <xs:element name="columns" type="tns:TableColumnsType"/>
  398. <xs:element name="rows" type="tns:TableRowsType"/>
  399. <xs:element name="cells" type="tns:CellsType"/>
  400. </xs:sequence>
  401. <!-- ENHANCEMENT: v1.3 additions -->
  402. <xs:attribute name="grow-style" type="tns:TableLayoutPanelGrowStyleEnum" default="AddRows"/>
  403. <xs:attribute name="cell-border-style" type="tns:TableLayoutPanelCellBorderStyleEnum" default="None"/>
  404. </xs:complexType>
  405. <xs:simpleType name="TableLayoutPanelGrowStyleEnum">
  406. <xs:restriction base="xs:string">
  407. <xs:enumeration value="FixedSize"/>
  408. <xs:enumeration value="AddRows"/>
  409. <xs:enumeration value="AddColumns"/>
  410. </xs:restriction>
  411. </xs:simpleType>
  412. <xs:simpleType name="TableLayoutPanelCellBorderStyleEnum">
  413. <xs:restriction base="xs:string">
  414. <xs:enumeration value="None"/>
  415. <xs:enumeration value="Single"/>
  416. <xs:enumeration value="Inset"/>
  417. <xs:enumeration value="InsetDouble"/>
  418. <xs:enumeration value="Outset"/>
  419. <xs:enumeration value="OutsetDouble"/>
  420. <xs:enumeration value="OutsetPartial"/>
  421. </xs:restriction>
  422. </xs:simpleType>
  423. <xs:complexType name="TableColumnsType">
  424. <xs:sequence>
  425. <xs:element name="column" maxOccurs="unbounded">
  426. <xs:complexType>
  427. <xs:attribute name="sizetype" type="tns:SizeTypeEnum" use="required"/>
  428. <xs:attribute name="size" type="xs:string" use="required"/>
  429. <!-- ENHANCEMENT: v1.3 additions -->
  430. <xs:attribute name="min-size" type="xs:int" default="5"/>
  431. <xs:attribute name="max-size" type="xs:int" default="0"/>
  432. </xs:complexType>
  433. </xs:element>
  434. </xs:sequence>
  435. </xs:complexType>
  436. <xs:complexType name="TableRowsType">
  437. <xs:sequence>
  438. <xs:element name="row" maxOccurs="unbounded">
  439. <xs:complexType>
  440. <xs:attribute name="sizetype" type="tns:SizeTypeEnum" use="required"/>
  441. <xs:attribute name="size" type="xs:string" use="required"/>
  442. <!-- ENHANCEMENT: v1.3 additions -->
  443. <xs:attribute name="min-size" type="xs:int" default="5"/>
  444. <xs:attribute name="max-size" type="xs:int" default="0"/>
  445. </xs:complexType>
  446. </xs:element>
  447. </xs:sequence>
  448. </xs:complexType>
  449. <xs:simpleType name="SizeTypeEnum">
  450. <xs:restriction base="xs:string">
  451. <xs:enumeration value="AutoSize"/>
  452. <xs:enumeration value="Absolute"/>
  453. <xs:enumeration value="Percent"/>
  454. </xs:restriction>
  455. </xs:simpleType>
  456. <xs:complexType name="CellsType">
  457. <xs:sequence>
  458. <xs:element name="cell" maxOccurs="unbounded">
  459. <xs:complexType>
  460. <xs:attribute name="column" type="xs:int" use="required"/>
  461. <xs:attribute name="row" type="xs:int" use="required"/>
  462. <xs:attribute name="columnspan" type="xs:int" default="1"/>
  463. <xs:attribute name="rowspan" type="xs:int" default="1"/>
  464. <!-- ENHANCEMENT: v1.3 additions -->
  465. <xs:attribute name="anchor" type="tns:AnchorStylesEnum" default="Top,Left"/>
  466. <xs:attribute name="dock" type="tns:DockStyleEnum" default="None"/>
  467. <xs:attribute name="margin" type="xs:string" default="3,3,3,3"/>
  468. </xs:complexType>
  469. </xs:element>
  470. </xs:sequence>
  471. </xs:complexType>
  472. <xs:simpleType name="AnchorStylesEnum">
  473. <xs:restriction base="xs:string">
  474. <xs:enumeration value="Top"/>
  475. <xs:enumeration value="Bottom"/>
  476. <xs:enumeration value="Left"/>
  477. <xs:enumeration value="Right"/>
  478. <xs:enumeration value="Top,Left"/>
  479. <xs:enumeration value="Top,Right"/>
  480. <xs:enumeration value="Bottom,Left"/>
  481. <xs:enumeration value="Bottom,Right"/>
  482. <xs:enumeration value="Top,Bottom"/>
  483. <xs:enumeration value="Left,Right"/>
  484. <xs:enumeration value="Top,Bottom,Left,Right"/>
  485. <xs:enumeration value="None"/>
  486. </xs:restriction>
  487. </xs:simpleType>
  488. <xs:simpleType name="DockStyleEnum">
  489. <xs:restriction base="xs:string">
  490. <xs:enumeration value="None"/>
  491. <xs:enumeration value="Top"/>
  492. <xs:enumeration value="Bottom"/>
  493. <xs:enumeration value="Left"/>
  494. <xs:enumeration value="Right"/>
  495. <xs:enumeration value="Fill"/>
  496. </xs:restriction>
  497. </xs:simpleType>
  498. </xs:schema>