wxruby 1.9.3-i386-mswin32 → 1.9.4-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 (126) hide show
  1. data/LICENSE +53 -53
  2. data/README +299 -299
  3. data/lib/wx/classes/evthandler.rb +9 -0
  4. data/lib/wx/classes/timer.rb +25 -0
  5. data/lib/wx/version.rb +1 -1
  6. data/lib/wx.rb +42 -42
  7. data/lib/wxruby2.exp +0 -0
  8. data/lib/wxruby2.lib +0 -0
  9. data/lib/wxruby2.so +0 -0
  10. data/samples/SAMPLES-LICENSE.TXT +17 -17
  11. data/samples/bigdemo/About.rbw +39 -39
  12. data/samples/bigdemo/ColorPanel.rbw +25 -25
  13. data/samples/bigdemo/GridSimple.rbw +80 -80
  14. data/samples/bigdemo/MDIDemo.rbw +59 -59
  15. data/samples/bigdemo/PopupMenu.rbw +151 -151
  16. data/samples/bigdemo/Sizers.rbw +545 -545
  17. data/samples/bigdemo/bigdemo.rb +826 -826
  18. data/samples/bigdemo/demoTemplate.rbw +37 -37
  19. data/samples/bigdemo/icons/choice.xpm +27 -27
  20. data/samples/bigdemo/icons/combo.xpm +27 -27
  21. data/samples/bigdemo/icons/copy.xpm +25 -25
  22. data/samples/bigdemo/icons/cut.xpm +24 -24
  23. data/samples/bigdemo/icons/gauge.xpm +27 -27
  24. data/samples/bigdemo/icons/help.xpm +25 -25
  25. data/samples/bigdemo/icons/list.xpm +27 -27
  26. data/samples/bigdemo/icons/mondrian.xpm +44 -44
  27. data/samples/bigdemo/icons/new.xpm +24 -24
  28. data/samples/bigdemo/icons/ogl.ico +0 -0
  29. data/samples/bigdemo/icons/ogl.xpm +45 -45
  30. data/samples/bigdemo/icons/open.xpm +26 -26
  31. data/samples/bigdemo/icons/paste.xpm +38 -38
  32. data/samples/bigdemo/icons/preview.xpm +26 -26
  33. data/samples/bigdemo/icons/print.xpm +26 -26
  34. data/samples/bigdemo/icons/radio.xpm +27 -27
  35. data/samples/bigdemo/icons/robert.xpm +415 -415
  36. data/samples/bigdemo/icons/save.xpm +25 -25
  37. data/samples/bigdemo/icons/smiles.xpm +39 -39
  38. data/samples/bigdemo/icons/smiley.xpm +42 -42
  39. data/samples/bigdemo/icons/stattext.xpm +24 -24
  40. data/samples/bigdemo/icons/test2.bmp +0 -0
  41. data/samples/bigdemo/icons/test2.xpm +79 -79
  42. data/samples/bigdemo/icons/text.xpm +27 -27
  43. data/samples/bigdemo/icons/tog1.xpm +38 -38
  44. data/samples/bigdemo/icons/tog2.xpm +38 -38
  45. data/samples/bigdemo/icons/wxwin16x16.xpm +25 -25
  46. data/samples/bigdemo/tips.txt +7 -7
  47. data/samples/bigdemo/utils.rb +11 -11
  48. data/samples/bigdemo/wxButton.rbw +66 -66
  49. data/samples/bigdemo/wxCalendarCtrl.rbw +72 -72
  50. data/samples/bigdemo/wxCheckBox.rbw +52 -52
  51. data/samples/bigdemo/wxCheckListBox.rbw +77 -77
  52. data/samples/bigdemo/wxChoice.rbw +49 -49
  53. data/samples/bigdemo/wxColourDialog.rbw +34 -34
  54. data/samples/bigdemo/wxComboBox.rbw +79 -79
  55. data/samples/bigdemo/wxDialog.rbw +92 -92
  56. data/samples/bigdemo/wxDirDialog.rbw +32 -32
  57. data/samples/bigdemo/wxFileDialog.rbw +39 -39
  58. data/samples/bigdemo/wxFileDialog_Save.rbw +38 -38
  59. data/samples/bigdemo/wxFindReplaceDialog.rbw +85 -85
  60. data/samples/bigdemo/wxFontDialog.rbw +176 -176
  61. data/samples/bigdemo/wxFrame.rbw +55 -55
  62. data/samples/bigdemo/wxGauge.rbw +73 -73
  63. data/samples/bigdemo/wxGrid.rbw +68 -68
  64. data/samples/bigdemo/wxListBox.rbw +142 -142
  65. data/samples/bigdemo/wxListCtrl_virtual.rbw +109 -109
  66. data/samples/bigdemo/wxMDIWindows.rbw +52 -52
  67. data/samples/bigdemo/wxMenu.rbw +238 -238
  68. data/samples/bigdemo/wxMessageDialog.rbw +30 -30
  69. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +34 -34
  70. data/samples/bigdemo/wxNotebook.rbw +138 -138
  71. data/samples/bigdemo/wxProgressDialog.rbw +45 -45
  72. data/samples/bigdemo/wxRadioBox.rbw +74 -74
  73. data/samples/bigdemo/wxRadioButton.rbw +127 -127
  74. data/samples/bigdemo/wxScrolledMessageDialog.rbw +59 -59
  75. data/samples/bigdemo/wxScrolledWindow.rbw +201 -201
  76. data/samples/bigdemo/wxSingleChoiceDialog.rbw +35 -35
  77. data/samples/bigdemo/wxSlider.rbw +44 -44
  78. data/samples/bigdemo/wxSpinButton.rbw +52 -52
  79. data/samples/bigdemo/wxSpinCtrl.rbw +53 -53
  80. data/samples/bigdemo/wxSplitterWindow.rbw +65 -65
  81. data/samples/bigdemo/wxStaticBitmap.rbw +53 -53
  82. data/samples/bigdemo/wxStaticText.rbw +57 -57
  83. data/samples/bigdemo/wxStatusBar.rbw +128 -128
  84. data/samples/bigdemo/wxTextCtrl.rbw +151 -151
  85. data/samples/bigdemo/wxTextEntryDialog.rbw +34 -34
  86. data/samples/bigdemo/wxToggleButton.rbw +51 -51
  87. data/samples/bigdemo/wxToolBar.rbw +133 -133
  88. data/samples/bigdemo/wxTreeCtrl.rbw +192 -192
  89. data/samples/calendar/calendar.rb +275 -275
  90. data/samples/caret/caret.rb +286 -286
  91. data/samples/caret/mondrian.xpm +44 -44
  92. data/samples/controls/controls.rb +1140 -1140
  93. data/samples/controls/get_item_sample.rb +87 -87
  94. data/samples/controls/icons/choice.xpm +27 -27
  95. data/samples/controls/icons/combo.xpm +27 -27
  96. data/samples/controls/icons/gauge.xpm +27 -27
  97. data/samples/controls/icons/list.xpm +27 -27
  98. data/samples/controls/icons/radio.xpm +27 -27
  99. data/samples/controls/icons/stattext.xpm +24 -24
  100. data/samples/controls/icons/text.xpm +27 -27
  101. data/samples/controls/mondrian.xpm +44 -44
  102. data/samples/dialogs/dialogs.rb +724 -724
  103. data/samples/dialogs/tips.txt +18 -18
  104. data/samples/drawing/graphics_drawing.rb +22 -18
  105. data/samples/drawing/images.rb +48 -48
  106. data/samples/etc/activation.rb +108 -108
  107. data/samples/etc/choice.rb +72 -72
  108. data/samples/etc/miniframe.rb +84 -84
  109. data/samples/etc/sash.rb +135 -135
  110. data/samples/etc/scrollwin.rb +116 -116
  111. data/samples/etc/system_settings.rb +258 -258
  112. data/samples/etc/threaded.rb +5 -8
  113. data/samples/etc/wizard.rb +79 -79
  114. data/samples/html/html.rb +14 -10
  115. data/samples/listbook/listbook.rb +181 -181
  116. data/samples/listbook/listbook.xrc +370 -370
  117. data/samples/mdi/mdi.rb +87 -87
  118. data/samples/minimal/minimal.rb +85 -85
  119. data/samples/minimal/nothing.rb +21 -21
  120. data/samples/text/textctrl.rb +124 -124
  121. data/samples/text/unicode.rb +238 -238
  122. data/samples/text/utf8.txt +14 -14
  123. data/samples/treectrl/treectrl.rb +1180 -1180
  124. data/samples/xrc/samples.xrc +46 -46
  125. data/samples/xrc/xrc_sample.rb +107 -107
  126. metadata +3 -3
@@ -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