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.
- data/LICENSE +53 -53
- data/README +299 -299
- data/lib/wx/classes/app.rb +6 -0
- data/lib/wx/classes/checklistbox.rb +45 -30
- data/lib/wx/classes/clipboard.rb +16 -0
- data/lib/wx/classes/event.rb +5 -0
- data/lib/wx/classes/evthandler.rb +20 -10
- data/lib/wx/classes/grid.rb +38 -39
- data/lib/wx/classes/listctrl.rb +12 -0
- data/lib/wx/classes/mediactrl.rb +22 -0
- data/lib/wx/classes/menu.rb +6 -6
- data/lib/wx/classes/sound.rb +23 -0
- data/lib/wx/classes/styledtextctrl.rb +2 -2
- data/lib/wx/classes/treectrl.rb +26 -0
- data/lib/wx/keyword_ctors.rb +19 -5
- data/lib/wx/keyword_defs.rb +20 -0
- data/lib/wx/version.rb +1 -1
- data/lib/wx.rb +42 -42
- data/lib/wxruby2.exp +0 -0
- data/lib/wxruby2.lib +0 -0
- data/lib/wxruby2.so +0 -0
- data/samples/SAMPLES-LICENSE.TXT +17 -17
- data/samples/aui/aui.rb +8 -1
- data/samples/bigdemo/About.rbw +39 -39
- data/samples/bigdemo/ColorPanel.rbw +25 -25
- data/samples/bigdemo/GridSimple.rbw +80 -80
- data/samples/bigdemo/MDIDemo.rbw +59 -59
- data/samples/bigdemo/PopupMenu.rbw +151 -151
- data/samples/bigdemo/Sizers.rbw +545 -545
- data/samples/bigdemo/bigdemo.rb +826 -826
- data/samples/bigdemo/demoTemplate.rbw +37 -37
- data/samples/bigdemo/icons/choice.xpm +27 -27
- data/samples/bigdemo/icons/combo.xpm +27 -27
- data/samples/bigdemo/icons/copy.xpm +25 -25
- data/samples/bigdemo/icons/cut.xpm +24 -24
- data/samples/bigdemo/icons/gauge.xpm +27 -27
- data/samples/bigdemo/icons/help.xpm +25 -25
- data/samples/bigdemo/icons/list.xpm +27 -27
- data/samples/bigdemo/icons/mondrian.xpm +44 -44
- data/samples/bigdemo/icons/new.xpm +24 -24
- data/samples/bigdemo/icons/ogl.ico +0 -0
- data/samples/bigdemo/icons/ogl.xpm +45 -45
- data/samples/bigdemo/icons/open.xpm +26 -26
- data/samples/bigdemo/icons/paste.xpm +38 -38
- data/samples/bigdemo/icons/preview.xpm +26 -26
- data/samples/bigdemo/icons/print.xpm +26 -26
- data/samples/bigdemo/icons/radio.xpm +27 -27
- data/samples/bigdemo/icons/robert.xpm +415 -415
- data/samples/bigdemo/icons/save.xpm +25 -25
- data/samples/bigdemo/icons/smiles.xpm +39 -39
- data/samples/bigdemo/icons/smiley.xpm +42 -42
- data/samples/bigdemo/icons/stattext.xpm +24 -24
- data/samples/bigdemo/icons/test2.bmp +0 -0
- data/samples/bigdemo/icons/test2.xpm +79 -79
- data/samples/bigdemo/icons/text.xpm +27 -27
- data/samples/bigdemo/icons/tog1.xpm +38 -38
- data/samples/bigdemo/icons/tog2.xpm +38 -38
- data/samples/bigdemo/icons/wxwin16x16.xpm +25 -25
- data/samples/bigdemo/tips.txt +7 -7
- data/samples/bigdemo/utils.rb +11 -11
- data/samples/bigdemo/wxButton.rbw +66 -66
- data/samples/bigdemo/wxCalendarCtrl.rbw +72 -72
- data/samples/bigdemo/wxCheckBox.rbw +52 -52
- data/samples/bigdemo/wxCheckListBox.rbw +77 -77
- data/samples/bigdemo/wxChoice.rbw +49 -49
- data/samples/bigdemo/wxColourDialog.rbw +34 -34
- data/samples/bigdemo/wxComboBox.rbw +79 -79
- data/samples/bigdemo/wxDialog.rbw +92 -92
- data/samples/bigdemo/wxDirDialog.rbw +32 -32
- data/samples/bigdemo/wxFileDialog.rbw +39 -39
- data/samples/bigdemo/wxFileDialog_Save.rbw +38 -38
- data/samples/bigdemo/wxFindReplaceDialog.rbw +85 -85
- data/samples/bigdemo/wxFontDialog.rbw +176 -176
- data/samples/bigdemo/wxFrame.rbw +55 -55
- data/samples/bigdemo/wxGauge.rbw +73 -73
- data/samples/bigdemo/wxGrid.rbw +68 -68
- data/samples/bigdemo/wxListBox.rbw +142 -142
- data/samples/bigdemo/wxListCtrl_virtual.rbw +109 -109
- data/samples/bigdemo/wxMDIWindows.rbw +52 -52
- data/samples/bigdemo/wxMenu.rbw +238 -238
- data/samples/bigdemo/wxMessageDialog.rbw +30 -30
- data/samples/bigdemo/wxMultipleChoiceDialog.rbw +34 -34
- data/samples/bigdemo/wxNotebook.rbw +138 -138
- data/samples/bigdemo/wxProgressDialog.rbw +45 -45
- data/samples/bigdemo/wxRadioBox.rbw +74 -74
- data/samples/bigdemo/wxRadioButton.rbw +127 -127
- data/samples/bigdemo/wxSashWindow.rbw +94 -104
- data/samples/bigdemo/wxScrolledMessageDialog.rbw +59 -59
- data/samples/bigdemo/wxScrolledWindow.rbw +201 -201
- data/samples/bigdemo/wxSingleChoiceDialog.rbw +35 -35
- data/samples/bigdemo/wxSlider.rbw +44 -44
- data/samples/bigdemo/wxSpinButton.rbw +52 -52
- data/samples/bigdemo/wxSpinCtrl.rbw +53 -53
- data/samples/bigdemo/wxSplitterWindow.rbw +65 -65
- data/samples/bigdemo/wxStaticBitmap.rbw +53 -53
- data/samples/bigdemo/wxStaticText.rbw +57 -57
- data/samples/bigdemo/wxStatusBar.rbw +128 -128
- data/samples/bigdemo/wxTextCtrl.rbw +151 -151
- data/samples/bigdemo/wxTextEntryDialog.rbw +34 -34
- data/samples/bigdemo/wxToggleButton.rbw +51 -51
- data/samples/bigdemo/wxToolBar.rbw +133 -133
- data/samples/bigdemo/wxTreeCtrl.rbw +192 -192
- data/samples/calendar/calendar.rb +275 -275
- data/samples/caret/caret.rb +286 -286
- data/samples/caret/mondrian.xpm +44 -44
- data/samples/controls/controls.rb +1140 -1140
- data/samples/controls/get_item_sample.rb +87 -87
- data/samples/controls/icons/choice.xpm +27 -27
- data/samples/controls/icons/combo.xpm +27 -27
- data/samples/controls/icons/gauge.xpm +27 -27
- data/samples/controls/icons/list.xpm +27 -27
- data/samples/controls/icons/radio.xpm +27 -27
- data/samples/controls/icons/stattext.xpm +24 -24
- data/samples/controls/icons/text.xpm +27 -27
- data/samples/controls/mondrian.xpm +44 -44
- data/samples/dialogs/dialogs.rb +724 -724
- data/samples/dialogs/tips.txt +18 -18
- data/samples/drawing/graphics_drawing.rb +232 -0
- data/samples/{images → drawing}/images.rb +48 -48
- data/samples/{images → drawing}/paperclip.png +0 -0
- data/samples/etc/activation.rb +108 -108
- data/samples/etc/choice.rb +72 -72
- data/samples/etc/miniframe.rb +84 -84
- data/samples/etc/sash.rb +135 -135
- data/samples/etc/scrollwin.rb +116 -116
- data/samples/etc/system_settings.rb +258 -258
- data/samples/etc/wizard.rb +79 -79
- data/samples/grid/grid.rb +1 -0
- data/samples/listbook/listbook.rb +181 -181
- data/samples/listbook/listbook.xrc +370 -370
- data/samples/mdi/mdi.rb +87 -87
- data/samples/media/mediactrl.rb +173 -0
- data/samples/minimal/minimal.rb +85 -85
- data/samples/minimal/nothing.rb +21 -21
- data/samples/opengl/cube.rb +123 -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/textctrl.rb +124 -124
- data/samples/text/unicode.rb +238 -238
- data/samples/text/utf8.txt +14 -14
- data/samples/treectrl/treectrl.rb +1180 -1181
- data/samples/xrc/samples.xrc +46 -46
- data/samples/xrc/xrc_sample.rb +107 -107
- metadata +26 -9
- data/samples/images/Thumbs.db +0 -0
data/samples/text/textctrl.rb
CHANGED
@@ -1,124 +1,124 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
# wxRuby2 Sample Code. Copyright (c) 2004-2006 Kevin B. Smith
|
3
|
-
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
-
|
5
|
-
begin
|
6
|
-
require 'wx'
|
7
|
-
rescue LoadError => no_wx_err
|
8
|
-
begin
|
9
|
-
require 'rubygems'
|
10
|
-
require 'wx'
|
11
|
-
rescue LoadError
|
12
|
-
raise no_wx_err
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
class InformativeTextCtrl < Wx::TextCtrl
|
17
|
-
NEWLINE_CORRECTION_FACTOR = 0
|
18
|
-
|
19
|
-
# These text controls are multiline, and may have rich (coloured,
|
20
|
-
# styled) text in them
|
21
|
-
STYLE = Wx::TE_MULTILINE|Wx::TE_RICH|Wx::TE_RICH2
|
22
|
-
def initialize(parent, text)
|
23
|
-
super(parent, -1, text, Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE, STYLE)
|
24
|
-
end
|
25
|
-
|
26
|
-
# more ruby-ish
|
27
|
-
alias :<< :append_text
|
28
|
-
|
29
|
-
# run through a few useful methods of textctrl and report the results
|
30
|
-
# as a string
|
31
|
-
def report()
|
32
|
-
report = ''
|
33
|
-
report << 'Insertion Point: ' << get_insertion_point.to_s() << "\n"
|
34
|
-
report << 'First Line Text: ' << get_line_text(0) << "\n"
|
35
|
-
report << 'Final Position: ' << get_last_position().to_s() << "\n"
|
36
|
-
report << 'Selection: ' << get_selection().inspect() << "\n"
|
37
|
-
report << 'String Selection: ' << get_string_selection().inspect << "\n"
|
38
|
-
report << 'Position to X, Y: ' <<
|
39
|
-
position_to_xy( get_insertion_point ).inspect
|
40
|
-
return report
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
# A read-only text ctrl useful for displaying output
|
45
|
-
class LogTextCtrl < Wx::TextCtrl
|
46
|
-
STYLE = Wx::TE_READONLY|Wx::TE_MULTILINE
|
47
|
-
def initialize(parent)
|
48
|
-
super(parent, -1, '', Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE, STYLE)
|
49
|
-
end
|
50
|
-
end
|
51
|
-
|
52
|
-
class TextCtrlFrame < Wx::Frame
|
53
|
-
def initialize(title, pos, size)
|
54
|
-
super(nil, -1, title, pos, size)
|
55
|
-
|
56
|
-
panel = Wx::Panel.new(self, -1)
|
57
|
-
sizer = Wx::BoxSizer.new(Wx::VERTICAL)
|
58
|
-
|
59
|
-
@textctrl = InformativeTextCtrl.new(panel, '')
|
60
|
-
populate_textctrl()
|
61
|
-
sizer.add(@textctrl, 2, Wx::GROW|Wx::ALL, 2)
|
62
|
-
|
63
|
-
button = Wx::Button.new(panel, -1, 'Get Info')
|
64
|
-
sizer.add(button, 0, Wx::ADJUST_MINSIZE|Wx::ALL, 2 )
|
65
|
-
evt_button(button.get_id) { | e | on_click(e) }
|
66
|
-
|
67
|
-
@log = LogTextCtrl.new(panel)
|
68
|
-
sizer.add(@log, 1, Wx::GROW|Wx::ALL, 2)
|
69
|
-
|
70
|
-
panel.set_sizer( sizer )
|
71
|
-
end
|
72
|
-
|
73
|
-
def populate_textctrl()
|
74
|
-
@textctrl << "This is some plain text\n"
|
75
|
-
@textctrl << "Text with green letters and yellow background\n"
|
76
|
-
@textctrl << "This is some more plain text"
|
77
|
-
# create a new rich text style
|
78
|
-
attr = Wx::TextAttr.new(Wx::GREEN, Wx::Colour.new(255, 255, 0) )
|
79
|
-
# apply the style from character 26 to character 76
|
80
|
-
@textctrl.set_style(24, 69, attr)
|
81
|
-
end
|
82
|
-
|
83
|
-
def construct_menus()
|
84
|
-
menu_bar = Wx::MenuBar.new()
|
85
|
-
|
86
|
-
menu_file = Wx::Menu.new()
|
87
|
-
menu_file.append(Wx::ID_EXIT, "E&xit\tAlt-X", "Quit this program")
|
88
|
-
menu_bar.append(menu_file, "&File")
|
89
|
-
evt_menu(Wx::ID_EXIT) { on_quit() }
|
90
|
-
|
91
|
-
menu_help = Wx::Menu.new()
|
92
|
-
menu_help.append(Wx::ID_ABOUT, "&About...\tF1", "Show about dialog")
|
93
|
-
evt_menu(Wx::ID_ABOUT) { on_about() }
|
94
|
-
menu_bar.append(menu_help, "&Help")
|
95
|
-
|
96
|
-
set_menu_bar(menu_bar)
|
97
|
-
end
|
98
|
-
|
99
|
-
def on_click(e)
|
100
|
-
@log.set_value( @textctrl.report() )
|
101
|
-
end
|
102
|
-
|
103
|
-
def on_quit()
|
104
|
-
close(TRUE)
|
105
|
-
end
|
106
|
-
|
107
|
-
def on_about()
|
108
|
-
msg = sprintf("This is the About dialog of the textctrl sample.\n" \
|
109
|
-
"Welcome to %s", Wx::VERSION_STRING)
|
110
|
-
message_box(msg, "About Minimal", Wx::OK|Wx::ICON_INFORMATION, self)
|
111
|
-
end
|
112
|
-
end
|
113
|
-
|
114
|
-
class RbApp < Wx::App
|
115
|
-
def on_init()
|
116
|
-
frame = TextCtrlFrame.new("TextCtrl demonstration",
|
117
|
-
Wx::Point.new(50, 50),
|
118
|
-
Wx::Size.new(450, 340) )
|
119
|
-
|
120
|
-
frame.show(true)
|
121
|
-
end
|
122
|
-
end
|
123
|
-
|
124
|
-
RbApp.new().main_loop()
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# wxRuby2 Sample Code. Copyright (c) 2004-2006 Kevin B. Smith
|
3
|
+
# Freely reusable code: see SAMPLES-LICENSE.TXT for details
|
4
|
+
|
5
|
+
begin
|
6
|
+
require 'wx'
|
7
|
+
rescue LoadError => no_wx_err
|
8
|
+
begin
|
9
|
+
require 'rubygems'
|
10
|
+
require 'wx'
|
11
|
+
rescue LoadError
|
12
|
+
raise no_wx_err
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
class InformativeTextCtrl < Wx::TextCtrl
|
17
|
+
NEWLINE_CORRECTION_FACTOR = 0
|
18
|
+
|
19
|
+
# These text controls are multiline, and may have rich (coloured,
|
20
|
+
# styled) text in them
|
21
|
+
STYLE = Wx::TE_MULTILINE|Wx::TE_RICH|Wx::TE_RICH2
|
22
|
+
def initialize(parent, text)
|
23
|
+
super(parent, -1, text, Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE, STYLE)
|
24
|
+
end
|
25
|
+
|
26
|
+
# more ruby-ish
|
27
|
+
alias :<< :append_text
|
28
|
+
|
29
|
+
# run through a few useful methods of textctrl and report the results
|
30
|
+
# as a string
|
31
|
+
def report()
|
32
|
+
report = ''
|
33
|
+
report << 'Insertion Point: ' << get_insertion_point.to_s() << "\n"
|
34
|
+
report << 'First Line Text: ' << get_line_text(0) << "\n"
|
35
|
+
report << 'Final Position: ' << get_last_position().to_s() << "\n"
|
36
|
+
report << 'Selection: ' << get_selection().inspect() << "\n"
|
37
|
+
report << 'String Selection: ' << get_string_selection().inspect << "\n"
|
38
|
+
report << 'Position to X, Y: ' <<
|
39
|
+
position_to_xy( get_insertion_point ).inspect
|
40
|
+
return report
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
# A read-only text ctrl useful for displaying output
|
45
|
+
class LogTextCtrl < Wx::TextCtrl
|
46
|
+
STYLE = Wx::TE_READONLY|Wx::TE_MULTILINE
|
47
|
+
def initialize(parent)
|
48
|
+
super(parent, -1, '', Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE, STYLE)
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
class TextCtrlFrame < Wx::Frame
|
53
|
+
def initialize(title, pos, size)
|
54
|
+
super(nil, -1, title, pos, size)
|
55
|
+
|
56
|
+
panel = Wx::Panel.new(self, -1)
|
57
|
+
sizer = Wx::BoxSizer.new(Wx::VERTICAL)
|
58
|
+
|
59
|
+
@textctrl = InformativeTextCtrl.new(panel, '')
|
60
|
+
populate_textctrl()
|
61
|
+
sizer.add(@textctrl, 2, Wx::GROW|Wx::ALL, 2)
|
62
|
+
|
63
|
+
button = Wx::Button.new(panel, -1, 'Get Info')
|
64
|
+
sizer.add(button, 0, Wx::ADJUST_MINSIZE|Wx::ALL, 2 )
|
65
|
+
evt_button(button.get_id) { | e | on_click(e) }
|
66
|
+
|
67
|
+
@log = LogTextCtrl.new(panel)
|
68
|
+
sizer.add(@log, 1, Wx::GROW|Wx::ALL, 2)
|
69
|
+
|
70
|
+
panel.set_sizer( sizer )
|
71
|
+
end
|
72
|
+
|
73
|
+
def populate_textctrl()
|
74
|
+
@textctrl << "This is some plain text\n"
|
75
|
+
@textctrl << "Text with green letters and yellow background\n"
|
76
|
+
@textctrl << "This is some more plain text"
|
77
|
+
# create a new rich text style
|
78
|
+
attr = Wx::TextAttr.new(Wx::GREEN, Wx::Colour.new(255, 255, 0) )
|
79
|
+
# apply the style from character 26 to character 76
|
80
|
+
@textctrl.set_style(24, 69, attr)
|
81
|
+
end
|
82
|
+
|
83
|
+
def construct_menus()
|
84
|
+
menu_bar = Wx::MenuBar.new()
|
85
|
+
|
86
|
+
menu_file = Wx::Menu.new()
|
87
|
+
menu_file.append(Wx::ID_EXIT, "E&xit\tAlt-X", "Quit this program")
|
88
|
+
menu_bar.append(menu_file, "&File")
|
89
|
+
evt_menu(Wx::ID_EXIT) { on_quit() }
|
90
|
+
|
91
|
+
menu_help = Wx::Menu.new()
|
92
|
+
menu_help.append(Wx::ID_ABOUT, "&About...\tF1", "Show about dialog")
|
93
|
+
evt_menu(Wx::ID_ABOUT) { on_about() }
|
94
|
+
menu_bar.append(menu_help, "&Help")
|
95
|
+
|
96
|
+
set_menu_bar(menu_bar)
|
97
|
+
end
|
98
|
+
|
99
|
+
def on_click(e)
|
100
|
+
@log.set_value( @textctrl.report() )
|
101
|
+
end
|
102
|
+
|
103
|
+
def on_quit()
|
104
|
+
close(TRUE)
|
105
|
+
end
|
106
|
+
|
107
|
+
def on_about()
|
108
|
+
msg = sprintf("This is the About dialog of the textctrl sample.\n" \
|
109
|
+
"Welcome to %s", Wx::VERSION_STRING)
|
110
|
+
message_box(msg, "About Minimal", Wx::OK|Wx::ICON_INFORMATION, self)
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
class RbApp < Wx::App
|
115
|
+
def on_init()
|
116
|
+
frame = TextCtrlFrame.new("TextCtrl demonstration",
|
117
|
+
Wx::Point.new(50, 50),
|
118
|
+
Wx::Size.new(450, 340) )
|
119
|
+
|
120
|
+
frame.show(true)
|
121
|
+
end
|
122
|
+
end
|
123
|
+
|
124
|
+
RbApp.new().main_loop()
|