wxruby 1.9.0-i386-mswin32 → 1.9.1-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 (136) hide show
  1. data/lib/wx.rb +42 -35
  2. data/lib/wx/accessors.rb +52 -0
  3. data/lib/wx/classes/evthandler.rb +36 -32
  4. data/lib/wx/classes/grid.rb +13 -13
  5. data/lib/wx/classes/point.rb +43 -0
  6. data/lib/wx/classes/size.rb +44 -0
  7. data/lib/wx/classes/styledtextctrl.rb +92 -0
  8. data/lib/wx/classes/textctrl.rb +14 -0
  9. data/lib/wx/classes/window.rb +4 -0
  10. data/lib/wx/keyword_ctors.rb +219 -0
  11. data/lib/wx/keyword_defs.rb +455 -0
  12. data/lib/wx/version.rb +1 -1
  13. data/lib/wxruby2.exp +0 -0
  14. data/lib/wxruby2.lib +0 -0
  15. data/lib/wxruby2.so +0 -0
  16. data/samples/SAMPLES-LICENSE.TXT +17 -17
  17. data/samples/aui/aui.rb +6 -5
  18. data/samples/bigdemo/About.rbw +39 -39
  19. data/samples/bigdemo/ColorPanel.rbw +25 -25
  20. data/samples/bigdemo/GridSimple.rbw +80 -80
  21. data/samples/bigdemo/MDIDemo.rbw +59 -59
  22. data/samples/bigdemo/PopupMenu.rbw +151 -151
  23. data/samples/bigdemo/Sizers.rbw +545 -545
  24. data/samples/bigdemo/bigdemo.rb +826 -826
  25. data/samples/bigdemo/demoTemplate.rbw +37 -37
  26. data/samples/bigdemo/icons/choice.xpm +27 -27
  27. data/samples/bigdemo/icons/combo.xpm +27 -27
  28. data/samples/bigdemo/icons/copy.xpm +25 -25
  29. data/samples/bigdemo/icons/cut.xpm +24 -24
  30. data/samples/bigdemo/icons/gauge.xpm +27 -27
  31. data/samples/bigdemo/icons/help.xpm +25 -25
  32. data/samples/bigdemo/icons/list.xpm +27 -27
  33. data/samples/bigdemo/icons/mondrian.xpm +44 -44
  34. data/samples/bigdemo/icons/new.xpm +24 -24
  35. data/samples/bigdemo/icons/ogl.ico +0 -0
  36. data/samples/bigdemo/icons/ogl.xpm +45 -45
  37. data/samples/bigdemo/icons/open.xpm +26 -26
  38. data/samples/bigdemo/icons/paste.xpm +38 -38
  39. data/samples/bigdemo/icons/preview.xpm +26 -26
  40. data/samples/bigdemo/icons/print.xpm +26 -26
  41. data/samples/bigdemo/icons/radio.xpm +27 -27
  42. data/samples/bigdemo/icons/robert.xpm +415 -415
  43. data/samples/bigdemo/icons/save.xpm +25 -25
  44. data/samples/bigdemo/icons/smiles.xpm +39 -39
  45. data/samples/bigdemo/icons/smiley.xpm +42 -42
  46. data/samples/bigdemo/icons/stattext.xpm +24 -24
  47. data/samples/bigdemo/icons/test2.bmp +0 -0
  48. data/samples/bigdemo/icons/test2.xpm +79 -79
  49. data/samples/bigdemo/icons/text.xpm +27 -27
  50. data/samples/bigdemo/icons/tog1.xpm +38 -38
  51. data/samples/bigdemo/icons/tog2.xpm +38 -38
  52. data/samples/bigdemo/icons/wxwin16x16.xpm +25 -25
  53. data/samples/bigdemo/tips.txt +7 -7
  54. data/samples/bigdemo/utils.rb +11 -11
  55. data/samples/bigdemo/wxButton.rbw +66 -66
  56. data/samples/bigdemo/wxCalendarCtrl.rbw +72 -72
  57. data/samples/bigdemo/wxCheckBox.rbw +52 -52
  58. data/samples/bigdemo/wxCheckListBox.rbw +77 -77
  59. data/samples/bigdemo/wxChoice.rbw +49 -49
  60. data/samples/bigdemo/wxColourDialog.rbw +34 -34
  61. data/samples/bigdemo/wxComboBox.rbw +79 -79
  62. data/samples/bigdemo/wxDialog.rbw +92 -92
  63. data/samples/bigdemo/wxDirDialog.rbw +32 -32
  64. data/samples/bigdemo/wxFileDialog.rbw +39 -39
  65. data/samples/bigdemo/wxFileDialog_Save.rbw +38 -38
  66. data/samples/bigdemo/wxFindReplaceDialog.rbw +85 -85
  67. data/samples/bigdemo/wxFontDialog.rbw +176 -176
  68. data/samples/bigdemo/wxFrame.rbw +55 -55
  69. data/samples/bigdemo/wxGauge.rbw +73 -73
  70. data/samples/bigdemo/wxGrid.rbw +68 -68
  71. data/samples/bigdemo/wxListBox.rbw +142 -142
  72. data/samples/bigdemo/wxListCtrl_virtual.rbw +109 -109
  73. data/samples/bigdemo/wxMDIWindows.rbw +52 -52
  74. data/samples/bigdemo/wxMenu.rbw +238 -238
  75. data/samples/bigdemo/wxMessageDialog.rbw +30 -30
  76. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +34 -34
  77. data/samples/bigdemo/wxNotebook.rbw +138 -138
  78. data/samples/bigdemo/wxProgressDialog.rbw +45 -45
  79. data/samples/bigdemo/wxRadioBox.rbw +74 -74
  80. data/samples/bigdemo/wxRadioButton.rbw +127 -127
  81. data/samples/bigdemo/wxScrolledMessageDialog.rbw +59 -59
  82. data/samples/bigdemo/wxScrolledWindow.rbw +196 -196
  83. data/samples/bigdemo/wxSingleChoiceDialog.rbw +35 -35
  84. data/samples/bigdemo/wxSlider.rbw +44 -44
  85. data/samples/bigdemo/wxSpinButton.rbw +52 -52
  86. data/samples/bigdemo/wxSpinCtrl.rbw +53 -53
  87. data/samples/bigdemo/wxSplitterWindow.rbw +65 -65
  88. data/samples/bigdemo/wxStaticBitmap.rbw +53 -53
  89. data/samples/bigdemo/wxStaticText.rbw +57 -57
  90. data/samples/bigdemo/wxStatusBar.rbw +128 -128
  91. data/samples/bigdemo/wxTextCtrl.rbw +151 -151
  92. data/samples/bigdemo/wxTextEntryDialog.rbw +34 -34
  93. data/samples/bigdemo/wxToggleButton.rbw +51 -51
  94. data/samples/bigdemo/wxToolBar.rbw +133 -133
  95. data/samples/bigdemo/wxTreeCtrl.rbw +192 -192
  96. data/samples/calendar/calendar.rb +275 -275
  97. data/samples/caret/caret.rb +296 -296
  98. data/samples/caret/mondrian.xpm +44 -44
  99. data/samples/controls/controls.rb +1140 -1140
  100. data/samples/controls/get_item_sample.rb +87 -87
  101. data/samples/controls/icons/choice.xpm +27 -27
  102. data/samples/controls/icons/combo.xpm +27 -27
  103. data/samples/controls/icons/gauge.xpm +27 -27
  104. data/samples/controls/icons/list.xpm +27 -27
  105. data/samples/controls/icons/radio.xpm +27 -27
  106. data/samples/controls/icons/stattext.xpm +24 -24
  107. data/samples/controls/icons/text.xpm +27 -27
  108. data/samples/controls/mondrian.xpm +44 -44
  109. data/samples/dialogs/dialogs.rb +724 -724
  110. data/samples/dialogs/tips.txt +18 -18
  111. data/samples/etc/activation.rb +108 -108
  112. data/samples/etc/choice.rb +72 -72
  113. data/samples/etc/miniframe.rb +84 -84
  114. data/samples/etc/sash.rb +135 -135
  115. data/samples/etc/scrollwin.rb +116 -116
  116. data/samples/etc/system_settings.rb +258 -258
  117. data/samples/etc/wizard.rb +81 -81
  118. data/samples/event/event.rb +184 -0
  119. data/samples/images/images.rb +48 -48
  120. data/samples/listbook/listbook.rb +183 -183
  121. data/samples/listbook/listbook.xrc +370 -370
  122. data/samples/mdi/mdi.rb +87 -87
  123. data/samples/minimal/minimal.rb +83 -95
  124. data/samples/minimal/mondrian.png +0 -0
  125. data/samples/minimal/nothing.rb +46 -46
  126. data/samples/minimal/text.rb +35 -35
  127. data/samples/text/scintilla.rb +22 -28
  128. data/samples/text/textctrl.rb +124 -124
  129. data/samples/text/unicode.rb +238 -238
  130. data/samples/text/utf8.txt +14 -14
  131. data/samples/treectrl/treectrl.rb +1210 -1210
  132. data/samples/xrc/samples.xrc +46 -46
  133. data/samples/xrc/xrc_sample.rb +107 -107
  134. metadata +13 -5
  135. data/samples/minimal/mondrian.ico +0 -0
  136. data/samples/minimal/mondrian.xpm +0 -44
@@ -1,38 +1,38 @@
1
- /* XPM */
2
- static char *tog1[] = {
3
- /* width height num_colors chars_per_pixel */
4
- " 16 15 16 1",
5
- /* colors */
6
- "` c #000000",
7
- ". c #bf0000",
8
- "# c #00bf00",
9
- "a c #bfbf00",
10
- "b c #0000bf",
11
- "c c #bf00bf",
12
- "d c #00bfbf",
13
- "e c #c0c0c0",
14
- "f c #808080",
15
- "g c #ff0000",
16
- "h c #00ff00",
17
- "i c #ffff00",
18
- "j c #0000ff",
19
- "k c #ff00ff",
20
- "l c #00ffff",
21
- "m c #ffffff",
22
- /* pixels */
23
- "eeeeeeeeeeeeeeee",
24
- "eeeeeeeeeeeeeeee",
25
- "ee````````````ee",
26
- "ee````````````fe",
27
- "eeeeeee``ffffffe",
28
- "eeeeeee``feeeeee",
29
- "eeeeeee``feeeeee",
30
- "eeeeeee``feeeeee",
31
- "eeeeeee``feeeeee",
32
- "eeeeeee``feeeeee",
33
- "eeeeeee``feeeeee",
34
- "eeeeeee``feeeeee",
35
- "eeeeeee``feeeeee",
36
- "eeeeeeeeefeeeeee",
37
- "eeeeeeeeeeeeeeee"
38
- };
1
+ /* XPM */
2
+ static char *tog1[] = {
3
+ /* width height num_colors chars_per_pixel */
4
+ " 16 15 16 1",
5
+ /* colors */
6
+ "` c #000000",
7
+ ". c #bf0000",
8
+ "# c #00bf00",
9
+ "a c #bfbf00",
10
+ "b c #0000bf",
11
+ "c c #bf00bf",
12
+ "d c #00bfbf",
13
+ "e c #c0c0c0",
14
+ "f c #808080",
15
+ "g c #ff0000",
16
+ "h c #00ff00",
17
+ "i c #ffff00",
18
+ "j c #0000ff",
19
+ "k c #ff00ff",
20
+ "l c #00ffff",
21
+ "m c #ffffff",
22
+ /* pixels */
23
+ "eeeeeeeeeeeeeeee",
24
+ "eeeeeeeeeeeeeeee",
25
+ "ee````````````ee",
26
+ "ee````````````fe",
27
+ "eeeeeee``ffffffe",
28
+ "eeeeeee``feeeeee",
29
+ "eeeeeee``feeeeee",
30
+ "eeeeeee``feeeeee",
31
+ "eeeeeee``feeeeee",
32
+ "eeeeeee``feeeeee",
33
+ "eeeeeee``feeeeee",
34
+ "eeeeeee``feeeeee",
35
+ "eeeeeee``feeeeee",
36
+ "eeeeeeeeefeeeeee",
37
+ "eeeeeeeeeeeeeeee"
38
+ };
@@ -1,38 +1,38 @@
1
- /* XPM */
2
- static char *tog2[] = {
3
- /* width height num_colors chars_per_pixel */
4
- " 16 15 16 1",
5
- /* colors */
6
- "` c #000000",
7
- ". c #bf0000",
8
- "# c #00bf00",
9
- "a c #bfbf00",
10
- "b c #0000bf",
11
- "c c #bf00bf",
12
- "d c #00bfbf",
13
- "e c #c0c0c0",
14
- "f c #808080",
15
- "g c #ff0000",
16
- "h c #00ff00",
17
- "i c #ffff00",
18
- "j c #0000ff",
19
- "k c #ff00ff",
20
- "l c #00ffff",
21
- "m c #ffffff",
22
- /* pixels */
23
- "eeeeeeeeeeeeeeee",
24
- "eeeeeeeeeeeeeeee",
25
- "eeeeeeeeeeeeeeee",
26
- "eeejjjjjjjjjjjje",
27
- "eeejjjjjjjjjjjje",
28
- "eeeeeeeejjeeeeee",
29
- "eeeeeeeejjeeeeee",
30
- "eeeeeeeejjeeeeee",
31
- "eeeeeeeejjeeeeee",
32
- "eeeeeeeejjeeeeee",
33
- "eeeeeeeejjeeeeee",
34
- "eeeeeeeejjeeeeee",
35
- "eeeeeeeejjeeeeee",
36
- "eeeeeeeejjeeeeee",
37
- "eeeeeeeeeeeeeeee"
38
- };
1
+ /* XPM */
2
+ static char *tog2[] = {
3
+ /* width height num_colors chars_per_pixel */
4
+ " 16 15 16 1",
5
+ /* colors */
6
+ "` c #000000",
7
+ ". c #bf0000",
8
+ "# c #00bf00",
9
+ "a c #bfbf00",
10
+ "b c #0000bf",
11
+ "c c #bf00bf",
12
+ "d c #00bfbf",
13
+ "e c #c0c0c0",
14
+ "f c #808080",
15
+ "g c #ff0000",
16
+ "h c #00ff00",
17
+ "i c #ffff00",
18
+ "j c #0000ff",
19
+ "k c #ff00ff",
20
+ "l c #00ffff",
21
+ "m c #ffffff",
22
+ /* pixels */
23
+ "eeeeeeeeeeeeeeee",
24
+ "eeeeeeeeeeeeeeee",
25
+ "eeeeeeeeeeeeeeee",
26
+ "eeejjjjjjjjjjjje",
27
+ "eeejjjjjjjjjjjje",
28
+ "eeeeeeeejjeeeeee",
29
+ "eeeeeeeejjeeeeee",
30
+ "eeeeeeeejjeeeeee",
31
+ "eeeeeeeejjeeeeee",
32
+ "eeeeeeeejjeeeeee",
33
+ "eeeeeeeejjeeeeee",
34
+ "eeeeeeeejjeeeeee",
35
+ "eeeeeeeejjeeeeee",
36
+ "eeeeeeeejjeeeeee",
37
+ "eeeeeeeeeeeeeeee"
38
+ };
@@ -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