wxruby 1.9.5-x86-linux → 1.9.6-x86-linux

Sign up to get free protection for your applications and to get access to all the features.
Files changed (117) hide show
  1. data/lib/wx/classes/acceleratortable.rb +28 -0
  2. data/lib/wx/classes/animation.rb +18 -0
  3. data/lib/wx/classes/bitmap.rb +5 -0
  4. data/lib/wx/classes/busycursor.rb +12 -0
  5. data/lib/wx/classes/evthandler.rb +36 -21
  6. data/lib/wx/classes/functions.rb +44 -0
  7. data/lib/wx/classes/grid.rb +16 -7
  8. data/lib/wx/classes/htmlwindow.rb +8 -0
  9. data/lib/wx/classes/icon.rb +7 -0
  10. data/lib/wx/classes/iconbundle.rb +3 -0
  11. data/lib/wx/classes/image.rb +17 -0
  12. data/lib/wx/classes/imagelist.rb +3 -0
  13. data/lib/wx/classes/toolbartool.rb +4 -0
  14. data/lib/wx/classes/xmlresource.rb +21 -0
  15. data/lib/wx/keyword_ctors.rb +9 -6
  16. data/lib/wx/keyword_defs.rb +7 -0
  17. data/lib/wx/version.rb +1 -1
  18. data/lib/wxruby2.so +0 -0
  19. data/samples/aui/aui.rb +6 -10
  20. data/samples/bigdemo/About.rbw +0 -0
  21. data/samples/bigdemo/ColorPanel.rbw +7 -9
  22. data/samples/bigdemo/GridSimple.rbw +7 -9
  23. data/samples/bigdemo/MDIDemo.rbw +7 -9
  24. data/samples/bigdemo/PopupMenu.rbw +7 -9
  25. data/samples/bigdemo/ShapedWindow.rbw +6 -10
  26. data/samples/bigdemo/Sizers.rbw +7 -9
  27. data/samples/bigdemo/bigdemo.rb +24 -25
  28. data/samples/bigdemo/demoTemplate.rbw +6 -10
  29. data/samples/bigdemo/run.rb +6 -10
  30. data/samples/bigdemo/utils.rb +0 -0
  31. data/samples/bigdemo/wxArtProvider.rbw +6 -10
  32. data/samples/bigdemo/wxBitmapButton.rbw +42 -41
  33. data/samples/bigdemo/wxButton.rbw +7 -9
  34. data/samples/bigdemo/wxCalendarCtrl.rbw +41 -53
  35. data/samples/bigdemo/wxCheckBox.rbw +7 -9
  36. data/samples/bigdemo/wxCheckListBox.rbw +7 -9
  37. data/samples/bigdemo/wxChoice.rbw +7 -9
  38. data/samples/bigdemo/wxChoicebook.rbw +7 -9
  39. data/samples/bigdemo/wxColourDialog.rbw +7 -10
  40. data/samples/bigdemo/wxComboBox.rbw +7 -9
  41. data/samples/bigdemo/wxCursor.rbw +6 -10
  42. data/samples/bigdemo/wxDialog.rbw +7 -9
  43. data/samples/bigdemo/wxDirDialog.rbw +7 -10
  44. data/samples/bigdemo/wxDragImage.rbw +6 -10
  45. data/samples/bigdemo/wxFileDialog.rbw +7 -9
  46. data/samples/bigdemo/wxFileDialog_Save.rbw +7 -10
  47. data/samples/bigdemo/wxFindReplaceDialog.rbw +7 -10
  48. data/samples/bigdemo/wxFontDialog.rbw +7 -10
  49. data/samples/bigdemo/wxFrame.rbw +7 -9
  50. data/samples/bigdemo/wxGauge.rbw +7 -9
  51. data/samples/bigdemo/wxGenericDirCtrl.rbw +6 -10
  52. data/samples/bigdemo/wxGrid.rbw +7 -9
  53. data/samples/bigdemo/wxHtmlHelpController.rbw +6 -11
  54. data/samples/bigdemo/wxListBox.rbw +7 -9
  55. data/samples/bigdemo/wxListCtrl_virtual.rbw +7 -9
  56. data/samples/bigdemo/wxMDIWindows.rbw +7 -9
  57. data/samples/bigdemo/wxMenu.rbw +7 -9
  58. data/samples/bigdemo/wxMessageDialog.rbw +7 -10
  59. data/samples/bigdemo/wxMiniFrame.rbw +6 -10
  60. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +7 -9
  61. data/samples/bigdemo/wxNotebook.rbw +7 -9
  62. data/samples/bigdemo/wxProgressDialog.rbw +7 -9
  63. data/samples/bigdemo/wxRadioBox.rbw +7 -9
  64. data/samples/bigdemo/wxRadioButton.rbw +7 -9
  65. data/samples/bigdemo/wxSashWindow.rbw +6 -10
  66. data/samples/bigdemo/wxScrolledMessageDialog.rbw +7 -9
  67. data/samples/bigdemo/wxScrolledWindow.rbw +7 -9
  68. data/samples/bigdemo/wxSingleChoiceDialog.rbw +7 -9
  69. data/samples/bigdemo/wxSlider.rbw +7 -9
  70. data/samples/bigdemo/wxSpinButton.rbw +7 -9
  71. data/samples/bigdemo/wxSpinCtrl.rbw +7 -9
  72. data/samples/bigdemo/wxSplitterWindow.rbw +7 -9
  73. data/samples/bigdemo/wxStaticBitmap.rbw +7 -9
  74. data/samples/bigdemo/wxStaticText.rbw +7 -9
  75. data/samples/bigdemo/wxStatusBar.rbw +7 -9
  76. data/samples/bigdemo/wxTextCtrl.rbw +7 -9
  77. data/samples/bigdemo/wxTextEntryDialog.rbw +7 -10
  78. data/samples/bigdemo/wxToggleButton.rbw +7 -9
  79. data/samples/bigdemo/wxToolBar.rbw +7 -9
  80. data/samples/bigdemo/wxTreeCtrl.rbw +7 -9
  81. data/samples/calendar/calendar.rb +6 -10
  82. data/samples/caret/caret.rb +6 -10
  83. data/samples/controls/controls.rb +6 -10
  84. data/samples/controls/get_item_sample.rb +0 -0
  85. data/samples/dialogs/dialogs.rb +10 -11
  86. data/samples/drawing/graphics_drawing.rb +6 -7
  87. data/samples/drawing/images.rb +5 -10
  88. data/samples/drawing/paperclip.png +0 -0
  89. data/samples/etc/activation.rb +4 -10
  90. data/samples/etc/choice.rb +5 -10
  91. data/samples/etc/miniframe.rb +5 -10
  92. data/samples/etc/sash.rb +5 -10
  93. data/samples/etc/scrollwin.rb +4 -10
  94. data/samples/etc/system_settings.rb +4 -10
  95. data/samples/etc/threaded.rb +4 -10
  96. data/samples/etc/wizard.rb +5 -10
  97. data/samples/event/event.rb +3 -5
  98. data/samples/grid/grid.rb +5 -9
  99. data/samples/grid/gridtablebase.rb +134 -0
  100. data/samples/html/html.rb +4 -10
  101. data/samples/listbook/listbook.rb +4 -11
  102. data/samples/mdi/mdi.rb +5 -10
  103. data/samples/media/mediactrl.rb +4 -10
  104. data/samples/minimal/minimal.rb +18 -26
  105. data/samples/minimal/nothing.rb +5 -10
  106. data/samples/opengl/cube.rb +8 -14
  107. data/samples/printing/mondrian.ico +0 -0
  108. data/samples/printing/mondrian.xpm +0 -0
  109. data/samples/printing/printing.rb +5 -179
  110. data/samples/text/mondrian.ico +0 -0
  111. data/samples/text/mondrian.xpm +0 -0
  112. data/samples/text/scintilla.rb +5 -10
  113. data/samples/text/textctrl.rb +27 -38
  114. data/samples/text/unicode.rb +6 -2
  115. data/samples/treectrl/treectrl.rb +4 -10
  116. data/samples/xrc/xrc_sample.rb +6 -17
  117. metadata +98 -90
@@ -0,0 +1,28 @@
1
+ class Wx::AcceleratorTable
2
+ # Allow new to be called as []
3
+ class << self
4
+ alias :[] :new
5
+ end
6
+
7
+ # Allow initialize to be called with a splat-like list of arguments,
8
+ # and allow entries to be specified in terser form [mod, key, id]
9
+ # rather than full AcceleratorEntry.new call.
10
+ wx_init = self.instance_method(:initialize)
11
+ define_method(:initialize) do | *args |
12
+ # Test for old-style arg passing in a single array
13
+ if args.length == 1 and args.first.kind_of?(Array) and
14
+ args.first.all? { | e | e.kind_of?(Wx::AcceleratorEntry) }
15
+ args = args[0]
16
+ end
17
+ # Convert to array of AccEntries, to pass in as single array
18
+ args = args.map do | entry |
19
+ case entry
20
+ when Wx::AcceleratorEntry then entry
21
+ when Array then Wx::AcceleratorEntry.new(*entry)
22
+ else Kernel.raise ArgumentError,
23
+ "#{entry.inspect} is not a valid AcceleratorTable entry"
24
+ end
25
+ end
26
+ wx_init.bind(self).call(args)
27
+ end
28
+ end
@@ -0,0 +1,18 @@
1
+ class Wx::Animation < Wx::GDIObject
2
+ # Redefine the initialize method so it raises an exception if a
3
+ # non-existent file is given to the constructor; otherwise, wx Widgets
4
+ # just carries on with an empty bitmap, which may cause faults later
5
+ wx_init = self.instance_method(:initialize)
6
+ define_method(:initialize) do | *args |
7
+ if args[0].kind_of? String
8
+ if not File.exist?( File.expand_path(args[0]) )
9
+ Kernel.raise( ArgumentError,
10
+ "Animation file does not exist: #{args[0]}" )
11
+ end
12
+ res = wx_init.bind(self).call()
13
+ res.load_file(args[0], args[1] || Wx::ANIMATION_TYPE_ANY)
14
+ else
15
+ wx_init.bind(self).call(*args)
16
+ end
17
+ end
18
+ end
@@ -1,4 +1,9 @@
1
1
  class Wx::Bitmap
2
+ # Constructor copying data from an image
3
+ def self.from_image(img, depth = -1)
4
+ new(img, depth)
5
+ end
6
+
2
7
  # Redefine the initialize method so it raises an exception if a
3
8
  # non-existent file is given to the constructor; otherwise, wx Widgets
4
9
  # just carries on with an empty bitmap, which may cause faults later
@@ -0,0 +1,12 @@
1
+ # Emulates the wxWidgets BusyCursor class, by providing a scope within
2
+ # which a busy cursor will be shown
3
+ class Wx::BusyCursor
4
+ # Only one class method, optionally accepting a cursor that should be
5
+ # shown, defaulting to an hour glass cursor.
6
+ def self.busy(cursor = Wx::HOURGLASS_CURSOR)
7
+ Wx::begin_busy_cursor(cursor)
8
+ yield
9
+ ensure
10
+ Wx::end_busy_cursor
11
+ end
12
+ end
@@ -29,7 +29,9 @@ class Wx::EvtHandler
29
29
  if evt_klass = EVENT_TYPE_CLASS_MAP[id]
30
30
  return evt_klass
31
31
  else
32
- warn "No event class defined for event type #{id}"
32
+ if Wx::DEBUG
33
+ warn "No event class defined for event type #{id}"
34
+ end
33
35
  return Wx::Event
34
36
  end
35
37
  end
@@ -42,11 +44,18 @@ class Wx::EvtHandler
42
44
 
43
45
  # Given the Integer constant Wx::EVT_XXX, returns the convenience
44
46
  # handler method name associated with that type of event.
45
-
46
47
  def self.event_name_for_type(name)
47
48
  EVENT_NAME_TYPE_MAP.index(name)
48
49
  end
49
50
 
51
+ # Given an integer value +int_val+, returns the name of the EVT_xxx
52
+ # constant which points to it. Mainly useful for debugging.
53
+ def self.const_to_name(int_val)
54
+ Wx::constants.grep(/^EVT/).find do | c_name |
55
+ Wx::const_get(c_name) == int_val
56
+ end
57
+ end
58
+
50
59
  # Public method to register the mapping of a custom event type
51
60
  # +konstant+ (which should be a unique integer; one will be created if
52
61
  # not supplied) to a custom event class +klass+. If +meth+ and +arity+
@@ -133,12 +142,15 @@ class Wx::EvtHandler
133
142
  # parameter or by calling the wx_id method of a passed Window.
134
143
  def acquire_id(window_or_id)
135
144
  case window_or_id
136
- when Fixnum then window_or_id
137
- when Wx::Window, Wx::MenuItem then window_or_id.wx_id
138
- else Kernel.raise ArgumentError,
139
- "Must specify Wx::Window event source or its Wx id, " +
140
- "not '#{window_or_id.inspect}'",
141
- caller
145
+ when Fixnum
146
+ window_or_id
147
+ when Wx::Window, Wx::MenuItem, Wx::ToolBarTool
148
+ window_or_id.wx_id
149
+ else
150
+ Kernel.raise ArgumentError,
151
+ "Must specify Wx::Window event source or its Wx id, " +
152
+ "not '#{window_or_id.inspect}'",
153
+ caller
142
154
  end
143
155
  end
144
156
  private :acquire_id, :acquire_handler
@@ -258,30 +270,24 @@ class Wx::EvtHandler
258
270
  EventType['evt_combobox', 1,
259
271
  Wx::EVT_COMMAND_COMBOBOX_SELECTED,
260
272
  Wx::CommandEvent],
261
- EventType['evt_command', 0,
262
- Wx::EVT_NULL,
263
- Wx::Event],
264
273
  EventType['evt_command_enter', 1,
265
274
  Wx::EVT_COMMAND_ENTER,
266
- Wx::Event],
275
+ Wx::CommandEvent],
267
276
  EventType['evt_command_kill_focus', 1,
268
277
  Wx::EVT_COMMAND_KILL_FOCUS,
269
- Wx::Event],
278
+ Wx::CommandEvent],
270
279
  EventType['evt_command_left_click', 1,
271
280
  Wx::EVT_COMMAND_LEFT_CLICK,
272
- Wx::Event],
281
+ Wx::CommandEvent],
273
282
  EventType['evt_command_left_dclick', 1,
274
283
  Wx::EVT_COMMAND_LEFT_DCLICK,
275
- Wx::Event],
276
- EventType['evt_command_range', 2,
277
- Wx::EVT_NULL,
278
- Wx::Event],
284
+ Wx::CommandEvent],
279
285
  EventType['evt_command_right_click', 1,
280
286
  Wx::EVT_COMMAND_RIGHT_CLICK,
281
- Wx::Event],
287
+ Wx::CommandEvent],
282
288
  EventType['evt_command_set_focus', 1,
283
289
  Wx::EVT_COMMAND_SET_FOCUS,
284
- Wx::Event],
290
+ Wx::CommandEvent],
285
291
  EventType['evt_context_menu', 0,
286
292
  Wx::EVT_CONTEXT_MENU,
287
293
  Wx::ContextMenuEvent],
@@ -585,6 +591,9 @@ class Wx::EvtHandler
585
591
  EventType['evt_move', 0,
586
592
  Wx::EVT_MOVE,
587
593
  Wx::MoveEvent],
594
+ EventType['evt_moving', 0,
595
+ Wx::EVT_MOVING,
596
+ Wx::MoveEvent],
588
597
  EventType['evt_nc_paint', 0,
589
598
  Wx::EVT_NC_PAINT,
590
599
  Wx::Event],
@@ -598,7 +607,7 @@ class Wx::EvtHandler
598
607
  Wx::EVT_PAINT,
599
608
  Wx::PaintEvent],
600
609
  EventType['evt_query_end_session', 0,
601
- Wx::EVT_QUERY_END_SESSION,
610
+ Wx::EVT_QUERY_END_SESSION,
602
611
  Wx::Event],
603
612
  EventType['evt_query_layout_info', 0,
604
613
  Wx::EVT_QUERY_LAYOUT_INFO,
@@ -687,6 +696,9 @@ class Wx::EvtHandler
687
696
  EventType['evt_set_focus', 0,
688
697
  Wx::EVT_SET_FOCUS,
689
698
  Wx::FocusEvent],
699
+ EventType['evt_show', 1,
700
+ Wx::EVT_SHOW,
701
+ Wx::ShowEvent],
690
702
  EventType['evt_size', 0,
691
703
  Wx::EVT_SIZE,
692
704
  Wx::SizeEvent],
@@ -816,6 +828,9 @@ class Wx::EvtHandler
816
828
  EventType['evt_tree_item_expanding', 1,
817
829
  Wx::EVT_COMMAND_TREE_ITEM_EXPANDING,
818
830
  Wx::TreeEvent],
831
+ EventType['evt_tree_item_gettooltip', 1,
832
+ Wx::EVT_COMMAND_TREE_ITEM_GETTOOLTIP,
833
+ Wx::TreeEvent],
819
834
  EventType['evt_tree_item_menu', 1,
820
835
  Wx::EVT_COMMAND_TREE_ITEM_MENU,
821
836
  Wx::TreeEvent],
@@ -0,0 +1,44 @@
1
+ # Tweaks to the global module functions
2
+
3
+ module Wx
4
+ class << self
5
+ # Allow this to be called with keyword parameters, and avoid
6
+ # segfaults on OS X with bad params
7
+ wx_about_box = self.instance_method(:about_box)
8
+ define_method(:about_box) do | info |
9
+ # If AboutDialogInfo has no version, it segfaults on OS X 10.5
10
+ no_version = ArgumentError.new("Must supply a version for AboutDialog")
11
+ case info
12
+ when Wx::AboutDialogInfo
13
+ unless info.has_version
14
+ Kernel.raise no_version
15
+ end
16
+
17
+ ab_info = info
18
+ when Hash
19
+ ab_info = Wx::AboutDialogInfo.new
20
+ ab_info.name = info[:name] || 'wxRuby application'
21
+ ab_info.version = info[:version] || Kernel.raise(no_version)
22
+
23
+ ab_info.description = info[:description] || ''
24
+ ab_info.copyright = info[:copyright] || ''
25
+ ab_info.licence = info[:licence] || ''
26
+ ab_info.developers = info[:developers] || []
27
+ ab_info.doc_writers = info[:doc_writers] || []
28
+ ab_info.artists = info[:artists] || []
29
+ ab_info.translators = info[:translators] || []
30
+ if info.key?(:website)
31
+ ab_info.set_website(*info[:website])
32
+ end
33
+ if info.key?(:icon)
34
+ ab_info.icon = info[:icon]
35
+ end
36
+
37
+ else
38
+ Kernel.raise ArgumentError,
39
+ "Can't use #{info.inspect} for AboutDialogInfo"
40
+ end
41
+ wx_about_box.bind(self).call(ab_info)
42
+ end
43
+ end
44
+ end
@@ -4,15 +4,17 @@ class Wx::Grid
4
4
  # garbage collection of Grid-related classes; they do not extend the
5
5
  # public functionality of the class in any way.
6
6
  #
7
- # The GridCellRenderers and GridCellEditors pose a problem for ruby's
8
- # GC, in that Wx makes them owned by the grid once they have been set
9
- # for a cell or group of cells. However, because they are SWIG
10
- # directors we cannot allow the ruby object they are originally
11
- # associated with to be swept by GC.
7
+ # GridTableBase, and the GridCellRenderers and GridCellEditors pose a
8
+ # problem for ruby's GC, in that Wx makes them owned by the grid once
9
+ # they have been set for a cell or group of cells. However, because
10
+ # they are SWIG directors we cannot allow the ruby object they are
11
+ # originally associated with to be swept by GC, as C++ method calls
12
+ # are routed to ruby method calls.
12
13
  #
13
14
  # The code below stores Ruby redefines all methods that may
14
- # potentially set an Editor or Renderer, and stores a reference to
15
- # it in an instance variable, so they are not disposed of up when GC sweeps.
15
+ # potentially set a GridTableBase, Editor or Renderer, and stores a
16
+ # reference to them in an instance variable, so they are not disposed
17
+ # of up when GC sweeps.
16
18
 
17
19
  # These all need to be set up as private methods which default to an
18
20
  # array. This can't be done in initialize b/c that may not be called
@@ -26,6 +28,13 @@ class Wx::Grid
26
28
  private meth
27
29
  end
28
30
 
31
+ # Set a grid table base to provide data
32
+ alias :__set_table :set_table
33
+ def set_table(table, sel_mode = Wx::Grid::GridSelectCells)
34
+ __set_table(table, sel_mode)
35
+ @__grid_table = table
36
+ end
37
+
29
38
  # store default editor
30
39
  wx_set_default_editor = self.instance_method(:set_default_editor)
31
40
  define_method(:set_default_editor) do | editr |
@@ -3,4 +3,12 @@ class Wx::HtmlWindow
3
3
  def load_file(file)
4
4
  set_page( File.read(file) )
5
5
  end
6
+
7
+ # This is called from within wxWidgets whenever a URL is being
8
+ # opened. The method may return true, to signal that the opening
9
+ # should be permitted, false or nil to signal that it should be
10
+ # blocked, or a string URL to which it should be redirected
11
+ def on_opening_url(url)
12
+ true
13
+ end
6
14
  end
@@ -1,4 +1,11 @@
1
1
  class Wx::Icon
2
+ # Analogous to Image.from_bitmap
3
+ def self.from_bitmap(bmp)
4
+ ico = new
5
+ ico.copy_from_bitmap(bmp)
6
+ ico
7
+ end
8
+
2
9
  # Redefine the initialize method so it raises an exception if a
3
10
  # non-existent file is given to the constructor; otherwise, wx Widgets
4
11
  # just carries on with an empty icon, which may cause faults later
@@ -0,0 +1,3 @@
1
+ class Wx::IconBundle
2
+ alias :<< :add_icon
3
+ end
@@ -1,4 +1,16 @@
1
1
  class Wx::Image
2
+ # Load a new image from an IO-like object that supports "read"
3
+ def self.read(an_io, type_or_mime, index = -1)
4
+ img = new
5
+ img.load_stream(an_io, type_or_mime, index)
6
+ img
7
+ end
8
+
9
+ # Create a new image from Wx::Bitmap, preserving mask information
10
+ def self.from_bitmap(bmp)
11
+ bmp.convert_to_image
12
+ end
13
+
2
14
  # Redefine the initialize method so it raises an exception if a
3
15
  # non-existent file is given to the constructor; otherwise, wx Widgets
4
16
  # just carries on with an invalid image, which may cause faults later
@@ -11,4 +23,9 @@ class Wx::Image
11
23
  end
12
24
  wx_init.bind(self).call(*args)
13
25
  end
26
+
27
+ # Convert to bitmap
28
+ def convert_to_bitmap
29
+ Wx::Bitmap.from_image(self)
30
+ end
14
31
  end
@@ -0,0 +1,3 @@
1
+ class Wx::ImageList
2
+ alias :<< :add
3
+ end
@@ -0,0 +1,4 @@
1
+ class Wx::ToolBarTool
2
+ alias :id :get_id
3
+ alias :wx_id :get_id
4
+ end
@@ -1,4 +1,25 @@
1
1
  class Wx::XmlResource
2
+ # XRC_NO_SUBCLASSING should always be in place in wxRuby - we can't
3
+ # currently link directly to wxRuby subclasses.
4
+ class << self
5
+ wx_get = self.instance_method(:get)
6
+ define_method(:get) do
7
+ res = wx_get.bind(self).call
8
+ res.flags |= Wx::XRC_NO_SUBCLASSING
9
+ res
10
+ end
11
+ end
12
+
13
+ # WxRuby already has all XRC handlers built in so there's no way to
14
+ # control init_all_handlers to reduce binary size. So save users
15
+ # having to call it.
16
+ wx_init = self.instance_method(:initialize)
17
+ define_method(:initialize) do | *args |
18
+ result = wx_init.bind(self).call(*args)
19
+ result.flags |= Wx::XRC_NO_SUBCLASSING
20
+ result.init_all_handlers
21
+ end
22
+
2
23
  # The standard .load method returns a boolean indicating success or
3
24
  # failure. Failure might result from bad XML, or a non-existent
4
25
  # file. In ruby, in these circumstances, it's more natural to raise an
@@ -160,7 +160,7 @@ module Wx
160
160
 
161
161
  def describe_constructor()
162
162
  param_spec.inject("") do | desc, param |
163
- desc << "#{param.name} (#{param.default.class.name})\n"
163
+ desc << ":#{param.name} => (#{param.default.class.name})\n"
164
164
  end
165
165
  end
166
166
  end
@@ -184,12 +184,15 @@ module Wx
184
184
  real_args = [ parent ] + self.class.args_as_list(*mixed_args)
185
185
  begin
186
186
  pre_wx_kwctor_init(*real_args)
187
- rescue
188
- msg = "Error initializing #{self.inspect} \n" +
189
- "Sent parameters: #{real_args.inspect}\n" +
190
- "Correct parameters are:\n" +
187
+ rescue => err
188
+ msg = "Error initializing #{self.inspect}\n"+
189
+ " : #{err.message} \n" +
190
+ "Correct parameters for #{self.class.name}.new are:\n" +
191
191
  self.class.describe_constructor()
192
- Kernel.raise ArgumentError, msg
192
+
193
+ new_err = err.class.new(msg)
194
+ new_err.set_backtrace(caller)
195
+ Kernel.raise new_err
193
196
  end
194
197
 
195
198
  # If a block was given, pass the newly created Window instance
@@ -483,3 +483,10 @@ Wx::define_keyword_ctors('SearchCtrl') do
483
483
  wx_ctor_params :validator, :name => 'searchCtrl'
484
484
  end
485
485
 
486
+
487
+ Wx::define_keyword_ctors('AnimationCtrl') do
488
+ wx_ctor_params :id, :anim
489
+ wx_ctor_params :pos, :size, :style => Wx::AC_DEFAULT_STYLE
490
+ wx_ctor_params :name => 'animationCtrl'
491
+ end
492
+
data/lib/wx/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Wx
2
- WXRUBY_VERSION = '1.9.5'
2
+ WXRUBY_VERSION = '1.9.6'
3
3
  end
data/lib/wxruby2.so CHANGED
Binary file
data/samples/aui/aui.rb CHANGED
@@ -1,17 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
- # wxRuby2 Sample Code. Copyright (c) 2004-2007 Kevin B. Smith
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
3
  # Freely reusable code: see SAMPLES-LICENSE.TXT for details
4
-
5
4
  begin
6
- require 'wx'
7
- rescue LoadError => no_wx_err
8
- begin
9
- require 'rubygems'
10
- load 'wx'
11
- rescue
12
- raise no_wx_err
13
- end
5
+ require 'rubygems'
6
+ rescue LoadError
14
7
  end
8
+ require 'wx'
9
+
10
+
15
11
 
16
12
  # A resizable control that displays its current size, and, if an AUI
17
13
  # arrangement, its position and layer
File without changes
@@ -1,15 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
-
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Freely reusable code: see SAMPLES-LICENSE.TXT for details
3
4
  begin
4
- require 'wx'
5
- rescue LoadError => no_wx_err
6
- begin
7
- require 'rubygems'
8
- require 'wx'
9
- rescue LoadError
10
- raise no_wx_err
11
- end
5
+ require 'rubygems'
6
+ rescue LoadError
12
7
  end
8
+ require 'wx'
9
+
10
+
13
11
 
14
12
  class ColoredPanel < Wx::Window
15
13
  def initialize(parent, color)
@@ -1,15 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
-
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Freely reusable code: see SAMPLES-LICENSE.TXT for details
3
4
  begin
4
- require 'wx'
5
- rescue LoadError => no_wx_err
6
- begin
7
- require 'rubygems'
8
- require 'wx'
9
- rescue LoadError
10
- raise no_wx_err
11
- end
5
+ require 'rubygems'
6
+ rescue LoadError
12
7
  end
8
+ require 'wx'
9
+
10
+
13
11
 
14
12
  class SimpleGrid < Wx::Grid
15
13
 
@@ -1,15 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
-
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Freely reusable code: see SAMPLES-LICENSE.TXT for details
3
4
  begin
4
- require 'wx'
5
- rescue LoadError => no_wx_err
6
- begin
7
- require 'rubygems'
8
- require 'wx'
9
- rescue LoadError
10
- raise no_wx_err
11
- end
5
+ require 'rubygems'
6
+ rescue LoadError
12
7
  end
8
+ require 'wx'
9
+
10
+
13
11
 
14
12
  module Demo
15
13
 
@@ -1,15 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
-
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Freely reusable code: see SAMPLES-LICENSE.TXT for details
3
4
  begin
4
- require 'wx'
5
- rescue LoadError => no_wx_err
6
- begin
7
- require 'rubygems'
8
- require 'wx'
9
- rescue LoadError
10
- raise no_wx_err
11
- end
5
+ require 'rubygems'
6
+ rescue LoadError
12
7
  end
8
+ require 'wx'
9
+
10
+
13
11
 
14
12
  TEXT = "Right-click on the panel (or Ctrl-click on the Mac) to show a popup\nmenu. Then look at the code for this sample. Notice how the\nPopupMenu method is similar to the ShowModal method of a wxDialog in\nthat it doesn't return until the popup menu has been dismissed. The\nevent handlers for the popup menu items can either be attached to the\nmenu itself, or to the window that invokes PopupMenu."
15
13
 
@@ -1,17 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
- # wxRuby2 Sample Code. Copyright (c) 2004-2006 Kevin B. Smith
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
3
  # Freely reusable code: see SAMPLES-LICENSE.TXT for details
4
-
5
4
  begin
6
- require 'wx'
7
- rescue LoadError => no_wx_err
8
- begin
9
- require 'rubygems'
10
- require 'wx'
11
- rescue LoadError
12
- raise no_wx_err
13
- end
5
+ require 'rubygems'
6
+ rescue LoadError
14
7
  end
8
+ require 'wx'
9
+
10
+
15
11
  include Wx
16
12
 
17
13
  BUTTON_CLOSE = 1003
@@ -1,15 +1,13 @@
1
1
  #!/usr/bin/env ruby
2
-
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Freely reusable code: see SAMPLES-LICENSE.TXT for details
3
4
  begin
4
- require 'wx'
5
- rescue LoadError => no_wx_err
6
- begin
7
- require 'rubygems'
8
- require 'wx'
9
- rescue LoadError
10
- raise no_wx_err
11
- end
5
+ require 'rubygems'
6
+ rescue LoadError
12
7
  end
8
+ require 'wx'
9
+
10
+
13
11
 
14
12
  def make_simple_box1(win)
15
13
  box = Wx::BoxSizer.new(Wx::HORIZONTAL)