wxruby 1.9.2-i386-mswin32 → 1.9.3-i386-mswin32

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 (149) hide show
  1. data/LICENSE +53 -53
  2. data/README +299 -299
  3. data/lib/wx/classes/app.rb +6 -0
  4. data/lib/wx/classes/checklistbox.rb +45 -30
  5. data/lib/wx/classes/clipboard.rb +16 -0
  6. data/lib/wx/classes/event.rb +5 -0
  7. data/lib/wx/classes/evthandler.rb +20 -10
  8. data/lib/wx/classes/grid.rb +38 -39
  9. data/lib/wx/classes/listctrl.rb +12 -0
  10. data/lib/wx/classes/mediactrl.rb +22 -0
  11. data/lib/wx/classes/menu.rb +6 -6
  12. data/lib/wx/classes/sound.rb +23 -0
  13. data/lib/wx/classes/styledtextctrl.rb +2 -2
  14. data/lib/wx/classes/treectrl.rb +26 -0
  15. data/lib/wx/keyword_ctors.rb +19 -5
  16. data/lib/wx/keyword_defs.rb +20 -0
  17. data/lib/wx/version.rb +1 -1
  18. data/lib/wx.rb +42 -42
  19. data/lib/wxruby2.exp +0 -0
  20. data/lib/wxruby2.lib +0 -0
  21. data/lib/wxruby2.so +0 -0
  22. data/samples/SAMPLES-LICENSE.TXT +17 -17
  23. data/samples/aui/aui.rb +8 -1
  24. data/samples/bigdemo/About.rbw +39 -39
  25. data/samples/bigdemo/ColorPanel.rbw +25 -25
  26. data/samples/bigdemo/GridSimple.rbw +80 -80
  27. data/samples/bigdemo/MDIDemo.rbw +59 -59
  28. data/samples/bigdemo/PopupMenu.rbw +151 -151
  29. data/samples/bigdemo/Sizers.rbw +545 -545
  30. data/samples/bigdemo/bigdemo.rb +826 -826
  31. data/samples/bigdemo/demoTemplate.rbw +37 -37
  32. data/samples/bigdemo/icons/choice.xpm +27 -27
  33. data/samples/bigdemo/icons/combo.xpm +27 -27
  34. data/samples/bigdemo/icons/copy.xpm +25 -25
  35. data/samples/bigdemo/icons/cut.xpm +24 -24
  36. data/samples/bigdemo/icons/gauge.xpm +27 -27
  37. data/samples/bigdemo/icons/help.xpm +25 -25
  38. data/samples/bigdemo/icons/list.xpm +27 -27
  39. data/samples/bigdemo/icons/mondrian.xpm +44 -44
  40. data/samples/bigdemo/icons/new.xpm +24 -24
  41. data/samples/bigdemo/icons/ogl.ico +0 -0
  42. data/samples/bigdemo/icons/ogl.xpm +45 -45
  43. data/samples/bigdemo/icons/open.xpm +26 -26
  44. data/samples/bigdemo/icons/paste.xpm +38 -38
  45. data/samples/bigdemo/icons/preview.xpm +26 -26
  46. data/samples/bigdemo/icons/print.xpm +26 -26
  47. data/samples/bigdemo/icons/radio.xpm +27 -27
  48. data/samples/bigdemo/icons/robert.xpm +415 -415
  49. data/samples/bigdemo/icons/save.xpm +25 -25
  50. data/samples/bigdemo/icons/smiles.xpm +39 -39
  51. data/samples/bigdemo/icons/smiley.xpm +42 -42
  52. data/samples/bigdemo/icons/stattext.xpm +24 -24
  53. data/samples/bigdemo/icons/test2.bmp +0 -0
  54. data/samples/bigdemo/icons/test2.xpm +79 -79
  55. data/samples/bigdemo/icons/text.xpm +27 -27
  56. data/samples/bigdemo/icons/tog1.xpm +38 -38
  57. data/samples/bigdemo/icons/tog2.xpm +38 -38
  58. data/samples/bigdemo/icons/wxwin16x16.xpm +25 -25
  59. data/samples/bigdemo/tips.txt +7 -7
  60. data/samples/bigdemo/utils.rb +11 -11
  61. data/samples/bigdemo/wxButton.rbw +66 -66
  62. data/samples/bigdemo/wxCalendarCtrl.rbw +72 -72
  63. data/samples/bigdemo/wxCheckBox.rbw +52 -52
  64. data/samples/bigdemo/wxCheckListBox.rbw +77 -77
  65. data/samples/bigdemo/wxChoice.rbw +49 -49
  66. data/samples/bigdemo/wxColourDialog.rbw +34 -34
  67. data/samples/bigdemo/wxComboBox.rbw +79 -79
  68. data/samples/bigdemo/wxDialog.rbw +92 -92
  69. data/samples/bigdemo/wxDirDialog.rbw +32 -32
  70. data/samples/bigdemo/wxFileDialog.rbw +39 -39
  71. data/samples/bigdemo/wxFileDialog_Save.rbw +38 -38
  72. data/samples/bigdemo/wxFindReplaceDialog.rbw +85 -85
  73. data/samples/bigdemo/wxFontDialog.rbw +176 -176
  74. data/samples/bigdemo/wxFrame.rbw +55 -55
  75. data/samples/bigdemo/wxGauge.rbw +73 -73
  76. data/samples/bigdemo/wxGrid.rbw +68 -68
  77. data/samples/bigdemo/wxListBox.rbw +142 -142
  78. data/samples/bigdemo/wxListCtrl_virtual.rbw +109 -109
  79. data/samples/bigdemo/wxMDIWindows.rbw +52 -52
  80. data/samples/bigdemo/wxMenu.rbw +238 -238
  81. data/samples/bigdemo/wxMessageDialog.rbw +30 -30
  82. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +34 -34
  83. data/samples/bigdemo/wxNotebook.rbw +138 -138
  84. data/samples/bigdemo/wxProgressDialog.rbw +45 -45
  85. data/samples/bigdemo/wxRadioBox.rbw +74 -74
  86. data/samples/bigdemo/wxRadioButton.rbw +127 -127
  87. data/samples/bigdemo/wxSashWindow.rbw +94 -104
  88. data/samples/bigdemo/wxScrolledMessageDialog.rbw +59 -59
  89. data/samples/bigdemo/wxScrolledWindow.rbw +201 -201
  90. data/samples/bigdemo/wxSingleChoiceDialog.rbw +35 -35
  91. data/samples/bigdemo/wxSlider.rbw +44 -44
  92. data/samples/bigdemo/wxSpinButton.rbw +52 -52
  93. data/samples/bigdemo/wxSpinCtrl.rbw +53 -53
  94. data/samples/bigdemo/wxSplitterWindow.rbw +65 -65
  95. data/samples/bigdemo/wxStaticBitmap.rbw +53 -53
  96. data/samples/bigdemo/wxStaticText.rbw +57 -57
  97. data/samples/bigdemo/wxStatusBar.rbw +128 -128
  98. data/samples/bigdemo/wxTextCtrl.rbw +151 -151
  99. data/samples/bigdemo/wxTextEntryDialog.rbw +34 -34
  100. data/samples/bigdemo/wxToggleButton.rbw +51 -51
  101. data/samples/bigdemo/wxToolBar.rbw +133 -133
  102. data/samples/bigdemo/wxTreeCtrl.rbw +192 -192
  103. data/samples/calendar/calendar.rb +275 -275
  104. data/samples/caret/caret.rb +286 -286
  105. data/samples/caret/mondrian.xpm +44 -44
  106. data/samples/controls/controls.rb +1140 -1140
  107. data/samples/controls/get_item_sample.rb +87 -87
  108. data/samples/controls/icons/choice.xpm +27 -27
  109. data/samples/controls/icons/combo.xpm +27 -27
  110. data/samples/controls/icons/gauge.xpm +27 -27
  111. data/samples/controls/icons/list.xpm +27 -27
  112. data/samples/controls/icons/radio.xpm +27 -27
  113. data/samples/controls/icons/stattext.xpm +24 -24
  114. data/samples/controls/icons/text.xpm +27 -27
  115. data/samples/controls/mondrian.xpm +44 -44
  116. data/samples/dialogs/dialogs.rb +724 -724
  117. data/samples/dialogs/tips.txt +18 -18
  118. data/samples/drawing/graphics_drawing.rb +232 -0
  119. data/samples/{images → drawing}/images.rb +48 -48
  120. data/samples/{images → drawing}/paperclip.png +0 -0
  121. data/samples/etc/activation.rb +108 -108
  122. data/samples/etc/choice.rb +72 -72
  123. data/samples/etc/miniframe.rb +84 -84
  124. data/samples/etc/sash.rb +135 -135
  125. data/samples/etc/scrollwin.rb +116 -116
  126. data/samples/etc/system_settings.rb +258 -258
  127. data/samples/etc/wizard.rb +79 -79
  128. data/samples/grid/grid.rb +1 -0
  129. data/samples/listbook/listbook.rb +181 -181
  130. data/samples/listbook/listbook.xrc +370 -370
  131. data/samples/mdi/mdi.rb +87 -87
  132. data/samples/media/mediactrl.rb +173 -0
  133. data/samples/minimal/minimal.rb +85 -85
  134. data/samples/minimal/nothing.rb +21 -21
  135. data/samples/opengl/cube.rb +123 -0
  136. data/samples/sockets/SocketPackets.rb +27 -0
  137. data/samples/sockets/res/message-new.png +0 -0
  138. data/samples/sockets/res/user.png +0 -0
  139. data/samples/sockets/wxClient.rb +395 -0
  140. data/samples/sockets/wxServer.rb +422 -0
  141. data/samples/sockets/wxSocketGUI.rb +97 -0
  142. data/samples/text/textctrl.rb +124 -124
  143. data/samples/text/unicode.rb +238 -238
  144. data/samples/text/utf8.txt +14 -14
  145. data/samples/treectrl/treectrl.rb +1180 -1181
  146. data/samples/xrc/samples.xrc +46 -46
  147. data/samples/xrc/xrc_sample.rb +107 -107
  148. metadata +26 -9
  149. data/samples/images/Thumbs.db +0 -0
@@ -1,25 +1,25 @@
1
- /* XPM */
2
- static char *wxwin16x16_xpm[] = {
3
- "16 16 6 1",
4
- " c None",
5
- ". c #000000",
6
- "X c #000084",
7
- "o c #FFFFFF",
8
- "O c #FFFF00",
9
- "+ c #FF0000",
10
- " ",
11
- " ",
12
- " ",
13
- " ....... ",
14
- " .XXXXX. ",
15
- " .oXXXX. ",
16
- " .oXXX.......",
17
- ".....oXXX.OOOOO.",
18
- ".+++.XXXX.oOOOO.",
19
- ".o++......oOOOO.",
20
- ".o++++. .oOOOO.",
21
- ".o++++. .OOOOO.",
22
- ".+++++. .......",
23
- "....... ",
24
- " ",
25
- " "};
1
+ /* XPM */
2
+ static char *wxwin16x16_xpm[] = {
3
+ "16 16 6 1",
4
+ " c None",
5
+ ". c #000000",
6
+ "X c #000084",
7
+ "o c #FFFFFF",
8
+ "O c #FFFF00",
9
+ "+ c #FF0000",
10
+ " ",
11
+ " ",
12
+ " ",
13
+ " ....... ",
14
+ " .XXXXX. ",
15
+ " .oXXXX. ",
16
+ " .oXXX.......",
17
+ ".....oXXX.OOOOO.",
18
+ ".+++.XXXX.oOOOO.",
19
+ ".o++......oOOOO.",
20
+ ".o++++. .oOOOO.",
21
+ ".o++++. .OOOOO.",
22
+ ".+++++. .......",
23
+ "....... ",
24
+ " ",
25
+ " "};
@@ -1,7 +1,7 @@
1
- Welcome to the WxRuby Tutorial! Click on all the different demos to learn how to use each kind of widget.
2
- This demo was ported from wxPython. Thanks to Robin Dunn for his hard work and generosity!
3
- Check out the WxRuby wiki at http://wxruby.rubyforge.org!
4
- Don't forget to check out the samples that come with WxRuby - many contain more advanced examples of WxRuby than you'll find here.
5
- Thanks to Kevin Smith for all his hard work - he made this Demo possible!
6
- Thanks to Curt Hibbs for all his hard work - his WxRuby installer for Windows saved my life!
7
- Thanks to Robert Carlin for porting this demo (I know, it's a shameless plug :-)
1
+ Welcome to the WxRuby Tutorial! Click on all the different demos to learn how to use each kind of widget.
2
+ This demo was ported from wxPython. Thanks to Robin Dunn for his hard work and generosity!
3
+ Check out the WxRuby wiki at http://wxruby.rubyforge.org!
4
+ Don't forget to check out the samples that come with WxRuby - many contain more advanced examples of WxRuby than you'll find here.
5
+ Thanks to Kevin Smith for all his hard work - he made this Demo possible!
6
+ Thanks to Curt Hibbs for all his hard work - his WxRuby installer for Windows saved my life!
7
+ Thanks to Robert Carlin for porting this demo (I know, it's a shameless plug :-)
@@ -1,12 +1,12 @@
1
- # This module contains various utilities to simplify the implementation of the WxRuby Demo
2
-
3
- module WxDemoUtilities
4
-
5
- #Convert paths to the platform-specific separator
6
-
7
- def opj(path)
8
-
9
- end
10
-
11
- #----------------------------------------------------------
1
+ # This module contains various utilities to simplify the implementation of the WxRuby Demo
2
+
3
+ module WxDemoUtilities
4
+
5
+ #Convert paths to the platform-specific separator
6
+
7
+ def opj(path)
8
+
9
+ end
10
+
11
+ #----------------------------------------------------------
12
12
  end
@@ -1,66 +1,66 @@
1
- #!/usr/bin/env ruby
2
-
3
- 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
12
- end
13
-
14
- class TestPanel < Wx::Panel
15
- def initialize(parent, log)
16
- super(parent, -1, Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE, Wx::NO_FULL_REPAINT_ON_RESIZE)
17
- @log = log
18
-
19
- b = Wx::Button.new(self, 10, "Hello", Wx::Point.new(20,20))
20
- evt_button(10) {|event| on_click(event)}
21
- b.set_background_colour(Wx::BLUE)
22
- b.set_foreground_colour(Wx::WHITE)
23
- b.set_default()
24
-
25
- b = Wx::Button.new(self, 20, "HELLO AGAIN!", Wx::Point.new(20,60), Wx::Size.new(120,45))
26
- evt_button(20) {|event| on_click(event)}
27
- b.set_tool_tip("This is a Hello button...")
28
-
29
- bmp_file = File.join( File.dirname(__FILE__), 'icons', 'test2.bmp')
30
- bmp = Wx::Bitmap.new(bmp_file, Wx::BITMAP_TYPE_BMP)
31
- bmp_size = Wx::Size.new(bmp.get_width + 10, bmp.get_height + 10)
32
-
33
- #mask = Wx::MaskColour.new(bmp, Wx::BLUE)
34
- #bmp.set_mask(mask)
35
-
36
- Wx::BitmapButton.new(self, 30, bmp,
37
- Wx::Point.new(160, 20), bmp_size)
38
- evt_button(30) {|event| on_click(event)}
39
-
40
- end
41
-
42
- def on_click(event)
43
- @log.write_text("Click! %d" % event.get_id())
44
- end
45
-
46
-
47
- end
48
-
49
- module Demo
50
-
51
- def Demo.run(frame, nb, log)
52
- win = TestPanel.new(nb, log)
53
- return win
54
- end
55
-
56
- def Demo.overview
57
- return "A button is a control that contains a text string or a bitmap and cab be placed on nearly any kind of window."
58
- end
59
-
60
- end
61
-
62
- if __FILE__ == $0
63
- run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
64
- load run_solo_lib
65
- run File.basename($0)
66
- end
1
+ #!/usr/bin/env ruby
2
+
3
+ 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
12
+ end
13
+
14
+ class TestPanel < Wx::Panel
15
+ def initialize(parent, log)
16
+ super(parent, -1, Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE, Wx::NO_FULL_REPAINT_ON_RESIZE)
17
+ @log = log
18
+
19
+ b = Wx::Button.new(self, 10, "Hello", Wx::Point.new(20,20))
20
+ evt_button(10) {|event| on_click(event)}
21
+ b.set_background_colour(Wx::BLUE)
22
+ b.set_foreground_colour(Wx::WHITE)
23
+ b.set_default()
24
+
25
+ b = Wx::Button.new(self, 20, "HELLO AGAIN!", Wx::Point.new(20,60), Wx::Size.new(120,45))
26
+ evt_button(20) {|event| on_click(event)}
27
+ b.set_tool_tip("This is a Hello button...")
28
+
29
+ bmp_file = File.join( File.dirname(__FILE__), 'icons', 'test2.bmp')
30
+ bmp = Wx::Bitmap.new(bmp_file, Wx::BITMAP_TYPE_BMP)
31
+ bmp_size = Wx::Size.new(bmp.get_width + 10, bmp.get_height + 10)
32
+
33
+ #mask = Wx::MaskColour.new(bmp, Wx::BLUE)
34
+ #bmp.set_mask(mask)
35
+
36
+ Wx::BitmapButton.new(self, 30, bmp,
37
+ Wx::Point.new(160, 20), bmp_size)
38
+ evt_button(30) {|event| on_click(event)}
39
+
40
+ end
41
+
42
+ def on_click(event)
43
+ @log.write_text("Click! %d" % event.get_id())
44
+ end
45
+
46
+
47
+ end
48
+
49
+ module Demo
50
+
51
+ def Demo.run(frame, nb, log)
52
+ win = TestPanel.new(nb, log)
53
+ return win
54
+ end
55
+
56
+ def Demo.overview
57
+ return "A button is a control that contains a text string or a bitmap and cab be placed on nearly any kind of window."
58
+ end
59
+
60
+ end
61
+
62
+ if __FILE__ == $0
63
+ run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
64
+ load run_solo_lib
65
+ run File.basename($0)
66
+ end
@@ -1,72 +1,72 @@
1
- #!/usr/bin/env ruby
2
-
3
- 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
12
- end
13
- require 'date'
14
-
15
- class TestPanel < Wx::Panel
16
- def initialize(parent, id, log)
17
- super(parent, id)
18
- @log = log
19
-
20
- date = DateTime.now
21
- cal = Wx::CalendarCtrl.new(self, -1, date, Wx::Point.new(25,50), Wx::DEFAULT_SIZE,
22
- Wx::CAL_SHOW_HOLIDAYS | Wx::CAL_SUNDAY_FIRST | Wx::CAL_SEQUENTIAL_MONTH_SELECTION)
23
-
24
- evt_calendar(cal.get_id()) {|event| on_cal_selected(event)}
25
-
26
- #b = Wx::Button.new(self, -1, "Destroy the Calendar", Wx::Point.new(250,50))
27
- #evt_button(b.get_id()) {|event| on_button(event)}
28
- @cal = cal
29
-
30
- # Set up control to display a set of holidays:
31
- evt_calendar_month(cal.get_id()) {|event| on_change_month(event)}
32
- @holidays = [[1,1], [10,31], [12,25]] #(these don't move around)
33
-
34
- end
35
-
36
- #def on_button(event)
37
- # @cal.destroy()
38
- # @cal = nil
39
- #end
40
-
41
- def on_cal_selected(event)
42
- @log.write_text("on_cal_selected: " + event.get_date().strftime("%F"))
43
- end
44
-
45
- # missing get_current_month() method
46
- def on_change_month(event)
47
- #~ cur_month = @cal.get_date().get_current_month() + 1
48
- #~ @holidays.each do |date|
49
- #~ if date[0] == cur_month
50
- #~ @cal.set_holiday(date[1])
51
- #~ end
52
- #~ end
53
- event.skip()
54
- end
55
- end
56
-
57
- module Demo
58
- def Demo.run(frame, nb, log)
59
- win = TestPanel.new(nb, -1, log)
60
- return win
61
- end
62
-
63
- def Demo.overview
64
- return "The calendar control allows the user to pick a date interactively. For this, it displays a window containing several parts: the control to pick the month and the year at the top (either or both of them may be disabled) and a month area below them which shows all the days in the month. The user can move the current selection using the keyboard and select the date (generating EVT_CALENDAR event) by pressing <Return> or double clicking it."
65
- end
66
- end
67
-
68
- if __FILE__ == $0
69
- run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
70
- load run_solo_lib
71
- run File.basename($0)
72
- end
1
+ #!/usr/bin/env ruby
2
+
3
+ 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
12
+ end
13
+ require 'date'
14
+
15
+ class TestPanel < Wx::Panel
16
+ def initialize(parent, id, log)
17
+ super(parent, id)
18
+ @log = log
19
+
20
+ date = DateTime.now
21
+ cal = Wx::CalendarCtrl.new(self, -1, date, Wx::Point.new(25,50), Wx::DEFAULT_SIZE,
22
+ Wx::CAL_SHOW_HOLIDAYS | Wx::CAL_SUNDAY_FIRST | Wx::CAL_SEQUENTIAL_MONTH_SELECTION)
23
+
24
+ evt_calendar(cal.get_id()) {|event| on_cal_selected(event)}
25
+
26
+ #b = Wx::Button.new(self, -1, "Destroy the Calendar", Wx::Point.new(250,50))
27
+ #evt_button(b.get_id()) {|event| on_button(event)}
28
+ @cal = cal
29
+
30
+ # Set up control to display a set of holidays:
31
+ evt_calendar_month(cal.get_id()) {|event| on_change_month(event)}
32
+ @holidays = [[1,1], [10,31], [12,25]] #(these don't move around)
33
+
34
+ end
35
+
36
+ #def on_button(event)
37
+ # @cal.destroy()
38
+ # @cal = nil
39
+ #end
40
+
41
+ def on_cal_selected(event)
42
+ @log.write_text("on_cal_selected: " + event.get_date().strftime("%F"))
43
+ end
44
+
45
+ # missing get_current_month() method
46
+ def on_change_month(event)
47
+ #~ cur_month = @cal.get_date().get_current_month() + 1
48
+ #~ @holidays.each do |date|
49
+ #~ if date[0] == cur_month
50
+ #~ @cal.set_holiday(date[1])
51
+ #~ end
52
+ #~ end
53
+ event.skip()
54
+ end
55
+ end
56
+
57
+ module Demo
58
+ def Demo.run(frame, nb, log)
59
+ win = TestPanel.new(nb, -1, log)
60
+ return win
61
+ end
62
+
63
+ def Demo.overview
64
+ return "The calendar control allows the user to pick a date interactively. For this, it displays a window containing several parts: the control to pick the month and the year at the top (either or both of them may be disabled) and a month area below them which shows all the days in the month. The user can move the current selection using the keyboard and select the date (generating EVT_CALENDAR event) by pressing <Return> or double clicking it."
65
+ end
66
+ end
67
+
68
+ if __FILE__ == $0
69
+ run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
70
+ load run_solo_lib
71
+ run File.basename($0)
72
+ end
@@ -1,52 +1,52 @@
1
- #!/usr/bin/env ruby
2
-
3
- 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
12
- end
13
-
14
- class TestCheckBox < Wx::Panel
15
- def initialize(parent, log)
16
- @log = log
17
- super(parent, -1)
18
-
19
- Wx::StaticText.new(self, -1, "This example uses the wxCheckBox control", Wx::Point.new(10,10))
20
-
21
- cID = Wx::ID_HIGHEST + 1
22
- cb1 = Wx::CheckBox.new(self, cID, " Apples", Wx::Point.new(65, 40), Wx::Size.new(150,20), Wx::NO_BORDER)
23
- cb2 = Wx::CheckBox.new(self, cID + 1, " Oranges", Wx::Point.new(65,60), Wx::Size.new(150,20), Wx::NO_BORDER)
24
- cb3 = Wx::CheckBox.new(self, cID + 2, " Pears", Wx::Point.new(65,80), Wx::Size.new(150,20), Wx::NO_BORDER)
25
-
26
- evt_checkbox(cID) {|event| on_check_box(event)}
27
- evt_checkbox(cID+1) {|event| on_check_box(event)}
28
- evt_checkbox(cID+2) {|event| on_check_box(event)}
29
- end
30
-
31
- def on_check_box(event)
32
- @log.write_text("evt_checkbox: " + event.is_checked().to_s)
33
- end
34
- end
35
-
36
-
37
- module Demo
38
- def Demo.run(frame, nb, log)
39
- win = TestCheckBox.new(nb, log)
40
- return win
41
- end
42
-
43
- def Demo.overview
44
- return "A checkbox is a labelled box which is either on (checkmark is visible) or off (no checkmark)."
45
- end
46
- end
47
-
48
- if __FILE__ == $0
49
- run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
50
- load run_solo_lib
51
- run File.basename($0)
52
- end
1
+ #!/usr/bin/env ruby
2
+
3
+ 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
12
+ end
13
+
14
+ class TestCheckBox < Wx::Panel
15
+ def initialize(parent, log)
16
+ @log = log
17
+ super(parent, -1)
18
+
19
+ Wx::StaticText.new(self, -1, "This example uses the wxCheckBox control", Wx::Point.new(10,10))
20
+
21
+ cID = Wx::ID_HIGHEST + 1
22
+ cb1 = Wx::CheckBox.new(self, cID, " Apples", Wx::Point.new(65, 40), Wx::Size.new(150,20), Wx::NO_BORDER)
23
+ cb2 = Wx::CheckBox.new(self, cID + 1, " Oranges", Wx::Point.new(65,60), Wx::Size.new(150,20), Wx::NO_BORDER)
24
+ cb3 = Wx::CheckBox.new(self, cID + 2, " Pears", Wx::Point.new(65,80), Wx::Size.new(150,20), Wx::NO_BORDER)
25
+
26
+ evt_checkbox(cID) {|event| on_check_box(event)}
27
+ evt_checkbox(cID+1) {|event| on_check_box(event)}
28
+ evt_checkbox(cID+2) {|event| on_check_box(event)}
29
+ end
30
+
31
+ def on_check_box(event)
32
+ @log.write_text("evt_checkbox: " + event.is_checked().to_s)
33
+ end
34
+ end
35
+
36
+
37
+ module Demo
38
+ def Demo.run(frame, nb, log)
39
+ win = TestCheckBox.new(nb, log)
40
+ return win
41
+ end
42
+
43
+ def Demo.overview
44
+ return "A checkbox is a labelled box which is either on (checkmark is visible) or off (no checkmark)."
45
+ end
46
+ end
47
+
48
+ if __FILE__ == $0
49
+ run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
50
+ load run_solo_lib
51
+ run File.basename($0)
52
+ end
@@ -1,77 +1,77 @@
1
- #!/usr/bin/env ruby
2
-
3
- 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
12
- end
13
-
14
- class TestPanel < Wx::Panel
15
- def initialize(parent, log)
16
- super(parent, -1)
17
- @log = log
18
-
19
- sampleList = %w(one two three four five six seven eight nine ten eleven twelve thirteen fourteen)
20
-
21
- Wx::StaticText.new(self, -1, "This example uses the wxCheckListBox control.", Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE)
22
-
23
- lb = Wx::CheckListBox.new(self, 60, Wx::Point.new(80,50), Wx::Size.new(80,120), sampleList)
24
- evt_listbox(60) {|event| on_evt_listbox(event)}
25
- evt_listbox_dclick(60) {|event| on_evt_listbox_dclick(event)}
26
- lb.set_selection(0)
27
- @lb = lb
28
-
29
- pos = lb.get_position().x + lb.get_size().get_width() + 25
30
- btn = Wx::Button.new(self, -1, "Test SetString", Wx::Point.new(pos,50))
31
- evt_button(btn.get_id()) {|event| on_test_button(event)}
32
-
33
- evt_right_up {|event| on_do_popup(event)}
34
- end
35
-
36
- def on_evt_listbox(event)
37
- @log.write_text("evt_listbox: " + event.get_string())
38
- end
39
-
40
- def on_evt_listbox_dclick(event)
41
- @log.write_text("evt_listbox_dclick:")
42
- end
43
-
44
- def on_test_button(event)
45
- @lb.set_string(4, "FUBAR")
46
- end
47
-
48
- def on_do_popup(event)
49
- menu = Wx::Menu.new()
50
- # Make this first item bold
51
- menu.append(50000, "Normal item &1")
52
- menu.append(50001, "Normal item &2")
53
- menu.append(50002, "Normal item &3")
54
- menu.append(50003, "Normal item &4")
55
-
56
- popup_menu(menu, event.get_position())
57
- menu.destroy()
58
- event.skip()
59
- end
60
- end
61
-
62
- module Demo
63
- def Demo.run(frame, nb, log)
64
- win = TestPanel.new(nb, log)
65
- return win
66
- end
67
-
68
- def Demo.overview
69
- return "A checklistbox is like a listbox, but allows items to be checked or unchecked."
70
- end
71
- end
72
-
73
- if __FILE__ == $0
74
- run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
75
- load run_solo_lib
76
- run File.basename($0)
77
- end
1
+ #!/usr/bin/env ruby
2
+
3
+ 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
12
+ end
13
+
14
+ class TestPanel < Wx::Panel
15
+ def initialize(parent, log)
16
+ super(parent, -1)
17
+ @log = log
18
+
19
+ sampleList = %w(one two three four five six seven eight nine ten eleven twelve thirteen fourteen)
20
+
21
+ Wx::StaticText.new(self, -1, "This example uses the wxCheckListBox control.", Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE)
22
+
23
+ lb = Wx::CheckListBox.new(self, 60, Wx::Point.new(80,50), Wx::Size.new(80,120), sampleList)
24
+ evt_listbox(60) {|event| on_evt_listbox(event)}
25
+ evt_listbox_dclick(60) {|event| on_evt_listbox_dclick(event)}
26
+ lb.set_selection(0)
27
+ @lb = lb
28
+
29
+ pos = lb.get_position().x + lb.get_size().get_width() + 25
30
+ btn = Wx::Button.new(self, -1, "Test SetString", Wx::Point.new(pos,50))
31
+ evt_button(btn.get_id()) {|event| on_test_button(event)}
32
+
33
+ evt_right_up {|event| on_do_popup(event)}
34
+ end
35
+
36
+ def on_evt_listbox(event)
37
+ @log.write_text("evt_listbox: " + event.get_string())
38
+ end
39
+
40
+ def on_evt_listbox_dclick(event)
41
+ @log.write_text("evt_listbox_dclick:")
42
+ end
43
+
44
+ def on_test_button(event)
45
+ @lb.set_string(4, "FUBAR")
46
+ end
47
+
48
+ def on_do_popup(event)
49
+ menu = Wx::Menu.new()
50
+ # Make this first item bold
51
+ menu.append(50000, "Normal item &1")
52
+ menu.append(50001, "Normal item &2")
53
+ menu.append(50002, "Normal item &3")
54
+ menu.append(50003, "Normal item &4")
55
+
56
+ popup_menu(menu, event.get_position())
57
+ menu.destroy()
58
+ event.skip()
59
+ end
60
+ end
61
+
62
+ module Demo
63
+ def Demo.run(frame, nb, log)
64
+ win = TestPanel.new(nb, log)
65
+ return win
66
+ end
67
+
68
+ def Demo.overview
69
+ return "A checklistbox is like a listbox, but allows items to be checked or unchecked."
70
+ end
71
+ end
72
+
73
+ if __FILE__ == $0
74
+ run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
75
+ load run_solo_lib
76
+ run File.basename($0)
77
+ end