qtruby4 2.1.0.b-mswin32 → 2.1.0-mswin32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (450) hide show
  1. data/bin/Qt3Support4.dll +0 -0
  2. data/bin/QtAssistantClient4.dll +0 -0
  3. data/bin/QtCLucene4.dll +0 -0
  4. data/bin/QtCore4.dll +0 -0
  5. data/bin/QtDesigner4.dll +0 -0
  6. data/bin/QtDesignerComponents4.dll +0 -0
  7. data/bin/QtGui4.dll +0 -0
  8. data/bin/QtHelp4.dll +0 -0
  9. data/bin/QtMultimedia4.dll +0 -0
  10. data/bin/QtNetwork4.dll +0 -0
  11. data/bin/QtOpenGL4.dll +0 -0
  12. data/bin/QtScript4.dll +0 -0
  13. data/bin/QtScriptTools4.dll +0 -0
  14. data/bin/QtSql4.dll +0 -0
  15. data/bin/QtSvg4.dll +0 -0
  16. data/bin/QtTest4.dll +0 -0
  17. data/bin/QtWebKit4.dll +0 -0
  18. data/bin/QtXml4.dll +0 -0
  19. data/bin/QtXmlPatterns4.dll +0 -0
  20. data/bin/accessible/qtaccessiblecompatwidgets4.dll +0 -0
  21. data/bin/accessible/qtaccessiblewidgets4.dll +0 -0
  22. data/bin/assistant.exe +0 -0
  23. data/bin/assistant_adp.exe +0 -0
  24. data/bin/codecs/qcncodecs4.dll +0 -0
  25. data/bin/codecs/qjpcodecs4.dll +0 -0
  26. data/bin/codecs/qkrcodecs4.dll +0 -0
  27. data/bin/codecs/qtwcodecs4.dll +0 -0
  28. data/bin/designer.exe +0 -0
  29. data/bin/designer/arthurplugin.dll +0 -0
  30. data/bin/designer/containerextension.dll +0 -0
  31. data/bin/designer/customwidgetplugin.dll +0 -0
  32. data/bin/designer/phononwidgets.dll +0 -0
  33. data/bin/designer/qt3supportwidgets.dll +0 -0
  34. data/bin/designer/qwebview.dll +0 -0
  35. data/bin/designer/taskmenuextension.dll +0 -0
  36. data/bin/designer/worldtimeclockplugin.dll +0 -0
  37. data/bin/graphicssystems/qglgraphicssystem4.dll +0 -0
  38. data/bin/graphicssystems/qtracegraphicssystem4.dll +0 -0
  39. data/bin/iconengines/qsvgicon4.dll +0 -0
  40. data/bin/imageformats/qgif4.dll +0 -0
  41. data/bin/imageformats/qico4.dll +0 -0
  42. data/bin/imageformats/qjpeg4.dll +0 -0
  43. data/bin/imageformats/qmng4.dll +0 -0
  44. data/bin/imageformats/qsvg4.dll +0 -0
  45. data/bin/imageformats/qtiff4.dll +0 -0
  46. data/bin/linguist.exe +0 -0
  47. data/bin/phonon4.dll +0 -0
  48. data/bin/phonon_backend/phonon_ds94.dll +0 -0
  49. data/bin/qtruby4shared.dll +0 -0
  50. data/bin/rbqtapi +152 -0
  51. data/bin/rbrcc.exe +0 -0
  52. data/bin/rbuic4.exe +0 -0
  53. data/bin/smokeqt.dll +0 -0
  54. data/bin/smokeqtcore.dll +0 -0
  55. data/bin/smokeqtgui.dll +0 -0
  56. data/bin/smokeqtmultimedia.dll +0 -0
  57. data/bin/smokeqtnetwork.dll +0 -0
  58. data/bin/smokeqtopengl.dll +0 -0
  59. data/bin/smokeqtscript.dll +0 -0
  60. data/bin/smokeqtsql.dll +0 -0
  61. data/bin/smokeqtsvg.dll +0 -0
  62. data/bin/smokeqttest.dll +0 -0
  63. data/bin/smokeqtuitools.dll +0 -0
  64. data/bin/smokeqtwebkit.dll +0 -0
  65. data/bin/smokeqtxml.dll +0 -0
  66. data/bin/smokeqtxmlpatterns.dll +0 -0
  67. data/bin/sqldrivers/qsqlite4.dll +0 -0
  68. data/bin/sqldrivers/qsqlodbc4.dll +0 -0
  69. data/bin/sqldrivers/qsqlpsql4.dll +0 -0
  70. data/examples/base/kicons.rb +54 -0
  71. data/examples/base/rui.rb +21 -0
  72. data/examples/designer/calculatorbuilder/calculatorbuilder.qrc +5 -0
  73. data/examples/designer/calculatorbuilder/calculatorform.rb +60 -0
  74. data/examples/designer/calculatorbuilder/calculatorform.ui +299 -0
  75. data/examples/designer/calculatorbuilder/main.rb +33 -0
  76. data/examples/designer/calculatorbuilder/makefile +2 -0
  77. data/examples/designer/calculatorform/calculatorform.rb +46 -0
  78. data/examples/designer/calculatorform/calculatorform.ui +277 -0
  79. data/examples/designer/calculatorform/main.rb +32 -0
  80. data/examples/designer/calculatorform/makefile +3 -0
  81. data/examples/desktop/screenshot/main.rb +32 -0
  82. data/examples/desktop/screenshot/screenshot.rb +156 -0
  83. data/examples/desktop/systray/images/bad.svg +64 -0
  84. data/examples/desktop/systray/images/heart.svg +55 -0
  85. data/examples/desktop/systray/images/trash.svg +58 -0
  86. data/examples/desktop/systray/main.rb +41 -0
  87. data/examples/desktop/systray/makefile +2 -0
  88. data/examples/desktop/systray/systray.qrc +7 -0
  89. data/examples/desktop/systray/window.rb +223 -0
  90. data/examples/dialogs/complexwizard/complexwizard.rb +140 -0
  91. data/examples/dialogs/complexwizard/licensewizard.rb +294 -0
  92. data/examples/dialogs/complexwizard/main.rb +31 -0
  93. data/examples/dialogs/configdialog/configdialog.rb +109 -0
  94. data/examples/dialogs/configdialog/images/config.png +0 -0
  95. data/examples/dialogs/configdialog/images/query.png +0 -0
  96. data/examples/dialogs/configdialog/images/update.png +0 -0
  97. data/examples/dialogs/configdialog/main.rb +31 -0
  98. data/examples/dialogs/configdialog/pages.rb +140 -0
  99. data/examples/dialogs/extension/finddialog.rb +89 -0
  100. data/examples/dialogs/extension/main.rb +31 -0
  101. data/examples/dialogs/findfiles/main.rb +32 -0
  102. data/examples/dialogs/findfiles/window.rb +177 -0
  103. data/examples/dialogs/simplewizard/classwizard.rb +374 -0
  104. data/examples/dialogs/simplewizard/main.rb +31 -0
  105. data/examples/dialogs/simplewizard/simplewizard.rb +110 -0
  106. data/examples/dialogs/standarddialogs/dialog.rb +340 -0
  107. data/examples/dialogs/standarddialogs/main.rb +31 -0
  108. data/examples/dialogs/tabdialog/main.rb +38 -0
  109. data/examples/dialogs/tabdialog/tabdialog.rb +178 -0
  110. data/examples/draganddrop/draggableicons/dragwidget.rb +125 -0
  111. data/examples/draganddrop/draggableicons/images/boat.png +0 -0
  112. data/examples/draganddrop/draggableicons/images/car.png +0 -0
  113. data/examples/draganddrop/draggableicons/images/house.png +0 -0
  114. data/examples/draganddrop/draggableicons/main.rb +41 -0
  115. data/examples/draganddrop/draggabletext/draglabel.rb +51 -0
  116. data/examples/draganddrop/draggabletext/dragwidget.rb +94 -0
  117. data/examples/draganddrop/draggabletext/main.rb +33 -0
  118. data/examples/draganddrop/draggabletext/words.txt +41 -0
  119. data/examples/draganddrop/dropsite/dropsitewidget.rb +98 -0
  120. data/examples/draganddrop/dropsite/dropsitewindow.rb +114 -0
  121. data/examples/draganddrop/dropsite/main.rb +33 -0
  122. data/examples/draganddrop/fridgemagnets/draglabel.rb +78 -0
  123. data/examples/draganddrop/fridgemagnets/dragwidget.rb +130 -0
  124. data/examples/draganddrop/fridgemagnets/main.rb +33 -0
  125. data/examples/draganddrop/fridgemagnets/words.txt +48 -0
  126. data/examples/draganddrop/puzzle/example.jpg +0 -0
  127. data/examples/draganddrop/puzzle/main.rb +33 -0
  128. data/examples/draganddrop/puzzle/mainwindow.rb +136 -0
  129. data/examples/draganddrop/puzzle/pieceslist.rb +95 -0
  130. data/examples/draganddrop/puzzle/puzzlewidget.rb +190 -0
  131. data/examples/graphicsview/collidingmice/images/cheese.jpg +0 -0
  132. data/examples/graphicsview/collidingmice/main.rb +53 -0
  133. data/examples/graphicsview/collidingmice/makefile +2 -0
  134. data/examples/graphicsview/collidingmice/mice.qrc +5 -0
  135. data/examples/graphicsview/collidingmice/mouse.rb +176 -0
  136. data/examples/graphicsview/dragdroprobot/coloritem.rb +86 -0
  137. data/examples/graphicsview/dragdroprobot/images/head.png +0 -0
  138. data/examples/graphicsview/dragdroprobot/main.rb +57 -0
  139. data/examples/graphicsview/dragdroprobot/makefile +2 -0
  140. data/examples/graphicsview/dragdroprobot/robot.qrc +5 -0
  141. data/examples/graphicsview/dragdroprobot/robot.rb +246 -0
  142. data/examples/itemviews/chart/chart.qrc +5 -0
  143. data/examples/itemviews/chart/main.rb +33 -0
  144. data/examples/itemviews/chart/mainwindow.rb +151 -0
  145. data/examples/itemviews/chart/makefile +2 -0
  146. data/examples/itemviews/chart/mydata.cht +8 -0
  147. data/examples/itemviews/chart/pieview.rb +516 -0
  148. data/examples/itemviews/chart/qtdata.cht +14 -0
  149. data/examples/itemviews/dirview/main.rb +39 -0
  150. data/examples/itemviews/pixelator/imagemodel.rb +51 -0
  151. data/examples/itemviews/pixelator/images.qrc +5 -0
  152. data/examples/itemviews/pixelator/images/qt.png +0 -0
  153. data/examples/itemviews/pixelator/main.rb +34 -0
  154. data/examples/itemviews/pixelator/mainwindow.rb +218 -0
  155. data/examples/itemviews/pixelator/makefile +3 -0
  156. data/examples/itemviews/pixelator/pixeldelegate.rb +67 -0
  157. data/examples/itemviews/puzzle/example.jpg +0 -0
  158. data/examples/itemviews/puzzle/main.rb +36 -0
  159. data/examples/itemviews/puzzle/mainwindow.rb +143 -0
  160. data/examples/itemviews/puzzle/piecesmodel.rb +174 -0
  161. data/examples/itemviews/puzzle/puzzlewidget.rb +192 -0
  162. data/examples/itemviews/simpledommodel/domitem.rb +62 -0
  163. data/examples/itemviews/simpledommodel/dommodel.rb +139 -0
  164. data/examples/itemviews/simpledommodel/main.rb +33 -0
  165. data/examples/itemviews/simpledommodel/mainwindow.rb +66 -0
  166. data/examples/itemviews/simpletreemodel/default.txt +40 -0
  167. data/examples/itemviews/simpletreemodel/main.rb +41 -0
  168. data/examples/itemviews/simpletreemodel/makefile +2 -0
  169. data/examples/itemviews/simpletreemodel/simpletreemodel.qrc +5 -0
  170. data/examples/itemviews/simpletreemodel/treeitem.rb +67 -0
  171. data/examples/itemviews/simpletreemodel/treemodel.rb +164 -0
  172. data/examples/itemviews/sortingmodel/default.txt +40 -0
  173. data/examples/itemviews/sortingmodel/main.rb +53 -0
  174. data/examples/itemviews/sortingmodel/treeitem.rb +73 -0
  175. data/examples/itemviews/sortingmodel/treemodel.rb +166 -0
  176. data/examples/itemviews/spinboxdelegate/main.rb +47 -0
  177. data/examples/itemviews/spinboxdelegate/spinboxdelegate.rb +62 -0
  178. data/examples/killerfilter/killerfilter.rb +55 -0
  179. data/examples/layouts/basiclayouts/dialog.rb +110 -0
  180. data/examples/layouts/basiclayouts/main.rb +31 -0
  181. data/examples/layouts/borderlayout/borderlayout.rb +190 -0
  182. data/examples/layouts/borderlayout/main.rb +32 -0
  183. data/examples/layouts/borderlayout/window.rb +52 -0
  184. data/examples/layouts/flowlayouts/flowlayout.rb +108 -0
  185. data/examples/layouts/flowlayouts/main.rb +32 -0
  186. data/examples/layouts/flowlayouts/window.rb +43 -0
  187. data/examples/mainwindows/application/images/copy.png +0 -0
  188. data/examples/mainwindows/application/images/cut.png +0 -0
  189. data/examples/mainwindows/application/images/new.png +0 -0
  190. data/examples/mainwindows/application/images/open.png +0 -0
  191. data/examples/mainwindows/application/images/paste.png +0 -0
  192. data/examples/mainwindows/application/images/save.png +0 -0
  193. data/examples/mainwindows/application/main.rb +32 -0
  194. data/examples/mainwindows/application/mainwindow.rb +285 -0
  195. data/examples/mainwindows/dockwidgets/images/new.png +0 -0
  196. data/examples/mainwindows/dockwidgets/images/print.png +0 -0
  197. data/examples/mainwindows/dockwidgets/images/save.png +0 -0
  198. data/examples/mainwindows/dockwidgets/images/undo.png +0 -0
  199. data/examples/mainwindows/dockwidgets/main.rb +32 -0
  200. data/examples/mainwindows/dockwidgets/mainwindow.rb +302 -0
  201. data/examples/mainwindows/mdi/images/copy.png +0 -0
  202. data/examples/mainwindows/mdi/images/cut.png +0 -0
  203. data/examples/mainwindows/mdi/images/new.png +0 -0
  204. data/examples/mainwindows/mdi/images/open.png +0 -0
  205. data/examples/mainwindows/mdi/images/paste.png +0 -0
  206. data/examples/mainwindows/mdi/images/save.png +0 -0
  207. data/examples/mainwindows/mdi/main.rb +32 -0
  208. data/examples/mainwindows/mdi/mainwindow.rb +363 -0
  209. data/examples/mainwindows/mdi/mdichild.rb +152 -0
  210. data/examples/mainwindows/menus/main.rb +32 -0
  211. data/examples/mainwindows/menus/mainwindow.rb +327 -0
  212. data/examples/mainwindows/recentfiles/main.rb +32 -0
  213. data/examples/mainwindows/recentfiles/mainwindow.rb +258 -0
  214. data/examples/mainwindows/sdi/images/copy.png +0 -0
  215. data/examples/mainwindows/sdi/images/cut.png +0 -0
  216. data/examples/mainwindows/sdi/images/new.png +0 -0
  217. data/examples/mainwindows/sdi/images/open.png +0 -0
  218. data/examples/mainwindows/sdi/images/paste.png +0 -0
  219. data/examples/mainwindows/sdi/images/save.png +0 -0
  220. data/examples/mainwindows/sdi/main.rb +32 -0
  221. data/examples/mainwindows/sdi/mainwindow.rb +335 -0
  222. data/examples/network/broadcastreceiver/main.rb +32 -0
  223. data/examples/network/broadcastreceiver/receiver.rb +64 -0
  224. data/examples/network/broadcastsender/main.rb +32 -0
  225. data/examples/network/broadcastsender/sender.rb +70 -0
  226. data/examples/network/fortuneclient/client.rb +150 -0
  227. data/examples/network/fortuneclient/main.rb +32 -0
  228. data/examples/network/fortuneserver/main.rb +32 -0
  229. data/examples/network/fortuneserver/server.rb +88 -0
  230. data/examples/network/ftp/ftpwindow.rb +254 -0
  231. data/examples/network/ftp/images/cdtoparent.png +0 -0
  232. data/examples/network/ftp/images/dir.png +0 -0
  233. data/examples/network/ftp/images/file.png +0 -0
  234. data/examples/network/ftp/main.rb +32 -0
  235. data/examples/network/http/httpwindow.rb +187 -0
  236. data/examples/network/http/main.rb +32 -0
  237. data/examples/network/loopback/dialog.rb +163 -0
  238. data/examples/network/loopback/main.rb +32 -0
  239. data/examples/opengl/grabber/glwidget.rb +265 -0
  240. data/examples/opengl/grabber/main.rb +32 -0
  241. data/examples/opengl/grabber/mainwindow.rb +189 -0
  242. data/examples/opengl/hellogl/glwidget.rb +226 -0
  243. data/examples/opengl/hellogl/main.rb +32 -0
  244. data/examples/opengl/hellogl/window.rb +66 -0
  245. data/examples/opengl/textures/glwidget.rb +151 -0
  246. data/examples/opengl/textures/images/side1.png +0 -0
  247. data/examples/opengl/textures/images/side2.png +0 -0
  248. data/examples/opengl/textures/images/side3.png +0 -0
  249. data/examples/opengl/textures/images/side4.png +0 -0
  250. data/examples/opengl/textures/images/side5.png +0 -0
  251. data/examples/opengl/textures/images/side6.png +0 -0
  252. data/examples/opengl/textures/main.rb +32 -0
  253. data/examples/opengl/textures/window.rb +77 -0
  254. data/examples/painting/basicdrawing/images/brick.png +0 -0
  255. data/examples/painting/basicdrawing/images/qt-logo.png +0 -0
  256. data/examples/painting/basicdrawing/main.rb +32 -0
  257. data/examples/painting/basicdrawing/renderarea.rb +166 -0
  258. data/examples/painting/basicdrawing/window.rb +215 -0
  259. data/examples/painting/concentriccircles/circlewidget.rb +88 -0
  260. data/examples/painting/concentriccircles/main.rb +32 -0
  261. data/examples/painting/concentriccircles/window.rb +72 -0
  262. data/examples/painting/fontsampler/main.rb +32 -0
  263. data/examples/painting/fontsampler/mainwindow.rb +368 -0
  264. data/examples/painting/fontsampler/mainwindowbase.ui +136 -0
  265. data/examples/painting/fontsampler/makefile +8 -0
  266. data/examples/painting/fontsampler/previewdialog.rb +256 -0
  267. data/examples/painting/fontsampler/previewdialogbase.ui +224 -0
  268. data/examples/painting/fontsampler/previewlabel.rb +43 -0
  269. data/examples/painting/imagecomposition/imagecomposer.rb +152 -0
  270. data/examples/painting/imagecomposition/imagecomposition.qrc +6 -0
  271. data/examples/painting/imagecomposition/images/background.png +0 -0
  272. data/examples/painting/imagecomposition/images/blackrectangle.png +0 -0
  273. data/examples/painting/imagecomposition/images/butterfly.png +0 -0
  274. data/examples/painting/imagecomposition/images/checker.png +0 -0
  275. data/examples/painting/imagecomposition/main.rb +33 -0
  276. data/examples/painting/imagecomposition/makefile +2 -0
  277. data/examples/painting/painterpaths/main.rb +32 -0
  278. data/examples/painting/painterpaths/renderarea.rb +97 -0
  279. data/examples/painting/painterpaths/window.rb +247 -0
  280. data/examples/painting/svgviewer/files/bubbles.svg +212 -0
  281. data/examples/painting/svgviewer/files/cubic.svg +77 -0
  282. data/examples/painting/svgviewer/files/spheres.svg +79 -0
  283. data/examples/painting/svgviewer/main.rb +38 -0
  284. data/examples/painting/svgviewer/mainwindow.rb +99 -0
  285. data/examples/painting/svgviewer/makefile +2 -0
  286. data/examples/painting/svgviewer/svgview.rb +156 -0
  287. data/examples/painting/svgviewer/svgviewer.qrc +6 -0
  288. data/examples/painting/svgviewer/svgwindow.rb +87 -0
  289. data/examples/painting/transformations/main.rb +32 -0
  290. data/examples/painting/transformations/renderarea.rb +127 -0
  291. data/examples/painting/transformations/window.rb +153 -0
  292. data/examples/passivepopup/passivepopup.rb +38 -0
  293. data/examples/qtscribble/scribble.rb +270 -0
  294. data/examples/richtext/calendar/main.rb +33 -0
  295. data/examples/richtext/calendar/mainwindow.rb +173 -0
  296. data/examples/richtext/orderform/detailsdialog.rb +130 -0
  297. data/examples/richtext/orderform/main.rb +34 -0
  298. data/examples/richtext/orderform/mainwindow.rb +194 -0
  299. data/examples/richtext/syntaxhighlighter/examples/example +79 -0
  300. data/examples/richtext/syntaxhighlighter/highlighter.rb +90 -0
  301. data/examples/richtext/syntaxhighlighter/main.rb +34 -0
  302. data/examples/richtext/syntaxhighlighter/mainwindow.rb +105 -0
  303. data/examples/ruboids/Manifest +26 -0
  304. data/examples/ruboids/README +53 -0
  305. data/examples/ruboids/TODO +29 -0
  306. data/examples/ruboids/boids.properties +33 -0
  307. data/examples/ruboids/generateManifest.rb +42 -0
  308. data/examples/ruboids/index.html +147 -0
  309. data/examples/ruboids/release.rb +152 -0
  310. data/examples/ruboids/ruboids/Boid.rb +141 -0
  311. data/examples/ruboids/ruboids/BoidView.rb +159 -0
  312. data/examples/ruboids/ruboids/Camera.rb +24 -0
  313. data/examples/ruboids/ruboids/CameraDialog.rb +218 -0
  314. data/examples/ruboids/ruboids/Canvas.rb +143 -0
  315. data/examples/ruboids/ruboids/Cloud.rb +61 -0
  316. data/examples/ruboids/ruboids/CloudView.rb +54 -0
  317. data/examples/ruboids/ruboids/Flock.rb +47 -0
  318. data/examples/ruboids/ruboids/Graphics.rb +278 -0
  319. data/examples/ruboids/ruboids/Params.rb +87 -0
  320. data/examples/ruboids/ruboids/Point.rb +153 -0
  321. data/examples/ruboids/ruboids/Thing.rb +34 -0
  322. data/examples/ruboids/ruboids/Triangle.rb +21 -0
  323. data/examples/ruboids/ruboids/View.rb +88 -0
  324. data/examples/ruboids/ruboids/World.rb +82 -0
  325. data/examples/ruboids/ruboids/WorldWindow.rb +52 -0
  326. data/examples/ruboids/ruboids/info.rb +12 -0
  327. data/examples/ruboids/ruboids/ruboids.rb +29 -0
  328. data/examples/textedit/textedit.rb +150 -0
  329. data/examples/tutorial/t1/t1.rb +10 -0
  330. data/examples/tutorial/t10/cannon.rb +72 -0
  331. data/examples/tutorial/t10/lcdrange.rb +45 -0
  332. data/examples/tutorial/t10/t10.rb +55 -0
  333. data/examples/tutorial/t11/cannon.rb +124 -0
  334. data/examples/tutorial/t11/lcdrange.rb +45 -0
  335. data/examples/tutorial/t11/t11.rb +65 -0
  336. data/examples/tutorial/t12/cannon.rb +158 -0
  337. data/examples/tutorial/t12/lcdrange.rb +59 -0
  338. data/examples/tutorial/t12/t12.rb +66 -0
  339. data/examples/tutorial/t13/cannon.rb +208 -0
  340. data/examples/tutorial/t13/gamebrd.rb +113 -0
  341. data/examples/tutorial/t13/lcdrange.rb +60 -0
  342. data/examples/tutorial/t13/t13.rb +11 -0
  343. data/examples/tutorial/t14/cannon.rb +263 -0
  344. data/examples/tutorial/t14/gamebrd.rb +123 -0
  345. data/examples/tutorial/t14/lcdrange.rb +63 -0
  346. data/examples/tutorial/t14/t14.rb +11 -0
  347. data/examples/tutorial/t2/t2.rb +16 -0
  348. data/examples/tutorial/t3/t3.rb +18 -0
  349. data/examples/tutorial/t4/t4.rb +25 -0
  350. data/examples/tutorial/t5/t5.rb +37 -0
  351. data/examples/tutorial/t6/t6.rb +52 -0
  352. data/examples/tutorial/t7/lcdrange.rb +32 -0
  353. data/examples/tutorial/t7/t7.rb +42 -0
  354. data/examples/tutorial/t8/cannon.rb +38 -0
  355. data/examples/tutorial/t8/lcdrange.rb +45 -0
  356. data/examples/tutorial/t8/t8.rb +43 -0
  357. data/examples/tutorial/t9/cannon.rb +45 -0
  358. data/examples/tutorial/t9/lcdrange.rb +46 -0
  359. data/examples/tutorial/t9/t9.rb +43 -0
  360. data/examples/widgets/analogclock/analogclock.rb +94 -0
  361. data/examples/widgets/analogclock/main.rb +9 -0
  362. data/examples/widgets/calculator/button.rb +45 -0
  363. data/examples/widgets/calculator/calculator.rb +382 -0
  364. data/examples/widgets/calculator/main.rb +32 -0
  365. data/examples/widgets/charactermap/characterwidget.rb +110 -0
  366. data/examples/widgets/charactermap/main.rb +32 -0
  367. data/examples/widgets/charactermap/mainwindow.rb +118 -0
  368. data/examples/widgets/digitalclock/digitalclock.rb +30 -0
  369. data/examples/widgets/digitalclock/main.rb +9 -0
  370. data/examples/widgets/groupbox/main.rb +32 -0
  371. data/examples/widgets/groupbox/window.rb +134 -0
  372. data/examples/widgets/icons/iconpreviewarea.rb +111 -0
  373. data/examples/widgets/icons/iconsizespinbox.rb +39 -0
  374. data/examples/widgets/icons/imagedelegate.rb +73 -0
  375. data/examples/widgets/icons/images/designer.png +0 -0
  376. data/examples/widgets/icons/images/find_disabled.png +0 -0
  377. data/examples/widgets/icons/images/find_normal.png +0 -0
  378. data/examples/widgets/icons/images/monkey_off_128x128.png +0 -0
  379. data/examples/widgets/icons/images/monkey_off_16x16.png +0 -0
  380. data/examples/widgets/icons/images/monkey_off_32x32.png +0 -0
  381. data/examples/widgets/icons/images/monkey_off_64x64.png +0 -0
  382. data/examples/widgets/icons/images/monkey_on_128x128.png +0 -0
  383. data/examples/widgets/icons/images/monkey_on_16x16.png +0 -0
  384. data/examples/widgets/icons/images/monkey_on_32x32.png +0 -0
  385. data/examples/widgets/icons/images/monkey_on_64x64.png +0 -0
  386. data/examples/widgets/icons/images/qtopia_16x16.png +0 -0
  387. data/examples/widgets/icons/images/qtopia_32x32.png +0 -0
  388. data/examples/widgets/icons/images/qtopia_48x48.png +0 -0
  389. data/examples/widgets/icons/main.rb +32 -0
  390. data/examples/widgets/icons/mainwindow.rb +351 -0
  391. data/examples/widgets/imageviewer/imageviewer.rb +219 -0
  392. data/examples/widgets/imageviewer/main.rb +32 -0
  393. data/examples/widgets/lineedits/main.rb +32 -0
  394. data/examples/widgets/lineedits/window.rb +199 -0
  395. data/examples/widgets/movie/images/open.png +0 -0
  396. data/examples/widgets/movie/images/pause.png +0 -0
  397. data/examples/widgets/movie/images/play.png +0 -0
  398. data/examples/widgets/movie/images/quit.png +0 -0
  399. data/examples/widgets/movie/images/stop.png +0 -0
  400. data/examples/widgets/movie/main.rb +32 -0
  401. data/examples/widgets/movie/movieplayer.rb +201 -0
  402. data/examples/widgets/movie/movies/fire.mng +0 -0
  403. data/examples/widgets/screenshot/main.rb +32 -0
  404. data/examples/widgets/screenshot/screenshot.rb +155 -0
  405. data/examples/widgets/scribble/main.rb +32 -0
  406. data/examples/widgets/scribble/mainwindow.rb +202 -0
  407. data/examples/widgets/scribble/scribblearea.rb +154 -0
  408. data/examples/widgets/sliders/main.rb +32 -0
  409. data/examples/widgets/sliders/slidersgroup.rb +97 -0
  410. data/examples/widgets/sliders/window.rb +124 -0
  411. data/examples/widgets/spinboxes/main.rb +32 -0
  412. data/examples/widgets/spinboxes/window.rb +213 -0
  413. data/examples/widgets/tetrix/main.rb +33 -0
  414. data/examples/widgets/tetrix/tetrixboard.rb +346 -0
  415. data/examples/widgets/tetrix/tetrixpiece.rb +135 -0
  416. data/examples/widgets/tetrix/tetrixwindow.rb +88 -0
  417. data/examples/widgets/tooltips/images/circle.png +0 -0
  418. data/examples/widgets/tooltips/images/square.png +0 -0
  419. data/examples/widgets/tooltips/images/triangle.png +0 -0
  420. data/examples/widgets/tooltips/main.rb +32 -0
  421. data/examples/widgets/tooltips/shapeitem.rb +31 -0
  422. data/examples/widgets/tooltips/sortingbox.rb +222 -0
  423. data/examples/widgets/wiggly/dialog.rb +48 -0
  424. data/examples/widgets/wiggly/main.rb +11 -0
  425. data/examples/widgets/wiggly/wigglywidget.rb +76 -0
  426. data/examples/widgets/windowflags/controllerwindow.rb +195 -0
  427. data/examples/widgets/windowflags/main.rb +32 -0
  428. data/examples/widgets/windowflags/previewwindow.rb +103 -0
  429. data/examples/xml/dombookmarks/frank.xbel +230 -0
  430. data/examples/xml/dombookmarks/jennifer.xbel +93 -0
  431. data/examples/xml/dombookmarks/main.rb +34 -0
  432. data/examples/xml/dombookmarks/mainwindow.rb +129 -0
  433. data/examples/xml/dombookmarks/xbeltree.rb +172 -0
  434. data/examples/xml/saxbookmarks/frank.xbel +230 -0
  435. data/examples/xml/saxbookmarks/jennifer.xbel +93 -0
  436. data/examples/xml/saxbookmarks/main.rb +34 -0
  437. data/examples/xml/saxbookmarks/mainwindow.rb +144 -0
  438. data/examples/xml/saxbookmarks/xbelgenerator.rb +95 -0
  439. data/examples/xml/saxbookmarks/xbelhandler.rb +122 -0
  440. data/lib/Qt/qtruby4.rb +5 -1
  441. data/lib/qtruby4.dll +0 -0
  442. data/lib/qtscript.dll +0 -0
  443. data/lib/qtscript/qtscript.rb +40 -0
  444. data/lib/qttest.dll +0 -0
  445. data/lib/qttest/qttest.rb +166 -0
  446. data/lib/qtuitools.dll +0 -0
  447. data/lib/qtuitools/qtuitools.rb +17 -0
  448. data/lib/qtwebkit.dll +0 -0
  449. data/lib/qtwebkit/qtwebkit.rb +17 -0
  450. metadata +420 -7
@@ -0,0 +1,374 @@
1
+ =begin
2
+ **
3
+ ** Copyright (C) 2004-2005 Trolltech AS. All rights reserved.
4
+ **
5
+ ** This file is part of the example classes of the Qt Toolkit.
6
+ **
7
+ ** This file may be used under the terms of the GNU General Public
8
+ ** License version 2.0 as published by the Free Software Foundation
9
+ ** and appearing in the file LICENSE.GPL included in the packaging of
10
+ ** this file. Please review the following information to ensure GNU
11
+ ** General Public Licensing requirements will be met:
12
+ ** http://www.trolltech.com/products/qt/opensource.html
13
+ **
14
+ ** If you are unsure which license is appropriate for your use, please
15
+ ** review the following information:
16
+ ** http://www.trolltech.com/products/qt/licensing.html or contact the
17
+ ** sales department at sales@trolltech.com.
18
+ **
19
+ ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
20
+ ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
21
+ **
22
+
23
+ ** Translated to QtRuby by Richard Dale
24
+ =end
25
+
26
+ require 'simplewizard.rb'
27
+
28
+ class ClassWizard < SimpleWizard
29
+
30
+ attr_accessor :firstPage, :secondPage, :thirdPage
31
+
32
+ def initialize(parent = nil)
33
+ super(parent)
34
+ setNumPages(3)
35
+ end
36
+
37
+ def createPage(index)
38
+ case index
39
+ when 0:
40
+ @firstPage = FirstPage.new(self)
41
+ return @firstPage
42
+ when 1:
43
+ @secondPage = SecondPage.new(self)
44
+ return @secondPage
45
+ when 2:
46
+ @thirdPage = ThirdPage.new(self)
47
+ return @thirdPage
48
+ end
49
+ return nil
50
+ end
51
+
52
+ def accept()
53
+ className = @firstPage.classNameLineEdit.text
54
+ baseClass = @firstPage.baseClassLineEdit.text
55
+ qobjectMacro = @firstPage.qobjectMacroCheckBox.checked?
56
+ qobjectCtor = @firstPage.qobjectCtorRadioButton.checked?
57
+ qwidgetCtor = @firstPage.qwidgetCtorRadioButton.checked?
58
+ defaultCtor = @firstPage.defaultCtorRadioButton.checked?
59
+ copyCtor = @firstPage.copyCtorCheckBox.checked?
60
+
61
+ comment = @secondPage.commentCheckBox.checked?
62
+ protect = @secondPage.protectCheckBox.checked?
63
+ macroName = @secondPage.macroNameLineEdit.text
64
+ includeBase = @secondPage.includeBaseCheckBox.checked?
65
+ baseInclude = @secondPage.baseIncludeLineEdit.text
66
+
67
+ outputDir = @thirdPage.outputDirLineEdit.text
68
+ header = @thirdPage.headerLineEdit.text
69
+ implementation = @thirdPage.implementationLineEdit.text
70
+
71
+ block = Qt::ByteArray.new
72
+
73
+ if comment
74
+ block += "/*\n"
75
+ block += " " + header + "\n"
76
+ block += "*/\n"
77
+ block += "\n"
78
+ end
79
+ if protect
80
+ block += "#ifndef " + macroName + "\n"
81
+ block += "#define " + macroName + "\n"
82
+ block += "\n"
83
+ end
84
+ if includeBase
85
+ block += "#include " + baseInclude + "\n"
86
+ block += "\n"
87
+ end
88
+
89
+ block += "class " + className
90
+ if !baseClass.empty?
91
+ block += " : public " + baseClass
92
+ end
93
+ block += "\n"
94
+ block += "{\n"
95
+
96
+ # qmake ignore Q_OBJECT
97
+
98
+ if qobjectMacro
99
+ block += " Q_OBJECT\n"
100
+ block += "\n"
101
+ end
102
+ block += "public:\n"
103
+
104
+ if qobjectCtor
105
+ block += " " + className + "(QObject *parent);\n"
106
+ elsif qwidgetCtor
107
+ block += " " + className + "(QWidget *parent);\n"
108
+ elsif defaultCtor
109
+ block += " " + className + "();\n"
110
+ if copyCtor
111
+ block += " " + className + "(const " + className + " &other);\n"
112
+ block += "\n"
113
+ block += " " + className + " &operator=" + "(const " + className +
114
+ " &other);\n"
115
+ end
116
+ end
117
+ block += "};\n"
118
+
119
+ if protect
120
+ block += "\n"
121
+ block += "#endif\n"
122
+ end
123
+
124
+ headerFile = Qt::File.new(outputDir + "/" + header)
125
+ if !headerFile.open(Qt::File::WriteOnly | Qt::File::Text)
126
+ Qt::MessageBox.warning(self, tr("Simple Wizard"),
127
+ tr( "Cannot write file %s:\n%s" %
128
+ [ headerFile.fileName(), headerFile.errorString()] ) )
129
+ return
130
+ end
131
+
132
+ headerFile.write(block)
133
+
134
+ block = Qt::ByteArray.new
135
+
136
+ if comment
137
+ block += "/*\n"
138
+ block += " " + implementation + "\n"
139
+ block += "*/\n"
140
+ block += "\n"
141
+ end
142
+ block += "#include \"" + header + "\"\n"
143
+ block += "\n"
144
+
145
+ if qobjectCtor
146
+ block += className + "::" + className + "(QObject *parent)\n"
147
+ block += " : " + baseClass + "(parent)\n"
148
+ block += "{\n"
149
+ block += "}\n"
150
+ elsif qwidgetCtor
151
+ block += className + "::" + className + "(QWidget *parent)\n"
152
+ block += " : " + baseClass + "(parent)\n"
153
+ block += "{\n"
154
+ block += "}\n"
155
+ elsif defaultCtor
156
+ block += className + "::" + className + "()\n"
157
+ block += "{\n"
158
+ block += " // missing code\n"
159
+ block += "}\n"
160
+
161
+ if copyCtor
162
+ block += "\n"
163
+ block += className + "::" + className + "(const " + className +
164
+ " &other)\n"
165
+ block += "{\n"
166
+ block += " *this = other;\n"
167
+ block += "}\n"
168
+ block += "\n"
169
+ block += className + " &" + className + "::operator=(const " +
170
+ className + " &other)\n"
171
+ block += "{\n"
172
+ if !baseClass.empty?
173
+ block += " " + baseClass + "::operator=(other);\n"
174
+ end
175
+ block += " // missing code\n"
176
+ block += " return *this;\n"
177
+ block += "}\n"
178
+ end
179
+ end
180
+
181
+ implementationFile = Qt::File.new(outputDir + "/" + implementation)
182
+
183
+ if !implementationFile.open(Qt::File::WriteOnly | Qt::File::Text)
184
+ Qt::MessageBox.warning(self, tr("Simple Wizard"),
185
+ tr("Cannot write file %s:\n%s" %
186
+ [ implementationFile.fileName(),
187
+ implementationFile.errorString() ] ) )
188
+ return
189
+ end
190
+
191
+ implementationFile.write(block)
192
+ super
193
+ end
194
+ end
195
+
196
+ class FirstPage < Qt::Widget
197
+
198
+ attr_accessor :classNameLineEdit, :baseClassLineEdit, :headerLineEdit,
199
+ :qobjectMacroCheckBox, :qobjectCtorRadioButton,
200
+ :qwidgetCtorRadioButton, :defaultCtorRadioButton,
201
+ :copyCtorCheckBox
202
+
203
+ slots 'classNameChanged()'
204
+
205
+ def initialize(wizard)
206
+ super(wizard)
207
+ @topLabel = Qt::Label.new(tr("<center><b>Class information</b></center>" +
208
+ "<p>This wizard will generate a skeleton class " +
209
+ "definition and member function definitions."))
210
+ @topLabel.wordWrap = false
211
+
212
+ @classNameLabel = Qt::Label.new(tr("Class &name:"))
213
+ @classNameLineEdit = Qt::LineEdit.new
214
+ @classNameLabel.buddy = @classNameLineEdit
215
+ setFocusProxy(@classNameLineEdit)
216
+
217
+ @baseClassLabel = Qt::Label.new(tr("&Base class:"))
218
+ @baseClassLineEdit = Qt::LineEdit.new
219
+ @baseClassLabel.buddy = @baseClassLineEdit
220
+
221
+ @qobjectMacroCheckBox = Qt::CheckBox.new(tr("&Generate Q_OBJECT macro"))
222
+
223
+ @groupBox = Qt::GroupBox.new(tr("&Constructor"))
224
+
225
+ @qobjectCtorRadioButton = Qt::RadioButton.new(tr("&QObject-style constructor"))
226
+ @qwidgetCtorRadioButton = Qt::RadioButton.new(tr("Q&Widget-style constructor"))
227
+ @defaultCtorRadioButton = Qt::RadioButton.new(tr("&Default constructor"))
228
+ @copyCtorCheckBox = Qt::CheckBox.new(tr("&Also generate copy constructor and " +
229
+ "assignment operator"))
230
+
231
+ @defaultCtorRadioButton.checked = true
232
+
233
+ connect(@classNameLineEdit, SIGNAL('textChanged(const QString &)'),
234
+ self, SLOT('classNameChanged()'))
235
+ connect(@defaultCtorRadioButton, SIGNAL('toggled(bool)'),
236
+ @copyCtorCheckBox, SLOT('setEnabled(bool)'))
237
+
238
+ wizard.buttonEnabled = false
239
+
240
+ @groupBox.layout = Qt::VBoxLayout.new do |g|
241
+ g.addWidget(@qobjectCtorRadioButton)
242
+ g.addWidget(@qwidgetCtorRadioButton)
243
+ g.addWidget(@defaultCtorRadioButton)
244
+ g.addWidget(@copyCtorCheckBox)
245
+ end
246
+
247
+ self.layout = Qt::GridLayout.new do |l|
248
+ l.addWidget(@topLabel, 0, 0, 1, 2)
249
+ l.setRowMinimumHeight(1, 10)
250
+ l.addWidget(@classNameLabel, 2, 0)
251
+ l.addWidget(@classNameLineEdit, 2, 1)
252
+ l.addWidget(@baseClassLabel, 3, 0)
253
+ l.addWidget(@baseClassLineEdit, 3, 1)
254
+ l.addWidget(@qobjectMacroCheckBox, 4, 0, 1, 2)
255
+ l.addWidget(@groupBox, 5, 0, 1, 2)
256
+ l.setRowStretch(6, 1)
257
+ end
258
+ end
259
+
260
+ def classNameChanged()
261
+ wizard = parent()
262
+ wizard.buttonEnabled = !@classNameLineEdit.text.empty?
263
+ end
264
+ end
265
+
266
+ class SecondPage < Qt::Widget
267
+
268
+ attr_accessor :commentCheckBox, :protectCheckBox, :includeBaseCheckBox,
269
+ :macroNameLineEdit, :baseIncludeLineEdit,
270
+ :protectCheckBox, :commentCheckBox, :includeBaseCheckBox
271
+
272
+ def initialize(wizard)
273
+ super(wizard)
274
+ @topLabel = Qt::Label.new(tr("<center><b>Code style options</b></center>"))
275
+
276
+ @commentCheckBox = Qt::CheckBox.new(tr("&Start generated files with a comment"))
277
+ @commentCheckBox.checked = true
278
+ setFocusProxy(@commentCheckBox)
279
+
280
+ @protectCheckBox = Qt::CheckBox.new(tr("&Protect header file against multiple " +
281
+ "inclusions"))
282
+ @protectCheckBox.checked = true
283
+
284
+ @macroNameLabel = Qt::Label.new(tr("&Macro name:"))
285
+ @macroNameLineEdit = Qt::LineEdit.new
286
+ @macroNameLabel.buddy = @macroNameLineEdit
287
+
288
+ @includeBaseCheckBox = Qt::CheckBox.new(tr("&Include base class definition"))
289
+ @baseIncludeLabel = Qt::Label.new(tr("Base class include:"))
290
+ @baseIncludeLineEdit = Qt::LineEdit.new
291
+ @baseIncludeLabel.buddy = @baseIncludeLineEdit
292
+
293
+ className = wizard.firstPage.classNameLineEdit.text()
294
+ @macroNameLineEdit.text = className.upcase + "_H"
295
+
296
+ baseClass = wizard.firstPage.baseClassLineEdit.text()
297
+ if baseClass.empty?
298
+ @includeBaseCheckBox.enabled = false
299
+ @baseIncludeLabel.enabled = false
300
+ @baseIncludeLineEdit.enabled = false
301
+ else
302
+ @includeBaseCheckBox.checked = true
303
+ if Regexp.new("Q[A-Z].*").match(baseClass)
304
+ @baseIncludeLineEdit.text = "<" + baseClass + ">"
305
+ else
306
+ @baseIncludeLineEdit.text = '"' + baseClass.downcase + '.h"'
307
+ end
308
+ end
309
+
310
+ connect(@protectCheckBox, SIGNAL('toggled(bool)'),
311
+ @macroNameLabel, SLOT('setEnabled(bool)'))
312
+ connect(@protectCheckBox, SIGNAL('toggled(bool)'),
313
+ @macroNameLineEdit, SLOT('setEnabled(bool)'))
314
+ connect(@includeBaseCheckBox, SIGNAL('toggled(bool)'),
315
+ @baseIncludeLabel, SLOT('setEnabled(bool)'))
316
+ connect(@includeBaseCheckBox, SIGNAL('toggled(bool)'),
317
+ @baseIncludeLineEdit, SLOT('setEnabled(bool)'))
318
+
319
+ self.layout = Qt::GridLayout.new do |l|
320
+ l.setColumnMinimumWidth(0, 20)
321
+ l.addWidget(@topLabel, 0, 0, 1, 3)
322
+ l.setRowMinimumHeight(1, 10)
323
+ l.addWidget(@commentCheckBox, 2, 0, 1, 3)
324
+ l.addWidget(@protectCheckBox, 3, 0, 1, 3)
325
+ l.addWidget(@macroNameLabel, 4, 1)
326
+ l.addWidget(@macroNameLineEdit, 4, 2)
327
+ l.addWidget(@includeBaseCheckBox, 5, 0, 1, 3)
328
+ l.addWidget(@baseIncludeLabel, 6, 1)
329
+ l.addWidget(@baseIncludeLineEdit, 6, 2)
330
+ l.setRowStretch(7, 1)
331
+ end
332
+ end
333
+ end
334
+
335
+
336
+ class ThirdPage < Qt::Widget
337
+
338
+ attr_accessor :outputDirLineEdit, :headerLineEdit, :implementationLineEdit
339
+
340
+ def initialize(wizard)
341
+ super(wizard)
342
+ @topLabel = Qt::Label.new(tr("<center><b>Output files</b></center>"))
343
+
344
+ @outputDirLabel = Qt::Label.new(tr("&Output directory:"))
345
+ @outputDirLineEdit = Qt::LineEdit.new
346
+ @outputDirLabel.buddy = @outputDirLineEdit
347
+ self.focusProxy = @outputDirLineEdit
348
+
349
+ @headerLabel = Qt::Label.new(tr("&Header file name:"))
350
+ @headerLineEdit = Qt::LineEdit.new
351
+ @headerLabel.buddy = @headerLineEdit
352
+
353
+ @implementationLabel = Qt::Label.new(tr("&Implementation file name:"))
354
+ @implementationLineEdit = Qt::LineEdit.new
355
+ @implementationLabel.buddy = @implementationLineEdit
356
+
357
+ className = wizard.firstPage.classNameLineEdit.text()
358
+ @headerLineEdit.text = className.downcase + ".h"
359
+ @implementationLineEdit.text = className.downcase + ".cpp"
360
+ @outputDirLineEdit.text = Qt::Dir.convertSeparators(Qt::Dir.homePath())
361
+
362
+ self.layout = Qt::GridLayout.new do |l|
363
+ l.addWidget(@topLabel, 0, 0, 1, 2)
364
+ l.setRowMinimumHeight(1, 10)
365
+ l.addWidget(@outputDirLabel, 2, 0)
366
+ l.addWidget(@outputDirLineEdit, 2, 1)
367
+ l.addWidget(@headerLabel, 3, 0)
368
+ l.addWidget(@headerLineEdit, 3, 1)
369
+ l.addWidget(@implementationLabel, 4, 0)
370
+ l.addWidget(@implementationLineEdit, 4, 1)
371
+ l.setRowStretch(5, 1)
372
+ end
373
+ end
374
+ end
@@ -0,0 +1,31 @@
1
+ =begin
2
+ **
3
+ ** Copyright (C) 2004-2005 Trolltech AS. All rights reserved.
4
+ **
5
+ ** This file is part of the example classes of the Qt Toolkit.
6
+ **
7
+ ** This file may be used under the terms of the GNU General Public
8
+ ** License version 2.0 as published by the Free Software Foundation
9
+ ** and appearing in the file LICENSE.GPL included in the packaging of
10
+ ** this file. Please review the following information to ensure GNU
11
+ ** General Public Licensing requirements will be met:
12
+ ** http://www.trolltech.com/products/qt/opensource.html
13
+ **
14
+ ** If you are unsure which license is appropriate for your use, please
15
+ ** review the following information:
16
+ ** http://www.trolltech.com/products/qt/licensing.html or contact the
17
+ ** sales department at sales@trolltech.com.
18
+ **
19
+ ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
20
+ ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
21
+ **
22
+
23
+ ** Translated to QtRuby by Richard Dale
24
+ =end
25
+
26
+ require 'Qt'
27
+ require 'classwizard.rb'
28
+
29
+ app = Qt::Application.new(ARGV)
30
+ wizard = ClassWizard.new
31
+ wizard.exec
@@ -0,0 +1,110 @@
1
+ =begin
2
+ **
3
+ ** Copyright (C) 2004-2005 Trolltech AS. All rights reserved.
4
+ **
5
+ ** This file is part of the example classes of the Qt Toolkit.
6
+ **
7
+ ** This file may be used under the terms of the GNU General Public
8
+ ** License version 2.0 as published by the Free Software Foundation
9
+ ** and appearing in the file LICENSE.GPL included in the packaging of
10
+ ** this file. Please review the following information to ensure GNU
11
+ ** General Public Licensing requirements will be met:
12
+ ** http://www.trolltech.com/products/qt/opensource.html
13
+ **
14
+ ** If you are unsure which license is appropriate for your use, please
15
+ ** review the following information:
16
+ ** http://www.trolltech.com/products/qt/licensing.html or contact the
17
+ ** sales department at sales@trolltech.com.
18
+ **
19
+ ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
20
+ ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
21
+ **
22
+
23
+ ** Translated to QtRuby by Richard Dale
24
+ =end
25
+
26
+ class SimpleWizard < Qt::Dialog
27
+
28
+ slots 'backButtonClicked()', 'nextButtonClicked()'
29
+
30
+ def initialize(parent = nil)
31
+ super(parent)
32
+ @history = []
33
+ @numPages = 0
34
+ @cancelButton = Qt::PushButton.new(tr("Cancel"))
35
+ @backButton = Qt::PushButton.new(tr("< &Back"))
36
+ @nextButton = Qt::PushButton.new(tr("Next >"))
37
+ @finishButton = Qt::PushButton.new(tr("&Finish"))
38
+
39
+ connect(@cancelButton, SIGNAL('clicked()'), self, SLOT('reject()'))
40
+ connect(@backButton, SIGNAL('clicked()'), self, SLOT('backButtonClicked()'))
41
+ connect(@nextButton, SIGNAL('clicked()'), self, SLOT('nextButtonClicked()'))
42
+ connect(@finishButton, SIGNAL('clicked()'), self, SLOT('accept()'))
43
+
44
+ @buttonLayout = Qt::HBoxLayout.new do |b|
45
+ b.addStretch(1)
46
+ b.addWidget(@cancelButton)
47
+ b.addWidget(@backButton)
48
+ b.addWidget(@nextButton)
49
+ b.addWidget(@finishButton)
50
+ end
51
+
52
+ @mainLayout = Qt::VBoxLayout.new {|l| l.addLayout(@buttonLayout)}
53
+ self.layout = @mainLayout
54
+ end
55
+
56
+ def buttonEnabled=(enable)
57
+ if @history.length == @numPages
58
+ @finishButton.enabled = enable
59
+ else
60
+ @nextButton.enabled = enable
61
+ end
62
+ end
63
+
64
+ def setNumPages(n)
65
+ @numPages = n
66
+ @history.push createPage(0)
67
+ switchPage(nil)
68
+ end
69
+
70
+ def backButtonClicked()
71
+ @nextButton.enabled = true
72
+ @finishButton.enabled = true
73
+
74
+ oldPage = @history.last
75
+ switchPage(oldPage)
76
+ end
77
+
78
+ def nextButtonClicked()
79
+ @nextButton.enabled = true
80
+ @finishButton.enabled = (@history.length == @numPages - 1)
81
+
82
+ oldPage = @history.last
83
+ @history.push createPage(@history.length)
84
+ switchPage(oldPage)
85
+ end
86
+
87
+ def switchPage(oldPage)
88
+ if !oldPage.nil?
89
+ oldPage.hide
90
+ @mainLayout.removeWidget(oldPage)
91
+ end
92
+
93
+ newPage = @history.last
94
+ @mainLayout.insertWidget(0, newPage)
95
+ newPage.show
96
+ newPage.setFocus
97
+
98
+ @backButton.enabled = (@history.length != 1)
99
+ if @history.length == @numPages
100
+ @nextButton.enabled = false
101
+ @finishButton.default = true
102
+ else
103
+ @nextButton.default = true
104
+ @finishButton.enabled = false
105
+ end
106
+
107
+ setWindowTitle(tr("Simple Wizard - Step %d of %d" %
108
+ [@history.length, @numPages] ) )
109
+ end
110
+ end