fxruby 1.6.22.pre2 → 1.6.22.pre3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (475) hide show
  1. data/History.txt +1 -1
  2. data/README.txt +10 -10
  3. data/Rakefile +3 -2
  4. data/doap.rdf +2 -2
  5. data/examples/babelfish.rb +2 -2
  6. data/examples/bounce.rb +20 -20
  7. data/examples/charts.rb +2 -2
  8. data/examples/custom_table_item.rb +3 -3
  9. data/examples/datatarget.rb +2 -2
  10. data/examples/dctest.rb +51 -51
  11. data/examples/dialog.rb +14 -14
  12. data/examples/dilbert.rb +4 -4
  13. data/examples/dirlist.rb +6 -6
  14. data/examples/dragdrop.rb +7 -7
  15. data/examples/dragsource.rb +6 -6
  16. data/examples/dropsite.rb +5 -5
  17. data/examples/foursplit.rb +6 -6
  18. data/examples/gltest.rb +40 -40
  19. data/examples/glviewer.rb +16 -16
  20. data/examples/groupbox.rb +41 -41
  21. data/examples/header.rb +6 -6
  22. data/examples/hello2.rb +2 -2
  23. data/examples/iconlist.rb +10 -10
  24. data/examples/image.rb +26 -26
  25. data/examples/imageviewer.rb +31 -31
  26. data/examples/inputs.rb +2 -2
  27. data/examples/mditest.rb +12 -12
  28. data/examples/pig.rb +8 -8
  29. data/examples/raabrowser.rb +5 -5
  30. data/examples/ratio.rb +9 -9
  31. data/examples/rulerview.rb +2 -2
  32. data/examples/scintilla-test.rb +6 -6
  33. data/examples/scribble-orig.rb +3 -3
  34. data/examples/scribble.rb +3 -3
  35. data/examples/shutter.rb +6 -6
  36. data/examples/splitter.rb +15 -15
  37. data/examples/styledtext.rb +10 -10
  38. data/examples/tabbook.rb +14 -14
  39. data/examples/table.rb +21 -21
  40. data/examples/textedit/helpwindow.rb +6 -6
  41. data/examples/textedit/textedit.rb +72 -72
  42. data/ext/fox16/FXRuby.cpp +48 -5
  43. data/ext/fox16/core_wrap.cpp +1 -1
  44. data/ext/fox16/iconlist_wrap.cpp +1 -1
  45. data/ext/fox16/icons_wrap.cpp +1 -1
  46. data/ext/fox16/include/FXMemoryBuffer.h +3 -3
  47. data/ext/fox16/include/FXRbApp.h +1 -1
  48. data/ext/fox16/include/FXRbBitmap.h +1 -1
  49. data/ext/fox16/include/FXRbBitmapFrame.h +2 -2
  50. data/ext/fox16/include/FXRbBitmapVirtuals.h +2 -2
  51. data/ext/fox16/include/FXRbDCPrint.h +1 -1
  52. data/ext/fox16/include/FXRbDCVirtuals.h +24 -24
  53. data/ext/fox16/include/FXRbDCWindow.h +1 -1
  54. data/ext/fox16/include/FXRbDockBar.h +1 -1
  55. data/ext/fox16/include/FXRbFileDict.h +2 -2
  56. data/ext/fox16/include/FXRbFoldingList.h +1 -1
  57. data/ext/fox16/include/FXRbFontVirtuals.h +9 -9
  58. data/ext/fox16/include/FXRbGLViewerVirtuals.h +2 -2
  59. data/ext/fox16/include/FXRbIconItemVirtuals.h +8 -8
  60. data/ext/fox16/include/FXRbIconListVirtuals.h +7 -7
  61. data/ext/fox16/include/FXRbIconSourceVirtuals.h +1 -1
  62. data/ext/fox16/include/FXRbImageFrame.h +2 -2
  63. data/ext/fox16/include/FXRbImageVirtuals.h +1 -1
  64. data/ext/fox16/include/FXRbListVirtuals.h +4 -4
  65. data/ext/fox16/include/FXRbMenuBar.h +1 -1
  66. data/ext/fox16/include/FXRbPopupVirtuals.h +1 -1
  67. data/ext/fox16/include/FXRbRecentFiles.h +1 -1
  68. data/ext/fox16/include/FXRbRuler.h +3 -3
  69. data/ext/fox16/include/FXRbRulerView.h +3 -3
  70. data/ext/fox16/include/FXRbScintilla.h +1 -1
  71. data/ext/fox16/include/FXRbSeparator.h +2 -2
  72. data/ext/fox16/include/FXRbTableItemVirtuals.h +8 -8
  73. data/ext/fox16/include/FXRbTableVirtuals.h +13 -13
  74. data/ext/fox16/include/FXRbText.h +2 -2
  75. data/ext/fox16/include/FXRbTextVirtuals.h +3 -3
  76. data/ext/fox16/include/FXRbToolBar.h +1 -1
  77. data/ext/fox16/include/FXRbToolBarGrip.h +1 -1
  78. data/ext/fox16/include/FXRbToolBarTab.h +1 -1
  79. data/ext/fox16/include/FXRbTreeList.h +1 -1
  80. data/ext/fox16/include/FXRbTreeListVirtuals.h +4 -4
  81. data/ext/fox16/include/FXRbWindow.h +3 -3
  82. data/ext/fox16/include/FXRbWizard.h +2 -2
  83. data/ext/fox16/include/FXRuby.h +8 -4
  84. data/ext/fox16/librb.c +12 -12
  85. data/ext/fox16/list_wrap.cpp +1 -1
  86. data/ext/fox16/make_impl.rb +5 -5
  87. data/ext/fox16/markfuncs.cpp +228 -220
  88. data/ext/fox16/scintilla_wrap.cpp +1 -1
  89. data/ext/fox16/treelist_wrap.cpp +4 -4
  90. data/ext/fox16/ui_wrap.cpp +2 -2
  91. data/ext/fox16/unregisterOwnedObjects.cpp +3 -3
  92. data/lib/fox16/accel_table.rb +1 -1
  93. data/lib/fox16/aliases.rb +3 -3
  94. data/lib/fox16/calendar.rb +21 -21
  95. data/lib/fox16/chore.rb +2 -2
  96. data/lib/fox16/core.rb +70 -70
  97. data/lib/fox16/dict.rb +1 -1
  98. data/lib/fox16/execute_nonmodal.rb +1 -1
  99. data/lib/fox16/glgroup.rb +16 -16
  100. data/lib/fox16/glshapes.rb +26 -26
  101. data/lib/fox16/input.rb +4 -4
  102. data/lib/fox16/irb.rb +2 -2
  103. data/lib/fox16/iterators.rb +2 -2
  104. data/lib/fox16/keys.rb +34 -34
  105. data/lib/fox16/kwargs.rb +927 -927
  106. data/lib/fox16/pseudokeyboard.rb +1 -1
  107. data/lib/fox16/pseudomouse.rb +1 -1
  108. data/lib/fox16/responder2.rb +4 -4
  109. data/lib/fox16/scintilla.rb +2 -2
  110. data/lib/fox16/signal.rb +4 -4
  111. data/lib/fox16/splashscreen.rb +3 -3
  112. data/lib/fox16/timeout.rb +3 -3
  113. data/lib/fox16/undolist.rb +9 -9
  114. data/lib/fox16/version.rb +1 -1
  115. data/rdoc-sources/FX4Splitter.rb +9 -9
  116. data/rdoc-sources/FX7Segment.rb +9 -9
  117. data/rdoc-sources/FXAccelTable.rb +1 -1
  118. data/rdoc-sources/FXApp.rb +50 -50
  119. data/rdoc-sources/FXBMPIcon.rb +3 -3
  120. data/rdoc-sources/FXBMPImage.rb +2 -2
  121. data/rdoc-sources/FXBitmap.rb +11 -11
  122. data/rdoc-sources/FXBitmapFrame.rb +5 -5
  123. data/rdoc-sources/FXBitmapView.rb +2 -2
  124. data/rdoc-sources/FXButton.rb +2 -2
  125. data/rdoc-sources/FXCheckButton.rb +5 -5
  126. data/rdoc-sources/FXColorBar.rb +5 -5
  127. data/rdoc-sources/FXColorDialog.rb +2 -2
  128. data/rdoc-sources/FXColorList.rb +2 -2
  129. data/rdoc-sources/FXColorRing.rb +8 -8
  130. data/rdoc-sources/FXColorSelector.rb +4 -4
  131. data/rdoc-sources/FXColorWell.rb +4 -4
  132. data/rdoc-sources/FXColorWheel.rb +6 -6
  133. data/rdoc-sources/FXComboBox.rb +17 -17
  134. data/rdoc-sources/FXComposite.rb +2 -2
  135. data/rdoc-sources/FXCursor.rb +7 -7
  136. data/rdoc-sources/FXDC.rb +67 -67
  137. data/rdoc-sources/FXDCPrint.rb +22 -22
  138. data/rdoc-sources/FXDCWindow.rb +1 -1
  139. data/rdoc-sources/FXDataTarget.rb +2 -2
  140. data/rdoc-sources/FXDebugTarget.rb +1 -1
  141. data/rdoc-sources/FXDelegator.rb +1 -1
  142. data/rdoc-sources/FXDial.rb +8 -8
  143. data/rdoc-sources/FXDict.rb +7 -7
  144. data/rdoc-sources/FXDirBox.rb +3 -3
  145. data/rdoc-sources/FXDirDialog.rb +7 -7
  146. data/rdoc-sources/FXDirList.rb +21 -21
  147. data/rdoc-sources/FXDirSelector.rb +8 -8
  148. data/rdoc-sources/FXDockBar.rb +5 -5
  149. data/rdoc-sources/FXDockHandler.rb +3 -3
  150. data/rdoc-sources/FXDockSite.rb +2 -2
  151. data/rdoc-sources/FXDockTitle.rb +3 -3
  152. data/rdoc-sources/FXDocument.rb +3 -3
  153. data/rdoc-sources/FXDragCorner.rb +3 -3
  154. data/rdoc-sources/FXDrawable.rb +3 -3
  155. data/rdoc-sources/FXDriveBox.rb +4 -4
  156. data/rdoc-sources/FXExtentd.rb +2 -2
  157. data/rdoc-sources/FXExtentf.rb +2 -2
  158. data/rdoc-sources/FXFileDialog.rb +21 -21
  159. data/rdoc-sources/FXFileDict.rb +17 -17
  160. data/rdoc-sources/FXFileList.rb +32 -32
  161. data/rdoc-sources/FXFileSelector.rb +20 -20
  162. data/rdoc-sources/FXFileStream.rb +1 -1
  163. data/rdoc-sources/FXFoldingList.rb +53 -53
  164. data/rdoc-sources/FXFont.rb +38 -38
  165. data/rdoc-sources/FXFrame.rb +11 -11
  166. data/rdoc-sources/FXGIFCursor.rb +3 -3
  167. data/rdoc-sources/FXGLCanvas.rb +2 -2
  168. data/rdoc-sources/FXGLContext.rb +6 -6
  169. data/rdoc-sources/FXGLObject.rb +6 -6
  170. data/rdoc-sources/FXGLShape.rb +3 -3
  171. data/rdoc-sources/FXGLViewer.rb +54 -54
  172. data/rdoc-sources/FXGLVisual.rb +13 -13
  173. data/rdoc-sources/FXGradientBar.rb +15 -15
  174. data/rdoc-sources/FXGroupBox.rb +4 -4
  175. data/rdoc-sources/FXHeader.rb +44 -44
  176. data/rdoc-sources/FXICOIcon.rb +1 -1
  177. data/rdoc-sources/FXICOImage.rb +1 -1
  178. data/rdoc-sources/FXIconDict.rb +1 -1
  179. data/rdoc-sources/FXIconList.rb +69 -69
  180. data/rdoc-sources/FXIconSource.rb +2 -2
  181. data/rdoc-sources/FXId.rb +1 -1
  182. data/rdoc-sources/FXImage.rb +11 -11
  183. data/rdoc-sources/FXImageFrame.rb +3 -3
  184. data/rdoc-sources/FXImageView.rb +2 -2
  185. data/rdoc-sources/FXInputDialog.rb +6 -6
  186. data/rdoc-sources/FXJPGIcon.rb +3 -3
  187. data/rdoc-sources/FXJPGImage.rb +2 -2
  188. data/rdoc-sources/FXKnob.rb +9 -9
  189. data/rdoc-sources/FXLabel.rb +8 -8
  190. data/rdoc-sources/FXList.rb +28 -28
  191. data/rdoc-sources/FXListBox.rb +21 -21
  192. data/rdoc-sources/FXMDIChild.rb +11 -11
  193. data/rdoc-sources/FXMDIClient.rb +5 -5
  194. data/rdoc-sources/FXMatrix.rb +6 -6
  195. data/rdoc-sources/FXMemoryBuffer.rb +1 -1
  196. data/rdoc-sources/FXMemoryStream.rb +3 -3
  197. data/rdoc-sources/FXMenuBar.rb +1 -1
  198. data/rdoc-sources/FXMenuButton.rb +7 -7
  199. data/rdoc-sources/FXMenuCaption.rb +10 -10
  200. data/rdoc-sources/FXMenuCheck.rb +1 -1
  201. data/rdoc-sources/FXMenuRadio.rb +1 -1
  202. data/rdoc-sources/FXMenuSeparator.rb +1 -1
  203. data/rdoc-sources/FXMessageBox.rb +3 -3
  204. data/rdoc-sources/FXOptionMenu.rb +9 -9
  205. data/rdoc-sources/FXPCXIcon.rb +2 -2
  206. data/rdoc-sources/FXPCXImage.rb +1 -1
  207. data/rdoc-sources/FXPNGIcon.rb +3 -3
  208. data/rdoc-sources/FXPNGImage.rb +1 -1
  209. data/rdoc-sources/FXPPMIcon.rb +2 -2
  210. data/rdoc-sources/FXPPMImage.rb +1 -1
  211. data/rdoc-sources/FXPacker.rb +13 -13
  212. data/rdoc-sources/FXPopup.rb +11 -11
  213. data/rdoc-sources/FXProgressBar.rb +7 -7
  214. data/rdoc-sources/FXProgressDialog.rb +3 -3
  215. data/rdoc-sources/FXQuatd.rb +17 -17
  216. data/rdoc-sources/FXQuatf.rb +18 -18
  217. data/rdoc-sources/FXRGBIcon.rb +3 -3
  218. data/rdoc-sources/FXRGBImage.rb +1 -1
  219. data/rdoc-sources/FXRadioButton.rb +4 -4
  220. data/rdoc-sources/FXRanged.rb +1 -1
  221. data/rdoc-sources/FXRangef.rb +1 -1
  222. data/rdoc-sources/FXRealSlider.rb +7 -7
  223. data/rdoc-sources/FXRealSpinner.rb +11 -11
  224. data/rdoc-sources/FXRecentFiles.rb +8 -8
  225. data/rdoc-sources/FXRectangle.rb +12 -12
  226. data/rdoc-sources/FXRegion.rb +15 -15
  227. data/rdoc-sources/FXRegistry.rb +4 -4
  228. data/rdoc-sources/FXReplaceDialog.rb +3 -3
  229. data/rdoc-sources/FXRuler.rb +18 -18
  230. data/rdoc-sources/FXRulerView.rb +38 -38
  231. data/rdoc-sources/FXScintilla.rb +16 -16
  232. data/rdoc-sources/FXScrollArea.rb +9 -9
  233. data/rdoc-sources/FXScrollBar.rb +8 -8
  234. data/rdoc-sources/FXScrollPane.rb +1 -1
  235. data/rdoc-sources/FXScrollWindow.rb +5 -5
  236. data/rdoc-sources/FXSeparator.rb +1 -1
  237. data/rdoc-sources/FXSettings.rb +1 -1
  238. data/rdoc-sources/FXShutter.rb +3 -3
  239. data/rdoc-sources/FXSize.rb +4 -4
  240. data/rdoc-sources/FXSlider.rb +7 -7
  241. data/rdoc-sources/FXSphered.rb +21 -21
  242. data/rdoc-sources/FXSpheref.rb +20 -20
  243. data/rdoc-sources/FXSpinner.rb +12 -12
  244. data/rdoc-sources/FXSplashWindow.rb +1 -1
  245. data/rdoc-sources/FXSplitter.rb +6 -6
  246. data/rdoc-sources/FXSpring.rb +2 -2
  247. data/rdoc-sources/FXStatusBar.rb +4 -4
  248. data/rdoc-sources/FXStatusLine.rb +5 -5
  249. data/rdoc-sources/FXStream.rb +8 -8
  250. data/rdoc-sources/FXStringDict.rb +5 -5
  251. data/rdoc-sources/FXSwitcher.rb +2 -2
  252. data/rdoc-sources/FXTGAIcon.rb +3 -3
  253. data/rdoc-sources/FXTGAImage.rb +1 -1
  254. data/rdoc-sources/FXTIFIcon.rb +2 -2
  255. data/rdoc-sources/FXTIFImage.rb +2 -2
  256. data/rdoc-sources/FXTabBar.rb +2 -2
  257. data/rdoc-sources/FXTable.rb +131 -131
  258. data/rdoc-sources/FXText.rb +48 -48
  259. data/rdoc-sources/FXTextField.rb +9 -9
  260. data/rdoc-sources/FXToolBar.rb +1 -1
  261. data/rdoc-sources/FXToolBarGrip.rb +1 -1
  262. data/rdoc-sources/FXToolBarShell.rb +7 -7
  263. data/rdoc-sources/FXToolBarTab.rb +3 -3
  264. data/rdoc-sources/FXToolTip.rb +1 -1
  265. data/rdoc-sources/FXTopWindow.rb +17 -17
  266. data/rdoc-sources/FXTranslator.rb +5 -5
  267. data/rdoc-sources/FXTreeList.rb +50 -50
  268. data/rdoc-sources/FXTreeListBox.rb +16 -16
  269. data/rdoc-sources/FXVec2d.rb +5 -5
  270. data/rdoc-sources/FXVec2f.rb +5 -5
  271. data/rdoc-sources/FXVec3d.rb +8 -8
  272. data/rdoc-sources/FXVec3f.rb +8 -8
  273. data/rdoc-sources/FXVec4d.rb +8 -8
  274. data/rdoc-sources/FXVec4f.rb +8 -8
  275. data/rdoc-sources/FXVisual.rb +3 -3
  276. data/rdoc-sources/FXWindow.rb +99 -99
  277. data/rdoc-sources/FXWizard.rb +8 -8
  278. data/rdoc-sources/FXXBMIcon.rb +2 -2
  279. data/rdoc-sources/FXXBMImage.rb +1 -1
  280. data/rdoc-sources/FXXPMIcon.rb +2 -2
  281. data/rdoc-sources/FXXPMImage.rb +1 -1
  282. data/rdoc-sources/fxdefs.rb +17 -17
  283. data/scripts/generate_kwargs_lib.rb +22 -22
  284. data/scripts/iface.rb +1 -1
  285. data/swig-interfaces/FX4Splitter.i +5 -5
  286. data/swig-interfaces/FX7Segment.i +5 -5
  287. data/swig-interfaces/FXApp.i +10 -10
  288. data/swig-interfaces/FXBMPIcon.i +2 -2
  289. data/swig-interfaces/FXBitmap.i +3 -3
  290. data/swig-interfaces/FXBitmapFrame.i +1 -1
  291. data/swig-interfaces/FXBitmapView.i +1 -1
  292. data/swig-interfaces/FXCanvas.i +1 -1
  293. data/swig-interfaces/FXCheckButton.i +2 -2
  294. data/swig-interfaces/FXChoiceBox.i +2 -2
  295. data/swig-interfaces/FXColorBar.i +7 -7
  296. data/swig-interfaces/FXColorList.i +5 -5
  297. data/swig-interfaces/FXColorWell.i +1 -1
  298. data/swig-interfaces/FXColorWheel.i +6 -6
  299. data/swig-interfaces/FXComboBox.i +4 -4
  300. data/swig-interfaces/FXCursor.i +4 -4
  301. data/swig-interfaces/FXDC.i +23 -23
  302. data/swig-interfaces/FXDCPrint.i +5 -5
  303. data/swig-interfaces/FXDCWindow.i +8 -8
  304. data/swig-interfaces/FXDataTarget.i +5 -5
  305. data/swig-interfaces/FXDebugTarget.i +1 -1
  306. data/swig-interfaces/FXDelegator.i +3 -3
  307. data/swig-interfaces/FXDial.i +8 -8
  308. data/swig-interfaces/FXDialogBox.i +3 -3
  309. data/swig-interfaces/FXDict.i +14 -14
  310. data/swig-interfaces/FXDirBox.i +1 -1
  311. data/swig-interfaces/FXDirDialog.i +2 -2
  312. data/swig-interfaces/FXDirList.i +16 -16
  313. data/swig-interfaces/FXDirSelector.i +2 -2
  314. data/swig-interfaces/FXDockBar.i +1 -1
  315. data/swig-interfaces/FXDockHandler.i +1 -1
  316. data/swig-interfaces/FXDockSite.i +1 -1
  317. data/swig-interfaces/FXDockTitle.i +1 -1
  318. data/swig-interfaces/FXDocument.i +1 -1
  319. data/swig-interfaces/FXDragCorner.i +3 -3
  320. data/swig-interfaces/FXDriveBox.i +1 -1
  321. data/swig-interfaces/FXFileDialog.i +8 -8
  322. data/swig-interfaces/FXFileDict.i +2 -2
  323. data/swig-interfaces/FXFileList.i +11 -11
  324. data/swig-interfaces/FXFileSelector.i +4 -4
  325. data/swig-interfaces/FXFoldingList.i +7 -7
  326. data/swig-interfaces/FXFont.i +20 -20
  327. data/swig-interfaces/FXFrame.i +3 -3
  328. data/swig-interfaces/FXGLCanvas.i +3 -3
  329. data/swig-interfaces/FXGLContext.i +7 -7
  330. data/swig-interfaces/FXGLObject.i +1 -1
  331. data/swig-interfaces/FXGLShape.i +6 -6
  332. data/swig-interfaces/FXGLViewer.i +40 -40
  333. data/swig-interfaces/FXGLVisual.i +2 -2
  334. data/swig-interfaces/FXGradientBar.i +4 -4
  335. data/swig-interfaces/FXGroupBox.i +3 -3
  336. data/swig-interfaces/FXHeader.i +7 -7
  337. data/swig-interfaces/FXIcon.i +4 -4
  338. data/swig-interfaces/FXIconDict.i +1 -1
  339. data/swig-interfaces/FXIconList.i +46 -46
  340. data/swig-interfaces/FXImage.i +2 -2
  341. data/swig-interfaces/FXImageView.i +1 -1
  342. data/swig-interfaces/FXInputDialog.i +3 -3
  343. data/swig-interfaces/FXJPGIcon.i +3 -3
  344. data/swig-interfaces/FXJPGImage.i +2 -2
  345. data/swig-interfaces/FXKnob.i +2 -2
  346. data/swig-interfaces/FXLabel.i +2 -2
  347. data/swig-interfaces/FXList.i +35 -35
  348. data/swig-interfaces/FXListBox.i +5 -5
  349. data/swig-interfaces/FXMDIButton.i +5 -5
  350. data/swig-interfaces/FXMDIChild.i +12 -12
  351. data/swig-interfaces/FXMDIClient.i +2 -2
  352. data/swig-interfaces/FXMat4d.i +2 -2
  353. data/swig-interfaces/FXMat4f.i +5 -5
  354. data/swig-interfaces/FXMatrix.i +12 -12
  355. data/swig-interfaces/FXMemoryBuffer.i +4 -4
  356. data/swig-interfaces/FXMenuBar.i +3 -3
  357. data/swig-interfaces/FXMenuButton.i +7 -7
  358. data/swig-interfaces/FXMenuCaption.i +4 -4
  359. data/swig-interfaces/FXMenuCommand.i +1 -1
  360. data/swig-interfaces/FXMenuPane.i +1 -1
  361. data/swig-interfaces/FXMenuRadio.i +1 -1
  362. data/swig-interfaces/FXMenuSeparator.i +1 -1
  363. data/swig-interfaces/FXMessageBox.i +1 -1
  364. data/swig-interfaces/FXOptionMenu.i +6 -6
  365. data/swig-interfaces/FXPNGIcon.i +2 -2
  366. data/swig-interfaces/FXPPMIcon.i +2 -2
  367. data/swig-interfaces/FXPacker.i +6 -6
  368. data/swig-interfaces/FXPopup.i +13 -13
  369. data/swig-interfaces/FXProgressBar.i +12 -12
  370. data/swig-interfaces/FXProgressDialog.i +5 -5
  371. data/swig-interfaces/FXQuatd.i +7 -7
  372. data/swig-interfaces/FXQuatf.i +1 -1
  373. data/swig-interfaces/FXRadioButton.i +4 -4
  374. data/swig-interfaces/FXRanged.i +4 -4
  375. data/swig-interfaces/FXRangef.i +5 -5
  376. data/swig-interfaces/FXRealSlider.i +10 -10
  377. data/swig-interfaces/FXRealSpinner.i +17 -17
  378. data/swig-interfaces/FXRecentFiles.i +1 -1
  379. data/swig-interfaces/FXRegion.i +4 -4
  380. data/swig-interfaces/FXRegistry.i +3 -3
  381. data/swig-interfaces/FXReplaceDialog.i +1 -1
  382. data/swig-interfaces/FXScintilla.i +3 -3
  383. data/swig-interfaces/FXScrollArea.i +7 -7
  384. data/swig-interfaces/FXScrollBar.i +3 -3
  385. data/swig-interfaces/FXScrollWindow.i +6 -6
  386. data/swig-interfaces/FXSearchDialog.i +1 -1
  387. data/swig-interfaces/FXSeparator.i +3 -3
  388. data/swig-interfaces/FXSettings.i +3 -3
  389. data/swig-interfaces/FXShell.i +1 -1
  390. data/swig-interfaces/FXSlider.i +11 -11
  391. data/swig-interfaces/FXSphered.i +1 -1
  392. data/swig-interfaces/FXSpheref.i +1 -1
  393. data/swig-interfaces/FXSpinner.i +15 -15
  394. data/swig-interfaces/FXSplitter.i +6 -6
  395. data/swig-interfaces/FXStatusBar.i +4 -4
  396. data/swig-interfaces/FXStatusLine.i +5 -5
  397. data/swig-interfaces/FXStream.i +1 -1
  398. data/swig-interfaces/FXSwitcher.i +5 -5
  399. data/swig-interfaces/FXTabBar.i +2 -2
  400. data/swig-interfaces/FXTabBook.i +1 -1
  401. data/swig-interfaces/FXTabItem.i +4 -4
  402. data/swig-interfaces/FXTable.i +37 -37
  403. data/swig-interfaces/FXText.i +13 -13
  404. data/swig-interfaces/FXTextField.i +1 -1
  405. data/swig-interfaces/FXToggleButton.i +6 -6
  406. data/swig-interfaces/FXToolBar.i +4 -4
  407. data/swig-interfaces/FXToolBarGrip.i +3 -3
  408. data/swig-interfaces/FXToolBarShell.i +3 -3
  409. data/swig-interfaces/FXToolBarTab.i +5 -5
  410. data/swig-interfaces/FXToolTip.i +1 -1
  411. data/swig-interfaces/FXTopWindow.i +10 -10
  412. data/swig-interfaces/FXTreeList.i +28 -28
  413. data/swig-interfaces/FXTreeListBox.i +36 -36
  414. data/swig-interfaces/FXVec3d.i +2 -2
  415. data/swig-interfaces/FXVec3f.i +2 -2
  416. data/swig-interfaces/FXVec4d.i +1 -1
  417. data/swig-interfaces/FXVec4f.i +9 -9
  418. data/swig-interfaces/FXVerticalFrame.i +1 -1
  419. data/swig-interfaces/FXVisual.i +1 -1
  420. data/swig-interfaces/FXWindow.i +46 -46
  421. data/swig-interfaces/FXXPMIcon.i +1 -1
  422. data/swig-interfaces/FXXPMImage.i +1 -1
  423. data/swig-interfaces/exceptions.i +1 -1
  424. data/swig-interfaces/freefuncs.i +1 -1
  425. data/swig-interfaces/fxdefs.i +13 -13
  426. data/swig-interfaces/macros.i +79 -79
  427. data/test/TC_FXAccelTable.rb +3 -3
  428. data/test/TC_FXButton.rb +9 -9
  429. data/test/TC_FXCheckButton.rb +4 -4
  430. data/test/TC_FXComboBox.rb +1 -1
  431. data/test/TC_FXDC.rb +42 -42
  432. data/test/TC_FXDialogBox.rb +1 -1
  433. data/test/TC_FXExtentd.rb +2 -2
  434. data/test/TC_FXExtentf.rb +2 -2
  435. data/test/TC_FXFileAssoc.rb +5 -5
  436. data/test/TC_FXFileStream.rb +5 -5
  437. data/test/TC_FXFoldingList.rb +3 -3
  438. data/test/TC_FXFont.rb +3 -3
  439. data/test/TC_FXGLGroup.rb +1 -1
  440. data/test/TC_FXHeader.rb +3 -3
  441. data/test/TC_FXIconDict.rb +5 -5
  442. data/test/TC_FXIconList.rb +12 -12
  443. data/test/TC_FXImage.rb +16 -16
  444. data/test/TC_FXList.rb +5 -5
  445. data/test/TC_FXListBox.rb +1 -1
  446. data/test/TC_FXMainWindow.rb +2 -2
  447. data/test/TC_FXMat4f.rb +33 -33
  448. data/test/TC_FXMaterial.rb +5 -5
  449. data/test/TC_FXMemoryStream.rb +2 -2
  450. data/test/TC_FXMenuCheck.rb +5 -5
  451. data/test/TC_FXMessageBox.rb +3 -3
  452. data/test/TC_FXPoint.rb +1 -1
  453. data/test/TC_FXRadioButton.rb +4 -4
  454. data/test/TC_FXRanged.rb +3 -3
  455. data/test/TC_FXRangef.rb +3 -3
  456. data/test/TC_FXRegion.rb +1 -1
  457. data/test/TC_FXScrollArea.rb +1 -1
  458. data/test/TC_FXScrollWindow.rb +1 -1
  459. data/test/TC_FXSettings.rb +2 -2
  460. data/test/TC_FXShell.rb +2 -2
  461. data/test/TC_FXTopWindow.rb +2 -2
  462. data/test/TC_FXTreeList.rb +4 -4
  463. data/test/TC_FXTreeListBox.rb +3 -3
  464. data/test/TC_FXVec2d.rb +3 -3
  465. data/test/TC_FXVec2f.rb +3 -3
  466. data/test/TC_FXVec3d.rb +5 -5
  467. data/test/TC_FXVec3f.rb +5 -5
  468. data/test/TC_FXVec4f.rb +6 -6
  469. data/test/TC_Misc.rb +6 -2
  470. data/test/TS_All.rb +1 -17
  471. data/test/stress1.rb +5 -5
  472. data/test/stress2.rb +3 -3
  473. data/test/stress3.rb +12 -12
  474. data/test/testcase.rb +4 -4
  475. metadata +76 -76
@@ -101,7 +101,7 @@ class TextWindow < FXMainWindow
101
101
  FXMAPFUNC(SEL_CLOSE, ID_TITLE, :onCmdQuit)
102
102
  FXMAPFUNC(SEL_COMMAND, ID_PRINT, :onCmdPrint)
103
103
  FXMAPFUNC(SEL_COMMAND, ID_TREELIST, :onCmdTreeList)
104
-
104
+
105
105
  FXMAPFUNC(SEL_COMMAND, ID_TEXT_BACK, :onCmdTextBackColor)
106
106
  FXMAPFUNC(SEL_CHANGED, ID_TEXT_BACK, :onCmdTextBackColor)
107
107
  FXMAPFUNC(SEL_UPDATE, ID_TEXT_BACK, :onUpdTextBackColor)
@@ -117,7 +117,7 @@ class TextWindow < FXMainWindow
117
117
  FXMAPFUNC(SEL_COMMAND, ID_TEXT_CURSOR, :onCmdTextCursorColor)
118
118
  FXMAPFUNC(SEL_CHANGED, ID_TEXT_CURSOR, :onCmdTextCursorColor)
119
119
  FXMAPFUNC(SEL_UPDATE, ID_TEXT_CURSOR, :onUpdTextCursorColor)
120
-
120
+
121
121
  FXMAPFUNC(SEL_COMMAND, ID_DIR_BACK, :onCmdDirBackColor)
122
122
  FXMAPFUNC(SEL_CHANGED, ID_DIR_BACK, :onCmdDirBackColor)
123
123
  FXMAPFUNC(SEL_UPDATE, ID_DIR_BACK, :onUpdDirBackColor)
@@ -133,7 +133,7 @@ class TextWindow < FXMainWindow
133
133
  FXMAPFUNC(SEL_COMMAND, ID_DIR_LINES, :onCmdDirLineColor)
134
134
  FXMAPFUNC(SEL_CHANGED, ID_DIR_LINES, :onCmdDirLineColor)
135
135
  FXMAPFUNC(SEL_UPDATE, ID_DIR_LINES, :onUpdDirLineColor)
136
-
136
+
137
137
  FXMAPFUNC(SEL_COMMAND, ID_RECENTFILE, :onCmdRecentFile)
138
138
  FXMAPFUNC(SEL_UPDATE, ID_TOGGLE_WRAP, :onUpdWrap)
139
139
  FXMAPFUNC(SEL_COMMAND, ID_TOGGLE_WRAP, :onCmdWrap)
@@ -181,7 +181,7 @@ class TextWindow < FXMainWindow
181
181
 
182
182
  # Default font
183
183
  @font = nil
184
-
184
+
185
185
  # Make some icons
186
186
  @bigicon = loadIcon("big.png")
187
187
  @smallicon = loadIcon("small.png")
@@ -203,71 +203,71 @@ class TextWindow < FXMainWindow
203
203
  # Application icons
204
204
  setIcon(@bigicon)
205
205
  setMiniIcon(@smallicon)
206
-
206
+
207
207
  # Make main window; set myself as the target
208
208
  setTarget(self)
209
209
  setSelector(ID_TITLE)
210
-
210
+
211
211
  # Help window
212
212
  @helpwindow = HelpWindow.new(self)
213
-
213
+
214
214
  # Make menu bar
215
215
  dragshell1 = FXToolBarShell.new(self, FRAME_RAISED|FRAME_THICK)
216
216
  menubar = FXMenuBar.new(self, dragshell1, LAYOUT_SIDE_TOP|LAYOUT_FILL_X)
217
217
  FXToolBarGrip.new(menubar, menubar, FXMenuBar::ID_TOOLBARGRIP,
218
218
  TOOLBARGRIP_DOUBLE)
219
-
219
+
220
220
  # Tool bar
221
221
  dragshell2 = FXToolBarShell.new(self, FRAME_RAISED|FRAME_THICK)
222
222
  toolbar = FXToolBar.new(self, dragshell2,
223
223
  LAYOUT_SIDE_TOP|LAYOUT_FILL_X|PACK_UNIFORM_WIDTH|PACK_UNIFORM_HEIGHT)
224
224
  FXToolBarGrip.new(toolbar, toolbar, FXToolBar::ID_TOOLBARGRIP,
225
225
  TOOLBARGRIP_DOUBLE)
226
-
226
+
227
227
  # Status bar
228
228
  statusbar = FXStatusBar.new(self,
229
229
  LAYOUT_SIDE_BOTTOM|LAYOUT_FILL_X|STATUSBAR_WITH_DRAGCORNER)
230
-
230
+
231
231
  # Info about the editor
232
232
  FXButton.new(statusbar, "\tThe FOX Text Editor\tAbout the FOX Text Editor.",
233
233
  @smallicon, self, ID_ABOUT, LAYOUT_FILL_Y|LAYOUT_RIGHT)
234
-
234
+
235
235
  # File menu
236
236
  filemenu = FXMenuPane.new(self)
237
237
  FXMenuTitle.new(menubar, "&File", nil, filemenu)
238
-
238
+
239
239
  # Edit Menu
240
240
  editmenu = FXMenuPane.new(self)
241
241
  FXMenuTitle.new(menubar, "&Edit", nil, editmenu)
242
-
242
+
243
243
  # Goto Menu
244
244
  gotomenu = FXMenuPane.new(self)
245
245
  FXMenuTitle.new(menubar, "&Goto", nil, gotomenu)
246
-
246
+
247
247
  # Search Menu
248
248
  searchmenu = FXMenuPane.new(self)
249
249
  FXMenuTitle.new(menubar, "&Search", nil, searchmenu)
250
-
250
+
251
251
  # Options Menu
252
252
  optionmenu = FXMenuPane.new(self)
253
253
  FXMenuTitle.new(menubar, "&Options", nil, optionmenu)
254
-
254
+
255
255
  # View menu
256
256
  viewmenu = FXMenuPane.new(self)
257
257
  FXMenuTitle.new(menubar, "&View", nil, viewmenu)
258
-
258
+
259
259
  # Help menu
260
260
  helpmenu = FXMenuPane.new(self)
261
261
  FXMenuTitle.new(menubar, "&Help", nil, helpmenu, LAYOUT_RIGHT)
262
-
262
+
263
263
  # Splitter
264
264
  splitter = FXSplitter.new(self,
265
265
  LAYOUT_SIDE_TOP|LAYOUT_FILL_X|LAYOUT_FILL_Y|SPLITTER_TRACKING)
266
-
266
+
267
267
  # Sunken border for tree
268
268
  @treebox = FXVerticalFrame.new(splitter, LAYOUT_FILL_X|LAYOUT_FILL_Y,
269
269
  0, 0, 0, 0, 0, 0, 0, 0)
270
-
270
+
271
271
  # Make tree
272
272
  treeframe = FXHorizontalFrame.new(@treebox,
273
273
  FRAME_SUNKEN|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_Y,
@@ -280,15 +280,15 @@ class TextWindow < FXMainWindow
280
280
  @filter = FXComboBox.new(filterframe, 25, self, ID_FILEFILTER,
281
281
  COMBOBOX_STATIC|LAYOUT_FILL_X|FRAME_SUNKEN|FRAME_THICK)
282
282
  @filter.numVisible = 4
283
-
283
+
284
284
  # Sunken border for text widget
285
285
  textbox = FXHorizontalFrame.new(splitter,
286
286
  FRAME_SUNKEN|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_Y, 0,0,0,0, 0,0,0,0)
287
-
287
+
288
288
  # Make editor window
289
289
  @editor = FXText.new(textbox, self, ID_TEXT, LAYOUT_FILL_X|LAYOUT_FILL_Y)
290
290
  @editor.hiliteMatchTime = 300000
291
-
291
+
292
292
  # Show readonly state in status bar
293
293
  readonly = FXLabel.new(statusbar, nil, nil, FRAME_SUNKEN|LAYOUT_RIGHT|LAYOUT_CENTER_Y)
294
294
  readonly.padLeft = 2
@@ -297,7 +297,7 @@ class TextWindow < FXMainWindow
297
297
  readonly.padBottom = 1
298
298
  readonly.setTarget(self)
299
299
  readonly.setSelector(ID_READONLY)
300
-
300
+
301
301
  # Show insert mode in status bar
302
302
  overstrike = FXLabel.new(statusbar, nil, nil, FRAME_SUNKEN|LAYOUT_RIGHT|LAYOUT_CENTER_Y)
303
303
  overstrike.padLeft = 2
@@ -306,34 +306,34 @@ class TextWindow < FXMainWindow
306
306
  overstrike.padBottom = 1
307
307
  overstrike.setTarget(self)
308
308
  overstrike.setSelector(ID_OVERSTRIKE)
309
-
309
+
310
310
  # Show size of text in status bar
311
311
  numchars = FXTextField.new(statusbar, 6, self, ID_NUMCHARS,
312
312
  FRAME_SUNKEN|JUSTIFY_RIGHT|LAYOUT_RIGHT|LAYOUT_CENTER_Y,
313
313
  0, 0, 0, 0, 2, 2, 1, 1)
314
314
  numchars.backColor = statusbar.backColor
315
-
315
+
316
316
  # Caption before number
317
317
  FXLabel.new(statusbar, " Size:", nil, LAYOUT_RIGHT|LAYOUT_CENTER_Y)
318
-
318
+
319
319
  # Show column number in status bar
320
320
  columnno = FXTextField.new(statusbar, 4, @editor, FXText::ID_CURSOR_COLUMN,
321
321
  FRAME_SUNKEN|JUSTIFY_RIGHT|LAYOUT_RIGHT|LAYOUT_CENTER_Y,
322
322
  0, 0, 0, 0, 2, 2, 1, 1)
323
323
  columnno.backColor = statusbar.backColor
324
-
324
+
325
325
  # Caption before number
326
326
  FXLabel.new(statusbar, " Col:", nil, LAYOUT_RIGHT|LAYOUT_CENTER_Y)
327
-
327
+
328
328
  # Show line number in status bar
329
329
  rowno = FXTextField.new(statusbar, 4, @editor, FXText::ID_CURSOR_ROW,
330
330
  FRAME_SUNKEN|JUSTIFY_RIGHT|LAYOUT_RIGHT|LAYOUT_CENTER_Y,
331
331
  0, 0, 0, 0, 2, 2, 1, 1)
332
332
  rowno.backColor = statusbar.backColor
333
-
333
+
334
334
  # Caption before number
335
335
  FXLabel.new(statusbar, " Line:", nil, LAYOUT_RIGHT|LAYOUT_CENTER_Y)
336
-
336
+
337
337
  # Toobar buttons: File manipulation
338
338
  FXButton.new(toolbar, "New\tNew\tCreate new document.", @newicon,
339
339
  self, ID_NEW, (ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|
@@ -347,14 +347,14 @@ class TextWindow < FXMainWindow
347
347
  FXButton.new(toolbar, "Save as\tSave As\tSave document to another file.",
348
348
  @saveasicon, self, ID_SAVEAS, (ICON_ABOVE_TEXT|BUTTON_TOOLBAR|
349
349
  FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT))
350
-
350
+
351
351
  # Toobar buttons: Print
352
352
  FXFrame.new(toolbar,
353
353
  LAYOUT_TOP|LAYOUT_LEFT|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT, 0, 0, 5, 5)
354
354
  FXButton.new(toolbar, "Print\tPrint\tPrint document.", @printicon,
355
355
  self, ID_PRINT, (ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|
356
356
  LAYOUT_TOP|LAYOUT_LEFT))
357
-
357
+
358
358
  # Toobar buttons: Editing
359
359
  FXFrame.new(toolbar,
360
360
  LAYOUT_TOP|LAYOUT_LEFT|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT, 0, 0, 5, 5)
@@ -373,18 +373,18 @@ class TextWindow < FXMainWindow
373
373
  FXButton.new(toolbar, "Redo\tRedo\tRedo last undo.", @redoicon,
374
374
  @undolist, FXUndoList::ID_REDO, (ICON_ABOVE_TEXT|BUTTON_TOOLBAR|
375
375
  FRAME_RAISED|LAYOUT_TOP|LAYOUT_LEFT))
376
-
376
+
377
377
  # Color
378
378
  FXFrame.new(toolbar,
379
379
  LAYOUT_TOP|LAYOUT_LEFT|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT, 0, 0, 5, 5)
380
380
  FXButton.new(toolbar, "Fonts\tFonts\tDisplay font dialog.", @fontsicon,
381
381
  self, ID_FONT, (ICON_ABOVE_TEXT|BUTTON_TOOLBAR|FRAME_RAISED|
382
382
  LAYOUT_TOP|LAYOUT_LEFT))
383
-
383
+
384
384
  FXButton.new(toolbar, "Help\tHelp on editor\tDisplay help information.",
385
385
  @helpicon, self, ID_SHOW_HELP, (ICON_ABOVE_TEXT|BUTTON_TOOLBAR|
386
386
  FRAME_RAISED|LAYOUT_TOP|LAYOUT_RIGHT))
387
-
387
+
388
388
  # File Menu entries
389
389
  FXMenuCommand.new(filemenu, "&Open... \tCtl-O\tOpen document file.",
390
390
  @openicon, self, ID_OPEN)
@@ -410,7 +410,7 @@ class TextWindow < FXMainWindow
410
410
  @editor, FXText::ID_TOGGLE_EDITABLE)
411
411
  iconifyCmd = FXMenuCommand.new(filemenu, "&Iconify...\t\tIconify editor.")
412
412
  iconifyCmd.connect(SEL_COMMAND) { self.minimize }
413
-
413
+
414
414
  # Recent file menu; this automatically hides if there are no files
415
415
  sep1 = FXMenuSeparator.new(filemenu)
416
416
  sep1.setTarget(@mrufiles)
@@ -431,7 +431,7 @@ class TextWindow < FXMainWindow
431
431
  sep2.setTarget(@mrufiles)
432
432
  sep2.setSelector(FXRecentFiles::ID_ANYFILES)
433
433
  FXMenuCommand.new(filemenu, "&Quit\tCtl-Q", nil, self, ID_QUIT)
434
-
434
+
435
435
  # Edit Menu entries
436
436
  FXMenuCommand.new(editmenu, "&Undo\tCtl-Z\tUndo last change.", @undoicon,
437
437
  @undolist, FXUndoList::ID_UNDO)
@@ -471,7 +471,7 @@ class TextWindow < FXMainWindow
471
471
  FXMenuCommand.new(editmenu,
472
472
  "Shift tab right\t\tShift text right one tab position.", nil,
473
473
  @editor, FXText::ID_SHIFT_TABRIGHT)
474
-
474
+
475
475
  # Goto Menu entries
476
476
  FXMenuCommand.new(gotomenu,
477
477
  "&Goto...\tCtl-G\tGoto line number.", nil,
@@ -496,7 +496,7 @@ class TextWindow < FXMainWindow
496
496
  FXMenuCommand.new(searchmenu,
497
497
  "Goto matching (..)\tCtl-M\tGoto matching brace or parenthesis.", nil,
498
498
  @editor, FXText::ID_GOTO_MATCHING)
499
-
499
+
500
500
  # Search Menu entries
501
501
  FXMenuCommand.new(searchmenu,
502
502
  "Select matching (..)\tShift-Ctl-M\tSelect matching brace or parenthesis.", nil,
@@ -526,7 +526,7 @@ class TextWindow < FXMainWindow
526
526
  FXMenuCommand.new(searchmenu,
527
527
  "R&eplace...\tCtl-R\tSearch for a string.", nil,
528
528
  @editor, FXText::ID_REPLACE)
529
-
529
+
530
530
  # Options menu
531
531
  FXMenuCommand.new(optionmenu,
532
532
  "Preferences...\t\tChange preferences.", nil,
@@ -542,7 +542,7 @@ class TextWindow < FXMainWindow
542
542
  FXMenuCommand.new(optionmenu,
543
543
  "Save Settings...\t\tSave settings now.", nil,
544
544
  self, TextWindow::ID_SAVE_SETTINGS)
545
-
545
+
546
546
  # View Menu entries
547
547
  FXMenuCommand.new(viewmenu,
548
548
  "Hidden files\t\tShow hidden files and directories.", nil,
@@ -554,34 +554,34 @@ class TextWindow < FXMainWindow
554
554
  toolbar, FXWindow::ID_TOGGLESHOWN)
555
555
  FXMenuCommand.new(viewmenu, "Status line\t\tDisplay status line.", nil,
556
556
  statusbar, FXWindow::ID_TOGGLESHOWN)
557
-
557
+
558
558
  # Help Menu entries
559
559
  FXMenuCommand.new(helpmenu, "&Help...\t\tDisplay help information.",
560
560
  @helpicon, self, ID_SHOW_HELP, 0)
561
561
  FXMenuSeparator.new(helpmenu)
562
562
  FXMenuCommand.new(helpmenu, "&About TextEdit...\t\tDisplay about panel.",
563
563
  @smallicon, self, ID_ABOUT, 0)
564
-
564
+
565
565
  # Make a tool tip
566
566
  FXToolTip.new(getApp(), 0)
567
-
567
+
568
568
  # Recent files
569
569
  @mrufiles = FXRecentFiles.new
570
570
  @mrufiles.setTarget(self)
571
571
  @mrufiles.setSelector(ID_RECENTFILE)
572
-
572
+
573
573
  # Add some alternative accelerators
574
574
  if getAccelTable()
575
575
  getAccelTable().addAccel(MKUINT(KEY_Z, CONTROLMASK|SHIFTMASK),
576
576
  @undolist,
577
577
  MKUINT(FXUndoList::ID_REDO, SEL_COMMAND))
578
578
  end
579
-
579
+
580
580
  # Initialize file name
581
581
  @filename = "untitled"
582
582
  @filetime = nil
583
583
  @filenameset = false
584
-
584
+
585
585
  # Initialize other stuff
586
586
  @searchpath = "/usr/include"
587
587
  setPatterns(["All Files (*)"])
@@ -752,7 +752,7 @@ class TextWindow < FXMainWindow
752
752
 
753
753
  # File patterns
754
754
  patterns = getApp().reg().readStringEntry("SETTINGS", "filepatterns", "All Files (*)")
755
- setPatterns(patterns.split("\n"))
755
+ setPatterns(patterns.split("\n"))
756
756
  setCurrentPattern(getApp().reg().readIntEntry("SETTINGS", "filepatternno", 0))
757
757
 
758
758
  # Search path
@@ -764,57 +764,57 @@ class TextWindow < FXMainWindow
764
764
  @editor.selBackColor = textselback
765
765
  @editor.selTextColor = textselfore
766
766
  @editor.cursorColor = textcursor
767
-
767
+
768
768
  @dirlist.textColor = dirfore
769
769
  @dirlist.backColor = dirback
770
770
  @dirlist.selBackColor = dirselback
771
771
  @dirlist.selTextColor = dirselfore
772
772
  @dirlist.lineColor = dirlines
773
-
773
+
774
774
  # Change delimiters
775
775
  @editor.delimiters = delimiters
776
-
776
+
777
777
  # Hide tree if asked for
778
778
  @treebox.hide if hidetree
779
-
779
+
780
780
  # Set tree width
781
781
  @treebox.width = treewidth
782
-
782
+
783
783
  # Open toward file
784
784
  @dirlist.currentFile = @filename
785
-
785
+
786
786
  # Wrap mode
787
787
  if wrapping
788
788
  @editor.textStyle |= TEXT_WORDWRAP
789
789
  else
790
790
  @editor.textStyle &= ~TEXT_WORDWRAP
791
791
  end
792
-
792
+
793
793
  # Wrap fixed mode
794
794
  if fixedwrap
795
795
  @editor.textStyle |= TEXT_FIXEDWRAP
796
796
  else
797
797
  @editor.textStyle &= ~TEXT_FIXEDWRAP
798
798
  end
799
-
799
+
800
800
  # Autoindent
801
801
  if autoindent
802
802
  @editor.textStyle |= TEXT_AUTOINDENT
803
803
  else
804
804
  @editor.textStyle &= ~TEXT_AUTOINDENT
805
805
  end
806
-
806
+
807
807
  # Hard tabs
808
808
  if hardtabs
809
809
  @editor.textStyle &= ~TEXT_NO_TABS
810
810
  else
811
811
  @editor.textStyle |= TEXT_NO_TABS
812
812
  end
813
-
813
+
814
814
  # Wrap and tab columns
815
815
  @editor.wrapColumns = wrapcols
816
816
  @editor.tabColumns = tabcols
817
-
817
+
818
818
  # Reposition window
819
819
  position(xx, yy, ww, hh)
820
820
  end
@@ -828,54 +828,54 @@ class TextWindow < FXMainWindow
828
828
  getApp().reg().writeColorEntry("SETTINGS", "textselbackground", @editor.selBackColor)
829
829
  getApp().reg().writeColorEntry("SETTINGS", "textselforeground", @editor.selTextColor)
830
830
  getApp().reg().writeColorEntry("SETTINGS", "textcursor", @editor.cursorColor)
831
-
831
+
832
832
  # Colors of directory
833
833
  getApp().reg().writeColorEntry("SETTINGS", "browserbackground", @dirlist.backColor)
834
834
  getApp().reg().writeColorEntry("SETTINGS", "browserforeground", @dirlist.textColor)
835
835
  getApp().reg().writeColorEntry("SETTINGS", "browserselbackground", @dirlist.selBackColor)
836
836
  getApp().reg().writeColorEntry("SETTINGS", "browserselforeground", @dirlist.selTextColor)
837
837
  getApp().reg().writeColorEntry("SETTINGS", "browserlines", @dirlist.lineColor)
838
-
838
+
839
839
  # Delimiters
840
840
  getApp().reg().writeStringEntry("SETTINGS", "delimiters", @editor.delimiters)
841
-
841
+
842
842
  # Write new window size back to registry
843
843
  getApp().reg().writeIntEntry("SETTINGS", "x", getX())
844
844
  getApp().reg().writeIntEntry("SETTINGS", "y", getY())
845
845
  getApp().reg().writeIntEntry("SETTINGS", "width", getWidth())
846
846
  getApp().reg().writeIntEntry("SETTINGS", "height", getHeight())
847
-
847
+
848
848
  # Were showing hidden files
849
849
  getApp().reg().writeIntEntry("SETTINGS", "showhiddenfiles", @dirlist.hiddenFilesShown? ? 1 : 0)
850
-
850
+
851
851
  # Was tree shown?
852
852
  getApp().reg().writeIntEntry("SETTINGS", "hidetree", @treebox.shown() ? 0 : 1)
853
-
853
+
854
854
  # Width of tree
855
855
  getApp().reg().writeIntEntry("SETTINGS", "treewidth", @treebox.getWidth())
856
-
856
+
857
857
  # Wrap mode
858
858
  getApp().reg().writeIntEntry("SETTINGS", "wordwrap", (@editor.textStyle & TEXT_WORDWRAP) != 0 ? 1 : 0)
859
859
  getApp().reg().writeIntEntry("SETTINGS", "fixedwrap", (@editor.textStyle & TEXT_FIXEDWRAP) != 0 ? 1 : 0)
860
860
  getApp().reg().writeIntEntry("SETTINGS", "wrapcols", @editor.getWrapColumns())
861
-
861
+
862
862
  # Tab settings, autoindent
863
863
  getApp().reg().writeIntEntry("SETTINGS", "autoindent", (@editor.textStyle & TEXT_AUTOINDENT) != 0 ? 1 : 0)
864
864
  getApp().reg().writeIntEntry("SETTINGS", "hardtabs", (@editor.textStyle & TEXT_NO_TABS) == 0 ? 1 : 0)
865
865
  getApp().reg().writeIntEntry("SETTINGS", "tabcols", @editor.getTabColumns())
866
-
866
+
867
867
  # Strip returns
868
868
  getApp().reg().writeIntEntry("SETTINGS", "stripreturn", @stripcr ? 1 : 0)
869
869
  getApp().reg().writeIntEntry("SETTINGS", "stripspaces", @stripsp ? 1 : 0)
870
-
870
+
871
871
  # File patterns
872
872
  getApp().reg().writeIntEntry("SETTINGS", "filepatternno", getCurrentPattern())
873
873
  patterns = getPatterns().join("\n")
874
874
  getApp().reg().writeStringEntry("SETTINGS", "filepatterns", patterns)
875
-
875
+
876
876
  # Search path
877
877
  getApp().reg().writeStringEntry("SETTINGS", "searchpath", @searchpath)
878
-
878
+
879
879
  # Font
880
880
  getApp().reg().writeStringEntry("SETTINGS", "font", @editor.font.font)
881
881
  end
data/ext/fox16/FXRuby.cpp CHANGED
@@ -85,11 +85,15 @@ static st_table * FXRuby_Objects;
85
85
  * struct. It identifies the Ruby instance associated with a C++ object.
86
86
  * It also indicates whether this is merely a "borrowed" reference to
87
87
  * some C++ object (i.e. it's not one we need to destroy later).
88
+ *
89
+ * in_gc is set for FXWindows that are in garbage collection and must
90
+ * not call ruby code anymore.
88
91
  */
89
92
 
90
93
  struct FXRubyObjDesc {
91
94
  VALUE obj;
92
95
  bool borrowed;
96
+ bool in_gc;
93
97
  };
94
98
 
95
99
 
@@ -108,9 +112,12 @@ VALUE FXRbNewPointerObj(void *ptr,swig_type_info* ty){
108
112
  FXRubyObjDesc *desc;
109
113
  if(FXMALLOC(&desc,FXRubyObjDesc,1)){
110
114
  obj=SWIG_Ruby_NewPointerObj(ptr,ty,1);
115
+ FXTRACE((1,"FXRbNewPointerObj(rubyObj=%d,foxObj=%p)\n",static_cast<int>(obj),ptr));
111
116
  desc->obj=obj;
112
117
  desc->borrowed=true;
113
- st_insert(FXRuby_Objects,reinterpret_cast<st_data_t>(ptr),reinterpret_cast<st_data_t>(desc));
118
+ desc->in_gc=false;
119
+ int overwritten = st_insert(FXRuby_Objects,reinterpret_cast<st_data_t>(ptr),reinterpret_cast<st_data_t>(desc));
120
+ FXASSERT(!overwritten);
114
121
  return obj;
115
122
  }
116
123
  else{
@@ -140,6 +147,25 @@ bool FXRbIsBorrowed(void* ptr){
140
147
  }
141
148
  }
142
149
 
150
+ bool FXRbSetInGC(const void* ptr, bool enabled){
151
+ FXASSERT(ptr!=0);
152
+ FXRubyObjDesc *desc;
153
+ if(st_lookup(FXRuby_Objects,reinterpret_cast<st_data_t>(ptr),reinterpret_cast<st_data_t *>(&desc))!=0){
154
+ desc->in_gc=enabled;
155
+ return enabled;
156
+ }
157
+ return false;
158
+ }
159
+
160
+ bool FXRbIsInGC(const void* ptr){
161
+ FXASSERT(ptr!=0);
162
+ FXRubyObjDesc *desc;
163
+ if(st_lookup(FXRuby_Objects,reinterpret_cast<st_data_t>(ptr),reinterpret_cast<st_data_t *>(&desc))!=0){
164
+ return desc->in_gc;
165
+ }
166
+ return false;
167
+ }
168
+
143
169
 
144
170
  /**
145
171
  * FXRbConvertPtr() is just a wrapper around SWIG_Ruby_ConvertPtr().
@@ -208,18 +234,34 @@ void FXRbRegisterRubyObj(VALUE rubyObj,const void* foxObj) {
208
234
  FXASSERT(foxObj!=0);
209
235
  FXRubyObjDesc* desc;
210
236
  FXTRACE((1,"FXRbRegisterRubyObj(rubyObj=%d,foxObj=%p)\n",static_cast<int>(rubyObj),foxObj));
211
- if(FXMALLOC(&desc,FXRubyObjDesc,1)){
237
+ if(st_lookup(FXRuby_Objects,reinterpret_cast<st_data_t>(const_cast<void*>(foxObj)),reinterpret_cast<st_data_t *>(&desc))!=0){
238
+ FXASSERT(desc->borrowed);
239
+ /* There is already a Ruby object registered for this foxObj.
240
+ * This can happen, if libfox calls methods out of the C++ object constructor,
241
+ * that can be overwritten in Ruby (like changeFocus) with the object as
242
+ * parameter. FXFileSelector is one example.
243
+ * To avoid double references to the same foxObj from different Ruby objects,
244
+ * we decouple the foxObj from previoius ruby object and point to the new one.
245
+ */
246
+ DATA_PTR(desc->obj) = 0;
212
247
  desc->obj=rubyObj;
213
248
  desc->borrowed=false;
214
- st_insert(FXRuby_Objects,reinterpret_cast<st_data_t>(const_cast<void*>(foxObj)),reinterpret_cast<st_data_t>(desc));
215
249
  }
216
250
  else{
217
- FXASSERT(FALSE);
251
+ if(FXMALLOC(&desc,FXRubyObjDesc,1)){
252
+ desc->obj=rubyObj;
253
+ desc->borrowed=false;
254
+ desc->in_gc=false;
255
+ int overwritten = st_insert(FXRuby_Objects,reinterpret_cast<st_data_t>(const_cast<void*>(foxObj)),reinterpret_cast<st_data_t>(desc));
256
+ FXASSERT(!overwritten);
257
+ }
258
+ else{
259
+ FXASSERT(FALSE);
260
+ }
218
261
  }
219
262
  FXASSERT(FXRbGetRubyObj(foxObj,false)==rubyObj);
220
263
  }
221
264
 
222
-
223
265
  /**
224
266
  * Remove this mapping between a Ruby instance and a C++ object
225
267
  */
@@ -1301,6 +1343,7 @@ void FXRbRange2LoHi(VALUE range,FXdouble& lo,FXdouble& hi){
1301
1343
  void FXRbCallVoidMethod(FXObject* recv, ID func) {
1302
1344
  VALUE obj=FXRbGetRubyObj(recv,false);
1303
1345
  FXASSERT(!NIL_P(obj));
1346
+ FXASSERT(!FXRbIsInGC(recv));
1304
1347
  rb_funcall(obj,func,0,NULL);
1305
1348
  }
1306
1349
 
@@ -712,7 +712,7 @@ static FXuint _MKUINT(FXushort l,FXushort h){
712
712
  static FXuint _FXSEL(FXushort type,FXushort id){
713
713
  return FXSEL(type,id);
714
714
  }
715
-
715
+
716
716
  static FXushort _FXSELTYPE(FXuint s){
717
717
  return FXSELTYPE(s);
718
718
  }
@@ -703,7 +703,7 @@ FXint FXIconList_setItem__SWIG_1(FXIconList *self,FXint index,FXString const &te
703
703
 
704
704
  // Do the deed
705
705
  FXint result=self->setItem(index,text,big,mini,ITEMDATA,notify);
706
-
706
+
707
707
  // Now zero-out pointers held by still-alive Ruby objects
708
708
  FXRbUnregisterRubyObj(oldItem);
709
709
 
@@ -1098,7 +1098,7 @@ static void free_FXXPMIcon(FXXPMIcon *);
1098
1098
  FXint width;
1099
1099
  FXint height;
1100
1100
  VALUE ary=Qnil;
1101
-
1101
+
1102
1102
  // Confirm that the input is an array of strings
1103
1103
  Check_Type(strArray,T_ARRAY);
1104
1104
  len=RARRAY_LEN(strArray);
@@ -38,13 +38,13 @@ private:
38
38
  public:
39
39
  // Create an memory buffer object
40
40
  FXMemoryBuffer(FXColor *data,FXuint sz) : buffer(data),size(sz){}
41
-
41
+
42
42
  // Returns a pointer to the data
43
43
  FXColor* getData() const { return buffer; }
44
-
44
+
45
45
  // Returns the size (in bytes)
46
46
  FXuint getSize() const { return size; }
47
-
47
+
48
48
  // Destructor
49
49
  ~FXMemoryBuffer(){}
50
50
  };
@@ -129,7 +129,7 @@ public:
129
129
  public:
130
130
  // Constructor
131
131
  FXRbApp(const FXchar* name,const FXchar* vendor);
132
-
132
+
133
133
  // Construct and call init()
134
134
  static FXRbApp* constructAndInit(const FXchar* name,const FXchar* vendor);
135
135
 
@@ -103,7 +103,7 @@ inline void cls ## _setData(cls* self,FXuchar* pix,FXuint opts,FXint w,FXint h){
103
103
  void cls::setData(FXuchar* pix,FXuint opts,FXint w,FXint h){ \
104
104
  FXRbCallVoidMethod(this,rb_intern("setData"),pix,opts,w,h); \
105
105
  }
106
-
106
+
107
107
 
108
108
 
109
109
  class FXRbBitmap : public FXBitmap {
@@ -23,7 +23,7 @@
23
23
  /***********************************************************************
24
24
  * $Id: FXRbBitmapFrame.h 2190 2005-08-24 07:58:47Z lyle $
25
25
  ***********************************************************************/
26
-
26
+
27
27
  #ifndef FXRBBITMAPFRAME_H
28
28
  #define FXRBBITMAPFRAME_H
29
29
 
@@ -46,7 +46,7 @@ public:
46
46
 
47
47
  // Mark dependencies for the GC
48
48
  static void markfunc(FXBitmapFrame* self);
49
-
49
+
50
50
  /// Destroy the widget, but do not destroy the bitmap
51
51
  virtual ~FXRbBitmapFrame(){
52
52
  FXRbUnregisterRubyObj(this);
@@ -4,7 +4,7 @@ public:
4
4
 
5
5
  // Overrides the base class version of render()
6
6
  virtual void render();
7
-
7
+
8
8
  // Overrides the base class version of release()
9
9
  virtual void release();
10
10
 
@@ -28,7 +28,7 @@ public:
28
28
 
29
29
  /// Fill bitmap with uniform value
30
30
  virtual void fill(FXbool color);
31
-
31
+
32
32
  // Overrides the base class version of setData()
33
33
  virtual void setData(FXuchar *pix,FXuint opts=0);
34
34
 
@@ -45,5 +45,5 @@ public:
45
45
  FXRbUnregisterAppSensitiveObject(this);
46
46
  }
47
47
  };
48
-
48
+
49
49
  #endif