wxruby 1.9.10-x86-linux → 2.0.0-x86-linux
Sign up to get free protection for your applications and to get access to all the features.
- data/INSTALL +254 -0
- data/README +184 -283
- data/lib/wx/accessors.rb +19 -7
- data/lib/wx/classes/bitmap.rb +3 -0
- data/lib/wx/classes/clipboard.rb +28 -4
- data/lib/wx/classes/image.rb +5 -0
- data/lib/wx/classes/toolbar.rb +7 -4
- data/lib/wx/classes/validator.rb +7 -0
- data/lib/wx/keyword_defs.rb +19 -2
- data/lib/wx/version.rb +1 -1
- data/lib/wxruby2.so +0 -0
- data/samples/aui/aui.rb +21 -21
- data/samples/calendar/calendar.rb +1 -1
- data/samples/drawing/{images.rb → bitmap.rb} +10 -3
- data/samples/drawing/bitmap_image.rb +92 -0
- data/samples/drawing/maths_images.rb +265 -0
- data/samples/drawing/ruby-logo.jpg +0 -0
- data/samples/drawing/wxruby-logo.png +0 -0
- data/samples/text/document-open.png +0 -0
- data/samples/text/document-save.png +0 -0
- data/samples/text/edit-copy.png +0 -0
- data/samples/text/edit-cut.png +0 -0
- data/samples/text/edit-paste.png +0 -0
- data/samples/text/edit-redo.png +0 -0
- data/samples/text/edit-undo.png +0 -0
- data/samples/text/preferences-desktop-font.png +0 -0
- data/samples/text/rich_textctrl.rb +234 -42
- metadata +17 -4
- data/samples/drawing/paperclip.png +0 -0
data/INSTALL
ADDED
@@ -0,0 +1,254 @@
|
|
1
|
+
= Installing wxRuby
|
2
|
+
|
3
|
+
wxRuby is fully supported on Ruby 1.8 and Ruby 1.9.1. There are two
|
4
|
+
ways of installing wxRuby2:
|
5
|
+
|
6
|
+
* Using Rubygems to install a precompiled binary gem
|
7
|
+
* Obtaining the sources and compiling wxRuby yourself
|
8
|
+
|
9
|
+
For most users (especially on Windows and OS X), using rubygems will be
|
10
|
+
most convenient, and is recommended. Compiling may be needed on systems
|
11
|
+
which have very varied configurations (in particular, Linux). You'll
|
12
|
+
also need to compile yourself if you want to use the latest development
|
13
|
+
code, rather than a numbered release.
|
14
|
+
|
15
|
+
= Installing wxRuby using Rubygems
|
16
|
+
|
17
|
+
On Windows and OS X, the only normal prerequisite is Ruby itself and
|
18
|
+
rubygems. On Linux, you will need your distro's wx library
|
19
|
+
installed. See below for platform-specific information.
|
20
|
+
|
21
|
+
== Temporary instructions for gem installation
|
22
|
+
|
23
|
+
As of February 2009, Rubygems has a serious bug which means that the
|
24
|
+
latest version of specific gems are not correctly offered by the
|
25
|
+
automatic installation procedure. This affects a variety of gems and
|
26
|
+
ruby and rubygems versions. Please follow these temporary instructions
|
27
|
+
until this is resolved:
|
28
|
+
|
29
|
+
Download the correct gem file for your platform from the wxRuby download
|
30
|
+
page: http://rubyforge.org/frs/?group_id=35
|
31
|
+
|
32
|
+
Gems for 1.8 are named: wxruby-[version]-[processor]-[os].gem
|
33
|
+
Gems for 1.9 are named: wxruby-ruby19-[version]-[processor]-[os].gem
|
34
|
+
|
35
|
+
Choose the latest version available for your processor and operating
|
36
|
+
system: mswin32 or mingw32 for Windows, darwin for for OS X, linux for
|
37
|
+
Linux.
|
38
|
+
|
39
|
+
Save the file to your local hard drive. Open a command prompt or
|
40
|
+
terminal, go to the directory where the gem file is saved, and do:
|
41
|
+
|
42
|
+
gem install <filename>
|
43
|
+
|
44
|
+
For example:
|
45
|
+
|
46
|
+
gem install wxruby-1.9.10-x86-mswin32-60.gem
|
47
|
+
|
48
|
+
On Linux and OS X, you may need to run this command as a privileged user, eg
|
49
|
+
|
50
|
+
sudo gem install <filename>
|
51
|
+
|
52
|
+
== Proper instructions for gem installation
|
53
|
+
|
54
|
+
To install wxRuby using Rubygems, open a command prompt and type:
|
55
|
+
|
56
|
+
gem install wxruby # Ruby 1.8
|
57
|
+
gem install wxruby-ruby19 # Ruby 1.9
|
58
|
+
|
59
|
+
If you are on Linux or OS X, you will likely need to run this as a
|
60
|
+
privileged user, something like:
|
61
|
+
|
62
|
+
sudo gem install wxruby
|
63
|
+
|
64
|
+
Wait whilst rubygems updates its gem list. You will then be offered a
|
65
|
+
choice of gems to install. Choose the most up-to-date one available for
|
66
|
+
your platform. Rubygems will download and install the desired gem.
|
67
|
+
|
68
|
+
On Linux, you should also install your distro's wxwidgets 2.8
|
69
|
+
libraries. On Windows and OS X, the gem contains everything needed to
|
70
|
+
create and run wxRuby applications; you're ready to go.
|
71
|
+
|
72
|
+
=== Gem Installation Notes - Microsoft Windows
|
73
|
+
|
74
|
+
* x86-mswin32 gems are for ruby on Windows NT/2000/XP/Vista on Intel-32,
|
75
|
+
built with the Microsoft compiler. This includes current releases of
|
76
|
+
the One-Click Installer.
|
77
|
+
|
78
|
+
* x86-mingw gems are compatible with ruby built on Windows using the
|
79
|
+
MingW compiler
|
80
|
+
|
81
|
+
* If using NT or 2000, you may need to install the free library
|
82
|
+
gdiplus.dll in your Windows/system32 directory.
|
83
|
+
|
84
|
+
* If using a recent fresh install of NT, 2000 or XP, you may need to
|
85
|
+
install the dll msvcp71.dll. This can be downloaded for free.
|
86
|
+
|
87
|
+
* To get native XP-style widgets on XP you need to create a manifest.exe
|
88
|
+
file for ruby; see here for more information:
|
89
|
+
http://rubyonwindows.blogspot.com/2007/10/windows-xp-visual-style-controls-with.html
|
90
|
+
|
91
|
+
* Unfortunately, wxRuby2 does not currently work on Windows 3.1, 98 or
|
92
|
+
Me, as these do not have adequate unicode support. The old
|
93
|
+
wxruby-0.6.0 release should work (to the best of its limited
|
94
|
+
abilities) on these platforms.
|
95
|
+
|
96
|
+
=== Gem Installation Notes - OS X
|
97
|
+
|
98
|
+
* Gems are provided as single universal binary for both Intel and
|
99
|
+
PowerPC Apple machines
|
100
|
+
|
101
|
+
* wxRuby binary gems are compatible with versions 10.4 (Tiger) and 10.5
|
102
|
+
(Leopard)
|
103
|
+
|
104
|
+
=== Gem Installation Notes - Linux
|
105
|
+
|
106
|
+
* The wxRuby gems for Linux are intended to work with your system's
|
107
|
+
existing packages and libraries. Therefore, you should install the
|
108
|
+
wxwidgets-2.8 package(s) for your system, eg libwx-2.8
|
109
|
+
|
110
|
+
* The gems are built on recent versions of Ubuntu; due to the wide
|
111
|
+
variation between the configuration of different distros, they may not
|
112
|
+
work correctly with other distributions and versions. If you
|
113
|
+
experience errors after installing the gem, you will need to compile
|
114
|
+
your own version of wxRuby.
|
115
|
+
|
116
|
+
* On some systems libselinux1-related shutdown crashs are reported with
|
117
|
+
wxRuby. On Ubuntu Hardy, this workaround fixed it:
|
118
|
+
http://www.libavg.de/wiki/index.php/Libavg_on_Ubuntu#8.04_known_issue
|
119
|
+
|
120
|
+
= Compiling wxRuby from Source
|
121
|
+
|
122
|
+
The remainder of this document covers compiling ruby from source.
|
123
|
+
|
124
|
+
Compiling wxRuby is recommended if you wish to use the latest
|
125
|
+
development version, or if you want to work with a specific
|
126
|
+
configuration of wxWidgets - for example, that provided by a Linux
|
127
|
+
distro. You may also need to compile wxRuby if a binary gem is not
|
128
|
+
available for your platform.
|
129
|
+
|
130
|
+
== Compilation prerequisites
|
131
|
+
|
132
|
+
* A C++ compiler: MSVC or MingW for Windows; gcc (g++) for Linux and OS X
|
133
|
+
* A recent version of SWIG, especially for Ruby 1.9.
|
134
|
+
* rake
|
135
|
+
* A compiled wxWidgets library, either built yourself or installed from
|
136
|
+
via a package manager
|
137
|
+
|
138
|
+
wxWidgets has a huge range of compile-time options, and wxRuby tries to
|
139
|
+
support as many of these as possible. In particular, both debug and
|
140
|
+
release builds are supported; a debug build is recommended if you're
|
141
|
+
interested in working on wxRuby. On windows, only static builds are
|
142
|
+
supported; on Linux and OS X, either statically or dynamically linked
|
143
|
+
libraries can be used.
|
144
|
+
|
145
|
+
wxRuby will skip several optional features if they are not supported by
|
146
|
+
your wxWidgets library; these include StyledTextCtrl, GraphicsContext
|
147
|
+
and OpenGL classes.
|
148
|
+
|
149
|
+
== Obtaining wxRuby source code
|
150
|
+
|
151
|
+
Tarballs containing the wxRuby source for released versions can be
|
152
|
+
downloaded from the wxRuby Rubyforge pages:
|
153
|
+
http://rubyforge.org/frs/?group_id=35
|
154
|
+
|
155
|
+
If you wish to use the latest development code, it's hosted in
|
156
|
+
Subversion at rubyforge.org. Note that this code may be incomplete or
|
157
|
+
buggy. To check it out do
|
158
|
+
|
159
|
+
svn co svn://rubyforge.org/var/svn/wxruby/trunk/wxruby2
|
160
|
+
|
161
|
+
== Setting build options
|
162
|
+
|
163
|
+
If you're compiling on Windows, you *must* set an environment variable
|
164
|
+
to indicate where the WxWidgets libraries and header files can be found:
|
165
|
+
|
166
|
+
set WXWIN=C:/path/to/wxMSW-2.8.9
|
167
|
+
|
168
|
+
The path should be the top-level directory of the unpacked wxWidgets
|
169
|
+
tarball; it's recommended that the path does not contain spaces.
|
170
|
+
|
171
|
+
If you have multiple parallel versions of wxWidgets installed, you may
|
172
|
+
influence which build is selected by setting or unsetting the
|
173
|
+
environment variables WXRUBY_DEBUG, WXRUBY_RELEASE, WXRUBY_STATIC and
|
174
|
+
WXRUBY_DYNAMIC. eg
|
175
|
+
|
176
|
+
export WXRUBY_DEBUG=1
|
177
|
+
|
178
|
+
Forces wxRuby to be built against a -debug version of wxWidgets.
|
179
|
+
|
180
|
+
Lastly, you may specifically exclude certain classes; this is most often
|
181
|
+
useful if a particular class is causing problems:
|
182
|
+
|
183
|
+
export WXRUBY_EXCLUDE=ThisClass,ThatClass
|
184
|
+
|
185
|
+
== Running the compile task
|
186
|
+
|
187
|
+
From the top-level directory of the unpacked or downloaded wxRuby
|
188
|
+
directory, just start the rake build with the command:
|
189
|
+
|
190
|
+
rake
|
191
|
+
|
192
|
+
There is no ./configure step, nor do you need to run ruby
|
193
|
+
extconf.rb. wxRuby has approaching 300 classes to generate, compile and
|
194
|
+
link, so the process may take some time.
|
195
|
+
|
196
|
+
== Using a compiled library
|
197
|
+
|
198
|
+
To run a wxRuby program using the newly compiled library, you can run
|
199
|
+
ruby with the -I flag pointing to the lib directory. For example, a
|
200
|
+
quick test of a newly compiled library might be:
|
201
|
+
|
202
|
+
ruby -Ilib samples/minimal/minimal.rb
|
203
|
+
|
204
|
+
== Installing a compiled library
|
205
|
+
|
206
|
+
Rubygems has emerged as the standard for managing user ruby libraries,
|
207
|
+
so you may wish to create a gem from your compiled code and install
|
208
|
+
it. To create a gem, do:
|
209
|
+
|
210
|
+
rake gem
|
211
|
+
|
212
|
+
This will create a gem file, which you can install as above.
|
213
|
+
|
214
|
+
If you do not wish to use Rubygems, you can also do
|
215
|
+
|
216
|
+
rake install
|
217
|
+
|
218
|
+
This will install wxRuby into your site_ruby directories. As with gem
|
219
|
+
commands, you may need to be root do this. Note that as Rubygems has
|
220
|
+
become the standard installation method for Ruby libraries, the
|
221
|
+
'install' task is no longer regularly maintained and tested.
|
222
|
+
|
223
|
+
= Porting to other platforms
|
224
|
+
|
225
|
+
The instructions above cover all the platforms that are in current use
|
226
|
+
for wxRuby. It should however be possible to use wxRuby on any platform
|
227
|
+
supported by wxWidgets and Ruby:
|
228
|
+
|
229
|
+
http://wiki.wxwidgets.org/Supported_Platforms
|
230
|
+
|
231
|
+
Platform-dependent rakefiles are used to set up compiler-specific
|
232
|
+
settings. The following platforms are currently fully supported:
|
233
|
+
|
234
|
+
Mac OSX (gcc): rakemacosx.rb
|
235
|
+
Linux (GTK2 + gcc): rakelinux.rb
|
236
|
+
Windows (shared): rakewindows.rb
|
237
|
+
Windows (MSVC): rakemswin.rb
|
238
|
+
Windows (MingW): rakemingw.rb
|
239
|
+
|
240
|
+
For other platforms, you will need to create or edit the appropriate
|
241
|
+
platform-dependent rake file if your system is not yet supported, or if
|
242
|
+
it is unusual. These files are found in the rake subdirectory, for
|
243
|
+
example:
|
244
|
+
|
245
|
+
NetBSD: rakenetbsd.rb
|
246
|
+
|
247
|
+
The existing rake files should provide a starting point. When editing a
|
248
|
+
platform-dependent rakefile, you might merely need to set one or more of
|
249
|
+
the following variables:
|
250
|
+
|
251
|
+
$extra_cppflags
|
252
|
+
$extra_ldflags
|
253
|
+
$extra_objs
|
254
|
+
$extra_libs
|