wxruby-ruby19 1.9.8-x86-darwin-9 → 1.9.10-x86-darwin-9
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.
- data/LICENSE +53 -0
- data/README +297 -0
- data/lib/wx.rb +2 -2
- data/lib/wx/accessors.rb +7 -1
- data/lib/wx/classes/app.rb +10 -4
- data/lib/wx/classes/bitmap.rb +29 -1
- data/lib/wx/classes/clipboard.rb +19 -3
- data/lib/wx/classes/colour.rb +6 -4
- data/lib/wx/classes/data_object.rb +14 -0
- data/lib/wx/classes/data_object_simple.rb +6 -0
- data/lib/wx/classes/dataformat.rb +23 -0
- data/lib/wx/classes/evthandler.rb +79 -4
- data/lib/wx/classes/genericdirctrl.rb +36 -0
- data/lib/wx/classes/grid.rb +8 -0
- data/lib/wx/classes/hboxsizer.rb +6 -0
- data/lib/wx/classes/icon.rb +12 -1
- data/lib/wx/classes/image.rb +13 -1
- data/lib/wx/classes/listctrl.rb +12 -0
- data/lib/wx/classes/point.rb +8 -0
- data/lib/wx/classes/rect.rb +10 -1
- data/lib/wx/classes/richtextctrl.rb +63 -0
- data/lib/wx/classes/size.rb +9 -0
- data/lib/wx/classes/sizer.rb +18 -3
- data/lib/wx/classes/standardpaths.rb +9 -0
- data/lib/wx/classes/texturlevent.rb +14 -2
- data/lib/wx/classes/toolbar.rb +4 -6
- data/lib/wx/classes/vboxsizer.rb +6 -0
- data/lib/wx/classes/window.rb +7 -0
- data/lib/wx/classes/xmlresource.rb +17 -0
- data/lib/wx/helpers.rb +16 -1
- data/lib/wx/keyword_ctors.rb +3 -2
- data/lib/wx/keyword_defs.rb +56 -5
- data/lib/wx/version.rb +1 -1
- data/lib/wxruby2.bundle +0 -0
- data/samples/SAMPLES-LICENSE.TXT +18 -0
- data/samples/aui/aui.rb +1356 -0
- data/samples/bigdemo/About.rbw +39 -0
- data/samples/bigdemo/ColorPanel.rbw +23 -0
- data/samples/bigdemo/GridSimple.rbw +78 -0
- data/samples/bigdemo/MDIDemo.rbw +57 -0
- data/samples/bigdemo/PopupMenu.rbw +149 -0
- data/samples/bigdemo/ShapedWindow.rbw +131 -0
- data/samples/bigdemo/Sizers.rbw +543 -0
- data/samples/bigdemo/bigdemo.rb +823 -0
- data/samples/bigdemo/demoTemplate.rbw +33 -0
- data/samples/bigdemo/helpfile.htb +0 -0
- data/samples/bigdemo/icons/Test 015.jpg +0 -0
- data/samples/bigdemo/icons/Test 015.png +0 -0
- data/samples/bigdemo/icons/choice.bmp +0 -0
- data/samples/bigdemo/icons/choice.xpm +27 -0
- data/samples/bigdemo/icons/combo.bmp +0 -0
- data/samples/bigdemo/icons/combo.xpm +27 -0
- data/samples/bigdemo/icons/copy.xpm +25 -0
- data/samples/bigdemo/icons/cut.xpm +24 -0
- data/samples/bigdemo/icons/gauge.bmp +0 -0
- data/samples/bigdemo/icons/gauge.xpm +27 -0
- data/samples/bigdemo/icons/help.xpm +25 -0
- data/samples/bigdemo/icons/list.bmp +0 -0
- data/samples/bigdemo/icons/list.xpm +27 -0
- data/samples/bigdemo/icons/mondrian.ico +0 -0
- data/samples/bigdemo/icons/mondrian.xpm +44 -0
- data/samples/bigdemo/icons/new.xpm +24 -0
- data/samples/bigdemo/icons/ogl.ico +0 -0
- data/samples/bigdemo/icons/ogl.xpm +45 -0
- data/samples/bigdemo/icons/open.xpm +26 -0
- data/samples/bigdemo/icons/paste.bmp +0 -0
- data/samples/bigdemo/icons/paste.xpm +38 -0
- data/samples/bigdemo/icons/pointy.png +0 -0
- data/samples/bigdemo/icons/preview.xpm +26 -0
- data/samples/bigdemo/icons/print.xpm +26 -0
- data/samples/bigdemo/icons/radio.bmp +0 -0
- data/samples/bigdemo/icons/radio.xpm +27 -0
- data/samples/bigdemo/icons/robert.xpm +415 -0
- data/samples/bigdemo/icons/ruby.png +0 -0
- data/samples/bigdemo/icons/sashtest.ico +0 -0
- data/samples/bigdemo/icons/save.xpm +25 -0
- data/samples/bigdemo/icons/smiles.bmp +0 -0
- data/samples/bigdemo/icons/smiles.xpm +39 -0
- data/samples/bigdemo/icons/smiley.ico +0 -0
- data/samples/bigdemo/icons/smiley.xpm +42 -0
- data/samples/bigdemo/icons/stattext.xpm +24 -0
- data/samples/bigdemo/icons/test2.bmp +0 -0
- data/samples/bigdemo/icons/test2.png +0 -0
- data/samples/bigdemo/icons/test2.xpm +79 -0
- data/samples/bigdemo/icons/text.bmp +0 -0
- data/samples/bigdemo/icons/text.xpm +27 -0
- data/samples/bigdemo/icons/tog1.bmp +0 -0
- data/samples/bigdemo/icons/tog1.xpm +38 -0
- data/samples/bigdemo/icons/tog2.bmp +0 -0
- data/samples/bigdemo/icons/tog2.xpm +38 -0
- data/samples/bigdemo/icons/wxwin.ico +0 -0
- data/samples/bigdemo/icons/wxwin16x16.png +0 -0
- data/samples/bigdemo/icons/wxwin16x16.xpm +25 -0
- data/samples/bigdemo/icons/wxwin32x32.png +0 -0
- data/samples/bigdemo/icons/wxwin48x48.png +0 -0
- data/samples/bigdemo/run.rb +90 -0
- data/samples/bigdemo/tips.txt +7 -0
- data/samples/bigdemo/utils.rb +12 -0
- data/samples/bigdemo/wxArtProvider.rbw +281 -0
- data/samples/bigdemo/wxBitmapButton.rbw +65 -0
- data/samples/bigdemo/wxButton.rbw +64 -0
- data/samples/bigdemo/wxCalendarCtrl.rbw +60 -0
- data/samples/bigdemo/wxCheckBox.rbw +50 -0
- data/samples/bigdemo/wxCheckListBox.rbw +65 -0
- data/samples/bigdemo/wxChoice.rbw +47 -0
- data/samples/bigdemo/wxChoicebook.rbw +78 -0
- data/samples/bigdemo/wxColourDialog.rbw +31 -0
- data/samples/bigdemo/wxComboBox.rbw +77 -0
- data/samples/bigdemo/wxCursor.rbw +136 -0
- data/samples/bigdemo/wxDialog.rbw +74 -0
- data/samples/bigdemo/wxDirDialog.rbw +29 -0
- data/samples/bigdemo/wxDragImage.rbw +70 -0
- data/samples/bigdemo/wxFileDialog.rbw +37 -0
- data/samples/bigdemo/wxFileDialog_Save.rbw +35 -0
- data/samples/bigdemo/wxFindReplaceDialog.rbw +82 -0
- data/samples/bigdemo/wxFontDialog.rbw +173 -0
- data/samples/bigdemo/wxFrame.rbw +53 -0
- data/samples/bigdemo/wxGauge.rbw +71 -0
- data/samples/bigdemo/wxGenericDirCtrl.rbw +74 -0
- data/samples/bigdemo/wxGrid.rbw +66 -0
- data/samples/bigdemo/wxHtmlHelpController.rbw +52 -0
- data/samples/bigdemo/wxListBox.rbw +140 -0
- data/samples/bigdemo/wxListCtrl_virtual.rbw +112 -0
- data/samples/bigdemo/wxMDIWindows.rbw +50 -0
- data/samples/bigdemo/wxMenu.rbw +236 -0
- data/samples/bigdemo/wxMessageDialog.rbw +27 -0
- data/samples/bigdemo/wxMiniFrame.rbw +70 -0
- data/samples/bigdemo/wxMultipleChoiceDialog.rbw +32 -0
- data/samples/bigdemo/wxNotebook.rbw +136 -0
- data/samples/bigdemo/wxProgressDialog.rbw +43 -0
- data/samples/bigdemo/wxRadioBox.rbw +72 -0
- data/samples/bigdemo/wxRadioButton.rbw +125 -0
- data/samples/bigdemo/wxSashWindow.rbw +141 -0
- data/samples/bigdemo/wxScrolledMessageDialog.rbw +57 -0
- data/samples/bigdemo/wxScrolledWindow.rbw +199 -0
- data/samples/bigdemo/wxSingleChoiceDialog.rbw +33 -0
- data/samples/bigdemo/wxSlider.rbw +42 -0
- data/samples/bigdemo/wxSpinButton.rbw +50 -0
- data/samples/bigdemo/wxSpinCtrl.rbw +51 -0
- data/samples/bigdemo/wxSplitterWindow.rbw +63 -0
- data/samples/bigdemo/wxStaticBitmap.rbw +51 -0
- data/samples/bigdemo/wxStaticText.rbw +55 -0
- data/samples/bigdemo/wxStatusBar.rbw +126 -0
- data/samples/bigdemo/wxTextCtrl.rbw +149 -0
- data/samples/bigdemo/wxTextEntryDialog.rbw +31 -0
- data/samples/bigdemo/wxToggleButton.rbw +49 -0
- data/samples/bigdemo/wxToolBar.rbw +131 -0
- data/samples/bigdemo/wxTreeCtrl.rbw +191 -0
- data/samples/calendar/calendar.rb +256 -0
- data/samples/caret/caret.rb +282 -0
- data/samples/caret/mondrian.xpm +44 -0
- data/samples/controls/controls.rb +1136 -0
- data/samples/controls/get_item_sample.rb +87 -0
- data/samples/controls/icons/choice.xpm +27 -0
- data/samples/controls/icons/combo.xpm +27 -0
- data/samples/controls/icons/gauge.xpm +27 -0
- data/samples/controls/icons/list.xpm +27 -0
- data/samples/controls/icons/radio.xpm +27 -0
- data/samples/controls/icons/stattext.xpm +24 -0
- data/samples/controls/icons/text.xpm +27 -0
- data/samples/controls/mondrian.ico +0 -0
- data/samples/controls/mondrian.xpm +44 -0
- data/samples/controls/test2.bmp +0 -0
- data/samples/dialogs/dialogs.rb +797 -0
- data/samples/dialogs/tips.txt +18 -0
- data/samples/dragdrop/dragdrop.rb +177 -0
- data/samples/drawing/graphics_drawing.rb +235 -0
- data/samples/drawing/images.rb +37 -0
- data/samples/drawing/paperclip.png +0 -0
- data/samples/etc/activation.rb +102 -0
- data/samples/etc/choice.rb +67 -0
- data/samples/etc/miniframe.rb +79 -0
- data/samples/etc/sash.rb +130 -0
- data/samples/etc/scrollwin.rb +110 -0
- data/samples/etc/system_settings.rb +252 -0
- data/samples/etc/threaded.rb +72 -0
- data/samples/etc/toolbar_sizer_additem.rb +55 -0
- data/samples/etc/wizard.rb +74 -0
- data/samples/event/event.rb +182 -0
- data/samples/event/update_ui_event.rb +70 -0
- data/samples/grid/grid.rb +198 -0
- data/samples/grid/gridtablebase.rb +148 -0
- data/samples/html/html.rb +262 -0
- data/samples/listbook/listbook.rb +174 -0
- data/samples/listbook/listbook.xrc +370 -0
- data/samples/mdi/mdi.rb +85 -0
- data/samples/media/mediactrl.rb +167 -0
- data/samples/minimal/minimal.rb +77 -0
- data/samples/minimal/mondrian.ico +0 -0
- data/samples/minimal/mondrian.png +0 -0
- data/samples/minimal/nothing.rb +16 -0
- data/samples/opengl/cube.rb +117 -0
- data/samples/printing/mondrian.ico +0 -0
- data/samples/printing/mondrian.xpm +44 -0
- data/samples/printing/printing.rb +487 -0
- data/samples/sockets/SocketPackets.rb +27 -0
- data/samples/sockets/res/message-new.png +0 -0
- data/samples/sockets/res/user.png +0 -0
- data/samples/sockets/wxClient.rb +395 -0
- data/samples/sockets/wxServer.rb +422 -0
- data/samples/sockets/wxSocketGUI.rb +97 -0
- data/samples/text/format-text-bold.png +0 -0
- data/samples/text/format-text-italic.png +0 -0
- data/samples/text/format-text-underline.png +0 -0
- data/samples/text/mondrian.ico +0 -0
- data/samples/text/mondrian.xpm +44 -0
- data/samples/text/rich_textctrl.rb +98 -0
- data/samples/text/scintilla.rb +169 -0
- data/samples/text/textctrl.rb +111 -0
- data/samples/text/unicode.rb +242 -0
- data/samples/text/utf8.txt +15 -0
- data/samples/treectrl/icon1.xpm +79 -0
- data/samples/treectrl/icon2.xpm +53 -0
- data/samples/treectrl/icon3.xpm +79 -0
- data/samples/treectrl/icon4.xpm +43 -0
- data/samples/treectrl/icon5.xpm +79 -0
- data/samples/treectrl/treectrl.rb +1166 -0
- data/samples/xrc/samples.xrc +46 -0
- data/samples/xrc/xrc_sample.rb +76 -0
- metadata +17 -3
@@ -0,0 +1,50 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
|
3
|
+
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
+
begin
|
5
|
+
require 'rubygems'
|
6
|
+
rescue LoadError
|
7
|
+
end
|
8
|
+
require 'wx'
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
class TestCheckBox < Wx::Panel
|
13
|
+
def initialize(parent, log)
|
14
|
+
@log = log
|
15
|
+
super(parent, -1)
|
16
|
+
|
17
|
+
Wx::StaticText.new(self, -1, "This example uses the wxCheckBox control", Wx::Point.new(10,10))
|
18
|
+
|
19
|
+
cID = Wx::ID_HIGHEST + 1
|
20
|
+
cb1 = Wx::CheckBox.new(self, cID, " Apples", Wx::Point.new(65, 40), Wx::Size.new(150,20), Wx::NO_BORDER)
|
21
|
+
cb2 = Wx::CheckBox.new(self, cID + 1, " Oranges", Wx::Point.new(65,60), Wx::Size.new(150,20), Wx::NO_BORDER)
|
22
|
+
cb3 = Wx::CheckBox.new(self, cID + 2, " Pears", Wx::Point.new(65,80), Wx::Size.new(150,20), Wx::NO_BORDER)
|
23
|
+
|
24
|
+
evt_checkbox(cID) {|event| on_check_box(event)}
|
25
|
+
evt_checkbox(cID+1) {|event| on_check_box(event)}
|
26
|
+
evt_checkbox(cID+2) {|event| on_check_box(event)}
|
27
|
+
end
|
28
|
+
|
29
|
+
def on_check_box(event)
|
30
|
+
@log.write_text("evt_checkbox: " + event.is_checked().to_s)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
|
35
|
+
module Demo
|
36
|
+
def Demo.run(frame, nb, log)
|
37
|
+
win = TestCheckBox.new(nb, log)
|
38
|
+
return win
|
39
|
+
end
|
40
|
+
|
41
|
+
def Demo.overview
|
42
|
+
return "A checkbox is a labelled box which is either on (checkmark is visible) or off (no checkmark)."
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
if __FILE__ == $0
|
47
|
+
run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
|
48
|
+
load run_solo_lib
|
49
|
+
run File.basename($0)
|
50
|
+
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
|
3
|
+
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
+
begin
|
5
|
+
require 'rubygems'
|
6
|
+
rescue LoadError
|
7
|
+
end
|
8
|
+
require 'wx'
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
class TestPanel < Wx::Panel
|
13
|
+
attr_reader :lb
|
14
|
+
def initialize(parent, log)
|
15
|
+
super parent
|
16
|
+
@log = log
|
17
|
+
|
18
|
+
sample_list = %w|one two three four five six seven eight
|
19
|
+
nine ten eleven twelve thirteen fourteen|
|
20
|
+
|
21
|
+
self.sizer = Wx::VBoxSizer.new
|
22
|
+
tx = Wx::StaticText.new( self,
|
23
|
+
:label => "This example uses the wxCheckListBox control.")
|
24
|
+
sizer.add(tx, 0, Wx::ALL, 5)
|
25
|
+
@lb = Wx::CheckListBox.new(self, :choices => sample_list)
|
26
|
+
sizer.add(lb, 1, Wx::ALL|Wx::GROW, 5)
|
27
|
+
evt_listbox lb, :on_evt_listbox
|
28
|
+
evt_listbox_dclick lb, :on_evt_listbox_dclick
|
29
|
+
lb.set_selection(0)
|
30
|
+
|
31
|
+
|
32
|
+
btn = Wx::Button.new(self, :label => "Test SetString")
|
33
|
+
sizer.add(btn, 0, Wx::ALL, 5)
|
34
|
+
evt_button btn, :on_test_button
|
35
|
+
end
|
36
|
+
|
37
|
+
def on_evt_listbox(event)
|
38
|
+
@log.write_text("evt_listbox: " + event.get_string())
|
39
|
+
end
|
40
|
+
|
41
|
+
def on_evt_listbox_dclick(event)
|
42
|
+
@log.write_text("evt_listbox_dclick:")
|
43
|
+
end
|
44
|
+
|
45
|
+
def on_test_button(event)
|
46
|
+
@lb.set_string(4, "FUBAR")
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
module Demo
|
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 checklistbox is like a listbox, but allows items to be checked or unchecked."
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
if __FILE__ == $0
|
62
|
+
run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
|
63
|
+
load run_solo_lib
|
64
|
+
run File.basename($0)
|
65
|
+
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
|
3
|
+
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
+
begin
|
5
|
+
require 'rubygems'
|
6
|
+
rescue LoadError
|
7
|
+
end
|
8
|
+
require 'wx'
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
class TestChoice < Wx::Panel
|
13
|
+
def initialize(parent, log)
|
14
|
+
@log = log
|
15
|
+
super(parent, -1)
|
16
|
+
|
17
|
+
sampleList = %w(one two three four five six seven eight)
|
18
|
+
|
19
|
+
Wx::StaticText.new(self, -1, "This example uses the wxChoice control.", Wx::Point.new(15,10))
|
20
|
+
|
21
|
+
Wx::StaticText.new(self, -1, "Select one:", Wx::Point.new(15,50), Wx::Size.new(65,20))
|
22
|
+
@ch = Wx::Choice.new(self, 40, Wx::Point.new(80,50), Wx::DEFAULT_SIZE, sampleList)
|
23
|
+
evt_choice(40) {|event| on_evt_choice(event)}
|
24
|
+
end
|
25
|
+
|
26
|
+
def on_evt_choice(event)
|
27
|
+
@log.write_text("evt_choice: " + event.get_string())
|
28
|
+
@ch.append("A new item")
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
module Demo
|
33
|
+
def Demo.run(frame, nb, log)
|
34
|
+
win = TestChoice.new(nb, log)
|
35
|
+
return win
|
36
|
+
end
|
37
|
+
|
38
|
+
def Demo.overview
|
39
|
+
return "A choice item is used to select one of a list of strings. Unlike a listbox, only the selection is visible until the user pulls down the menu of choices."
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
if __FILE__ == $0
|
44
|
+
run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
|
45
|
+
load run_solo_lib
|
46
|
+
run File.basename($0)
|
47
|
+
end
|
@@ -0,0 +1,78 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
|
3
|
+
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
+
begin
|
5
|
+
require 'rubygems'
|
6
|
+
rescue LoadError
|
7
|
+
end
|
8
|
+
require 'wx'
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
class TestCB < Wx::Choicebook
|
13
|
+
def initialize(parent, log)
|
14
|
+
@log = log
|
15
|
+
super(parent, -1)
|
16
|
+
|
17
|
+
page_texts = [ "Yet",
|
18
|
+
"Another",
|
19
|
+
"Way",
|
20
|
+
"To",
|
21
|
+
"Select",
|
22
|
+
"Pages"
|
23
|
+
]
|
24
|
+
|
25
|
+
# Now make a bunch of panels for the choice book
|
26
|
+
count = 1
|
27
|
+
page_texts.each { |txt|
|
28
|
+
win = Wx::Panel.new(self)
|
29
|
+
if count == 1
|
30
|
+
st = Wx::StaticText.new(win, -1,
|
31
|
+
"Wx::Choicebook is yet another way to switch between 'page' windows",
|
32
|
+
Wx::Point.new(10, 10))
|
33
|
+
else
|
34
|
+
st = Wx::StaticText.new(win, -1, "Page: #{count}", Wx::Point.new(10,10))
|
35
|
+
end
|
36
|
+
count += 1
|
37
|
+
|
38
|
+
add_page(win, txt)
|
39
|
+
}
|
40
|
+
|
41
|
+
evt_choicebook_page_changed(get_id) {|event| on_page_changed(event)}
|
42
|
+
evt_choicebook_page_changing(get_id) {|event| on_page_changing(event)}
|
43
|
+
|
44
|
+
end
|
45
|
+
|
46
|
+
def on_page_changed(event)
|
47
|
+
old = event.get_old_selection
|
48
|
+
new = event.get_selection
|
49
|
+
sel = get_selection
|
50
|
+
@log.write_text("on_page_changed, old:#{old}, new:#{new}, sel:#{sel}")
|
51
|
+
event.skip
|
52
|
+
end
|
53
|
+
|
54
|
+
def on_page_changing(event)
|
55
|
+
old = event.get_old_selection
|
56
|
+
new = event.get_selection
|
57
|
+
sel = get_selection
|
58
|
+
@log.write_text("on_page_changing, old:#{old}, new:#{new}, sel:#{sel}")
|
59
|
+
event.skip
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
module Demo
|
64
|
+
def Demo.run(frame, nb, log)
|
65
|
+
win = TestCB.new(nb, log)
|
66
|
+
return win
|
67
|
+
end
|
68
|
+
|
69
|
+
def Demo.overview
|
70
|
+
return "This class is a control similar to a notebook control, but uses a Wx::Choice to manage the selection of the pages."
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
if __FILE__ == $0
|
75
|
+
run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
|
76
|
+
load run_solo_lib
|
77
|
+
run File.basename($0)
|
78
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
|
3
|
+
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
+
begin
|
5
|
+
require 'rubygems'
|
6
|
+
rescue LoadError
|
7
|
+
end
|
8
|
+
require 'wx'
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
module Demo
|
13
|
+
def Demo.run(frame, nb, log)
|
14
|
+
dlg = Wx::ColourDialog.new(frame)
|
15
|
+
dlg.get_colour_data().set_choose_full(true)
|
16
|
+
if dlg.show_modal() == Wx::ID_OK
|
17
|
+
data = dlg.get_colour_data().get_colour()
|
18
|
+
log.write_text("You selected: (%d, %d, %d)" % [data.red, data.green, data.blue])
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
def Demo.overview
|
23
|
+
return "Welcome to the wxRuby ColourDialog demo"
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
if __FILE__ == $0
|
28
|
+
run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
|
29
|
+
load run_solo_lib
|
30
|
+
run File.basename($0)
|
31
|
+
end
|
@@ -0,0 +1,77 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
|
3
|
+
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
+
begin
|
5
|
+
require 'rubygems'
|
6
|
+
rescue LoadError
|
7
|
+
end
|
8
|
+
require 'wx'
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
class TestComboBox < Wx::Panel
|
13
|
+
|
14
|
+
def initialize(parent, log)
|
15
|
+
super(parent, -1)
|
16
|
+
@log = log
|
17
|
+
sampleList = %w(zero one two three four five six seven eight)
|
18
|
+
|
19
|
+
Wx::StaticText.new(self, -1, "This example uses the wxComboBox control.", Wx::Point.new(8,10))
|
20
|
+
|
21
|
+
Wx::StaticText.new(self, -1, "Select one:", Wx::Point.new(15,50))
|
22
|
+
cb = Wx::ComboBox.new(self, 500, "default value", Wx::Point.new(90,50), Wx::DEFAULT_SIZE,
|
23
|
+
sampleList, Wx::CB_DROPDOWN)
|
24
|
+
|
25
|
+
evt_combobox(cb.get_id) {|event| on_combobox(event)}
|
26
|
+
evt_text(cb.get_id) {|event| on_evt_text(event)}
|
27
|
+
evt_text_enter(cb.get_id) {|event| on_evt_text_enter(event)}
|
28
|
+
cb.evt_set_focus {|event| on_set_focus(event)}
|
29
|
+
cb.evt_kill_focus {|event| on_kill_focus(event)}
|
30
|
+
|
31
|
+
cb.append("foo", "This is some client data for this item")
|
32
|
+
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
def on_combobox(event)
|
37
|
+
cb = event.get_event_object
|
38
|
+
data = cb.get_client_data(event.get_selection)
|
39
|
+
@log.write_text("evt_combobox: #{event.get_string}\nClient Data: #{data}")
|
40
|
+
end
|
41
|
+
|
42
|
+
def on_evt_text(event)
|
43
|
+
@log.write_text("evt_text: " + event.get_string)
|
44
|
+
end
|
45
|
+
|
46
|
+
def on_evt_text_enter(event)
|
47
|
+
@log.write_text("evt_text_enter: " + event.get_string)
|
48
|
+
end
|
49
|
+
|
50
|
+
def on_set_focus(evt)
|
51
|
+
@log.write_text("OnSetFocus")
|
52
|
+
evt.skip
|
53
|
+
end
|
54
|
+
|
55
|
+
def on_kill_focus(evt)
|
56
|
+
@log.write_text("OnKillFocus")
|
57
|
+
evt.skip
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
module Demo
|
62
|
+
def Demo.run(frame,nb,log)
|
63
|
+
win = TestComboBox.new(nb, log)
|
64
|
+
return win
|
65
|
+
end
|
66
|
+
|
67
|
+
def Demo.overview
|
68
|
+
"A combobox is like a combination of an edit control and a listbox. It can be displayed as static list with editable or read-only text field; or a drop-down list with text field; or a drop-down list without a text field."
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
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
|
@@ -0,0 +1,136 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
|
3
|
+
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
+
begin
|
5
|
+
require 'rubygems'
|
6
|
+
rescue LoadError
|
7
|
+
end
|
8
|
+
require 'wx'
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
Cursors = [
|
13
|
+
"Wx::CURSOR_ARROW",
|
14
|
+
"Wx::CURSOR_RIGHT_ARROW",
|
15
|
+
"Wx::CURSOR_BULLSEYE",
|
16
|
+
"Wx::CURSOR_CHAR",
|
17
|
+
"Wx::CURSOR_CROSS",
|
18
|
+
"Wx::CURSOR_HAND",
|
19
|
+
"Wx::CURSOR_IBEAM",
|
20
|
+
"Wx::CURSOR_LEFT_BUTTON",
|
21
|
+
"Wx::CURSOR_MAGNIFIER",
|
22
|
+
"Wx::CURSOR_MIDDLE_BUTTON",
|
23
|
+
"Wx::CURSOR_NO_ENTRY",
|
24
|
+
"Wx::CURSOR_PAINT_BRUSH",
|
25
|
+
"Wx::CURSOR_PENCIL",
|
26
|
+
"Wx::CURSOR_POINT_LEFT",
|
27
|
+
"Wx::CURSOR_POINT_RIGHT",
|
28
|
+
"Wx::CURSOR_QUESTION_ARROW",
|
29
|
+
"Wx::CURSOR_RIGHT_BUTTON",
|
30
|
+
"Wx::CURSOR_SIZENESW",
|
31
|
+
"Wx::CURSOR_SIZENS",
|
32
|
+
"Wx::CURSOR_SIZENWSE",
|
33
|
+
"Wx::CURSOR_SIZEWE",
|
34
|
+
"Wx::CURSOR_SIZING",
|
35
|
+
"Wx::CURSOR_SPRAYCAN",
|
36
|
+
"Wx::CURSOR_WAIT",
|
37
|
+
"Wx::CURSOR_WATCH",
|
38
|
+
"Wx::CURSOR_BLANK",
|
39
|
+
"Wx::CURSOR_DEFAULT",
|
40
|
+
"Wx::CURSOR_COPY_ARROW",
|
41
|
+
"Wx::CURSOR_ARROWWAIT",
|
42
|
+
|
43
|
+
"zz [custom cursor]",
|
44
|
+
]
|
45
|
+
|
46
|
+
class TestCursor < Wx::Panel
|
47
|
+
|
48
|
+
def initialize(parent, log)
|
49
|
+
super(parent, -1)
|
50
|
+
@log = log
|
51
|
+
main_sizer = Wx::BoxSizer.new(Wx::VERTICAL)
|
52
|
+
|
53
|
+
@cb = Wx::ComboBox.new(self, 500, "Wx::CURSOR_DEFAULT",
|
54
|
+
Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE,
|
55
|
+
Cursors, Wx::CB_READONLY)
|
56
|
+
main_sizer.add(@cb, 0, Wx::ALL, 10)
|
57
|
+
|
58
|
+
sub_sizer = Wx::BoxSizer.new(Wx::HORIZONTAL)
|
59
|
+
@win = Wx::Window.new(self, -1,
|
60
|
+
Wx::DEFAULT_POSITION,
|
61
|
+
Wx::Size.new(200,200), Wx::SIMPLE_BORDER)
|
62
|
+
|
63
|
+
@win.set_background_colour(Wx::WHITE)
|
64
|
+
sub_sizer.add(@win, 0, Wx::ALL, 5)
|
65
|
+
|
66
|
+
evt_combobox(@cb.get_id) {|event| on_choose_cursor(event)}
|
67
|
+
@win.evt_left_down {|event| on_draw_dot(event)}
|
68
|
+
|
69
|
+
txt = Wx::StaticText.new(self, -1,
|
70
|
+
"This sample allows you to see all the stock cursors \n"\
|
71
|
+
"available to wxRuby. Simply select a name from the \n"\
|
72
|
+
"Wx::Choice and then move the mouse into the window \n"\
|
73
|
+
"below to see the cursor. NOTE: not all stock cursors \n"\
|
74
|
+
"have a specific representaion on all platforms.\n"\
|
75
|
+
"Click in the window to see where the hotspot is.")
|
76
|
+
|
77
|
+
sub_sizer.add(txt, 0, Wx::ALL, 5)
|
78
|
+
main_sizer.add(sub_sizer, 0, Wx::ALL, 5)
|
79
|
+
|
80
|
+
self.set_sizer(main_sizer)
|
81
|
+
end
|
82
|
+
|
83
|
+
def on_choose_cursor(event)
|
84
|
+
# clear the dots
|
85
|
+
@win.refresh
|
86
|
+
choice = event.get_string
|
87
|
+
@log.write_text("Selecting the cursor #{choice}")
|
88
|
+
if choice[0..1] == 'zz'
|
89
|
+
img_file = File.join(File.dirname(__FILE__), 'icons', 'pointy.png')
|
90
|
+
image = Wx::Image.new(img_file)
|
91
|
+
|
92
|
+
# since this image didn't come from a .cur file, tell it where the
|
93
|
+
# hotspot is...
|
94
|
+
image.set_option(Wx::IMAGE_OPTION_CUR_HOTSPOT_X, 1)
|
95
|
+
image.set_option(Wx::IMAGE_OPTION_CUR_HOTSPOT_Y, 1)
|
96
|
+
|
97
|
+
# make the image into a cursor
|
98
|
+
cursor = Wx::Cursor.new(image)
|
99
|
+
else
|
100
|
+
cursor = Wx::Cursor.new(eval(choice))
|
101
|
+
end
|
102
|
+
@win.set_cursor(cursor)
|
103
|
+
end
|
104
|
+
|
105
|
+
def on_draw_dot(evt)
|
106
|
+
# Draw a dot so the user can see where the hotspot is
|
107
|
+
@win.paint do | dc |
|
108
|
+
dc.set_pen(Wx::RED_PEN)
|
109
|
+
dc.set_brush(Wx::RED_BRUSH)
|
110
|
+
pos = evt.get_position
|
111
|
+
dc.draw_circle(pos.x, pos.y, 4)
|
112
|
+
end
|
113
|
+
end
|
114
|
+
|
115
|
+
|
116
|
+
end
|
117
|
+
|
118
|
+
module Demo
|
119
|
+
def Demo.run(frame,nb,log)
|
120
|
+
win = TestCursor.new(nb, log)
|
121
|
+
return win
|
122
|
+
end
|
123
|
+
|
124
|
+
def Demo.overview
|
125
|
+
"This demo shows the stock mouse cursors that are available to wxRuby"
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
if __FILE__ == $0
|
133
|
+
run_solo_lib = File.join( File.dirname(__FILE__), 'run.rb')
|
134
|
+
load run_solo_lib
|
135
|
+
run File.basename($0)
|
136
|
+
end
|