fxruby 1.4.6 → 1.4.7

Sign up to get free protection for your applications and to get access to all the features.
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