fxruby 1.6.13-mswin32 → 1.6.14-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/doc/apes02.html +2 -2
- data/doc/apes03.html +1 -1
- data/doc/book.html +1 -1
- data/doc/build.html +16 -17
- data/doc/changes.html +40 -28
- data/doc/differences.html +9 -9
- data/doc/gems.html +6 -6
- data/doc/implementation.html +1 -1
- data/doc/infosources.html +3 -3
- data/doc/library.html +5 -5
- data/doc/opengl.html +5 -5
- data/doc/pt02.html +1 -1
- data/doc/scintilla.html +4 -4
- data/doc/subversion.html +1 -1
- data/examples/babelfish.rb +1 -1
- data/examples/custom_table_item.rb +170 -0
- data/examples/dilbert.rb +6 -7
- data/examples/table.rb +0 -5
- data/ext/fox16/fox16.so +0 -0
- data/lib/fox16/kwargs.rb +11 -0
- data/lib/fox16/version.rb +1 -1
- data/rdoc-sources/FXImage.rb +12 -6
- data/rdoc-sources/FXToggleButton.rb +1 -0
- data/tests/output.ps +166 -0
- data/tests/stress1.rb +3 -5
- data/web/community.html +94 -0
- data/web/documentation.html +100 -0
- data/web/downloads.html +114 -93
- data/web/index.html +96 -0
- metadata +7 -12
- data/index.html +0 -14
- data/web/art/fxrubylogo.png +0 -0
- data/web/art/fxrubylogo_small.png +0 -0
- data/web/art/line.gif +0 -0
- data/web/art/oul_grey.gif +0 -0
- data/web/art/our.gif +0 -0
- data/web/home.html +0 -113
- data/web/menu.html +0 -50
- data/web/styles.css +0 -167
- data/web/top.html +0 -15
data/doc/apes02.html
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Object Life Cycles and Garbage Collection</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="implementation.html" title="Appendix E. Implementation"><link rel="prev" href="implementation.html" title="Appendix E. Implementation"><link rel="next" href="apes03.html" title="Virtual Functions"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Object Life Cycles and Garbage Collection</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="implementation.html">Prev</a> </td><th width="60%" align="center">Appendix E. Implementation</th><td width="20%" align="right"> <a accesskey="n" href="apes03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
3
|
+
<title>Object Life Cycles and Garbage Collection</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="implementation.html" title="Appendix E. Implementation"><link rel="prev" href="implementation.html" title="Appendix E. Implementation"><link rel="next" href="apes03.html" title="Virtual Functions"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Object Life Cycles and Garbage Collection</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="implementation.html">Prev</a> </td><th width="60%" align="center">Appendix E. Implementation</th><td width="20%" align="right"> <a accesskey="n" href="apes03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5530"></a>Object Life Cycles and Garbage Collection</h2></div></div></div><p>One of the more difficult issues to deal with was understanding
|
4
4
|
the "life cycle" of FOX objects (that is, the actual C++ objects) and
|
5
5
|
their relationship to the associated Ruby instances. Understanding this
|
6
6
|
relationship is critical when dealing with Ruby's garbage collector,
|
@@ -18,4 +18,4 @@ myButton = FXButton.new(parentWin, "Hello, World!", myIcon)</pre><p>It's importa
|
|
18
18
|
returned from most class instance methods; they are references to already-
|
19
19
|
existing objects. For example, <code class="methodname">FXStatusBar#statusline
|
20
20
|
</code> returns a reference to the status bar's enclosed status line
|
21
|
-
instance.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="
|
21
|
+
instance.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e5549"></a>GL Objects</h3></div></div></div><p>A C++ <code class="classname">FXGLGroup</code> object owns all of the <code class="classname">FXGLObject</code> objects it "contains". In other words, when that <code class="classname">FXGLGroup</code> object is destroyed, it will also destroy all of the <code class="classname">FXGLObject</code> objects for which it holds pointers.</p><p>In order to keep track of <span class="emphasis"><em>which</em></span> GL objects have been added to an <code class="classname">FXGLGroup</code>, all of the FXRuby C++ classes derived from <code class="classname">FXGLObject</code> have a boolean member variable <em class="structfield"><code>owned</code></em> that indicates whether this object is "owned" or not. Until an <code class="classname">FXGLObject</code> object is added to a group, this member variable should stay false.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="implementation.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="implementation.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="apes03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix E. Implementation </td><td width="20%" align="center"><a accesskey="h" href="book.html">Home</a></td><td width="40%" align="right" valign="top"> Virtual Functions</td></tr></table></div></body></html>
|
data/doc/apes03.html
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Virtual Functions</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="implementation.html" title="Appendix E. Implementation"><link rel="prev" href="apes02.html" title="Object Life Cycles and Garbage Collection"><link rel="next" href="subversion.html" title="Appendix F. Getting the Sources from Subversion"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Virtual Functions</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apes02.html">Prev</a> </td><th width="60%" align="center">Appendix E. Implementation</th><td width="20%" align="right"> <a accesskey="n" href="subversion.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
3
|
+
<title>Virtual Functions</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="implementation.html" title="Appendix E. Implementation"><link rel="prev" href="apes02.html" title="Object Life Cycles and Garbage Collection"><link rel="next" href="subversion.html" title="Appendix F. Getting the Sources from Subversion"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Virtual Functions</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apes02.html">Prev</a> </td><th width="60%" align="center">Appendix E. Implementation</th><td width="20%" align="right"> <a accesskey="n" href="subversion.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5583"></a>Virtual Functions</h2></div></div></div><p>
|
4
4
|
One of the design requirements for FXRuby was to ensure that any
|
5
5
|
virtual function call made on a FOX object (from the C++ library
|
6
6
|
layer) is routed to the proper Ruby instance method, even if that
|
data/doc/book.html
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Developing Graphical User Interfaces with FXRuby</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="next" href="pt01.html" title="Part I. The Basics"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Developing Graphical User Interfaces with FXRuby</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="pt01.html">Next</a></td></tr></table><hr></div><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="book"></a>Developing Graphical User Interfaces with FXRuby</h1></div><div><h2 class="subtitle">Covers FXRuby Version 1.6</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Lyle</span> <span class="surname">Johnson</span></h3></div></div><div><p class="copyright">Copyright © 2006 J. Lyle Johnson</p></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="part"><a href="pt01.html">I. The Basics</a></span></dt><dd><dl><dt><span class="preface"><a href="goals.html">History and Goals</a></span></dt><dt><span class="chapter"><a href="build.html">1. Building from Source Code</a></span></dt><dt><span class="chapter"><a href="gems.html">2. Installing from Gems</a></span></dt><dt><span class="chapter"><a href="tutorial1.html">3. Hello, World!</a></span></dt><dd><dl><dt><span class="section"><a href="tutorial1.html#d0e614">First Things First</a></span></dt><dt><span class="section"><a href="ch03s02.html">Better living through buttons</a></span></dt><dt><span class="section"><a href="ch03s03.html">Messages</a></span></dt><dt><span class="section"><a href="ch03s04.html">Adding a tool tip</a></span></dt><dt><span class="section"><a href="ch03s05.html">Adding an icon</a></span></dt></dl></dd><dt><span class="chapter"><a href="clipboardtut.html">4. Working With the Clipboard</a></span></dt><dd><dl><dt><span class="section"><a href="clipboardtut.html#d0e1003">Basic Application</a></span></dt><dt><span class="section"><a href="ch04s02.html">Acquiring the Clipboard</a></span></dt><dt><span class="section"><a href="ch04s03.html">Sending Data to the Clipboard</a></span></dt><dt><span class="section"><a href="ch04s04.html">Pasting Data from the Clipboard</a></span></dt></dl></dd><dt><span class="chapter"><a href="dragdroptut.html">5. Drag and Drop</a></span></dt><dd><dl><dt><span class="section"><a href="dragdroptut.html#d0e1218">Drop Sites</a></span></dt><dt><span class="section"><a href="ch05s02.html">Drag Sources</a></span></dt><dt><span class="section"><a href="ch05s03.html">Putting It All Together</a></span></dt></dl></dd><dt><span class="chapter"><a href="unicode.html">6. Unicode and FXRuby</a></span></dt><dd><dl><dt><span class="section"><a href="unicode.html#d0e1628">Basic Application</a></span></dt></dl></dd><dt><span class="chapter"><a href="examples.html">7. Examples</a></span></dt><dt><span class="chapter"><a href="events.html">8. FXRuby's Message-Target System</a></span></dt><dt><span class="chapter"><a href="infosources.html">9. Other Sources of Information</a></span></dt><dt><span class="chapter"><a href="changes.html">10. Change History</a></span></dt></dl></dd><dt><span class="part"><a href="pt02.html">II. Appendices</a></span></dt><dd><dl><dt><span class="appendix"><a href="opengl.html">A. Using OpenGL with FXRuby</a></span></dt><dt><span class="appendix"><a href="scintilla.html">B. Using Scintilla with FXRuby</a></span></dt><dt><span class="appendix"><a href="differences.html">C. Differences between FOX and FXRuby</a></span></dt><dt><span class="appendix"><a href="library.html">D. The FXRuby Standard Library</a></span></dt><dt><span class="appendix"><a href="implementation.html">E. Implementation</a></span></dt><dd><dl><dt><span class="section"><a href="implementation.html#
|
3
|
+
<title>Developing Graphical User Interfaces with FXRuby</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="next" href="pt01.html" title="Part I. The Basics"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Developing Graphical User Interfaces with FXRuby</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="pt01.html">Next</a></td></tr></table><hr></div><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="book"></a>Developing Graphical User Interfaces with FXRuby</h1></div><div><h2 class="subtitle">Covers FXRuby Version 1.6</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Lyle</span> <span class="surname">Johnson</span></h3></div></div><div><p class="copyright">Copyright © 2006 J. Lyle Johnson</p></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="part"><a href="pt01.html">I. The Basics</a></span></dt><dd><dl><dt><span class="preface"><a href="goals.html">History and Goals</a></span></dt><dt><span class="chapter"><a href="build.html">1. Building from Source Code</a></span></dt><dt><span class="chapter"><a href="gems.html">2. Installing from Gems</a></span></dt><dt><span class="chapter"><a href="tutorial1.html">3. Hello, World!</a></span></dt><dd><dl><dt><span class="section"><a href="tutorial1.html#d0e614">First Things First</a></span></dt><dt><span class="section"><a href="ch03s02.html">Better living through buttons</a></span></dt><dt><span class="section"><a href="ch03s03.html">Messages</a></span></dt><dt><span class="section"><a href="ch03s04.html">Adding a tool tip</a></span></dt><dt><span class="section"><a href="ch03s05.html">Adding an icon</a></span></dt></dl></dd><dt><span class="chapter"><a href="clipboardtut.html">4. Working With the Clipboard</a></span></dt><dd><dl><dt><span class="section"><a href="clipboardtut.html#d0e1003">Basic Application</a></span></dt><dt><span class="section"><a href="ch04s02.html">Acquiring the Clipboard</a></span></dt><dt><span class="section"><a href="ch04s03.html">Sending Data to the Clipboard</a></span></dt><dt><span class="section"><a href="ch04s04.html">Pasting Data from the Clipboard</a></span></dt></dl></dd><dt><span class="chapter"><a href="dragdroptut.html">5. Drag and Drop</a></span></dt><dd><dl><dt><span class="section"><a href="dragdroptut.html#d0e1218">Drop Sites</a></span></dt><dt><span class="section"><a href="ch05s02.html">Drag Sources</a></span></dt><dt><span class="section"><a href="ch05s03.html">Putting It All Together</a></span></dt></dl></dd><dt><span class="chapter"><a href="unicode.html">6. Unicode and FXRuby</a></span></dt><dd><dl><dt><span class="section"><a href="unicode.html#d0e1628">Basic Application</a></span></dt></dl></dd><dt><span class="chapter"><a href="examples.html">7. Examples</a></span></dt><dt><span class="chapter"><a href="events.html">8. FXRuby's Message-Target System</a></span></dt><dt><span class="chapter"><a href="infosources.html">9. Other Sources of Information</a></span></dt><dt><span class="chapter"><a href="changes.html">10. Change History</a></span></dt></dl></dd><dt><span class="part"><a href="pt02.html">II. Appendices</a></span></dt><dd><dl><dt><span class="appendix"><a href="opengl.html">A. Using OpenGL with FXRuby</a></span></dt><dt><span class="appendix"><a href="scintilla.html">B. Using Scintilla with FXRuby</a></span></dt><dt><span class="appendix"><a href="differences.html">C. Differences between FOX and FXRuby</a></span></dt><dt><span class="appendix"><a href="library.html">D. The FXRuby Standard Library</a></span></dt><dt><span class="appendix"><a href="implementation.html">E. Implementation</a></span></dt><dd><dl><dt><span class="section"><a href="implementation.html#d0e5511">Code Generation</a></span></dt><dt><span class="section"><a href="apes02.html">Object Life Cycles and Garbage Collection</a></span></dt><dd><dl><dt><span class="section"><a href="apes02.html#d0e5549">GL Objects</a></span></dt></dl></dd><dt><span class="section"><a href="apes03.html">Virtual Functions</a></span></dt></dl></dd><dt><span class="appendix"><a href="subversion.html">F. Getting the Sources from Subversion</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="pt01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"> </td><td width="40%" align="right" valign="top"> Part I. The Basics</td></tr></table></div></body></html>
|
data/doc/build.html
CHANGED
@@ -1,22 +1,21 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Chapter 1. Building from Source Code</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="pt01.html" title="Part I. The Basics"><link rel="prev" href="goals.html" title="History and Goals"><link rel="next" href="gems.html" title="Chapter 2. Installing from Gems"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 1. Building from Source Code</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="goals.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="gems.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="build"></a>Chapter 1. Building from Source Code</h2></div></div></div><p>
|
3
|
+
<title>Chapter 1. Building from Source Code</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="pt01.html" title="Part I. The Basics"><link rel="prev" href="goals.html" title="History and Goals"><link rel="next" href="gems.html" title="Chapter 2. Installing from Gems"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 1. Building from Source Code</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="goals.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="gems.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="build"></a>Chapter 1. Building from Source Code</h2></div></div></div><p>This chapter provides instructions for building and installing FXRuby
|
4
|
+
directly from source, and not using some more direct means (such as
|
5
|
+
installing a gem, or via some package manager).</p><div class="itemizedlist"><ul type="disc"><li><p>If you're planning to use FXRuby on Windows, with the standard
|
4
6
|
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyinstaller.rubyforge.org" target="_top">Ruby Installer for
|
5
7
|
Windows</a>, you may wish to just download the pre-compiled binaries
|
6
8
|
from the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/projects/fxruby" target="_top">RubyForge
|
7
|
-
project page</a> for FXRuby.</p></li><li
|
8
|
-
|
9
|
-
page</a> from the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fox-toolkit.net" target="_top">FOX
|
10
|
-
Community Wiki</a>, in addition to the standard build instructions
|
11
|
-
listed below.</p></li></ul></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e109"></a>Building From Source on Unix/Linux</h2></div></div></div><p>These instructions assume that you've already downloaded, compiled
|
9
|
+
project page</a> for FXRuby.</p></li><li><p>If you're already using the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.macports.org/" target="_top">MacPorts</a> version of ruby, you may
|
10
|
+
wish to just install the <code class="filename">rb-fxruby</code> port.</p></li></ul></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e109"></a>Building From Source on Unix/Linux</h2></div></div></div><p>These instructions assume that you've already downloaded, compiled
|
12
11
|
and installed FOX. Next, you'll need to download the FXRuby source code
|
13
|
-
tarball and unpack it by typing:</p><pre class="screen">$ <span><strong class="command">tar xzf FXRuby-1.6.
|
12
|
+
tarball and unpack it by typing:</p><pre class="screen">$ <span><strong class="command">tar xzf FXRuby-1.6.13.tar.gz</strong></span></pre><p>This will create a new directory called <code class="filename">FXRuby-1.6.13</code>. Change to the top-level
|
14
13
|
directory and configure the build by typing:</p><pre class="screen">$ <span><strong class="command">ruby install.rb config</strong></span></pre><p>By default, the <code class="filename">install.rb</code> script will look for
|
15
14
|
the FOX include files and library in the standard <code class="filename">/usr/local/include/fox-1.6</code> and <code class="filename">/usr/local/lib</code> directories, respectively. You
|
16
15
|
can override these locations by passing a few additional arguments to
|
17
16
|
<code class="filename">install.rb</code> during this step, e.g.</p><pre class="screen">$ <span><strong class="command">ruby install.rb config -- \
|
18
|
-
--with-fox-include=/home/lyle/fox-1.6.
|
19
|
-
--with-fox-lib=/home/lyle/fox-1.6.
|
17
|
+
--with-fox-include=/home/lyle/fox-1.6.32/include \
|
18
|
+
--with-fox-lib=/home/lyle/fox-1.6.32/src/.libs</strong></span></pre><p>Once the build has been configured, you can start the build by
|
20
19
|
typing:</p><pre class="screen">$ <span><strong class="command">ruby install.rb setup</strong></span></pre><p>It will take quite awhile to build FXRuby, even on a fast machine,
|
21
20
|
so this might be a good time to take a coffee break. If you run into
|
22
21
|
problems during the compilation, please check the <a href="build.html#tragedies" title="Things That Can Go Wrong">list of things that can go wrong</a> for
|
@@ -39,10 +38,10 @@ type 'nmake' to make ruby for mswin32.
|
|
39
38
|
C:\ruby-1.8.6><span><strong class="command">nmake</strong></span></pre><p>After the compilation finished, you installed Ruby somewhere by
|
40
39
|
typing, e.g.,</p><pre class="screen">C:\ruby-1.8.6><span><strong class="command">nmake DESTDIR=C:\ruby install</strong></span></pre><p>Similarly, I'm assuming that you built the FOX library using the
|
41
40
|
Developer Studio project files distributed with the standard FOX source
|
42
|
-
code distribution.</p><p>Now you can configure the FXRuby build by typing:</p><pre class="screen">C:\FXRuby-1.6.
|
43
|
-
--with-fox-include=C:\fox-1.6.
|
44
|
-
--with-fox-lib=C:\fox-1.6.
|
45
|
-
typing:</p><pre class="screen">C:\FXRuby-1.6.
|
41
|
+
code distribution.</p><p>Now you can configure the FXRuby build by typing:</p><pre class="screen">C:\FXRuby-1.6.13><span><strong class="command">ruby install.rb config --make-prog=nmake -- \
|
42
|
+
--with-fox-include=C:\fox-1.6.32\include \
|
43
|
+
--with-fox-lib=C:\fox-1.6.32\lib</strong></span></pre><p>Once the build has been configured, you can start the build by
|
44
|
+
typing:</p><pre class="screen">C:\FXRuby-1.6.13> <span><strong class="command">ruby install.rb setup</strong></span></pre><p>It will take quite awhile to build FXRuby, even on a fast machine,
|
46
45
|
so this might be a good time to take a coffee break. Because Visual C++ is
|
47
46
|
such a strict compiler (usually a good thing), you will probably run into
|
48
47
|
a few problems with non-ANSI declarations in the Ruby header files. If you
|
@@ -50,8 +49,8 @@ C:\ruby-1.8.6><span><strong class="command">nmake</strong></span></pre><p>Aft
|
|
50
49
|
for a list of things that could go wrong, and workarounds for those
|
51
50
|
problems. None of them are showstoppers and none require you to restart
|
52
51
|
the compile from scratch (just type <span><strong class="command">ruby install.rb
|
53
|
-
setup</strong></span> to pick up where you left off).</p><p>Once it's finished compiling, install FXRuby by typing:</p><pre class="screen">C:\FXRuby-1.6.
|
54
|
-
probably fire up <code class="filename">irb</code> and try to import FXRuby:</p><pre class="screen">C:\FXRuby-1.6.
|
52
|
+
setup</strong></span> to pick up where you left off).</p><p>Once it's finished compiling, install FXRuby by typing:</p><pre class="screen">C:\FXRuby-1.6.13> <span><strong class="command">ruby install.rb install</strong></span></pre><p>As a quick sanity check, to make sure that all is well, you should
|
53
|
+
probably fire up <code class="filename">irb</code> and try to import FXRuby:</p><pre class="screen">C:\FXRuby-1.6.13> <span><strong class="command">irb</strong></span>
|
55
54
|
irb(main):001:0> <strong class="userinput"><code>require 'fox16'</code></strong>
|
56
55
|
true
|
57
56
|
irb(main):002:0></pre><p>If the import failed (usually with a message along the lines of
|
@@ -114,8 +113,8 @@ LoadError: libFOX-1.6.so: cannot open shared object file: No such file or direct
|
|
114
113
|
from (irb):1
|
115
114
|
</pre><p>One workaround for this problem is to modify the
|
116
115
|
<code class="constant">LD_LIBRARY_PATH</code> environment variable to include the
|
117
|
-
directory where <code class="filename">libFOX-1.6.so</code> is installed. For
|
118
|
-
if <code class="filename">libFOX-1.6.so</code> is installed in <code class="filename">/usr/local/lib</code>, try setting:</p><pre class="screen">$ <span><strong class="command">export LD_LIBRARY_PATH=/usr/local/lib</strong></span>
|
116
|
+
directory where <code class="filename">libFOX-1.6.so</code> is installed. For
|
117
|
+
example, if <code class="filename">libFOX-1.6.so</code> is installed in <code class="filename">/usr/local/lib</code>, try setting:</p><pre class="screen">$ <span><strong class="command">export LD_LIBRARY_PATH=/usr/local/lib</strong></span>
|
119
118
|
$ <span><strong class="command">irb</strong></span>
|
120
119
|
irb(main):001:0> <strong class="userinput"><code>require 'fox16'</code></strong>
|
121
120
|
</pre><p>If this works, you can of course permanently add the
|
data/doc/changes.html
CHANGED
@@ -1,10 +1,22 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Chapter 10. Change History</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="pt01.html" title="Part I. The Basics"><link rel="prev" href="infosources.html" title="Chapter 9. Other Sources of Information"><link rel="next" href="pt02.html" title="Part II. Appendices"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 10. Change History</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="infosources.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="pt02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="changes"></a>Chapter 10. Change History</h2></div></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2394"></a>Changes For Version 1.6.
|
3
|
+
<title>Chapter 10. Change History</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="pt01.html" title="Part I. The Basics"><link rel="prev" href="infosources.html" title="Chapter 9. Other Sources of Information"><link rel="next" href="pt02.html" title="Part II. Appendices"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 10. Change History</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="infosources.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="pt02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="changes"></a>Chapter 10. Change History</h2></div></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2394"></a>Changes For Version 1.6.14 (March 29, 2008)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Updated the documentation for the <code class="classname">FXImage</code>
|
4
|
+
class to indicate which methods call <code class="methodname">render</code>
|
5
|
+
after they're finished, and which ones do not.</p></li><li style="list-style-type: disc"><p>Corrected a little typo in the
|
6
|
+
<code class="filename">gembrowser.rb</code> example program.</p></li><li style="list-style-type: disc"><p>Updated the <code class="filename">dilbert.rb</code> example program to
|
7
|
+
use the more popular-and-likely-to-be-installed <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://code.whytheluckystiff.net/hpricot/" target="_top">Hpricot</a> HTML
|
8
|
+
parser library instead of <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.crummy.com/software/RubyfulSoup/" target="_top">Rubyful
|
9
|
+
Soup</a>.</p></li><li style="list-style-type: disc"><p>Re-added the documentation for the
|
10
|
+
<code class="constant">TOGGLEBUTTON_KEEPSTATE</code> option, which had
|
11
|
+
mysteriously disappeared (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=2286&group_id=300&atid=1223" target="_top">RubyForge
|
12
|
+
Bug #2286</a>).</p></li><li style="list-style-type: disc"><p>Made a number of minor fixes to support building FXRuby against
|
13
|
+
Ruby 1.9.</p></li><li style="list-style-type: disc"><p>Added a binary gem for OS X. This works with the Ruby that's
|
14
|
+
included with OS X (Leopard).</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.32 and
|
15
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2443"></a>Changes For Version 1.6.13 (November 9, 2007)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Calls to the <code class="methodname">extractText</code> method for the
|
4
16
|
<code class="classname">FXTable</code> class were causing various
|
5
17
|
memory-related errors on certain platforms (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=15444group_id=300&atid=1223" target="_top">RubyForge
|
6
18
|
Bug #15444</a>). This problem has been fixed.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.28 and
|
7
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
19
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2462"></a>Changes For Version 1.6.12 (October 19, 2007)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The API documentation for <code class="classname">FXMDIClient</code>
|
8
20
|
referred to the non-existent instance method
|
9
21
|
<code class="methodname">activeChild=</code> (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=10259&group_id=300&atid=1223" target="_top">RubyForge
|
10
22
|
Bug #10259</a>). This method has been added.</p></li><li style="list-style-type: disc"><p>The API documentation for <code class="classname">FXMDIClient</code>
|
@@ -27,7 +39,7 @@
|
|
27
39
|
<code class="methodname">findText</code> method for the
|
28
40
|
<code class="classname">FXText</code> class, when used with the
|
29
41
|
<code class="constant">SEARCH_REGEX</code> option.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.28 and
|
30
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
42
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2556"></a>Changes For Version 1.6.11 (April 18, 2007)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Added <code class="methodname">editable</code> as an alias for
|
31
43
|
<code class="methodname">FXTextField#editable?</code>.</p></li><li style="list-style-type: disc"><p>Added <code class="methodname">each_child_recursive</code> instance
|
32
44
|
method for the <code class="classname">FXWindow</code> class. This method
|
33
45
|
performs a depth-first traversal of the widget tree starting at the
|
@@ -49,10 +61,10 @@
|
|
49
61
|
Bug #10181</a>). Please note that building FXRuby against the Ruby
|
50
62
|
1.9 code base is still officially unsupported; however, I'm glad to
|
51
63
|
accept patches that will help make this possible.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.25 and
|
52
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
64
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2641"></a>Changes For Version 1.6.9 (April 8, 2007)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>A bug was discovered in the keyword arguments library support
|
53
65
|
for the <code class="classname">FXMenuBar</code> class (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=9927&group_id=300&atid=1223" target="_top">RubyForge
|
54
66
|
Bug #9927</a>). This problem has been fixed.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.25 and
|
55
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
67
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2657"></a>Changes For Version 1.6.8 (April 5, 2007)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Due to an internal bookkeeping error, applications like the
|
56
68
|
<code class="filename">glviewer.rb</code> example program which create multiple
|
57
69
|
<code class="classname">FXGLViewer</code> instances could cause an assertion
|
58
70
|
to fail. When this assertion fails on Windows, the program simply
|
@@ -60,8 +72,8 @@
|
|
60
72
|
Bug #9775</a>). This problem has been fixed.</p></li><li style="list-style-type: disc"><p>The keyword arguments library, introduced in version 1.6.5, is
|
61
73
|
now included automatically when you load FXRuby; it is no longer
|
62
74
|
necessary to explicitly require it.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.25 and
|
63
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
64
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
75
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2679"></a>Changes For Version 1.6.7 (March 31, 2007)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.25 and
|
76
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2686"></a>Changes For Version 1.6.6 (February 10, 2007)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Somewhere along the way, the RAA browser example program got
|
65
77
|
broken due to changes in the SOAP interface to RAA (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=7977&group_id=300&atid=1223" target="_top">RubyForge
|
66
78
|
Bug #7977</a>). This has been fixed.</p></li><li style="list-style-type: disc"><p>Some debugging code that was meant to detect errors in FXRuby
|
67
79
|
message data conversion was inadvertently causing some user
|
@@ -95,7 +107,7 @@
|
|
95
107
|
hash, that value will be used for any of the four regular padding
|
96
108
|
values that aren't otherwise specified. See the example programs for,
|
97
109
|
you know, examples.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.20 and
|
98
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
110
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2786"></a>Changes For Version 1.6.5 (January 20, 2007)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Clicking outside of the visible cells for an
|
99
111
|
<code class="classname">FXTable</code> when there was no current selection
|
100
112
|
caused the code to raise an exception (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=5907&group_id=300&atid=1223" target="_top">RubyForge
|
101
113
|
Bug #5907</a>). This problem has been fixed.</p></li><li style="list-style-type: disc"><p>The <code class="methodname">hasTimeout?</code> method for the
|
@@ -115,11 +127,11 @@
|
|
115
127
|
described in the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fxruby.org/doc/differences.html" target="_top">"Differences Between
|
116
128
|
FOX and FXRuby"</a> section of the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fxruby.org/doc/book.html" target="_top">FXRuby User's
|
117
129
|
Guide</a>.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.20 and
|
118
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
130
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2862"></a>Changes For Version 1.6.4 (November 30, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>A change made in Ruby 1.8.5 for cyclic requires led to a problem
|
119
131
|
that caused the Ruby interpreter to emit a large number of warnings
|
120
132
|
(see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/?func=detail&aid=5633&group_id=300&atid=1223" target="_top">RubyForge
|
121
133
|
Bug #5633</a>). This problem has been fixed.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.16 and
|
122
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
134
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e2875"></a>Changes For Version 1.6.3 (October 27, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Widgets of some classes (namely
|
123
135
|
<code class="classname">FXTopWindow</code> and
|
124
136
|
<code class="classname">FXMDIChild</code>) weren't properly sending a
|
125
137
|
<code class="constant">SEL_CLOSE</code> message to their message targets (see
|
@@ -156,7 +168,7 @@
|
|
156
168
|
Bug #6211</a>). This has been fixed.</p></li><li style="list-style-type: disc"><p>The build script was not compatible with changes made in the
|
157
169
|
recently-released FXScintilla 1.71 (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=6313&group_id=300&atid=1223" target="_top">RubyForge
|
158
170
|
Bug #6313</a>). This has been fixed.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.16 and
|
159
|
-
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
171
|
+
FXScintilla version 1.71.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3003"></a>Changes For Version 1.6.2 (September 13, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The <code class="methodname">expandTree()</code> and
|
160
172
|
<code class="methodname">collapseTree()</code> methods for the
|
161
173
|
<code class="classname">FXFoldingList</code> class were incorrectly identified
|
162
174
|
as <code class="methodname">expandFolding()</code> and
|
@@ -170,7 +182,7 @@
|
|
170
182
|
Bug #5591</a>). Now it does.</p></li><li style="list-style-type: disc"><p>The <code class="classname">FXGradientBar</code> class was not supported
|
171
183
|
(see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=5746&group_id=300&atid=1223" target="_top">RubyForge
|
172
184
|
Bug #5746</a>). This has been fixed.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.14 and
|
173
|
-
FXScintilla version 1.67 (from CVS).</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
185
|
+
FXScintilla version 1.67 (from CVS).</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3061"></a>Changes For Version 1.4.7 (September 13, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The <code class="methodname">children</code> instance method for the
|
174
186
|
<code class="classname">FXWindow</code> class always returned an array of
|
175
187
|
<code class="classname">FXWindow</code> instances, even if the actual types
|
176
188
|
should have been instances of subclasses of
|
@@ -191,7 +203,7 @@
|
|
191
203
|
Bug #5591</a>). Now it does.</p></li><li style="list-style-type: disc"><p>The <code class="classname">FXGradientBar</code> class was not supported
|
192
204
|
(see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=5746&group_id=300&atid=1223" target="_top">RubyForge
|
193
205
|
Bug #5746</a>). This has been fixed.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.4.34 and
|
194
|
-
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
206
|
+
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3146"></a>Changes For Version 1.6.1 (July 21, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The message data sent along for the
|
195
207
|
<code class="constant">SEL_INSERTED</code>, <code class="constant">SEL_DELETED</code>
|
196
208
|
and <code class="constant">SEL_REPLACED</code> messages from an a
|
197
209
|
<code class="classname">FXText</code> widget to its target was not being
|
@@ -226,7 +238,7 @@
|
|
226
238
|
the sole means for loading FXRuby. Such programs should instead
|
227
239
|
use:</p><pre class="programlisting">require 'fox16'</pre><p>which will work
|
228
240
|
for either gem based or non-gem based installations.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.8 and
|
229
|
-
FXScintilla version 1.67 (from CVS).</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
241
|
+
FXScintilla version 1.67 (from CVS).</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3243"></a>Changes For Version 1.6.0 (May 29, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>This is the first release of FXRuby compatible with FOX version
|
230
242
|
1.6. One of the most signficant changes for FOX 1.6 has been the
|
231
243
|
addition of Unicode support; all FOX widgets and internal string
|
232
244
|
processing routines are now Unicode aware. For a comprehensive
|
@@ -252,7 +264,7 @@
|
|
252
264
|
Bug #4342</a>). This has been fixed.</p></li><li style="list-style-type: disc"><p>The <code class="filename">dilbert.rb</code> example program was broken
|
253
265
|
due to a change in the Dilbert.com web site structure (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=4597&group_id=300&atid=1223" target="_top">RubyForge
|
254
266
|
Bug #4597</a>). This has been fixed.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.6.5 and
|
255
|
-
FXScintilla version 1.67 (from CVS).</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
267
|
+
FXScintilla version 1.67 (from CVS).</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3337"></a>Changes For Version 1.4.6 (April 26, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>FXRuby would not compile properly on some x86-64 systems (see
|
256
268
|
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=3729&group_id=300&atid=1223" target="_top">RubyForge
|
257
269
|
Bug #3729</a>). This error has been corrected. Thanks to Javier
|
258
270
|
Goizueta for initially reporting this problem, and especially to
|
@@ -278,7 +290,7 @@
|
|
278
290
|
<code class="constant">SEL_COMMAND</code> message type (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=4255&group_id=300&atid=1223" target="_top">RubyForge
|
279
291
|
Bug #4255</a>). This error has been corrected. Thanks to Gerard
|
280
292
|
Menochet for reporting this problem.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.4.29 and
|
281
|
-
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
293
|
+
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3416"></a>Changes For Version 1.4.5 (April 10, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The <code class="classname">FXTextField</code> class was not properly
|
282
294
|
responding to the <code class="constant">ID_INSERT_STRING</code> command (see
|
283
295
|
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=3320&group_id=300&atid=1223" target="_top">RubyForge
|
284
296
|
Bug #3320</a>). This error has been corrected. Thanks to Uwe Hartl
|
@@ -321,7 +333,7 @@
|
|
321
333
|
third argument, but this wasn't working properly (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=4005&group_id=300&atid=1223" target="_top">RubyForge
|
322
334
|
Bug #4005</a>). This error has been corrected. Thanks to Mark
|
323
335
|
Volkman for reporting this problem.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.4.29 and
|
324
|
-
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
336
|
+
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3537"></a>Changes For Version 1.4.4 (January 21, 2006)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The build instructions for Unix platforms had not been updated
|
325
337
|
recently and as such contained some errors (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=3014&group_id=300&atid=1223" target="_top">RubyForge
|
326
338
|
Bug #3014</a>). These errors have been corrected. Thanks to Dave
|
327
339
|
Burns for reporting this problem.</p></li><li style="list-style-type: disc"><p>The <code class="methodname">extendSelection</code> method for the
|
@@ -344,7 +356,7 @@
|
|
344
356
|
RDoc documentation for the <code class="classname">FXTable</code> class. All
|
345
357
|
of these problems have been corrected. Thanks to _blackdog for
|
346
358
|
reporting this problem.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.4.29 and
|
347
|
-
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
359
|
+
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3601"></a>Changes For Version 1.4.3 (November 7, 2005)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The <code class="constant">TOGGLEBUTTON_KEEPSTATE</code> option for the
|
348
360
|
<code class="classname">FXToggleButton</code> class was not documented (see
|
349
361
|
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=2286&group_id=300&atid=1223" target="_top">RubyForge
|
350
362
|
Bug #2286</a>). This oversight has been corrected. Thanks to Tim
|
@@ -379,7 +391,7 @@
|
|
379
391
|
been fixed, and the documentation for
|
380
392
|
<code class="methodname">makePositionVisible</code> has been updated
|
381
393
|
accordingly. Thanks to Ralf Jonas for reporting this problem.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.4.21 and
|
382
|
-
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
394
|
+
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3686"></a>Changes For Version 1.4.2 (August 22, 2005)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Due to a bug in the implementation, the
|
383
395
|
<code class="methodname">checked?</code> method for the
|
384
396
|
<code class="classname">FXCheckButton</code> class always returned
|
385
397
|
<code class="constant">false</code> (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=1852&group_id=300&atid=1223" target="_top">RubyForge
|
@@ -406,7 +418,7 @@
|
|
406
418
|
<code class="classname">FXFileStream</code> class were broken (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=2275&group_id=300&atid=1223" target="_top">RubyForge
|
407
419
|
Bug #2275</a>). This problem has been corrected. Thanks to Gonzalo
|
408
420
|
Garramuno for reporting this problem.</p></li><li style="list-style-type: disc"><p>Merged in all of the fixes for FXRuby 1.2.6.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.4.17 and
|
409
|
-
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
421
|
+
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3777"></a>Changes For Version 1.4.1 (August 20, 2005)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>This is the second release of FXRuby which is compatible with
|
410
422
|
FOX 1.4, and as such should be considered an "unstable" release. For a
|
411
423
|
history of the changes made during the FOX 1.3 and 1.4 development,
|
412
424
|
see the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fox-toolkit.com/news.html" target="_top">News</a>
|
@@ -415,11 +427,11 @@
|
|
415
427
|
feature, and were still looking at <code class="constant">fox12</code>. This
|
416
428
|
has been corrected.</p></li><li style="list-style-type: disc"><p>A number of minor problems were corrected for the Windows build
|
417
429
|
of FXRuby.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.4.17 and
|
418
|
-
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
430
|
+
FXScintilla version 1.63.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3805"></a>Changes For Version 1.4.0 (August 19, 2005)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>This is the first release of FXRuby which is compatible with FOX
|
419
431
|
1.4, and as such should be considered an "unstable" release. For a
|
420
432
|
history of the changes made during the FOX 1.3 and 1.4 development,
|
421
433
|
see the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fox-toolkit.com/news.html" target="_top">News</a>
|
422
|
-
page at the FOX Web site.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
434
|
+
page at the FOX Web site.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3815"></a>Changes For Version 1.2.6 (April 15, 2005)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Some additional problems related to calling the
|
423
435
|
<code class="methodname">setTableSize</code> method for an
|
424
436
|
<code class="classname">FXTable</code> were discovered (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=1597&group_id=300&atid=1223" target="_top">RubyForge
|
425
437
|
Bug #1597</a>). This problem has been corrected. Thanks to Joel
|
@@ -467,7 +479,7 @@
|
|
467
479
|
to be unavailable as well (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=1771&group_id=300&atid=1223" target="_top">RubyForge
|
468
480
|
Bug #1771</a>). This error has been corrected. Thanks to Jannis
|
469
481
|
Pohlmann for reporting this problem.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.2.16 and
|
470
|
-
FXScintilla version 1.62.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
482
|
+
FXScintilla version 1.62.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e3951"></a>Changes For Version 1.2.5 (March 1, 2005)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>The change made for FXRuby version 1.2.4 regarding garbage
|
471
483
|
collection for table items corrected only one of the problems
|
472
484
|
described in <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=1445&group_id=300&atid=1223" target="_top">RubyForge
|
473
485
|
Bug #1445</a>; There was still a problem related to the
|
@@ -497,7 +509,7 @@
|
|
497
509
|
<code class="methodname">selectRange</code> method under the hood (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=1562&group_id=300&atid=1223" target="_top">RubyForge
|
498
510
|
Bug #1562</a>). Thanks to Joel VanderWerf for this
|
499
511
|
suggestion.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.2.13 and
|
500
|
-
FXScintilla version 1.62.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
512
|
+
FXScintilla version 1.62.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4036"></a>Changes For Version 1.2.4 (February 23, 2005)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Due to a change in some of the internal Ruby C APIs, a
|
501
513
|
compile-time error for FXRuby was introduced in some of the Ruby 1.8.2
|
502
514
|
preview releases (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=1039&group_id=300&atid=1223" target="_top">RubyForge
|
503
515
|
Bug #1039</a>). One should not see any compile-time errors when
|
@@ -547,7 +559,7 @@
|
|
547
559
|
<code class="classname">FXTable</code> class (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=1426&group_id=300&atid=1226" target="_top">RubyForge
|
548
560
|
Feature Request #1295</a>). Thanks to Brett Hallett for this
|
549
561
|
suggestion.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.2.13 and
|
550
|
-
FXScintilla version 1.62.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
562
|
+
FXScintilla version 1.62.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4139"></a>Changes For Version 1.2.3 (January 22, 2005)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Since group boxes containing radio buttons no longer enforce the
|
551
563
|
radio behavior of radio buttons (i.e. keeping only one radio button
|
552
564
|
selected at a time), some of the example programs were no longer
|
553
565
|
working as desired (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=751&group_id=300&atid=1223" target="_top">RubyForge
|
@@ -610,7 +622,7 @@
|
|
610
622
|
documented incorrectly (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/tracker/index.php?func=detail&aid=1325&group_id=300&atid=1223" target="_top">RubyForge
|
611
623
|
Bug #1325</a>). These have been corrected. Thanks to Karl El-Koura
|
612
624
|
for reporting this problem.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.2.13 and
|
613
|
-
FXScintilla version 1.62.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
625
|
+
FXScintilla version 1.62.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4311"></a>Changes For Version 1.2.2 (October 1, 2004)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>In order to avoid versioning problems when dealing with a mix of
|
614
626
|
applications based on either FXRuby 1.0 or 1.2, the feature name for
|
615
627
|
FXRuby has been changed from "fox" to "fox12". For most application
|
616
628
|
developers, this means that you will need to modify the source code
|
@@ -618,7 +630,7 @@
|
|
618
630
|
changes should be required for legacy applications targeted at FXRuby
|
619
631
|
1.0.</p></li><li style="list-style-type: disc"><p>Made a number of updates to the documentation, to reflect API
|
620
632
|
changes for FXRuby 1.2.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.2.9 and
|
621
|
-
FXScintilla version 1.61.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
633
|
+
FXScintilla version 1.61.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4328"></a>Changes For Version 1.2a2 (July 10, 2004)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>This is the second "alpha" release of FXRuby 1.2. This release
|
622
634
|
should be compatible with any FOX library version 1.2; it is not
|
623
635
|
compatible with any previous FOX library versions. As this is an alpha
|
624
636
|
release, users should expect a certain amount of instability, bugs,
|
@@ -660,7 +672,7 @@
|
|
660
672
|
or JPEG image support built-in (see <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://sourceforge.net/tracker/index.php?func=detail&aid=986180&group_id=20243&atid=120243" target="_top">SourceForge
|
661
673
|
Bug #986180</a>). This has been fixed. Thanks to Bil Bas for
|
662
674
|
reporting this problem.</p></li><li style="list-style-type: disc"><p>The binary gem for Windows was built with FOX version 1.2.7 and
|
663
|
-
FXScintilla version 1.61.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
675
|
+
FXScintilla version 1.61.</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4437"></a>Changes For Version 1.2a1 (June 28, 2004)</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>This is the first "alpha" release of FXRuby 1.2. This release
|
664
676
|
should be compatible with any FOX library version 1.2; it is not
|
665
677
|
compatible with any previous FOX library versions. As this is an alpha
|
666
678
|
release, users should expect a certain amount of instability, bugs,
|
data/doc/differences.html
CHANGED
@@ -12,14 +12,14 @@
|
|
12
12
|
Similarly, functions that would return an <span class="type">FXString</span> will instead
|
13
13
|
return a Ruby string. For functions that would normally accept a
|
14
14
|
<code class="constant">NULL</code> or empty string argument, just pass
|
15
|
-
<code class="constant">nil</code> or an empty string ("").</p><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
15
|
+
<code class="constant">nil</code> or an empty string ("").</p><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4732"></a>Functions that expect arrays of objects</h2></div></div></div><p>One common pattern in FOX member function argument lists is to
|
16
16
|
expect a pointer to an array of values, followed by an integer indicating
|
17
17
|
the number of values in the array. This of course isn't necessary in Ruby,
|
18
18
|
where <code class="classname">Array</code> objects "know" their lengths. As a
|
19
19
|
result, functions such as
|
20
20
|
<code class="methodname">FXWindow::acquireClipboard()</code>, whose C++
|
21
21
|
declaration looks like this:</p><pre class="programlisting">FXbool acquireClipboard(const FXDragType *types, FXuint numTypes);</pre><p>are called from Ruby code by passing in a single
|
22
|
-
<code class="classname">Array</code> argument, e.g.</p><pre class="programlisting">myWindow.acquireClipboard(typesArray)</pre></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
22
|
+
<code class="classname">Array</code> argument, e.g.</p><pre class="programlisting">myWindow.acquireClipboard(typesArray)</pre></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4752"></a>Functions that return values by reference</h2></div></div></div><p>Many FOX methods take advantage of the C++ language feature of
|
23
23
|
returning values by reference. For example, the
|
24
24
|
<code class="methodname">getCursorPos()</code> member function for class
|
25
25
|
<code class="classname">FXWindow</code> has the declaration:</p><pre class="programlisting">FXint getCursorPos(FXint& x, FXint& y, FXint& buttons) const;</pre><p>which indicates that the function takes references to three integers
|
@@ -65,7 +65,7 @@ if (window->getCursorPosition(x, y, buttons))
|
|
65
65
|
y)</code></td><td>Returns the translated coordinates as an array [x,
|
66
66
|
y]</td></tr><tr><td><code class="methodname">FXWindow#translateCoordinatesTo(window, x,
|
67
67
|
y)</code></td><td>Returns the translated coordinates as an array [x,
|
68
|
-
y]</td></tr></tbody></table></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
68
|
+
y]</td></tr></tbody></table></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5042"></a>Iterators</h2></div></div></div><p>Several classes have been extended with an
|
69
69
|
<code class="methodname">each</code> method to provide Ruby-style iterators.
|
70
70
|
These classes include <code class="classname">FXComboBox</code>,
|
71
71
|
<code class="classname">FXGLGroup</code>, <code class="classname">FXHeader</code>,
|
@@ -83,7 +83,7 @@ if (window->getCursorPosition(x, y, buttons))
|
|
83
83
|
puts "text for this item = #{itemText}"
|
84
84
|
}</pre><p>The following table shows the block parameters for each of these
|
85
85
|
classes' iterators:</p><div class="informaltable"><table border="1"><colgroup><col><col></colgroup><thead><tr><th align="center">Class</th><th align="center">Block Parameters</th></tr></thead><tbody><tr><td><code class="classname">FXComboBox</code></td><td>the item text (a string) and user data</td></tr><tr><td><code class="classname">FXGLGroup</code></td><td>an <code class="classname">FXGLObject</code> instance</td></tr><tr><td><code class="classname">FXHeader</code></td><td>an <code class="classname">FXHeaderItem</code> instance</td></tr><tr><td><code class="classname">FXIconList</code></td><td>an <code class="classname">FXIconItem</code> instance</td></tr><tr><td><code class="classname">FXList</code></td><td>an <code class="classname">FXListItem</code> instance</td></tr><tr><td><code class="classname">FXListBox</code></td><td>the item text (a string), icon (an
|
86
|
-
<code class="classname">FXIcon</code> instance) and user data</td></tr><tr><td><code class="classname">FXTreeItem</code></td><td>an <code class="classname">FXTreeItem</code> instance</td></tr><tr><td><code class="classname">FXTreeList</code></td><td>an <code class="classname">FXTreeItem</code> instance</td></tr><tr><td><code class="classname">FXTreeListBox</code></td><td>an <code class="classname">FXTreeItem</code> instance</td></tr></tbody></table></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
86
|
+
<code class="classname">FXIcon</code> instance) and user data</td></tr><tr><td><code class="classname">FXTreeItem</code></td><td>an <code class="classname">FXTreeItem</code> instance</td></tr><tr><td><code class="classname">FXTreeList</code></td><td>an <code class="classname">FXTreeItem</code> instance</td></tr><tr><td><code class="classname">FXTreeListBox</code></td><td>an <code class="classname">FXTreeItem</code> instance</td></tr></tbody></table></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5186"></a>Attribute Accessors</h2></div></div></div><p>FOX strictly handles access to all object attributes through member
|
87
87
|
functions, e.g. <code class="methodname">setBackgroundColor</code> and
|
88
88
|
<code class="methodname">getBackgroundColor</code> or
|
89
89
|
<code class="methodname">setText</code> and <code class="methodname">getText</code>.
|
@@ -96,7 +96,7 @@ if (window->getCursorPosition(x, y, buttons))
|
|
96
96
|
<code class="methodname">backgroundColor</code>, respectively.</p><p>In many cases these aliases allow you to write more compact and
|
97
97
|
legible code. For example, consider this code snippet:</p><pre class="programlisting">aLabel.setText(aLabel.getText() + " (modified)")</pre><p>Now consider a different code snippet, using the aliased accessor
|
98
98
|
method names:</p><pre class="programlisting">aLabel.text += " (modified)"</pre><p>While these two are functionally equivalent, the latter is a bit
|
99
|
-
easier to read and understand at first glance.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
99
|
+
easier to read and understand at first glance.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5225"></a>Message Passing</h2></div></div></div><p>FOX message maps are implemented as static C++ class members. With
|
100
100
|
FXRuby, you just associate messages with message handlers in the class
|
101
101
|
<code class="methodname">initialize</code> method using the
|
102
102
|
<code class="methodname">FXMAPFUNC()</code>,
|
@@ -121,14 +121,14 @@ if (window->getCursorPosition(x, y, buttons))
|
|
121
121
|
well's <code class="methodname">getRGBA()</code> member function to retrieve its
|
122
122
|
color. Similarly, if you get a <code class="constant">SEL_COMMAND</code> message
|
123
123
|
from a tree list, call its <code class="methodname">getCurrentItem()</code>
|
124
|
-
method to find out which item was selected.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
124
|
+
method to find out which item was selected.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5274"></a>Catching Operating System Signals</h2></div></div></div><p>The <code class="methodname">FXApp#addSignal</code> and
|
125
125
|
<code class="methodname">FXApp#removeSignal</code> methods have been enhanced to
|
126
126
|
accept either a string or integer as their first argument. If it's a
|
127
127
|
string (e.g. "SIGINT" or just "INT") the code will determine the
|
128
128
|
corresponding signal number for you (similar to the standard Ruby
|
129
129
|
library's <code class="methodname">Process.kill</code> module method). For
|
130
130
|
examples of how to use this, see the <code class="filename">datatarget.rb</code> or
|
131
|
-
<code class="filename">imageviewer.rb</code> example programs.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
131
|
+
<code class="filename">imageviewer.rb</code> example programs.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5294"></a>Support for Multithreaded Applications</h2></div></div></div><p>There is some support for multithreaded FXRuby applications, but
|
132
132
|
it's not wonderful. The current implementation does what is also done in
|
133
133
|
Ruby/GTK; it turns over some idle processing time to the Ruby thread
|
134
134
|
scheduler to let other threads do their thing. As I learn more about
|
@@ -145,7 +145,7 @@ if (window->getCursorPosition(x, y, buttons))
|
|
145
145
|
also disable the threads support completely by calling
|
146
146
|
<code class="methodname">FXApp#threadsEnabled=false</code> (and subsequently
|
147
147
|
re-enable it with
|
148
|
-
<code class="methodname">FXApp#threadsEnabled=true</code>).</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
148
|
+
<code class="methodname">FXApp#threadsEnabled=true</code>).</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5319"></a>Keyword-Style Arguments</h2></div></div></div><p>FXRuby 1.6.5 introduced preliminary, experimental support for using
|
149
149
|
keyword-style arguments in FXRuby method calls. The current implementation
|
150
150
|
of this feature only works for class constructors (i.e. the "new" class
|
151
151
|
methods), but the intent is to gradually extend this feature so that it
|
@@ -181,7 +181,7 @@ if (window->getCursorPosition(x, y, buttons))
|
|
181
181
|
arguments scheme (or it's intended to be, at any rate). What that means is
|
182
182
|
that you can immediately start making use of this feature in your existing
|
183
183
|
code, even if you don't have time to update all of the method calls to use
|
184
|
-
keyword arguments.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
184
|
+
keyword arguments.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5360"></a>Debugging Tricks</h2></div></div></div><p>As a debugging tool, you can optionally catch exceptions raised in
|
185
185
|
message handlers. To turn on this feature, call the
|
186
186
|
<code class="methodname">setIgnoreExceptions(true)</code> module method. When
|
187
187
|
this is enabled, any exceptions raised in message handler functions will
|
data/doc/gems.html
CHANGED
@@ -1,18 +1,18 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Chapter 2. Installing from Gems</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="pt01.html" title="Part I. The Basics"><link rel="prev" href="build.html" title="Chapter 1. Building from Source Code"><link rel="next" href="tutorial1.html" title="Chapter 3. Hello, World!"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 2. Installing from Gems</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="build.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial1.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="gems"></a>Chapter 2. Installing from Gems</h2></div></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e430"></a>Introduction</h2></div></div></div><p>
|
4
|
-
distribution method. The code is available both as</p><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>a "source" gem, which contains source code that must be compiled
|
3
|
+
<title>Chapter 2. Installing from Gems</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="pt01.html" title="Part I. The Basics"><link rel="prev" href="build.html" title="Chapter 1. Building from Source Code"><link rel="next" href="tutorial1.html" title="Chapter 3. Hello, World!"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 2. Installing from Gems</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="build.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial1.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="gems"></a>Chapter 2. Installing from Gems</h2></div></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e430"></a>Introduction</h2></div></div></div><p>FXRuby uses <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubygems.rubyforge.org" target="_top">RubyGems</a> as its preferred
|
4
|
+
packaging and distribution method. The code is available both as</p><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>a "source" gem, which contains source code that must be compiled
|
5
5
|
on your computer before it's installed; and,</p></li><li style="list-style-type: disc"><p>a "binary" gem, which contains a precompiled version of the code
|
6
6
|
for a specific operating system (such as Windows).</p></li></ul></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e445"></a>Installing from a Source Gem</h2></div></div></div><p>If you've already downloaded the source gem, you can install it by
|
7
|
-
typing:</p><pre class="screen">$ <span><strong class="command">sudo gem install fxruby-1.6.
|
7
|
+
typing:</p><pre class="screen">$ <span><strong class="command">sudo gem install fxruby-1.6.13.gem</strong></span></pre><p>Note the use of the <span><strong class="command">sudo</strong></span> command to invoke
|
8
8
|
superuser privileges, since you'll typically need superuser privileges to
|
9
9
|
install the library files. By default, the source gem will look for your
|
10
10
|
FOX (and optionally, FXScintilla) installation in a few standard places,
|
11
11
|
such as the <code class="filename">/usr</code>, <code class="filename">/usr/local</code> and
|
12
12
|
<code class="filename">/sw</code> directories. If you've installed those libraries
|
13
13
|
under some other directory (for example, in your home directory) you might
|
14
|
-
need to pass some additional arguments on the command line, e.g.</p><pre class="screen">$ <span><strong class="command">sudo gem install fxruby-1.6.
|
15
|
-
type something like:</p><pre class="screen">C:\> <span><strong class="command">gem install fxruby-1.6.
|
14
|
+
need to pass some additional arguments on the command line, e.g.</p><pre class="screen">$ <span><strong class="command">sudo gem install fxruby-1.6.13.gem --force -- --with-fox-include=/home/lyle/include/fox-1.6 --with-fox-lib=/home/lyle/lib</strong></span></pre><p>If you're installing a source gem on a Windows box, you'd instead
|
15
|
+
type something like:</p><pre class="screen">C:\> <span><strong class="command">gem install fxruby-1.6.13.gem --force -- --with-fox-include=C:\include\fox-1.6 --with-fox-lib=C:\lib</strong></span></pre><p>If you're installing a source gem, it can take quite awhile to build
|
16
16
|
FXRuby, so this might be a good time to take a coffee break. You won't see
|
17
17
|
any compiler output appear on the screen while the gem is compiling, but
|
18
18
|
rest assured that the output is being saved into the
|
@@ -27,7 +27,7 @@ true</pre><p>If the import failed (usually with a message along the lines of
|
|
27
27
|
of this chapter. If that doesn't help, drop me an e-mail or ask around on
|
28
28
|
the Ruby newsgroup or mailing list; it's quite likely that someone else
|
29
29
|
has run into this problem too. Once you do have a working FXRuby
|
30
|
-
installation, you're ready to check out the example programs.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e502"></a>Installing from a Binary Gem</h2></div></div></div><p>To install a binary gem for Windows, just type:</p><pre class="screen">C:\> <span><strong class="command">gem install fxruby-1.6.
|
30
|
+
installation, you're ready to check out the example programs.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e502"></a>Installing from a Binary Gem</h2></div></div></div><p>To install a binary gem for Windows, just type:</p><pre class="screen">C:\> <span><strong class="command">gem install fxruby-1.6.13-mswin32.gem</strong></span></pre><p>As a quick sanity check, to make sure that all is well, you should
|
31
31
|
probably fire up <code class="filename">irb</code> and try to require the FXRuby
|
32
32
|
gem once the installation is complete:</p><pre class="screen">C:\> <span><strong class="command">irb</strong></span>
|
33
33
|
irb(main):001:0> <strong class="userinput"><code><span><strong class="command">require 'rubygems'</strong></span></code></strong>
|
data/doc/implementation.html
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Appendix E. Implementation</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="pt02.html" title="Part II. Appendices"><link rel="prev" href="library.html" title="Appendix D. The FXRuby Standard Library"><link rel="next" href="apes02.html" title="Object Life Cycles and Garbage Collection"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix E. Implementation</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="library.html">Prev</a> </td><th width="60%" align="center">Part II. Appendices</th><td width="20%" align="right"> <a accesskey="n" href="apes02.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="implementation"></a>Appendix E. Implementation</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="implementation.html#
|
3
|
+
<title>Appendix E. Implementation</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook v5 XSL Stylesheets V1.72.0"><link rel="start" href="book.html" title="Developing Graphical User Interfaces with FXRuby"><link rel="up" href="pt02.html" title="Part II. Appendices"><link rel="prev" href="library.html" title="Appendix D. The FXRuby Standard Library"><link rel="next" href="apes02.html" title="Object Life Cycles and Garbage Collection"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix E. Implementation</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="library.html">Prev</a> </td><th width="60%" align="center">Part II. Appendices</th><td width="20%" align="right"> <a accesskey="n" href="apes02.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="implementation"></a>Appendix E. Implementation</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="implementation.html#d0e5511">Code Generation</a></span></dt><dt><span class="section"><a href="apes02.html">Object Life Cycles and Garbage Collection</a></span></dt><dd><dl><dt><span class="section"><a href="apes02.html#d0e5549">GL Objects</a></span></dt></dl></dd><dt><span class="section"><a href="apes03.html">Virtual Functions</a></span></dt></dl></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5511"></a>Code Generation</h2></div></div></div><p>The development and maintenance of FXRuby would be almost impossible
|
4
4
|
without the help of Dave Beazley's excellent
|
5
5
|
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.swig.org" target="_top">SWIG</a>. The complete set of SWIG
|
6
6
|
interface files used to generate FXRuby is included in the standard
|
data/doc/infosources.html
CHANGED
@@ -23,11 +23,11 @@
|
|
23
23
|
low-volume list for FXRuby-related announcements. To subscribe to this
|
24
24
|
list, follow the instructions at <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/mailman/listinfo/fxruby-announce" target="_top">http://rubyforge.org/mailman/listinfo/fxruby-announce</a></p></li><li style="list-style-type: disc"><p>The fxruby-users@rubyforge.org mailing list is a
|
25
25
|
higher-volume list for FXRuby-related discussions. To subscribe to
|
26
|
-
this list, follow the instructions at <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/mailman/listinfo/fxruby-
|
26
|
+
this list, follow the instructions at <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/mailman/listinfo/fxruby-users" target="_top">http://rubyforge.org/mailman/listinfo/fxruby-users</a></p></li><li style="list-style-type: disc"><p>The foxgui-announce@lists.sourceforge.net mailing list is a very
|
27
27
|
low-volume list for FOX-related announcements. To subscribe to this
|
28
28
|
list, follow the instructions at <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://lists.sourceforge.net/lists/listinfo/foxgui-announce" target="_top">http://lists.sourceforge.net/lists/listinfo/foxgui-announce</a></p></li><li style="list-style-type: disc"><p>The foxgui-users@lists.sourceforge.net mailing list is a
|
29
29
|
higher-volume list for FOX-related discussions. To subscribe to this
|
30
|
-
list, follow the instructions at <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://lists.sourceforge.net/lists/listinfo/foxgui-users" target="_top">http://lists.sourceforge.net/lists/listinfo/foxgui-users</a></p></li><li style="list-style-type: disc"><p>The
|
30
|
+
list, follow the instructions at <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://lists.sourceforge.net/lists/listinfo/foxgui-users" target="_top">http://lists.sourceforge.net/lists/listinfo/foxgui-users</a></p></li><li style="list-style-type: disc"><p>The Ruby-Talk mailing list (or its mirror, the
|
31
31
|
comp.lang.ruby newsgroup) is a high-volume list for Ruby-related
|
32
32
|
discussions. To subscribe to this list, follow the instructions at
|
33
|
-
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.ruby-lang.org/en/
|
33
|
+
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.ruby-lang.org/en/community/mailing-lists/" target="_top">http://www.ruby-lang.org/en/community/mailing-lists/</a></p></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="events.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="pt01.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="changes.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Chapter 8. FXRuby's Message-Target System </td><td width="20%" align="center"><a accesskey="h" href="book.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 10. Change History</td></tr></table></div></body></html>
|