ui-layout-winforms-controls.xsd 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
  3. targetNamespace="ui-layout-winforms-controls"
  4. xmlns:tns="ui-layout-winforms-controls"
  5. xmlns:basic="ui-layout-basic-controls"
  6. elementFormDefault="qualified"
  7. version="1.2">
  8. <!-- Import basic controls -->
  9. <xs:import namespace="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. <xs:anyAttribute processContents="lax"/>
  14. </xs:complexType>
  15. <!-- WinForms Control Content Group -->
  16. <xs:group name="WinFormsControlContentGroup">
  17. <xs:choice>
  18. <!-- Include all basic controls -->
  19. <xs:group ref="basic:BasicControlContentGroup"/>
  20. <!-- WinForms-Specific Controls -->
  21. <xs:element name="RichTextBox" type="tns:WinFormsControlInstanceType"/>
  22. <xs:element name="MaskedTextBox" type="tns:WinFormsControlInstanceType"/>
  23. <xs:element name="CheckedListBox" type="tns:WinFormsControlInstanceType"/>
  24. <xs:element name="GroupBox" type="tns:WinFormsControlInstanceType"/>
  25. <xs:element name="SplitContainer" type="tns:WinFormsControlInstanceType"/>
  26. <xs:element name="TableLayoutPanel" type="tns:WinFormsControlInstanceType"/>
  27. <xs:element name="FlowLayoutPanel" type="tns:WinFormsControlInstanceType"/>
  28. <xs:element name="DataGridView" type="tns:WinFormsControlInstanceType"/>
  29. <xs:element name="ProgressBar" type="tns:WinFormsControlInstanceType"/>
  30. <xs:element name="StatusStrip" type="tns:WinFormsControlInstanceType"/>
  31. <xs:element name="MenuStrip" type="tns:WinFormsControlInstanceType"/>
  32. <xs:element name="ToolStrip" type="tns:WinFormsControlInstanceType"/>
  33. <xs:element name="ContextMenuStrip" type="tns:WinFormsControlInstanceType"/>
  34. <xs:element name="NumericUpDown" type="tns:WinFormsControlInstanceType"/>
  35. <xs:element name="DateTimePicker" type="tns:WinFormsControlInstanceType"/>
  36. <xs:element name="MonthCalendar" type="tns:WinFormsControlInstanceType"/>
  37. <xs:element name="TrackBar" type="tns:WinFormsControlInstanceType"/>
  38. <xs:element name="HScrollBar" type="tns:WinFormsControlInstanceType"/>
  39. <xs:element name="VScrollBar" type="tns:WinFormsControlInstanceType"/>
  40. <xs:element name="PictureBox" type="tns:WinFormsControlInstanceType"/>
  41. <xs:element name="Timer" type="tns:WinFormsControlInstanceType"/>
  42. <xs:element name="OpenFileDialog" type="tns:WinFormsControlInstanceType"/>
  43. <xs:element name="SaveFileDialog" type="tns:WinFormsControlInstanceType"/>
  44. <xs:element name="FolderBrowserDialog" type="tns:WinFormsControlInstanceType"/>
  45. <xs:element name="ColorDialog" type="tns:WinFormsControlInstanceType"/>
  46. <xs:element name="FontDialog" type="tns:WinFormsControlInstanceType"/>
  47. <xs:element name="PrintDialog" type="tns:WinFormsControlInstanceType"/>
  48. <xs:element name="PrintPreviewDialog" type="tns:WinFormsControlInstanceType"/>
  49. <xs:element name="WebBrowser" type="tns:WinFormsControlInstanceType"/>
  50. <xs:element name="NotifyIcon" type="tns:WinFormsControlInstanceType"/>
  51. <xs:element name="ErrorProvider" type="tns:WinFormsControlInstanceType"/>
  52. <xs:element name="ToolTip" type="tns:WinFormsControlInstanceType"/>
  53. <xs:element name="HelpProvider" type="tns:WinFormsControlInstanceType"/>
  54. <xs:element name="LinkLabel" type="tns:WinFormsControlInstanceType"/>
  55. <xs:element name="TabPage" type="tns:WinFormsControlInstanceType"/>
  56. <!-- WinForms ToolStrip Items -->
  57. <xs:element name="ToolStripMenuItem" type="tns:WinFormsControlInstanceType"/>
  58. <xs:element name="ToolStripButton" type="tns:WinFormsControlInstanceType"/>
  59. <xs:element name="ToolStripLabel" type="tns:WinFormsControlInstanceType"/>
  60. <xs:element name="ToolStripSeparator" type="tns:WinFormsControlInstanceType"/>
  61. <xs:element name="ToolStripComboBox" type="tns:WinFormsControlInstanceType"/>
  62. <xs:element name="ToolStripTextBox" type="tns:WinFormsControlInstanceType"/>
  63. <xs:element name="ToolStripStatusLabel" type="tns:WinFormsControlInstanceType"/>
  64. <xs:element name="ToolStripProgressBar" type="tns:WinFormsControlInstanceType"/>
  65. <xs:element name="ToolStripDropDownButton" type="tns:WinFormsControlInstanceType"/>
  66. <xs:element name="ToolStripSplitButton" type="tns:WinFormsControlInstanceType"/>
  67. <!-- WinForms-specific supporting elements -->
  68. <xs:element name="tabpages" type="tns:TabPagesType"/>
  69. <xs:element name="panels" type="tns:PanelsType"/>
  70. <xs:element name="table-layout" type="tns:TableLayoutType"/>
  71. </xs:choice>
  72. </xs:group>
  73. <!-- WinForms-specific supporting types -->
  74. <xs:complexType name="TabPagesType">
  75. <xs:sequence>
  76. <xs:element name="tabpage" maxOccurs="unbounded">
  77. <xs:complexType>
  78. <xs:attribute name="name" type="xs:string" use="required"/>
  79. <xs:attribute name="text" type="xs:string" use="required"/>
  80. <xs:attribute name="tooltip" type="xs:string"/>
  81. <xs:attribute name="imageindex" type="xs:int" default="-1"/>
  82. </xs:complexType>
  83. </xs:element>
  84. </xs:sequence>
  85. </xs:complexType>
  86. <xs:complexType name="PanelsType">
  87. <xs:sequence>
  88. <xs:element name="panel" maxOccurs="2">
  89. <xs:complexType>
  90. <xs:attribute name="name" type="xs:string" use="required"/>
  91. </xs:complexType>
  92. </xs:element>
  93. </xs:sequence>
  94. </xs:complexType>
  95. <xs:complexType name="TableLayoutType">
  96. <xs:sequence>
  97. <xs:element name="columns" type="tns:TableColumnsType"/>
  98. <xs:element name="rows" type="tns:TableRowsType"/>
  99. <xs:element name="cells" type="tns:CellsType"/>
  100. </xs:sequence>
  101. </xs:complexType>
  102. <xs:complexType name="TableColumnsType">
  103. <xs:sequence>
  104. <xs:element name="column" maxOccurs="unbounded">
  105. <xs:complexType>
  106. <xs:attribute name="sizetype" type="xs:string" use="required"/>
  107. <xs:attribute name="size" type="xs:string" use="required"/>
  108. </xs:complexType>
  109. </xs:element>
  110. </xs:sequence>
  111. </xs:complexType>
  112. <xs:complexType name="TableRowsType">
  113. <xs:sequence>
  114. <xs:element name="row" maxOccurs="unbounded">
  115. <xs:complexType>
  116. <xs:attribute name="sizetype" type="xs:string" use="required"/>
  117. <xs:attribute name="size" type="xs:string" use="required"/>
  118. </xs:complexType>
  119. </xs:element>
  120. </xs:sequence>
  121. </xs:complexType>
  122. <xs:complexType name="CellsType">
  123. <xs:sequence>
  124. <xs:element name="cell" maxOccurs="unbounded">
  125. <xs:complexType>
  126. <xs:attribute name="column" type="xs:int" use="required"/>
  127. <xs:attribute name="row" type="xs:int" use="required"/>
  128. <xs:attribute name="columnspan" type="xs:int" default="1"/>
  129. <xs:attribute name="rowspan" type="xs:int" default="1"/>
  130. </xs:complexType>
  131. </xs:element>
  132. </xs:sequence>
  133. </xs:complexType>
  134. </xs:schema>