fxruby 1.4.6 → 1.4.7

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 (251) hide show
  1. data/doc/apes02.html +6 -6
  2. data/doc/apes03.html +11 -11
  3. data/doc/book.html +1 -1
  4. data/doc/build.html +63 -63
  5. data/doc/ch03s02.html +7 -7
  6. data/doc/ch03s03.html +18 -18
  7. data/doc/ch03s04.html +11 -11
  8. data/doc/ch03s05.html +14 -14
  9. data/doc/ch04s02.html +14 -14
  10. data/doc/ch04s03.html +15 -15
  11. data/doc/ch04s04.html +28 -28
  12. data/doc/ch05s02.html +49 -49
  13. data/doc/ch05s03.html +8 -8
  14. data/doc/changes.html +176 -176
  15. data/doc/clipboardtut.html +11 -11
  16. data/doc/cvs.html +10 -10
  17. data/doc/differences.html +4 -4
  18. data/doc/dragdroptut.html +50 -50
  19. data/doc/events.html +11 -11
  20. data/doc/examples.html +47 -47
  21. data/doc/gems.html +37 -37
  22. data/doc/goals.html +4 -4
  23. data/doc/images/iconlist-bigicons.png +0 -0
  24. data/doc/images/iconlist-details.png +0 -0
  25. data/doc/implementation.html +4 -4
  26. data/doc/infosources.html +6 -6
  27. data/doc/library.html +19 -19
  28. data/doc/opengl.html +31 -31
  29. data/doc/pt01.html +1 -1
  30. data/doc/pt02.html +1 -1
  31. data/doc/scintilla.html +15 -15
  32. data/doc/todo.html +5 -5
  33. data/doc/tutorial1.html +34 -34
  34. data/examples/dilbert.rb +1 -1
  35. data/ext/fox14/FXRbApp.cpp +1 -1
  36. data/ext/fox14/FXRbDataTarget.cpp +1 -1
  37. data/ext/fox14/FXRbGLViewer.cpp +1 -1
  38. data/ext/fox14/FXRuby.cpp +1 -1
  39. data/ext/fox14/core_wrap.cpp +0 -12
  40. data/ext/fox14/dialogs_wrap.cpp +43 -19
  41. data/ext/fox14/frames_wrap.cpp +1130 -308
  42. data/ext/fox14/fx3d_wrap.cpp +38 -13
  43. data/ext/fox14/icons_wrap.cpp +24 -6
  44. data/ext/fox14/image_wrap.cpp +24 -6
  45. data/ext/fox14/include/FXMemoryBuffer.h +1 -1
  46. data/ext/fox14/include/FXRb4Splitter.h +1 -1
  47. data/ext/fox14/include/FXRb7Segment.h +1 -1
  48. data/ext/fox14/include/FXRbAccelTable.h +1 -1
  49. data/ext/fox14/include/FXRbApp.h +1 -1
  50. data/ext/fox14/include/FXRbArrowButton.h +1 -1
  51. data/ext/fox14/include/FXRbBMPIcon.h +1 -1
  52. data/ext/fox14/include/FXRbBMPImage.h +1 -1
  53. data/ext/fox14/include/FXRbBitmap.h +1 -1
  54. data/ext/fox14/include/FXRbBitmapFrame.h +1 -1
  55. data/ext/fox14/include/FXRbBitmapView.h +1 -1
  56. data/ext/fox14/include/FXRbButton.h +1 -1
  57. data/ext/fox14/include/FXRbCURCursor.h +1 -1
  58. data/ext/fox14/include/FXRbCanvas.h +1 -1
  59. data/ext/fox14/include/FXRbCheckButton.h +1 -1
  60. data/ext/fox14/include/FXRbChoiceBox.h +1 -1
  61. data/ext/fox14/include/FXRbColorBar.h +1 -1
  62. data/ext/fox14/include/FXRbColorDialog.h +1 -1
  63. data/ext/fox14/include/FXRbColorSelector.h +1 -1
  64. data/ext/fox14/include/FXRbColorWell.h +1 -1
  65. data/ext/fox14/include/FXRbColorWheel.h +1 -1
  66. data/ext/fox14/include/FXRbComboBox.h +1 -1
  67. data/ext/fox14/include/FXRbCommon.h +1 -1
  68. data/ext/fox14/include/FXRbComposite.h +1 -1
  69. data/ext/fox14/include/FXRbCursor.h +1 -1
  70. data/ext/fox14/include/FXRbDC.h +1 -1
  71. data/ext/fox14/include/FXRbDCPrint.h +1 -1
  72. data/ext/fox14/include/FXRbDCWindow.h +1 -1
  73. data/ext/fox14/include/FXRbDataTarget.h +1 -1
  74. data/ext/fox14/include/FXRbDebugTarget.h +1 -1
  75. data/ext/fox14/include/FXRbDelegator.h +1 -1
  76. data/ext/fox14/include/FXRbDial.h +1 -1
  77. data/ext/fox14/include/FXRbDialogBox.h +1 -1
  78. data/ext/fox14/include/FXRbDict.h +1 -1
  79. data/ext/fox14/include/FXRbDirBox.h +1 -1
  80. data/ext/fox14/include/FXRbDirDialog.h +1 -1
  81. data/ext/fox14/include/FXRbDirList.h +1 -1
  82. data/ext/fox14/include/FXRbDirSelector.h +1 -1
  83. data/ext/fox14/include/FXRbDockBar.h +1 -1
  84. data/ext/fox14/include/FXRbDockHandler.h +1 -1
  85. data/ext/fox14/include/FXRbDockSite.h +1 -1
  86. data/ext/fox14/include/FXRbDockTitle.h +1 -1
  87. data/ext/fox14/include/FXRbDocument.h +1 -1
  88. data/ext/fox14/include/FXRbDragCorner.h +1 -1
  89. data/ext/fox14/include/FXRbDrawable.h +1 -1
  90. data/ext/fox14/include/FXRbDriveBox.h +1 -1
  91. data/ext/fox14/include/FXRbFileDialog.h +1 -1
  92. data/ext/fox14/include/FXRbFileDict.h +1 -1
  93. data/ext/fox14/include/FXRbFileList.h +1 -1
  94. data/ext/fox14/include/FXRbFileSelector.h +1 -1
  95. data/ext/fox14/include/FXRbFoldingList.h +1 -1
  96. data/ext/fox14/include/FXRbFont.h +1 -1
  97. data/ext/fox14/include/FXRbFontDialog.h +1 -1
  98. data/ext/fox14/include/FXRbFontSelector.h +1 -1
  99. data/ext/fox14/include/FXRbFrame.h +1 -1
  100. data/ext/fox14/include/FXRbGIFCursor.h +1 -1
  101. data/ext/fox14/include/FXRbGIFIcon.h +1 -1
  102. data/ext/fox14/include/FXRbGIFImage.h +1 -1
  103. data/ext/fox14/include/FXRbGLCanvas.h +1 -1
  104. data/ext/fox14/include/FXRbGLContext.h +1 -1
  105. data/ext/fox14/include/FXRbGLObject.h +1 -1
  106. data/ext/fox14/include/FXRbGLShape.h +1 -1
  107. data/ext/fox14/include/FXRbGLViewer.h +1 -1
  108. data/ext/fox14/include/FXRbGLVisual.h +1 -1
  109. data/ext/fox14/include/FXRbGradientBar.h +1 -1
  110. data/ext/fox14/include/FXRbGroupBox.h +1 -1
  111. data/ext/fox14/include/FXRbHeader.h +1 -1
  112. data/ext/fox14/include/FXRbHorizontalFrame.h +1 -1
  113. data/ext/fox14/include/FXRbICOIcon.h +1 -1
  114. data/ext/fox14/include/FXRbICOImage.h +1 -1
  115. data/ext/fox14/include/FXRbIcon.h +1 -1
  116. data/ext/fox14/include/FXRbIconList.h +1 -1
  117. data/ext/fox14/include/FXRbIconSource.h +1 -1
  118. data/ext/fox14/include/FXRbId.h +1 -1
  119. data/ext/fox14/include/FXRbImage.h +1 -1
  120. data/ext/fox14/include/FXRbImageFrame.h +1 -1
  121. data/ext/fox14/include/FXRbImageView.h +1 -1
  122. data/ext/fox14/include/FXRbInputDialog.h +1 -1
  123. data/ext/fox14/include/FXRbJPGIcon.h +1 -1
  124. data/ext/fox14/include/FXRbJPGImage.h +1 -1
  125. data/ext/fox14/include/FXRbLabel.h +1 -1
  126. data/ext/fox14/include/FXRbList.h +1 -1
  127. data/ext/fox14/include/FXRbListBox.h +1 -1
  128. data/ext/fox14/include/FXRbMDIButton.h +1 -1
  129. data/ext/fox14/include/FXRbMDIChild.h +1 -1
  130. data/ext/fox14/include/FXRbMDIClient.h +1 -1
  131. data/ext/fox14/include/FXRbMainWindow.h +1 -1
  132. data/ext/fox14/include/FXRbMatrix.h +1 -1
  133. data/ext/fox14/include/FXRbMenuBar.h +1 -1
  134. data/ext/fox14/include/FXRbMenuButton.h +1 -1
  135. data/ext/fox14/include/FXRbMenuCaption.h +1 -1
  136. data/ext/fox14/include/FXRbMenuCascade.h +1 -1
  137. data/ext/fox14/include/FXRbMenuCheck.h +1 -1
  138. data/ext/fox14/include/FXRbMenuCommand.h +1 -1
  139. data/ext/fox14/include/FXRbMenuPane.h +1 -1
  140. data/ext/fox14/include/FXRbMenuRadio.h +1 -1
  141. data/ext/fox14/include/FXRbMenuSeparator.h +1 -1
  142. data/ext/fox14/include/FXRbMenuTitle.h +1 -1
  143. data/ext/fox14/include/FXRbMessageBox.h +1 -1
  144. data/ext/fox14/include/FXRbObject.h +1 -1
  145. data/ext/fox14/include/FXRbOptionMenu.h +1 -1
  146. data/ext/fox14/include/FXRbPCXIcon.h +1 -1
  147. data/ext/fox14/include/FXRbPCXImage.h +1 -1
  148. data/ext/fox14/include/FXRbPNGIcon.h +1 -1
  149. data/ext/fox14/include/FXRbPNGImage.h +1 -1
  150. data/ext/fox14/include/FXRbPPMIcon.h +1 -1
  151. data/ext/fox14/include/FXRbPPMImage.h +1 -1
  152. data/ext/fox14/include/FXRbPacker.h +1 -1
  153. data/ext/fox14/include/FXRbPicker.h +1 -1
  154. data/ext/fox14/include/FXRbPopup.h +1 -1
  155. data/ext/fox14/include/FXRbPrintDialog.h +1 -1
  156. data/ext/fox14/include/FXRbProgressBar.h +1 -1
  157. data/ext/fox14/include/FXRbProgressDialog.h +1 -1
  158. data/ext/fox14/include/FXRbRGBIcon.h +1 -1
  159. data/ext/fox14/include/FXRbRGBImage.h +1 -1
  160. data/ext/fox14/include/FXRbRadioButton.h +1 -1
  161. data/ext/fox14/include/FXRbRealSlider.h +1 -1
  162. data/ext/fox14/include/FXRbRealSpinner.h +1 -1
  163. data/ext/fox14/include/FXRbRecentFiles.h +1 -1
  164. data/ext/fox14/include/FXRbRegistry.h +1 -1
  165. data/ext/fox14/include/FXRbReplaceDialog.h +1 -1
  166. data/ext/fox14/include/FXRbRootWindow.h +1 -1
  167. data/ext/fox14/include/FXRbRuler.h +1 -1
  168. data/ext/fox14/include/FXRbScintilla.h +1 -1
  169. data/ext/fox14/include/FXRbScrollArea.h +1 -1
  170. data/ext/fox14/include/FXRbScrollBar.h +1 -1
  171. data/ext/fox14/include/FXRbScrollPane.h +1 -1
  172. data/ext/fox14/include/FXRbScrollWindow.h +1 -1
  173. data/ext/fox14/include/FXRbSearchDialog.h +1 -1
  174. data/ext/fox14/include/FXRbSeparator.h +1 -1
  175. data/ext/fox14/include/FXRbSettings.h +1 -1
  176. data/ext/fox14/include/FXRbShell.h +1 -1
  177. data/ext/fox14/include/FXRbShutter.h +1 -1
  178. data/ext/fox14/include/FXRbSlider.h +1 -1
  179. data/ext/fox14/include/FXRbSpinner.h +1 -1
  180. data/ext/fox14/include/FXRbSplashWindow.h +1 -1
  181. data/ext/fox14/include/FXRbSplitter.h +1 -1
  182. data/ext/fox14/include/FXRbSpring.h +1 -1
  183. data/ext/fox14/include/FXRbStatusBar.h +1 -1
  184. data/ext/fox14/include/FXRbStatusLine.h +1 -1
  185. data/ext/fox14/include/FXRbStream.h +1 -1
  186. data/ext/fox14/include/FXRbStringDict.h +1 -1
  187. data/ext/fox14/include/FXRbSwitcher.h +1 -1
  188. data/ext/fox14/include/FXRbTGAIcon.h +1 -1
  189. data/ext/fox14/include/FXRbTGAImage.h +1 -1
  190. data/ext/fox14/include/FXRbTIFIcon.h +1 -1
  191. data/ext/fox14/include/FXRbTIFImage.h +1 -1
  192. data/ext/fox14/include/FXRbTabBar.h +1 -1
  193. data/ext/fox14/include/FXRbTabBook.h +1 -1
  194. data/ext/fox14/include/FXRbTabItem.h +1 -1
  195. data/ext/fox14/include/FXRbTable.h +1 -1
  196. data/ext/fox14/include/FXRbText.h +1 -1
  197. data/ext/fox14/include/FXRbTextField.h +1 -1
  198. data/ext/fox14/include/FXRbToggleButton.h +1 -1
  199. data/ext/fox14/include/FXRbToolBar.h +1 -1
  200. data/ext/fox14/include/FXRbToolBarGrip.h +1 -1
  201. data/ext/fox14/include/FXRbToolBarShell.h +1 -1
  202. data/ext/fox14/include/FXRbToolBarTab.h +1 -1
  203. data/ext/fox14/include/FXRbToolTip.h +1 -1
  204. data/ext/fox14/include/FXRbTopWindow.h +1 -1
  205. data/ext/fox14/include/FXRbTreeList.h +1 -1
  206. data/ext/fox14/include/FXRbTreeListBox.h +1 -1
  207. data/ext/fox14/include/FXRbTriStateButton.h +1 -1
  208. data/ext/fox14/include/FXRbVerticalFrame.h +1 -1
  209. data/ext/fox14/include/FXRbVisual.h +1 -1
  210. data/ext/fox14/include/FXRbWindow.h +1 -1
  211. data/ext/fox14/include/FXRbWizard.h +1 -1
  212. data/ext/fox14/include/FXRbXBMIcon.h +1 -1
  213. data/ext/fox14/include/FXRbXBMImage.h +1 -1
  214. data/ext/fox14/include/FXRbXPMIcon.h +1 -1
  215. data/ext/fox14/include/FXRbXPMImage.h +1 -1
  216. data/ext/fox14/include/FXRuby.h +1 -1
  217. data/ext/fox14/label_wrap.cpp +23 -8
  218. data/ext/fox14/markfuncs.cpp +8 -1
  219. data/ext/fox14/mdi_wrap.cpp +47 -17
  220. data/ext/fox14/menu_wrap.cpp +34 -10
  221. data/ext/fox14/scintilla_wrap.cpp +31 -7
  222. data/ext/fox14/table_wrap.cpp +31 -7
  223. data/ext/fox14/text_wrap.cpp +31 -7
  224. data/ext/fox14/treelist_wrap.cpp +31 -7
  225. data/ext/fox14/ui_wrap.cpp +497 -154
  226. data/ext/fox14/unregisterOwnedObjects.cpp +1 -1
  227. data/lib/fox14/aliases.rb +3 -3
  228. data/lib/fox14/colors.rb +282 -282
  229. data/lib/fox14/core.rb +7 -0
  230. data/lib/fox14/splashscreen.rb +83 -83
  231. data/lib/fox14/version.rb +1 -1
  232. data/rdoc-sources/FX4Splitter.rb +138 -138
  233. data/rdoc-sources/FXFoldingList.rb +2 -2
  234. data/rdoc-sources/FXQuatd.rb +171 -1
  235. data/rdoc-sources/FXQuatf.rb +175 -1
  236. data/rdoc-sources/FXWindow.rb +0 -3
  237. data/tests/TC_FXComboBox.rb +10 -1
  238. data/tests/TC_FXDirList.rb +1 -1
  239. data/tests/TC_FXGLViewer.rb +2 -0
  240. data/tests/TC_FXHeader.rb +1 -1
  241. data/tests/TC_FXIconList.rb +1 -1
  242. data/tests/TC_FXId.rb +1 -1
  243. data/tests/TC_FXListBox.rb +1 -1
  244. data/tests/TC_FXMenuCommand.rb +0 -14
  245. data/tests/TC_FXTable.rb +0 -32
  246. data/tests/TC_FXTableItem.rb +1 -1
  247. data/tests/TC_FXTreeList.rb +1 -1
  248. data/tests/TC_FXTreeListBox.rb +1 -1
  249. data/web/top.html +15 -15
  250. metadata +2 -3
  251. data/ChangeLog +0 -11094
data/lib/fox14/core.rb CHANGED
@@ -212,6 +212,13 @@ module Fox
212
212
  end
213
213
  end
214
214
 
215
+ # Return an array containing all child windows of this window
216
+ def children
217
+ kids = []
218
+ each_child { |kid| kids << kid }
219
+ kids
220
+ end
221
+
215
222
  # Return +true+ if this window (self) comes before sibling window _other_.
216
223
  def before?(other)
217
224
  FXWindow.before?(other)
@@ -1,83 +1,83 @@
1
- #
2
- # Splashscreen component, contributed by David Naseby.
3
- #
4
-
5
- require 'fox14'
6
- require 'fox14/colors'
7
-
8
- module Fox
9
- #
10
- # The FXSplashScreen window...
11
- #
12
- class FXSplashScreen < FXDialogBox
13
-
14
- #
15
- # Return an initialized FXSplashScreen instance.
16
- #
17
- # ==== Parameters:
18
- #
19
- # +owner+:: Owner window for this dialog box [FXWindow]
20
- # +title+:: Title string for this dialog box [String]
21
- # +text+:: Message text for this dialog box [String]
22
- # +action+:: The action
23
- #
24
- def initialize( owner, title, text, action )
25
- # Initialize the base class first
26
- super(owner, title)
27
-
28
- # Store the action block
29
- @action = action
30
-
31
- # Construct the window contents
32
- FXVerticalFrame.new( self ) do |frame|
33
- text.each_line do |line|
34
- FXLabel.new( frame, line.strip )
35
- end
36
- FXLabel.new( frame, "Click OK to continue (this may take a few moments)...." )
37
- @status = FXLabel.new( frame, " " )
38
- @accept = FXButton.new( frame, "&OK", nil, self, ID_ACCEPT,
39
- FRAME_RAISED|FRAME_THICK|LAYOUT_RIGHT|LAYOUT_CENTER_Y)
40
- @accept.enabled = false
41
- end
42
- end
43
-
44
- def execute(placement = PLACEMENT_OWNER)
45
- Thread.new do
46
- sleep 1
47
- @action.call method( :update_status )
48
- update_status "Completed"
49
- @accept.enabled = true
50
- end
51
- super
52
- end
53
-
54
- def update_status(msg)
55
- @status.text = msg
56
- end
57
- end
58
- end
59
-
60
- if $0 == __FILE__
61
- class FakeSite # :nodoc:
62
- def open( &status )
63
- yield ">>>>> Opening Site" if block_given?
64
- sleep 5
65
- yield "site open" if block_given?
66
- end
67
- end
68
- fake_site = FakeSite.new
69
-
70
- include Fox
71
-
72
- FXApp.new( "Test SplashScreen" ) do |theApp|
73
- FXMainWindow.new( theApp, "Hello" ) do |mainWin|
74
- FXButton.new( mainWin, "Show Splash" ).connect( SEL_COMMAND ) do
75
- lv = FXSplashScreen.new( mainWin, "Opening Site", "Welcome to Sitebuilder!\nOpening the site.\n", lambda{ |proc| fake_site.open( &proc ) } )
76
- lv.execute
77
- end
78
- mainWin.show
79
- end
80
- theApp.create
81
- theApp.run
82
- end
83
- end
1
+ #
2
+ # Splashscreen component, contributed by David Naseby.
3
+ #
4
+
5
+ require 'fox14'
6
+ require 'fox14/colors'
7
+
8
+ module Fox
9
+ #
10
+ # The FXSplashScreen window...
11
+ #
12
+ class FXSplashScreen < FXDialogBox
13
+
14
+ #
15
+ # Return an initialized FXSplashScreen instance.
16
+ #
17
+ # ==== Parameters:
18
+ #
19
+ # +owner+:: Owner window for this dialog box [FXWindow]
20
+ # +title+:: Title string for this dialog box [String]
21
+ # +text+:: Message text for this dialog box [String]
22
+ # +action+:: The action
23
+ #
24
+ def initialize( owner, title, text, action )
25
+ # Initialize the base class first
26
+ super(owner, title)
27
+
28
+ # Store the action block
29
+ @action = action
30
+
31
+ # Construct the window contents
32
+ FXVerticalFrame.new( self ) do |frame|
33
+ text.each_line do |line|
34
+ FXLabel.new( frame, line.strip )
35
+ end
36
+ FXLabel.new( frame, "Click OK to continue (this may take a few moments)...." )
37
+ @status = FXLabel.new( frame, " " )
38
+ @accept = FXButton.new( frame, "&OK", nil, self, ID_ACCEPT,
39
+ FRAME_RAISED|FRAME_THICK|LAYOUT_RIGHT|LAYOUT_CENTER_Y)
40
+ @accept.enabled = false
41
+ end
42
+ end
43
+
44
+ def execute(placement = PLACEMENT_OWNER)
45
+ Thread.new do
46
+ sleep 1
47
+ @action.call method( :update_status )
48
+ update_status "Completed"
49
+ @accept.enabled = true
50
+ end
51
+ super
52
+ end
53
+
54
+ def update_status(msg)
55
+ @status.text = msg
56
+ end
57
+ end
58
+ end
59
+
60
+ if $0 == __FILE__
61
+ class FakeSite # :nodoc:
62
+ def open( &status )
63
+ yield ">>>>> Opening Site" if block_given?
64
+ sleep 5
65
+ yield "site open" if block_given?
66
+ end
67
+ end
68
+ fake_site = FakeSite.new
69
+
70
+ include Fox
71
+
72
+ FXApp.new( "Test SplashScreen" ) do |theApp|
73
+ FXMainWindow.new( theApp, "Hello" ) do |mainWin|
74
+ FXButton.new( mainWin, "Show Splash" ).connect( SEL_COMMAND ) do
75
+ lv = FXSplashScreen.new( mainWin, "Opening Site", "Welcome to Sitebuilder!\nOpening the site.\n", lambda{ |proc| fake_site.open( &proc ) } )
76
+ lv.execute
77
+ end
78
+ mainWin.show
79
+ end
80
+ theApp.create
81
+ theApp.run
82
+ end
83
+ end
data/lib/fox14/version.rb CHANGED
@@ -5,7 +5,7 @@ module Fox
5
5
  # Returns the FXRuby version number as a string, e.g. "1.0.19".
6
6
  #
7
7
  def Fox.fxrubyversion
8
- "1.4.6"
8
+ "1.4.7"
9
9
  end
10
10
  end
11
11
 
@@ -1,138 +1,138 @@
1
- module Fox
2
-
3
- #
4
- # The four-way splitter is a layout manager which manages
5
- # four children like four panes in a window.
6
- # You can use a four-way splitter for example in a CAD program
7
- # where you may want to maintain three orthographic views, and
8
- # one oblique view of a model.
9
- # The four-way splitter allows interactive repartitioning of the
10
- # panes by means of moving the central splitter bars.
11
- # When the four-way splitter is itself resized, each child is
12
- # proportionally resized, maintaining the same split-percentage.
13
- #
14
- # === Events
15
- #
16
- # The following messages are sent by FX4Splitter to its target:
17
- #
18
- # +SEL_LEFTBUTTONPRESS+:: sent when the left mouse button goes down; the message data is an FXEvent instance.
19
- # +SEL_LEFTBUTTONRELEASE+:: sent when the left mouse button goes up; the message data is an FXEvent instance.
20
- # +SEL_COMMAND+:: sent at the end of a resize operation, to signal that the resize is complete
21
- # +SEL_CHANGED+:: sent continuously while a resize operation is occurring
22
- #
23
- # === Splitter options
24
- #
25
- # +FOURSPLITTER_TRACKING+:: Track continuously during split
26
- # +FOURSPLITTER_NORMAL+:: Normal mode (no continuous tracking)
27
- #
28
- # === Message identifiers
29
- #
30
- # +ID_EXPAND_ALL+:: Expand all four panes
31
- # +ID_EXPAND_TOPLEFT+:: Expand the top left pane
32
- # +ID_EXPAND_TOPRIGHT+:: Expand the top right pane
33
- # +ID_EXPAND_BOTTOMLEFT+:: Expand the bottom left pane
34
- # +ID_EXPAND_BOTTOMRIGHT+:: Expand the bottom right pane
35
- #
36
- class FX4Splitter < FXComposite
37
-
38
- # Horizontal split fraction [Integer]
39
- attr_accessor :hSplit
40
-
41
- # Vertical split fraction [Integer]
42
- attr_accessor :vSplit
43
-
44
- # Current splitter style, either +FOURSPLITTER_TRACKING+ or +FOURSPLITTER_NORMAL+
45
- attr_accessor :splitterStyle
46
-
47
- # Splitter bar width, in pixels [Integer]
48
- attr_accessor :barSize
49
-
50
- # Currently expanded child (0, 1, 2 or 3) or -1 if not expanded [Integer]
51
- attr_accessor :expanded
52
-
53
- # Top left child window, if any [FXWindow]
54
- attr_reader :topLeft
55
-
56
- # Top right child window, if any [FXWindow]
57
- attr_reader :topRight
58
-
59
- # Bottom left child window, if any [FXWindow]
60
- attr_reader :bottomLeft
61
-
62
- # Bottom right child window, if any [FXWindow]
63
- attr_reader :bottomRight
64
-
65
- #
66
- # Return an initialized FX4Splitter instance, initially shown as four unexpanded panes
67
- #
68
- # ==== Parameters:
69
- #
70
- # +p+:: the parent widget for this splitter [FXComposite]
71
- # +opts+:: the options [Integer]
72
- # +x+:: initial x-position [Integer]
73
- # +y+:: initial y-position [Integer]
74
- # +w+:: initial width [Integer]
75
- # +h+:: initial height [Integer]
76
- #
77
- def initialize(p, opts=FOURSPLITTER_NORMAL, x=0, y=0, w=0, h=0) # :yields: theSplitter
78
- end
79
-
80
- #
81
- # Return an initialized FX4Splitter instance, initially shown as four unexpanded panes;
82
- # notifies _tgt_ about size changes.
83
- #
84
- # ==== Parameters:
85
- #
86
- # +p+:: the parent widget for this splitter [FXComposite]
87
- # +tgt+:: message target [FXObject]
88
- # +sel+:: message identifier [Integer]
89
- # +opts+:: the options [Integer]
90
- # +x+:: initial x-position [Integer]
91
- # +y+:: initial y-position [Integer]
92
- # +w+:: initial width [Integer]
93
- # +h+:: initial height [Integer]
94
- #
95
- def initialize(p, tgt, sel, opts=FOURSPLITTER_NORMAL, x=0, y=0, w=0, h=0) # :yields: theSplitter
96
- end
97
-
98
- #
99
- # Change horizontal split fraction. The split fraction _s_ is
100
- # an integer value between 0 and 10000 (inclusive), indicating
101
- # how much space to allocate to the leftmost panes. For example,
102
- # to split the panes at 35 percent, use:
103
- #
104
- # fourSplitter.setHSplit(3500)
105
- #
106
- # or just:
107
- #
108
- # fourSplitter.hSplit = 3500
109
- #
110
- def setHSplit(s); end
111
-
112
- #
113
- # Return the horizontal split fraction, an integer between 0 and
114
- # 10000 inclusive. See FX4Splitter#setHSplit for more information.
115
- #
116
- def getHSplit(); end
117
-
118
- #
119
- # Change vertical split fraction. The split fraction _s_ is
120
- # an integer value between 0 and 10000 (inclusive), indicating
121
- # how much space to allocate to the topmost panes. For example,
122
- # to split the panes at 35 percent, use:
123
- #
124
- # fourSplitter.setVSplit(3500)
125
- #
126
- # or just:
127
- #
128
- # fourSplitter.vSplit = 3500
129
- #
130
- def setVSplit(s); end
131
-
132
- #
133
- # Return the vertical split fraction, an integer between 0 and
134
- # 10000 inclusive. See FX4Splitter#setVSplit for more information.
135
- #
136
- def getVSplit(); end
137
- end
138
- end
1
+ module Fox
2
+
3
+ #
4
+ # The four-way splitter is a layout manager which manages
5
+ # four children like four panes in a window.
6
+ # You can use a four-way splitter for example in a CAD program
7
+ # where you may want to maintain three orthographic views, and
8
+ # one oblique view of a model.
9
+ # The four-way splitter allows interactive repartitioning of the
10
+ # panes by means of moving the central splitter bars.
11
+ # When the four-way splitter is itself resized, each child is
12
+ # proportionally resized, maintaining the same split-percentage.
13
+ #
14
+ # === Events
15
+ #
16
+ # The following messages are sent by FX4Splitter to its target:
17
+ #
18
+ # +SEL_LEFTBUTTONPRESS+:: sent when the left mouse button goes down; the message data is an FXEvent instance.
19
+ # +SEL_LEFTBUTTONRELEASE+:: sent when the left mouse button goes up; the message data is an FXEvent instance.
20
+ # +SEL_COMMAND+:: sent at the end of a resize operation, to signal that the resize is complete
21
+ # +SEL_CHANGED+:: sent continuously while a resize operation is occurring
22
+ #
23
+ # === Splitter options
24
+ #
25
+ # +FOURSPLITTER_TRACKING+:: Track continuously during split
26
+ # +FOURSPLITTER_NORMAL+:: Normal mode (no continuous tracking)
27
+ #
28
+ # === Message identifiers
29
+ #
30
+ # +ID_EXPAND_ALL+:: Expand all four panes
31
+ # +ID_EXPAND_TOPLEFT+:: Expand the top left pane
32
+ # +ID_EXPAND_TOPRIGHT+:: Expand the top right pane
33
+ # +ID_EXPAND_BOTTOMLEFT+:: Expand the bottom left pane
34
+ # +ID_EXPAND_BOTTOMRIGHT+:: Expand the bottom right pane
35
+ #
36
+ class FX4Splitter < FXComposite
37
+
38
+ # Horizontal split fraction [Integer]
39
+ attr_accessor :hSplit
40
+
41
+ # Vertical split fraction [Integer]
42
+ attr_accessor :vSplit
43
+
44
+ # Current splitter style, either +FOURSPLITTER_TRACKING+ or +FOURSPLITTER_NORMAL+
45
+ attr_accessor :splitterStyle
46
+
47
+ # Splitter bar width, in pixels [Integer]
48
+ attr_accessor :barSize
49
+
50
+ # Currently expanded child (0, 1, 2 or 3) or -1 if not expanded [Integer]
51
+ attr_accessor :expanded
52
+
53
+ # Top left child window, if any [FXWindow]
54
+ attr_reader :topLeft
55
+
56
+ # Top right child window, if any [FXWindow]
57
+ attr_reader :topRight
58
+
59
+ # Bottom left child window, if any [FXWindow]
60
+ attr_reader :bottomLeft
61
+
62
+ # Bottom right child window, if any [FXWindow]
63
+ attr_reader :bottomRight
64
+
65
+ #
66
+ # Return an initialized FX4Splitter instance, initially shown as four unexpanded panes
67
+ #
68
+ # ==== Parameters:
69
+ #
70
+ # +p+:: the parent widget for this splitter [FXComposite]
71
+ # +opts+:: the options [Integer]
72
+ # +x+:: initial x-position [Integer]
73
+ # +y+:: initial y-position [Integer]
74
+ # +w+:: initial width [Integer]
75
+ # +h+:: initial height [Integer]
76
+ #
77
+ def initialize(p, opts=FOURSPLITTER_NORMAL, x=0, y=0, w=0, h=0) # :yields: theSplitter
78
+ end
79
+
80
+ #
81
+ # Return an initialized FX4Splitter instance, initially shown as four unexpanded panes;
82
+ # notifies _tgt_ about size changes.
83
+ #
84
+ # ==== Parameters:
85
+ #
86
+ # +p+:: the parent widget for this splitter [FXComposite]
87
+ # +tgt+:: message target [FXObject]
88
+ # +sel+:: message identifier [Integer]
89
+ # +opts+:: the options [Integer]
90
+ # +x+:: initial x-position [Integer]
91
+ # +y+:: initial y-position [Integer]
92
+ # +w+:: initial width [Integer]
93
+ # +h+:: initial height [Integer]
94
+ #
95
+ def initialize(p, tgt, sel, opts=FOURSPLITTER_NORMAL, x=0, y=0, w=0, h=0) # :yields: theSplitter
96
+ end
97
+
98
+ #
99
+ # Change horizontal split fraction. The split fraction _s_ is
100
+ # an integer value between 0 and 10000 (inclusive), indicating
101
+ # how much space to allocate to the leftmost panes. For example,
102
+ # to split the panes at 35 percent, use:
103
+ #
104
+ # fourSplitter.setHSplit(3500)
105
+ #
106
+ # or just:
107
+ #
108
+ # fourSplitter.hSplit = 3500
109
+ #
110
+ def setHSplit(s); end
111
+
112
+ #
113
+ # Return the horizontal split fraction, an integer between 0 and
114
+ # 10000 inclusive. See FX4Splitter#setHSplit for more information.
115
+ #
116
+ def getHSplit(); end
117
+
118
+ #
119
+ # Change vertical split fraction. The split fraction _s_ is
120
+ # an integer value between 0 and 10000 (inclusive), indicating
121
+ # how much space to allocate to the topmost panes. For example,
122
+ # to split the panes at 35 percent, use:
123
+ #
124
+ # fourSplitter.setVSplit(3500)
125
+ #
126
+ # or just:
127
+ #
128
+ # fourSplitter.vSplit = 3500
129
+ #
130
+ def setVSplit(s); end
131
+
132
+ #
133
+ # Return the vertical split fraction, an integer between 0 and
134
+ # 10000 inclusive. See FX4Splitter#setVSplit for more information.
135
+ #
136
+ def getVSplit(); end
137
+ end
138
+ end