wxruby3 0.9.0 → 0.9.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (205) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -0
  3. data/ext/wxruby3/include/wxRubyApp.h +338 -0
  4. data/ext/wxruby3/include/wxruby-Config.h +6 -6
  5. data/ext/wxruby3/include/wxruby-runtime.h +3 -0
  6. data/ext/wxruby3/swig/common.i +22 -0
  7. data/ext/wxruby3/swig/custom/director.swg +296 -0
  8. data/ext/wxruby3/swig/custom/rubyapi.swg +19 -0
  9. data/ext/wxruby3/swig/custom/rubyerrors.swg +45 -0
  10. data/ext/wxruby3/swig/custom/rubyhead.swg +192 -0
  11. data/ext/wxruby3/swig/custom/rubyrun.swg +187 -0
  12. data/ext/wxruby3/swig/custom/swigrun.swg +363 -0
  13. data/ext/wxruby3/swig/custom/typemaps/swigtypemaps.swg +173 -0
  14. data/ext/wxruby3/swig/wx.i +50 -30
  15. data/lib/wx/aui/aui_tab_ctrl.rb +18 -0
  16. data/lib/wx/aui/auinotebook.rb +6 -2
  17. data/lib/wx/aui/require.rb +1 -0
  18. data/lib/wx/core/app.rb +2 -2
  19. data/lib/wx/core/collapsible_pane.rb +1 -1
  20. data/lib/wx/core/const.rb +83 -0
  21. data/lib/wx/core/controlwithitems.rb +8 -6
  22. data/lib/wx/core/menu.rb +10 -0
  23. data/lib/wx/core/notebook.rb +6 -2
  24. data/lib/wx/core/sizer.rb +11 -0
  25. data/lib/wx/core/task_bar_button.rb +19 -0
  26. data/lib/wx/core/textctrl.rb +11 -1
  27. data/lib/wx/core/{treectrl.rb → tree_ctrl.rb} +31 -12
  28. data/lib/wx/core/window.rb +10 -0
  29. data/lib/wx/doc/app.rb +48 -38
  30. data/lib/wx/doc/art_locator.rb +47 -43
  31. data/lib/wx/doc/aui/auimanager.rb +16 -8
  32. data/lib/wx/doc/aui/auinotebook.rb +20 -5
  33. data/lib/wx/doc/clipboard.rb +11 -7
  34. data/lib/wx/doc/colour_dialog.rb +14 -10
  35. data/lib/wx/doc/const.rb +66 -66
  36. data/lib/wx/doc/controlwithitems.rb +17 -7
  37. data/lib/wx/doc/data_object.rb +2 -2
  38. data/lib/wx/doc/event.rb +0 -6
  39. data/lib/wx/doc/evthandler.rb +113 -108
  40. data/lib/wx/doc/font.rb +1 -0
  41. data/lib/wx/doc/functions.rb +9 -9
  42. data/lib/wx/doc/gc_dc.rb +6 -1
  43. data/lib/wx/doc/graphics_context.rb +1 -0
  44. data/lib/wx/doc/grid/grid.rb +22 -1
  45. data/lib/wx/doc/help_controller.rb +11 -7
  46. data/lib/wx/doc/html/html_help_controller.rb +12 -4
  47. data/lib/wx/doc/list_ctrl.rb +33 -29
  48. data/lib/wx/doc/menu.rb +20 -0
  49. data/lib/wx/doc/notebook.rb +21 -0
  50. data/lib/wx/doc/pg/events.rb +13 -9
  51. data/lib/wx/doc/pg/pg_property.rb +18 -0
  52. data/lib/wx/doc/progress_dialog.rb +36 -32
  53. data/lib/wx/doc/prt/page_setup_dialog.rb +20 -12
  54. data/lib/wx/doc/prt/print_data.rb +13 -5
  55. data/lib/wx/doc/prt/print_dialog.rb +31 -23
  56. data/lib/wx/doc/prt/printer.rb +20 -12
  57. data/lib/wx/doc/radio_box.rb +19 -15
  58. data/lib/wx/doc/rbn/ribbon_bar.rb +13 -5
  59. data/lib/wx/doc/rbn/ribbon_button_bar.rb +13 -5
  60. data/lib/wx/doc/rbn/ribbon_gallery.rb +13 -5
  61. data/lib/wx/doc/rbn/ribbon_tool_bar.rb +13 -5
  62. data/lib/wx/doc/region_iterator.rb +32 -28
  63. data/lib/wx/doc/rtc/rich_text_composite_object.rb +24 -0
  64. data/lib/wx/doc/rtc/rich_text_ctrl.rb +24 -0
  65. data/lib/wx/doc/rtc/rich_text_paragraph.rb +24 -0
  66. data/lib/wx/doc/rtc/richtext_buffer.rb +27 -19
  67. data/lib/wx/doc/rtc/richtext_printing.rb +17 -9
  68. data/lib/wx/doc/rtc/richtext_style_sheet.rb +17 -9
  69. data/lib/wx/doc/sizer.rb +20 -0
  70. data/lib/wx/doc/stc/styled_text_ctrl.rb +24 -0
  71. data/lib/wx/doc/stream.rb +39 -35
  72. data/lib/wx/doc/system_settings.rb +30 -26
  73. data/lib/wx/doc/text_validator.rb +12 -8
  74. data/lib/wx/doc/textctrl.rb +16 -0
  75. data/lib/wx/doc/tree_ctrl.rb +95 -0
  76. data/lib/wx/doc/treebook.rb +9 -5
  77. data/lib/wx/doc/v_list_box.rb +9 -5
  78. data/lib/wx/doc/variant.rb +164 -160
  79. data/lib/wx/doc/window.rb +57 -42
  80. data/lib/wx/doc/window_disabler.rb +10 -6
  81. data/lib/wx/grid/grid.rb +27 -4
  82. data/lib/wx/keyword_defs.rb +43 -6
  83. data/lib/wx/pg/pg_property.rb +22 -0
  84. data/lib/wx/rtc/require.rb +3 -0
  85. data/lib/wx/rtc/rich_text_composite_object.rb +25 -0
  86. data/lib/wx/rtc/rich_text_ctrl.rb +25 -0
  87. data/lib/wx/rtc/rich_text_paragraph.rb +25 -0
  88. data/lib/wx/stc/require.rb +1 -0
  89. data/lib/wx/stc/styled_text_ctrl.rb +25 -0
  90. data/lib/wx/version.rb +1 -1
  91. data/rakelib/lib/config/linux.rb +0 -3
  92. data/rakelib/lib/config/macosx.rb +1 -1
  93. data/rakelib/lib/config/mingw.rb +1 -1
  94. data/rakelib/lib/config/unixish.rb +1 -1
  95. data/rakelib/lib/config.rb +14 -4
  96. data/rakelib/lib/core/include/funcall.inc +33 -14
  97. data/rakelib/lib/core/include/swigdirector.inc +384 -0
  98. data/rakelib/lib/core/include/swigrubyerrors.inc +161 -0
  99. data/{ext/wxruby3/swig/custom/swig4/rubyrun.swg → rakelib/lib/core/include/swigrubyrun.inc} +245 -120
  100. data/rakelib/lib/core/include/swigrun.inc +700 -0
  101. data/rakelib/lib/core/package.rb +19 -9
  102. data/rakelib/lib/core/parameter.rb +3 -0
  103. data/rakelib/lib/core/spec.rb +6 -1
  104. data/rakelib/lib/director/accelerator.rb +3 -4
  105. data/rakelib/lib/director/accessible.rb +47 -0
  106. data/rakelib/lib/director/animation.rb +1 -1
  107. data/rakelib/lib/director/animation_ctrl.rb +20 -0
  108. data/rakelib/lib/director/app.rb +15 -304
  109. data/rakelib/lib/director/app_traits.rb +10 -12
  110. data/rakelib/lib/director/art_provider.rb +1 -1
  111. data/rakelib/lib/director/ctrl_with_items.rb +17 -5
  112. data/rakelib/lib/director/data_format.rb +1 -1
  113. data/rakelib/lib/director/data_object_simple_base.rb +1 -2
  114. data/rakelib/lib/director/derived_dc.rb +1 -1
  115. data/rakelib/lib/director/dialog.rb +6 -0
  116. data/rakelib/lib/director/dialup_event.rb +44 -0
  117. data/rakelib/lib/director/dialup_manager.rb +45 -0
  118. data/rakelib/lib/director/drag_image.rb +2 -3
  119. data/rakelib/lib/director/event.rb +22 -4
  120. data/rakelib/lib/director/file_ctrl.rb +35 -0
  121. data/rakelib/lib/director/file_ctrl_event.rb +26 -0
  122. data/rakelib/lib/director/frame.rb +1 -3
  123. data/rakelib/lib/director/gdicommon.rb +27 -11
  124. data/rakelib/lib/director/graphics_context.rb +2 -4
  125. data/rakelib/lib/director/grid_cell_editor.rb +6 -6
  126. data/rakelib/lib/director/grid_ctrl.rb +34 -3
  127. data/rakelib/lib/director/help_controller.rb +1 -1
  128. data/rakelib/lib/director/icon.rb +5 -2
  129. data/rakelib/lib/director/list_ctrl.rb +5 -6
  130. data/rakelib/lib/director/locale.rb +1 -3
  131. data/rakelib/lib/director/log.rb +1 -4
  132. data/rakelib/lib/director/media_ctrl.rb +54 -0
  133. data/rakelib/lib/director/menu.rb +16 -1
  134. data/rakelib/lib/director/menu_item.rb +2 -2
  135. data/rakelib/lib/director/pgarray_editor_dialog.rb +0 -6
  136. data/rakelib/lib/director/pgeditor.rb +2 -2
  137. data/rakelib/lib/director/pgproperties.rb +3 -3
  138. data/rakelib/lib/director/pgproperty.rb +24 -1
  139. data/rakelib/lib/director/property_grid_interface.rb +5 -10
  140. data/rakelib/lib/director/richtext_buffer.rb +1 -1
  141. data/rakelib/lib/director/richtext_composite_object.rb +25 -0
  142. data/rakelib/lib/director/richtext_ctrl.rb +15 -5
  143. data/rakelib/lib/director/richtext_formatting_dialog.rb +7 -5
  144. data/rakelib/lib/director/richtext_paragraph_layout_box.rb +9 -7
  145. data/rakelib/lib/director/sash_event.rb +42 -0
  146. data/rakelib/lib/director/sizer.rb +79 -1
  147. data/rakelib/lib/director/sizer_item.rb +22 -0
  148. data/rakelib/lib/director/static_box.rb +4 -5
  149. data/rakelib/lib/director/styled_text_ctrl.rb +12 -0
  150. data/rakelib/lib/director/task_bar_button.rb +30 -0
  151. data/rakelib/lib/director/task_bar_icon.rb +6 -14
  152. data/rakelib/lib/director/textctrl.rb +12 -1
  153. data/rakelib/lib/director/tool_tip.rb +1 -1
  154. data/rakelib/lib/director/top_level_window.rb +4 -5
  155. data/rakelib/lib/director/tree_ctrl.rb +24 -50
  156. data/rakelib/lib/director/variant.rb +1 -1
  157. data/rakelib/lib/director/window.rb +24 -5
  158. data/rakelib/lib/director.rb +4 -4
  159. data/rakelib/lib/extractor/function.rb +6 -6
  160. data/rakelib/lib/extractor.rb +34 -5
  161. data/rakelib/lib/generate/analyzer.rb +8 -3
  162. data/rakelib/lib/generate/doc/animation_ctrl.yaml +15 -0
  163. data/rakelib/lib/generate/doc/busy_info.yaml +0 -2
  164. data/rakelib/lib/generate/doc/clipboard.yaml +0 -2
  165. data/rakelib/lib/generate/doc/cursor.yaml +0 -2
  166. data/rakelib/lib/generate/doc/events.yaml +10 -4
  167. data/rakelib/lib/generate/doc/panel.yaml +7 -0
  168. data/rakelib/lib/generate/doc/static_box.yaml +8 -0
  169. data/rakelib/lib/generate/doc/xml_resource.yaml +3 -0
  170. data/rakelib/lib/generate/doc.rb +89 -16
  171. data/rakelib/lib/generate/interface.rb +4 -3
  172. data/rakelib/lib/specs/interfaces.rb +161 -156
  173. data/rakelib/lib/swig_runner.rb +4 -50
  174. data/rakelib/lib/typemap/common.rb +54 -10
  175. data/rakelib/lib/typemap/data_format.rb +1 -1
  176. data/rakelib/lib/typemap/data_object_data.rb +2 -2
  177. data/rakelib/lib/typemap/pgprop_arg.rb +7 -2
  178. data/rakelib/lib/typemap/points_list.rb +5 -7
  179. data/rakelib/lib/util/string.rb +10 -8
  180. data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +74 -2
  181. data/rakelib/yard/templates/default/fulldoc/html/full_list.erb +38 -0
  182. data/rakelib/yard/templates/default/fulldoc/html/setup.rb +39 -0
  183. data/rakelib/yard/templates/default/tags/html/wxrb_require.erb +10 -0
  184. data/rakelib/yard/templates/default/tags/setup.rb +16 -0
  185. data/rakelib/yard/yard-custom-templates.rb +3 -0
  186. data/samples/text/richtext.rb +0 -30
  187. data/samples/treectrl/treectrl.rb +1 -1
  188. data/tests/media/beep_lo.wav +0 -0
  189. data/tests/test_app_exit_exception.rb +36 -0
  190. data/tests/test_app_init_exception.rb +20 -0
  191. data/tests/test_book_controls.rb +29 -0
  192. data/tests/test_exceptions.rb +41 -0
  193. data/tests/test_list_ctrl.rb +1 -1
  194. data/tests/test_media_ctrl.rb +38 -0
  195. data/tests/test_menu.rb +69 -0
  196. data/tests/test_pg.rb +27 -0
  197. data/tests/test_richtext.rb +45 -0
  198. data/tests/test_sizer.rb +59 -0
  199. data/tests/test_std_controls.rb +78 -1
  200. data/tests/test_styled_text_ctrl.rb +46 -0
  201. data/tests/test_tree_ctrl.rb +138 -0
  202. data/tests/test_window.rb +12 -0
  203. data/tests/testapp_noframe.rb +1 -1
  204. metadata +54 -5
  205. data/ext/wxruby3/swig/custom/swig3/rubyrun.swg +0 -456
@@ -9,112 +9,117 @@
9
9
 
10
10
 
11
11
 
12
- class Wx::EvtHandler
13
-
14
- # Removes all (Ruby) installed EventFilter-s.
15
- # @return [void]
16
- def self.clear_filters; end
17
-
18
- # Public method to register the mapping of a custom event type
19
- # +konstant+ (which should be a unique integer; one will be created if
20
- # not supplied) to a custom event class +klass+. If +meth+ and +arity+
21
- # are given, a convenience evt_handler method called +meth+ will be
22
- # created, which accepts +arity+ arguments (specify both or neither).
23
- # @param klass [Class] event class
24
- # @param konstant [Integer] unique event type id (if nil a unique value will be autogenerated)
25
- # @param meth [String,Symbol] optional event handler method name
26
- # @param arity [Integer] event handler method arity (should be 0, 1 or 2 if not nil)
27
- # @return [Integer] unique event type id
28
- def self.register_class(klass, konstant = nil, meth = nil, arity = nil) end
29
-
30
- def connect(first_id, last_id, evt_type, handler) end
31
-
32
- def disconnect(first_id, last_id, evt_spec) end
33
-
34
- # Processes an event, searching event tables and calling zero or more suitable event handler function(s).
35
- #
36
- # Normally, your application would not call this function: it is called in the wxWidgets implementation to
37
- # dispatch incoming user interface events to the framework (and application).
38
- #
39
- # However, you might need to call it if implementing new functionality (such as a new control) where you
40
- # define new event types, as opposed to allowing the user to override virtual functions.
41
- #
42
- # In wxRuby this method can not be effectively overridden.
43
- # In order to override default event processing define a try_before(event) or try_after(event) method
44
- # as member of a derived EvtHandler class.
45
- #
46
- # The normal order of event table searching is as follows:
47
- #
48
- # 1. {Wx::App#filter_event} is called. If it returns anything but -1 (default) the processing stops here.
49
- # 2. #try_before (if it exists, otherwise the C++ default implementation) is called (this is where {Wx::Validator} are taken into account for {Wx::Window} objects). If this returns true, the function exits.
50
- # 3. If the object is disabled (via a call to {Wx::EvtHandler#set_evt_handler_enabled}) the function skips to step (7).
51
- # 4. Dynamic event table of the handlers bound using Bind<>() is searched in the most-recently-bound to the most-early-bound order. If a handler is found, it is executed and the function returns true unless the handler used {Wx::Event#skip} to indicate that it didn't handle the event in which case the search continues.
52
- # 5. Static events table of the handlers bound using event table macros is searched for this event handler in the order of appearance of event table macros in the source code. If this fails, the base class event table is tried, and so on until no more tables exist or an appropriate function was found. If a handler is found, the same logic as in the previous step applies.
53
- # 6. The search is applied down the entire chain of event handlers (usually the chain has a length of one). This chain can be formed using {Wx::EvtHandler#set_next_handler}
54
- # Note that in the case of Wx::Window you can build a stack of event handlers (see {Wx::Window#push_event_handler} for more info). If any of the handlers of the chain return true, the function exits.
55
- # 7. #try_after (if it exists, otherwise the C++ default implementation) is called: for the {Wx::Window} object this may propagate the event to the window parent (recursively). If the event is still not processed, {#process_event} on the {Wx::THE_APP} object is called as the last step.
56
- #
57
- # Notice that steps (2)-(6) are performed in {#process_event_locally} which is called by this function.
58
- #
59
- # @param event [Wx::Event] Event to process.
60
- # @return [true,false] true if event has been processed
61
- def process_event(event) end
62
-
63
- # Process a command, supplying the window identifier, command event identifier, and member function or proc.
64
- # @param [Integer] id window identifier
65
- # @param [Integer] evt_id event type identifier
66
- # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
67
- # @yieldparam [Wx::CommandEvent] event event to handle
68
- def evt_command(id, evt_id, meth = nil, &block) end
69
-
70
- # Process a command for a range of window identifiers, supplying the minimum and maximum window identifiers, command event identifier, and member function or proc.
71
- # @param [Integer] id1 minimum window identifier
72
- # @param [Integer] id2 maximum window identifier
73
- # @param [Integer] evt_id event type identifier
74
- # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
75
- # @yieldparam [Wx::CommandEvent] event event to handle
76
- def evt_command_range(id1, id2, evt_id, meth = nil, &block) end
77
-
78
- # Convenience evt_handler to listen to all mouse events.
79
- # @yieldparam [Wx::MouseEvent] event event to handle
80
- def evt_mouse_events(*args, &block) end
81
-
82
- # Convenience evt handler to listen to all scrollwin events
83
- # (from Wx::ScrolledWindow).
84
- # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
85
- # @yieldparam [Wx::ScrollWinEvent] event event to handle
86
- def evt_scrollwin(meth = nil, &block) end
87
-
88
- # Convenience evt handler to listen to all scroll events
89
- # (from Wx::Slider and Wx::ScrollBar).
90
- # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
91
- # @yieldparam [Wx::ScrollWinEvent] event event to handle
92
- def evt_scroll(meth = nil, &block) end
93
-
94
- # Convenience evt handler to listen to all scroll events
95
- # (from Wx::Slider and Wx::ScrollBar) with an id.
96
- # @param [Integer] id window identifier
97
- # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
98
- # @yieldparam [Wx::ScrollWinEvent] event event to handle
99
- def evt_scroll_command(id, meth = nil, &block) end
100
-
101
- # Processes Wx::WindowDestroyEvent events.
102
- # In wxRuby Wx::Event#skipped will be forced to true after the provided
103
- # handler has finished to make sure the event is propagated as it is
104
- # required that Wx::App gets to handle the event in the end.
105
- # @yieldparam [Wx::WindowDestroyEvent] event event to handle
106
- def evt_window_destroy(&block) end
107
-
108
- # Processes {Wx::EVT_TIMER} events. See {Wx::TimerEvent}.
109
- # @param [Integer,Wx::Enum,Wx::Timer] id timer id
110
- # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
111
- # @yieldparam [Wx::TimerEvent] event the event to handle
112
- def evt_timer(id, meth = nil, &block) end
113
-
114
- # Schedule a call for asynchronous execution (at idle time).
115
- # @param meth [Symbol,String,Method,Proc] (name of) method or proc to call
116
- # @param args [Array<Object>] optional arguments to pass to the call
117
- # @return [void]
118
- # @yield [*args] optional arguments
119
- def call_after(meth = nil, *args, &block) end
12
+ module Wx
13
+
14
+ class EvtHandler
15
+
16
+ # Removes all (Ruby) installed EventFilter-s.
17
+ # @return [void]
18
+ def self.clear_filters; end
19
+
20
+ # Public method to register the mapping of a custom event type
21
+ # +konstant+ (which should be a unique integer; one will be created if
22
+ # not supplied) to a custom event class +klass+. If +meth+ and +arity+
23
+ # are given, a convenience evt_handler method called +meth+ will be
24
+ # created, which accepts +arity+ arguments (specify both or neither).
25
+ # @param klass [Class] event class
26
+ # @param konstant [Integer] unique event type id (if nil a unique value will be autogenerated)
27
+ # @param meth [String,Symbol] optional event handler method name
28
+ # @param arity [Integer] event handler method arity (should be 0, 1 or 2 if not nil)
29
+ # @return [Integer] unique event type id
30
+ def self.register_class(klass, konstant = nil, meth = nil, arity = nil) end
31
+
32
+ def connect(first_id, last_id, evt_type, handler) end
33
+
34
+ def disconnect(first_id, last_id, evt_spec) end
35
+
36
+ # Processes an event, searching event tables and calling zero or more suitable event handler function(s).
37
+ #
38
+ # Normally, your application would not call this function: it is called in the wxWidgets implementation to
39
+ # dispatch incoming user interface events to the framework (and application).
40
+ #
41
+ # However, you might need to call it if implementing new functionality (such as a new control) where you
42
+ # define new event types, as opposed to allowing the user to override virtual functions.
43
+ #
44
+ # In wxRuby this method can not be effectively overridden.
45
+ # In order to override default event processing define a try_before(event) or try_after(event) method
46
+ # as member of a derived EvtHandler class.
47
+ #
48
+ # The normal order of event table searching is as follows:
49
+ #
50
+ # 1. {Wx::App#filter_event} is called. If it returns anything but -1 (default) the processing stops here.
51
+ # 2. #try_before (if it exists, otherwise the C++ default implementation) is called (this is where {Wx::Validator} are taken into account for {Wx::Window} objects). If this returns true, the function exits.
52
+ # 3. If the object is disabled (via a call to {Wx::EvtHandler#set_evt_handler_enabled}) the function skips to step (7).
53
+ # 4. Dynamic event table of the handlers bound using Bind<>() is searched in the most-recently-bound to the most-early-bound order. If a handler is found, it is executed and the function returns true unless the handler used {Wx::Event#skip} to indicate that it didn't handle the event in which case the search continues.
54
+ # 5. Static events table of the handlers bound using event table macros is searched for this event handler in the order of appearance of event table macros in the source code. If this fails, the base class event table is tried, and so on until no more tables exist or an appropriate function was found. If a handler is found, the same logic as in the previous step applies.
55
+ # 6. The search is applied down the entire chain of event handlers (usually the chain has a length of one). This chain can be formed using {Wx::EvtHandler#set_next_handler}
56
+ # Note that in the case of Wx::Window you can build a stack of event handlers (see {Wx::Window#push_event_handler} for more info). If any of the handlers of the chain return true, the function exits.
57
+ # 7. #try_after (if it exists, otherwise the C++ default implementation) is called: for the {Wx::Window} object this may propagate the event to the window parent (recursively). If the event is still not processed, {#process_event} on the {Wx::THE_APP} object is called as the last step.
58
+ #
59
+ # Notice that steps (2)-(6) are performed in {#process_event_locally} which is called by this function.
60
+ #
61
+ # @param event [Wx::Event] Event to process.
62
+ # @return [true,false] true if event has been processed
63
+ def process_event(event) end
64
+
65
+ # Process a command, supplying the window identifier, command event identifier, and member function or proc.
66
+ # @param [Integer] id window identifier
67
+ # @param [Integer] evt_id event type identifier
68
+ # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
69
+ # @yieldparam [Wx::CommandEvent] event event to handle
70
+ def evt_command(id, evt_id, meth = nil, &block) end
71
+
72
+ # Process a command for a range of window identifiers, supplying the minimum and maximum window identifiers, command event identifier, and member function or proc.
73
+ # @param [Integer] id1 minimum window identifier
74
+ # @param [Integer] id2 maximum window identifier
75
+ # @param [Integer] evt_id event type identifier
76
+ # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
77
+ # @yieldparam [Wx::CommandEvent] event event to handle
78
+ def evt_command_range(id1, id2, evt_id, meth = nil, &block) end
79
+
80
+ # Convenience evt_handler to listen to all mouse events.
81
+ # @yieldparam [Wx::MouseEvent] event event to handle
82
+ def evt_mouse_events(*args, &block) end
83
+
84
+ # Convenience evt handler to listen to all scrollwin events
85
+ # (from Wx::ScrolledWindow).
86
+ # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
87
+ # @yieldparam [Wx::ScrollWinEvent] event event to handle
88
+ def evt_scrollwin(meth = nil, &block) end
89
+
90
+ # Convenience evt handler to listen to all scroll events
91
+ # (from Wx::Slider and Wx::ScrollBar).
92
+ # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
93
+ # @yieldparam [Wx::ScrollWinEvent] event event to handle
94
+ def evt_scroll(meth = nil, &block) end
95
+
96
+ # Convenience evt handler to listen to all scroll events
97
+ # (from Wx::Slider and Wx::ScrollBar) with an id.
98
+ # @param [Integer] id window identifier
99
+ # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
100
+ # @yieldparam [Wx::ScrollWinEvent] event event to handle
101
+ def evt_scroll_command(id, meth = nil, &block) end
102
+
103
+ # Processes Wx::WindowDestroyEvent events.
104
+ # In wxRuby Wx::Event#skipped will be forced to true after the provided
105
+ # handler has finished to make sure the event is propagated as it is
106
+ # required that Wx::App gets to handle the event in the end.
107
+ # @yieldparam [Wx::WindowDestroyEvent] event event to handle
108
+ def evt_window_destroy(&block) end
109
+
110
+ # Processes {Wx::EVT_TIMER} events. See {Wx::TimerEvent}.
111
+ # @param [Integer,Wx::Enum,Wx::Timer] id timer id
112
+ # @param [String,Symbol,Method,Proc] meth (name of) method or event handling proc
113
+ # @yieldparam [Wx::TimerEvent] event the event to handle
114
+ def evt_timer(id, meth = nil, &block) end
115
+
116
+ # Schedule a call for asynchronous execution (at idle time).
117
+ # @param meth [Symbol,String,Method,Proc] (name of) method or proc to call
118
+ # @param args [Array<Object>] optional arguments to pass to the call
119
+ # @return [void]
120
+ # @yield [*args] optional arguments
121
+ def call_after(meth = nil, *args, &block) end
122
+
123
+ end
124
+
120
125
  end
data/lib/wx/doc/font.rb CHANGED
@@ -6,6 +6,7 @@
6
6
 
7
7
 
8
8
  module Wx
9
+
9
10
  class Font
10
11
 
11
12
  # @overload find_or_create_font(point_size, family, style, weight, underline=false, facename='', encoding=Wx::FontEncoding::FONTENCODING_DEFAULT)
@@ -190,21 +190,21 @@ module Wx
190
190
  # # else: cancelled by user
191
191
  # </code>
192
192
  # @return [String] selected file name
193
- def file_selector(message, default_path='', default_filename='', default_extension='', wildcard='',
193
+ def self.file_selector(message, default_path='', default_filename='', default_extension='', wildcard='',
194
194
  flags=0, parent=nil, x=Wx::DEFAULT_COORD, y=Wx::DEFAULT_COORD) end
195
195
 
196
196
  # An extended version of {Wx::file_selector}.
197
197
  # @return [String] selected file name
198
- def file_selector_ex(message='Select a file', default_path='', default_filename='', indexDefaultExtension=nil,
198
+ def self.file_selector_ex(message='Select a file', default_path='', default_filename='', indexDefaultExtension=nil,
199
199
  wildcard='*', flags=0, parent=nil, x=Wx::DEFAULT_COORD, y=Wx::DEFAULT_COORD) end
200
200
 
201
201
  # Shows a file dialog asking the user for a file name for saving a file.
202
202
  # @see Wx::file_selector, Wx::FileDialog
203
- def load_file_selector(what, extension, default_name='', parent=nil) end
203
+ def self.load_file_selector(what, extension, default_name='', parent=nil) end
204
204
 
205
205
  # Shows a file dialog asking the user for a file name for opening a file.
206
206
  # @see Wx::file_selector, Wx::FileDialog
207
- def save_file_selector(what, extension, default_name='', parent=nil) end
207
+ def self.save_file_selector(what, extension, default_name='', parent=nil) end
208
208
 
209
209
  # @!endgroup
210
210
 
@@ -213,14 +213,14 @@ module Wx
213
213
  # Returns true if the ID is in the list of recognized stock actions
214
214
  # @param [Integer] id ID to check
215
215
  # @return [true,false]
216
- def is_stock_id(id) end
216
+ def self.is_stock_id(id) end
217
217
 
218
218
  # Returns true if the label is empty or label of a stock button with
219
219
  # given ID
220
220
  # @param [Integer] id ID to check
221
221
  # @param [String] label to check
222
222
  # @return [true,false]
223
- def is_stock_label(id, label) end
223
+ def self.is_stock_label(id, label) end
224
224
 
225
225
  STOCK_NOFLAGS = 0
226
226
 
@@ -236,13 +236,13 @@ module Wx
236
236
  # @param [Integer] id Given id of the wxMenuItem, wxButton, wxToolBar tool, etc.
237
237
  # @param [Integer] flags Combination of the elements of STOCK_xxx flags.
238
238
  # @return [String]
239
- def get_stock_label(id, flags = Wx::STOCK_WITH_MNEMONIC) end
239
+ def self.get_stock_label(id, flags = Wx::STOCK_WITH_MNEMONIC) end
240
240
 
241
241
  # Returns the accelerator that should be used for given stock UI element
242
242
  # (e.g. "Ctrl+X" for Wx::ID_CUT)
243
243
  # @param [Integer] id stock UI element ID
244
244
  # @return [Wx::AcceleratorEntry]
245
- def get_stock_accelerator(id) end
245
+ def self.get_stock_accelerator(id) end
246
246
 
247
247
  STOCK_MENU = 0
248
248
 
@@ -250,7 +250,7 @@ module Wx
250
250
  # @param [Integer] id stock UI element ID
251
251
  # @param [Integer] client context (currently only STOCK_MENU)
252
252
  # @return [String]
253
- def get_stock_help_string(id, client = Wx::STOCK_MENU) end
253
+ def self.get_stock_help_string(id, client = Wx::STOCK_MENU) end
254
254
 
255
255
  # @!endgroup
256
256
 
data/lib/wx/doc/gc_dc.rb CHANGED
@@ -14,10 +14,15 @@ module Wx
14
14
  # Creates a Wx::GCDC instance for target and
15
15
  # passes the instance to the given block to draw on.
16
16
  # @overload draw_on(dc)
17
- # @param [Wx::WindowDC,Wx::MemoryDC,Wx::PrinterDC] target DC to draw on
17
+ # @param [Wx::WindowDC,Wx::MemoryDC] target DC to draw on
18
18
  # @yieldparam [Wx::GCDC] dc GCDC instance to draw on
19
19
  # @return [Object] result from block
20
20
  # @overload draw_on(dc)
21
+ # @param [Wx::PrinterDC] target DC to draw on
22
+ # @yieldparam [Wx::GCDC] dc GCDC instance to draw on
23
+ # @return [Object] result from block
24
+ # @wxrb_require USE_PRINTING_ARCHITECTURE,WXMSW|WXOSX|USE_GTKPRINT
25
+ # @overload draw_on(gc)
21
26
  # @param [Wx::GraphicsContext] gc GraphicsContext to draw on
22
27
  # @yieldparam [Wx::GCDC] dc GCDC instance to draw on
23
28
  # @return [Object] result from block
@@ -35,6 +35,7 @@ module Wx
35
35
  # @see Printing Under Unix (GTK+)
36
36
  # @param printerDC [Wx::PrinterDC]
37
37
  # @return [Wx::GraphicsContext]
38
+ # @wxrb_require USE_PRINTING_ARCHITECTURE,WXMSW|WXOSX|USE_GTKPRINT
38
39
  # @overload self.draw_on(image)
39
40
  # Creates a {Wx::GraphicsContext} associated with a {Wx::Image} and passes that object to the given block.
40
41
  # Deletes the gc object after the block returns.
@@ -23,9 +23,30 @@ module Wx::GRID
23
23
 
24
24
  # Iterates all selected blocks passing each corresponding Wx::GRID::GridBlockCoords to the given block
25
25
  # or returns an enumerator if no block given.
26
+ # Notice that the blocks returned by this method are not ordered in any particular way and may overlap.
27
+ # For grids using rows or columns-only selection modes, #each_selected_row_block or #each_selected_col_block
28
+ # can be more convenient, as they return ordered and non-overlapping blocks.
26
29
  # @yieldparam [Wx::GRID::GridBlockCoords] selected_block
27
30
  # @return [Object,Enumerator] result of last block execution or an Enumerator if no block given
28
- def selected_blocks; end
31
+ def each_selected_block; end
32
+
33
+ # Iterates an ordered range of non-overlapping selected rows passing each corresponding Wx::GRID::GridBlockCoords
34
+ # to the given block or returns an enumerator if no block given.
35
+ #
36
+ # For the grids using GridSelectRows selection mode, iterates (possibly none) the coordinates of non-overlapping
37
+ # selected row blocks in the natural order, i.e. from smallest to the biggest row indices.
38
+ # @yieldparam [Wx::GRID::GridBlockCoords] selected_block
39
+ # @return [Object,Enumerator] result of last block execution or an Enumerator if no block given
40
+ def each_selected_row_block; end
41
+
42
+ # Iterates an ordered range of non-overlapping selected columns passing each corresponding Wx::GRID::GridBlockCoords
43
+ # to the given block or returns an enumerator if no block given.
44
+ #
45
+ # For the grids using GridSelectColumn selection mode, iterates (possibly none) the coordinates of non-overlapping
46
+ # selected column blocks in the natural order, i.e. from smallest to the biggest column indices.
47
+ # @yieldparam [Wx::GRID::GridBlockCoords] selected_block
48
+ # @return [Object,Enumerator] result of last block execution or an Enumerator if no block given
49
+ def each_selected_col_block; end
29
50
 
30
51
  end
31
52
 
@@ -5,16 +5,20 @@
5
5
  # :startdoc:
6
6
 
7
7
 
8
- class Wx::HelpController
8
+ module Wx
9
9
 
10
- # @return [void] Only does something for Wx::HTML::HtmlHelpController
11
- def get_frame_parameters; end
10
+ class HelpController
12
11
 
13
- end
12
+ # @return [void] Only does something for Wx::HTML::HtmlHelpController
13
+ def get_frame_parameters; end
14
+
15
+ end
16
+
17
+ class ExtHelpController
14
18
 
15
- class Wx::ExtHelpController
19
+ # @return [void] Only does something for Wx::HTML::HtmlHelpController
20
+ def get_frame_parameters; end
16
21
 
17
- # @return [void] Only does something for Wx::HTML::HtmlHelpController
18
- def get_frame_parameters; end
22
+ end
19
23
 
20
24
  end
@@ -5,10 +5,18 @@
5
5
  # :startdoc:
6
6
 
7
7
 
8
- class Wx::HTML::HelpController
8
+ module Wx
9
9
 
10
- # Returns the latest frame size and position settings and whether a new frame is drawn with each invocation.
11
- # @return [Array(Wx::Frame,Wx::Size,Wx::Point,Boolean)] latest frame settings
12
- def get_frame_parameters; end
10
+ module HTML
11
+
12
+ class HelpController
13
+
14
+ # Returns the latest frame size and position settings and whether a new frame is drawn with each invocation.
15
+ # @return [Array(Wx::Frame,Wx::Size,Wx::Point,Boolean)] latest frame settings
16
+ def get_frame_parameters; end
17
+
18
+ end
19
+
20
+ end
13
21
 
14
22
  end
@@ -5,34 +5,38 @@
5
5
  # :startdoc:
6
6
 
7
7
 
8
- class Wx::ListCtrl
9
-
10
- include Enumerable
11
-
12
- # Iterates all items in the list control passing each item (id) to the given block.
13
- # @yieldparam [Integer] item
14
- # @return [Object] result of last block iteration
15
- def each(&block) end
16
-
17
- # Iterates all selected items in the list control (like #get_next_item(item, Wx::LIST_NEXT_ALL, Wx::LIST_STATE_SELECTED))
18
- # passing each item (id) to the given block.
19
- # @yieldparam [Integer] item
20
- # @return [Object] result of last block iteration
21
- def each_selected(&block) end
22
-
23
- # Returns array of selected items.
24
- # @return [Array<Integer>] selected items
25
- def get_selections; end
26
-
27
- # Call this function to sort the items in the list control.
28
- # The sorting method will call the given block repeatedly to compare two items from the list
29
- # passing the <b>item data</b> for each item as well as the `data` argument given to the #sort_items method.
30
- # The block should return 0 if the items are equal, negative value if the first item is less than the second
31
- # one and positive value if the first one is greater than the second one.
32
- # @param [Object] data user data to pass on to the sorting block
33
- # @yieldparam [Object] item_data1 data for first item
34
- # @yieldparam [Object] item_data2 data for second item
35
- # @yieldparam [Object] data propagated data argument
36
- def sort_items(data = nil, &block) end
8
+ module Wx
9
+
10
+ class ListCtrl
11
+
12
+ include Enumerable
13
+
14
+ # Iterates all items in the list control passing each item (id) to the given block.
15
+ # @yieldparam [Integer] item
16
+ # @return [Object] result of last block iteration
17
+ def each(&block) end
18
+
19
+ # Iterates all selected items in the list control (like #get_next_item(item, Wx::LIST_NEXT_ALL, Wx::LIST_STATE_SELECTED))
20
+ # passing each item (id) to the given block.
21
+ # @yieldparam [Integer] item
22
+ # @return [Object] result of last block iteration
23
+ def each_selected(&block) end
24
+
25
+ # Returns array of selected items.
26
+ # @return [Array<Integer>] selected items
27
+ def get_selections; end
28
+
29
+ # Call this function to sort the items in the list control.
30
+ # The sorting method will call the given block repeatedly to compare two items from the list
31
+ # passing the <b>item data</b> for each item as well as the `data` argument given to the #sort_items method.
32
+ # The block should return 0 if the items are equal, negative value if the first item is less than the second
33
+ # one and positive value if the first one is greater than the second one.
34
+ # @param [Object] data user data to pass on to the sorting block
35
+ # @yieldparam [Object] item_data1 data for first item
36
+ # @yieldparam [Object] item_data2 data for second item
37
+ # @yieldparam [Object] data propagated data argument
38
+ def sort_items(data = nil, &block) end
39
+
40
+ end
37
41
 
38
42
  end
@@ -0,0 +1,20 @@
1
+ # :stopdoc:
2
+ # Copyright (c) 2023 M.J.N. Corino, The Netherlands
3
+ #
4
+ # This software is released under the MIT license.
5
+ # :startdoc:
6
+
7
+
8
+ module Wx
9
+
10
+ class Menu
11
+
12
+ # Yield each menu item to the given block.
13
+ # Returns an Enumerator if no block given.
14
+ # @yieldparam [Wx::MenuItem] item the menu item yielded
15
+ # @return [Object,Enumerator] last result of block or Enumerator if no block given.
16
+ def each_item; end
17
+
18
+ end
19
+
20
+ end
@@ -0,0 +1,21 @@
1
+ # :stopdoc:
2
+ # Copyright (c) 2023 M.J.N. Corino, The Netherlands
3
+ #
4
+ # This software is released under the MIT license.
5
+ # :startdoc:
6
+
7
+
8
+ module Wx
9
+
10
+ class Notebook
11
+
12
+ # Iterate each notebook page.
13
+ # Passes each page to the given block.
14
+ # Returns an Enumerator if no block given.
15
+ # @yieldparam [Wx::Window] page notebook page
16
+ # @return [Object,Enumerator] last result of block or Enumerator if no block given.
17
+ def each_page; end
18
+
19
+ end
20
+
21
+ end
@@ -5,17 +5,21 @@
5
5
  # :startdoc:
6
6
 
7
7
 
8
- class Wx::EvtHandler
8
+ module Wx
9
9
 
10
- # @!group PG Event handler methods
10
+ class EvtHandler
11
11
 
12
- # Respond to {Wx::PG::EVT_PG_PAGE_CHANGED} event, generated when selected property page has been changed by the user.
13
- # Processes a {Wx::PG::EVT_PG_PAGE_CHANGED} event.
14
- # @param [Integer,Wx::Enum,Wx::Window,Wx::MenuItem,Wx::ToolBarTool,Wx::Timer] id window/control id
15
- # @param [String,Symbol,Method,Proc] meth (name of) method or handler proc
16
- # @yieldparam [Wx::PG::PropertyGridEvent] event the event to handle
17
- def evt_pg_page_changed(id, meth = nil, &block) end
12
+ # @!group PG Event handler methods
18
13
 
19
- # @!endgroup
14
+ # Respond to {Wx::PG::EVT_PG_PAGE_CHANGED} event, generated when selected property page has been changed by the user.
15
+ # Processes a {Wx::PG::EVT_PG_PAGE_CHANGED} event.
16
+ # @param [Integer,Wx::Enum,Wx::Window,Wx::MenuItem,Wx::ToolBarTool,Wx::Timer] id window/control id
17
+ # @param [String,Symbol,Method,Proc] meth (name of) method or handler proc
18
+ # @yieldparam [Wx::PG::PropertyGridEvent] event the event to handle
19
+ def evt_pg_page_changed(id, meth = nil, &block) end
20
+
21
+ # @!endgroup
22
+
23
+ end
20
24
 
21
25
  end
@@ -22,4 +22,22 @@ module Wx::PG
22
22
 
23
23
  end
24
24
 
25
+ class PGChoices
26
+
27
+ # Iterate each label.
28
+ # Passes each label string to the given block.
29
+ # Returns an Enumerator if no block given.
30
+ # @yieldparam [String] label label string
31
+ # @return [Object,Enumerator] last result of block or Enumerator if no block given.
32
+ def each_label; end
33
+
34
+ # Iterate each choice entry.
35
+ # Passes each choice entry to the given block.
36
+ # Returns an Enumerator if no block given.
37
+ # @yieldparam [Wx::PG::ChoiceEntry] entry choice entry
38
+ # @return [Object,Enumerator] last result of block or Enumerator if no block given.
39
+ def each_entry; end
40
+
41
+ end
42
+
25
43
  end