fxruby 1.6.6 → 1.6.7
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 +5 -5
- data/doc/ch03s02.html +1 -1
- data/doc/ch03s03.html +1 -1
- data/doc/ch03s04.html +1 -1
- data/doc/ch03s05.html +2 -2
- data/doc/ch04s02.html +1 -1
- data/doc/ch04s03.html +1 -1
- data/doc/ch04s04.html +1 -1
- data/doc/ch05s02.html +1 -1
- data/doc/ch05s03.html +1 -1
- data/doc/changes.html +149 -148
- data/doc/clipboardtut.html +1 -1
- data/doc/differences.html +11 -11
- data/doc/dragdroptut.html +2 -2
- data/doc/events.html +1 -1
- data/doc/examples.html +26 -26
- data/doc/gems.html +1 -1
- data/doc/goals.html +7 -7
- data/doc/implementation.html +3 -3
- data/doc/infosources.html +10 -10
- data/doc/library.html +5 -5
- data/doc/opengl.html +9 -9
- data/doc/pt01.html +1 -1
- data/doc/pt02.html +1 -1
- data/doc/scintilla.html +4 -4
- data/doc/subversion.html +6 -6
- data/doc/todo.html +6 -6
- data/doc/tutorial1.html +1 -1
- data/doc/unicode.html +3 -3
- data/examples/groupbox.rb +37 -67
- data/ext/fox16/extconf.rb +4 -2
- data/lib/fox16/version.rb +1 -1
- metadata +2 -3
- data/examples/accell.rb +0 -36
data/doc/scintilla.html
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Appendix B. Using Scintilla with FXRuby</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.
|
3
|
+
<title>Appendix B. Using Scintilla 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="up" href="pt02.html" title="Part II. Appendices"><link rel="prev" href="opengl.html" title="Appendix A. Using OpenGL with FXRuby"><link rel="next" href="differences.html" title="Appendix C. Differences between FOX and FXRuby"></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 B. Using Scintilla with FXRuby</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="opengl.html">Prev</a> </td><th width="60%" align="center">Part II. Appendices</th><td width="20%" align="right"> <a accesskey="n" href="differences.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="scintilla"></a>Appendix B. Using Scintilla with FXRuby</h2></div></div></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4398"></a>What is Scintilla?</h2></div></div></div><p><a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.scintilla.org" target="_top">Scintilla</a> is a free
|
4
4
|
source code editing component developed by Neil Hodgson for the Win32 and
|
5
|
-
GTK+ platforms.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
5
|
+
GTK+ platforms.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4405"></a>What is FXScintilla?</h2></div></div></div><p><a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://savannah.gnu.org/projects/fxscintilla" target="_top">FXScintilla </a> is
|
6
6
|
a FOX widget that wraps around the Scintilla component, or, if you wish,
|
7
7
|
the FOX "port" of Scintilla. It is being developed by Gilles Filippini,
|
8
8
|
and as of this writing the latest release is available for download from
|
9
|
-
<a href="http://savannah.nongnu.org/download/fxscintilla/fxscintilla-1.63.tar.gz" target="_top">http://savannah.nongnu.org/download/fxscintilla/fxscintilla-1.63.tar.gz</a>.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
9
|
+
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://savannah.nongnu.org/download/fxscintilla/fxscintilla-1.63.tar.gz" target="_top">http://savannah.nongnu.org/download/fxscintilla/fxscintilla-1.63.tar.gz</a>.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4415"></a>Compiling FXScintilla</h2></div></div></div><p>The FXScintilla distribution contains everything you need to build
|
10
10
|
the FXScintilla widget and begin using it in your C++-based FOX
|
11
11
|
applications. That is to say, you do not have to separately download the
|
12
12
|
Scintilla source code from the Scintilla home page. When you unpack the
|
@@ -17,7 +17,7 @@
|
|
17
17
|
other open-source software (like FOX) from the source code. The
|
18
18
|
<code class="filename">INSTALL</code> file in the top-level directory should
|
19
19
|
provide enough instruction for you to build and install FXScintilla for
|
20
|
-
either Unix or Microsoft Windows.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
20
|
+
either Unix or Microsoft Windows.</p></div><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e4428"></a>Enabling FXScintilla Support in FXRuby</h2></div></div></div><p>The next step is to build a version of FXRuby (from its source code)
|
21
21
|
with the optional FXScintilla support enabled. If you're working on a Unix
|
22
22
|
or Linux system and have installed FXScintilla in one of the standard
|
23
23
|
installation directories (e.g. under <code class="filename">/usr/include</code> or <code class="filename">/usr/local/include</code>), the regular FXRuby build
|
data/doc/subversion.html
CHANGED
@@ -1,20 +1,20 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Appendix F. Getting the Sources from Subversion</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.
|
4
|
-
read-only <a href="http://subversion.tigris.org/" target="_top">Subversion</a>
|
3
|
+
<title>Appendix F. Getting the Sources from Subversion</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="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">Appendix F. Getting the Sources from Subversion</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apes03.html">Prev</a> </td><th width="60%" align="center">Part II. Appendices</th><td width="20%" align="right"> </td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="subversion"></a>Appendix F. Getting the Sources from Subversion</h2></div></div></div><p>All of the source code for FXRuby is available for anonymous,
|
4
|
+
read-only <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://subversion.tigris.org/" target="_top">Subversion</a>
|
5
5
|
access. This chapter describes how to check out the sources for the
|
6
6
|
development release of FXRuby and then build FXRuby from those sources. The
|
7
7
|
information in this chapter builds on the basic Subversion instructions
|
8
|
-
provided for any RubyForge hosted project, and specifically those <a href="http://rubyforge.org/scm/?group_id=300" target="_top">instructions</a> for the
|
8
|
+
provided for any RubyForge hosted project, and specifically those <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://rubyforge.org/scm/?group_id=300" target="_top">instructions</a> for the
|
9
9
|
FXRuby project hosted at RubyForge.</p><p>There are some prerequisites. Obviously, you're going to need to have
|
10
10
|
some kind of Subversion client installed on your system and have a clue
|
11
11
|
about how to use it to check out code from a remote repository. Please do
|
12
12
|
not send me questions about how to install or use Subversion. A good
|
13
|
-
starting point for documentation about Subversion is the <a href="http://subversion.tigris.org/" target="_top">home page</a>, and especially the
|
14
|
-
<a href="http://svnbook.red-bean.com/" target="_top">book</a>.</p><p>You're also going to need to have a working <a href="http://www.swig.org/" target="_top">SWIG</a> installation so that you can
|
13
|
+
starting point for documentation about Subversion is the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://subversion.tigris.org/" target="_top">home page</a>, and especially the
|
14
|
+
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://svnbook.red-bean.com/" target="_top">book</a>.</p><p>You're also going to need to have a working <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.swig.org/" target="_top">SWIG</a> installation so that you can
|
15
15
|
generate the C++ source files from the SWIG interface files. As of this
|
16
16
|
writing, FXRuby requires SWIG version 1.3.22; later versions of SWIG will
|
17
|
-
not work, nor will versions earlier than about 1.3.15.</p><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="
|
17
|
+
not work, nor will versions earlier than about 1.3.15.</p><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e5444"></a>Checking out the code</h2></div></div></div><p>To check out the development version (i.e. the trunk) for FXRuby,
|
18
18
|
type the following command:</p><pre class="screen">svn checkout svn://rubyforge.org/var/svn/fxruby/trunk/FXRuby</pre><p>Next, you'll need to use SWIG to generate the C++ source code from
|
19
19
|
the SWIG interface files. To do that, type:</p><pre class="screen">rake swig</pre><p>At this point, you should be ready to change to the top-level
|
20
20
|
directory and go through the normal build and installation process, as
|
data/doc/todo.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>Chapter 9. To-do list</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.
|
3
|
+
<title>Chapter 9. To-do list</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="events.html" title="Chapter 8. FXRuby's Message-Target System"><link rel="next" href="infosources.html" title="Chapter 10. Other Sources of Information"></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 9. To-do list</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="events.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="infosources.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="todo"></a>Chapter 9. To-do list</h2></div></div></div><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>I haven't yet paid much attention to some of the more esoteric
|
4
4
|
issues such as multithreaded applications, or interactions with other
|
5
5
|
popular Ruby extensions. FXRuby seems to cooperate well with Ruby's
|
6
6
|
thread scheduler on all platforms, although threading support for the
|
@@ -19,15 +19,15 @@
|
|
19
19
|
and then "wrap" it).</p></li><li style="list-style-type: disc"><p>There is no native Mac OS X port of FOX, but many people are
|
20
20
|
successfully building and running FOX and FXRuby applications on Mac OS
|
21
21
|
X using Apple's X11 server implementation. For more information,
|
22
|
-
please see the <a href="http://www.fox-toolkit.net/cgi-bin/wiki.pl?Mac_OS_X" target="_top">Mac OS X</a>
|
23
|
-
page at the <a href="http://www.fox-toolkit.net" target="_top">FOX Community Wiki</a>
|
22
|
+
please see the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fox-toolkit.net/cgi-bin/wiki.pl?Mac_OS_X" target="_top">Mac OS X</a>
|
23
|
+
page at the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fox-toolkit.net" target="_top">FOX Community Wiki</a>
|
24
24
|
site.</p></li><li style="list-style-type: disc"><p>Need to investigate how well FXRuby-based applications work with
|
25
|
-
<a href="http://exerb.sourceforge.jp/index.en.html" target="_top">exerb</a>,
|
25
|
+
<a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://exerb.sourceforge.jp/index.en.html" target="_top">exerb</a>,
|
26
26
|
and perhaps add a section to the documentation about how to do this.</p></li><li style="list-style-type: disc"><p>As of this writing, FOX doesn't provide any support for
|
27
27
|
internationalization (I18N) or Unicode text and so FXRuby doesn't
|
28
28
|
either. It is possible that FOX 1.2 will include some I18N support (see
|
29
|
-
the <a href="http://www.fox-toolkit.net/cgi-bin/wiki.pl?FAQ" target="_top">FAQ</a>
|
30
|
-
at the <a href="http://www.fox-toolkit.net" target="_top">FOX Community Wiki</a>
|
29
|
+
the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fox-toolkit.net/cgi-bin/wiki.pl?FAQ" target="_top">FAQ</a>
|
30
|
+
at the <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://www.fox-toolkit.net" target="_top">FOX Community Wiki</a>
|
31
31
|
site), and if so, appropriate changes will be made to FXRuby at that
|
32
32
|
time.</p></li><li style="list-style-type: disc"><p>FOX's list-like widgets (such as <code class="classname">FXList</code>)
|
33
33
|
behave differently from Ruby container objects (such as
|
data/doc/tutorial1.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>Chapter 3. Hello, World!</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.
|
3
|
+
<title>Chapter 3. Hello, World!</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="gems.html" title="Chapter 2. Installing from Gems"><link rel="next" href="ch03s02.html" title="Better living through buttons"></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 3. Hello, World!</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="gems.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="ch03s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="tutorial1"></a>Chapter 3. Hello, World!</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="tutorial1.html#d0e597">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></div><p>There are a few things common to all programs that use FXRuby, and the
|
4
4
|
purpose of this chapter is to help you get familiar with those. We'll do
|
5
5
|
this by developing a short program that simply displays a button containing
|
6
6
|
the text, "Hello, World!". For reference, this program is included in the
|
data/doc/unicode.html
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
<html><head>
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
3
|
-
<title>Chapter 6. Unicode and FXRuby</title><link rel="stylesheet" href="style.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.
|
3
|
+
<title>Chapter 6. Unicode and 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="up" href="pt01.html" title="Part I. The Basics"><link rel="prev" href="ch05s03.html" title="Putting It All Together"><link rel="next" href="examples.html" title="Chapter 7. Examples"></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 6. Unicode and FXRuby</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05s03.html">Prev</a> </td><th width="60%" align="center">Part I. The Basics</th><td width="20%" align="right"> <a accesskey="n" href="examples.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="unicode"></a>Chapter 6. Unicode and FXRuby</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="unicode.html#d0e1608">Basic Application</a></span></dt></dl></div><p>Beginning with version 1.6, FOX and FXRuby provide support for the
|
4
4
|
display of Unicode strings in FOX widgets. For some excellent discussion
|
5
|
-
about how to use Unicode in Ruby, I recommend Patrick Hall's article, <a href="http://ruphus.com/blog/2005/06/11/ruby-and-unicode/" target="_top">"Ruby and
|
6
|
-
Unicode"</a> and why the lucky stiff's follow-up article, <a href="http://redhanded.hobix.com/inspect/closingInOnUnicodeWithJcode.html" target="_top">"Closing
|
5
|
+
about how to use Unicode in Ruby, I recommend Patrick Hall's article, <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://ruphus.com/blog/2005/06/11/ruby-and-unicode/" target="_top">"Ruby and
|
6
|
+
Unicode"</a> and why the lucky stiff's follow-up article, <a xmlns:xlink="http://www.w3.org/1999/xlink" href="http://redhanded.hobix.com/inspect/closingInOnUnicodeWithJcode.html" target="_top">"Closing
|
7
7
|
in on Unicode with Jcode"</a>. Here, we're going to make use of the
|
8
8
|
ideas in those articles to give a quick demonstration of how to use FXRuby's
|
9
9
|
support for Unicode.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e1608"></a>Basic Application</h2></div></div></div><p>Here's the original version of our "Hello, World!" program:</p><pre class="programlisting">require 'fox16'
|
data/examples/groupbox.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
require 'fox16'
|
4
|
+
require 'fox16/kwargs'
|
4
5
|
|
5
6
|
include Fox
|
6
7
|
|
@@ -22,7 +23,7 @@ class GroupWindow < FXMainWindow
|
|
22
23
|
|
23
24
|
def initialize(app)
|
24
25
|
# Call the base class version of initialize
|
25
|
-
super(app, "Group Box Test",
|
26
|
+
super(app, "Group Box Test", :opts => DECOR_ALL)
|
26
27
|
|
27
28
|
# Some icons we'll use here and there
|
28
29
|
doc = getIcon("minidoc.png")
|
@@ -102,8 +103,7 @@ class GroupWindow < FXMainWindow
|
|
102
103
|
FXMenuTitle.new(menubar, "&Help", nil, helpmenu, LAYOUT_RIGHT)
|
103
104
|
|
104
105
|
@popupmenu = FXMenuPane.new(self)
|
105
|
-
poptext = FXTextField.new(@popupmenu, 10,
|
106
|
-
FRAME_SUNKEN|FRAME_THICK|LAYOUT_SIDE_TOP, 0, 0, 0, 0)
|
106
|
+
poptext = FXTextField.new(@popupmenu, 10, :opts => FRAME_SUNKEN|FRAME_THICK|LAYOUT_SIDE_TOP)
|
107
107
|
poptext.setText("Popup with text")
|
108
108
|
|
109
109
|
# Status bar
|
@@ -129,8 +129,7 @@ class GroupWindow < FXMainWindow
|
|
129
129
|
testlabel.setFont(FXFont.new(getApp(), "helvetica", 24, FONTWEIGHT_BOLD,
|
130
130
|
FONTSLANT_ITALIC, FONTENCODING_DEFAULT))
|
131
131
|
FXButton.new(group1, "Small &Button", nil, nil, 0, FRAME_RAISED|FRAME_THICK)
|
132
|
-
FXButton.new(group1, "Big Fat Wide Button\nComprising\nthree lines",
|
133
|
-
nil, 0, FRAME_RAISED|FRAME_THICK)
|
132
|
+
FXButton.new(group1, "Big Fat Wide Button\nComprising\nthree lines", :opts => FRAME_RAISED|FRAME_THICK)
|
134
133
|
FXToggleButton.new(group1,
|
135
134
|
"C&losed\tTooltip for closed\tHelp for closed",
|
136
135
|
"O&pen\nState\tTooltip for open\tHelp for open",
|
@@ -138,94 +137,66 @@ class GroupWindow < FXMainWindow
|
|
138
137
|
ICON_BEFORE_TEXT|JUSTIFY_LEFT|FRAME_RAISED|FRAME_THICK)
|
139
138
|
|
140
139
|
pop = FXPopup.new(self)
|
141
|
-
|
142
|
-
|
143
|
-
JUSTIFY_HZ_APART|ICON_AFTER_TEXT).connect(SEL_COMMAND) {
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
JUSTIFY_HZ_APART|ICON_AFTER_TEXT).connect(SEL_COMMAND) {
|
148
|
-
FXMessageBox.information(self, MBOX_OK, "Option Menu", "Chose option 2")
|
149
|
-
}
|
150
|
-
FXOption.new(pop, "Third\tTip #3\tHelp third", nil, nil, 0,
|
151
|
-
JUSTIFY_HZ_APART|ICON_AFTER_TEXT).connect(SEL_COMMAND) {
|
152
|
-
FXMessageBox.information(self, MBOX_OK, "Option Menu", "Chose option 3")
|
153
|
-
}
|
154
|
-
FXOption.new(pop, "Fourth\tTip #4\tHelp fourth", nil, nil, 0,
|
155
|
-
JUSTIFY_HZ_APART|ICON_AFTER_TEXT).connect(SEL_COMMAND) {
|
156
|
-
FXMessageBox.information(self, MBOX_OK, "Option Menu", "Chose option 4")
|
157
|
-
}
|
140
|
+
numbers =%w{first second third fourth}
|
141
|
+
0.upto(3) do |idx|
|
142
|
+
FXOption.new(pop, "#{numbers[idx].capitalize}\tTip #{idx+1}\tHelp #{numbers[idx]}", :opts => JUSTIFY_HZ_APART|ICON_AFTER_TEXT).connect(SEL_COMMAND) {
|
143
|
+
FXMessageBox.information(self, MBOX_OK, "Option Menu", "Chose option #{idx+1}")
|
144
|
+
}
|
145
|
+
end
|
158
146
|
|
159
147
|
FXOptionMenu.new(group1, pop,
|
160
148
|
LAYOUT_TOP|FRAME_RAISED|FRAME_THICK|JUSTIFY_HZ_APART|ICON_AFTER_TEXT)
|
161
149
|
|
162
150
|
FXLabel.new(group1, "Te&kstje", nil, LAYOUT_TOP|JUSTIFY_LEFT)
|
163
151
|
FXButton.new(group1,
|
164
|
-
"Add an `&&' by doubling\tTooltip\tHelp text for status",
|
165
|
-
|
166
|
-
FXButton.new(group1, "Te&kstje", nil, nil, 0,
|
167
|
-
LAYOUT_TOP|FRAME_RAISED|FRAME_THICK).connect(SEL_COMMAND) {
|
152
|
+
"Add an `&&' by doubling\tTooltip\tHelp text for status", :opts => LAYOUT_TOP|FRAME_RAISED|FRAME_THICK)
|
153
|
+
FXButton.new(group1, "Te&kstje", :opts => LAYOUT_TOP|FRAME_RAISED|FRAME_THICK).connect(SEL_COMMAND) {
|
168
154
|
x, y, buttons = getRoot().getCursorPosition()
|
169
155
|
@popupmenu.popup(nil, x, y)
|
170
156
|
}
|
171
157
|
|
172
|
-
FXMenuButton.new(group1, "&Menu",
|
173
|
-
|
174
|
-
FRAME_RAISED|FRAME_THICK|ICON_AFTER_TEXT))
|
175
|
-
FXMenuButton.new(group1, "&Menu", nil, filemenu,
|
176
|
-
MENUBUTTON_UP|LAYOUT_TOP|FRAME_RAISED|FRAME_THICK|ICON_AFTER_TEXT)
|
158
|
+
FXMenuButton.new(group1, "&Menu", :opts => MENUBUTTON_ATTACH_BOTH|MENUBUTTON_DOWN|JUSTIFY_HZ_APART|LAYOUT_TOP|FRAME_RAISED|FRAME_THICK|ICON_AFTER_TEXT)
|
159
|
+
FXMenuButton.new(group1, "&Menu", nil, filemenu, MENUBUTTON_UP|LAYOUT_TOP|FRAME_RAISED|FRAME_THICK|ICON_AFTER_TEXT)
|
177
160
|
|
178
161
|
coolpop = FXPopup.new(self, POPUP_HORIZONTAL)
|
179
|
-
FXButton.new(coolpop, "A\tTipA",
|
180
|
-
FRAME_THICK|FRAME_RAISED|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT,
|
181
|
-
FXButton.new(coolpop, "B\tTipB",
|
182
|
-
FRAME_THICK|FRAME_RAISED|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT,
|
183
|
-
FXButton.new(coolpop, "C\tTipC",
|
184
|
-
FRAME_THICK|FRAME_RAISED|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT,
|
185
|
-
FXButton.new(coolpop, "D\tTipD",
|
186
|
-
FRAME_THICK|FRAME_RAISED|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT,
|
162
|
+
FXButton.new(coolpop, "A\tTipA",
|
163
|
+
:opts => FRAME_THICK|FRAME_RAISED|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT, :width => 30, :height => 30)
|
164
|
+
FXButton.new(coolpop, "B\tTipB",
|
165
|
+
:opts => FRAME_THICK|FRAME_RAISED|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT, :width => 30, :height => 30)
|
166
|
+
FXButton.new(coolpop, "C\tTipC",
|
167
|
+
:opts => FRAME_THICK|FRAME_RAISED|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT, :width => 30, :height => 30)
|
168
|
+
FXButton.new(coolpop, "D\tTipD",
|
169
|
+
:opts => FRAME_THICK|FRAME_RAISED|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT, :width => 30, :height => 30)
|
187
170
|
FXMenuButton.new(group1, "&S\tSideways", nil, coolpop,
|
188
171
|
(MENUBUTTON_ATTACH_BOTH|MENUBUTTON_LEFT|MENUBUTTON_NOARROWS|LAYOUT_TOP|
|
189
|
-
FRAME_RAISED|FRAME_THICK|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT),
|
172
|
+
FRAME_RAISED|FRAME_THICK|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT), :width => 30, :height => 30)
|
190
173
|
|
191
174
|
matrix = FXMatrix.new(group1, 3,
|
192
175
|
FRAME_RAISED|LAYOUT_TOP|LAYOUT_FILL_X|LAYOUT_FILL_Y)
|
193
176
|
|
194
|
-
FXButton.new(matrix, "A",
|
195
|
-
|
196
|
-
FXButton.new(matrix, "
|
197
|
-
FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X)
|
198
|
-
FXButton.new(matrix, "A", nil, nil, 0,
|
199
|
-
FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X)
|
177
|
+
FXButton.new(matrix, "A", :opts => FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_Y|LAYOUT_FILL_ROW)
|
178
|
+
FXButton.new(matrix, "&Wide button", :opts => FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X)
|
179
|
+
FXButton.new(matrix, "A", :opts => FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X)
|
200
180
|
|
201
|
-
FXButton.new(matrix, "BBBB",
|
202
|
-
|
203
|
-
FXButton.new(matrix, "
|
204
|
-
FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_COLUMN)
|
205
|
-
FXButton.new(matrix, "BB", nil, nil, 0,
|
206
|
-
FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_COLUMN)
|
181
|
+
FXButton.new(matrix, "BBBB", :opts => FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_Y|LAYOUT_FILL_ROW|LAYOUT_FILL_COLUMN)
|
182
|
+
FXButton.new(matrix, "B", :opts => FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_COLUMN)
|
183
|
+
FXButton.new(matrix, "BB", :opts => FRAME_RAISED|FRAME_THICK|LAYOUT_FILL_X|LAYOUT_FILL_COLUMN)
|
207
184
|
|
208
|
-
FXButton.new(matrix, "C",
|
209
|
-
|
210
|
-
FXButton.new(matrix, "
|
211
|
-
FXButton.new(matrix, "CC", nil, nil, 0, FRAME_RAISED|FRAME_THICK|LAYOUT_RIGHT)
|
185
|
+
FXButton.new(matrix, "C", :opts => FRAME_RAISED|FRAME_THICK|LAYOUT_CENTER_Y|LAYOUT_CENTER_X|LAYOUT_FILL_ROW)
|
186
|
+
FXButton.new(matrix, "&wide", :opts => FRAME_RAISED|FRAME_THICK)
|
187
|
+
FXButton.new(matrix, "CC", :opts => FRAME_RAISED|FRAME_THICK|LAYOUT_RIGHT)
|
212
188
|
|
213
189
|
FXLabel.new(group2, "No Arrow")
|
214
|
-
FXSlider.new(group2,
|
215
|
-
LAYOUT_TOP|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT|SLIDER_HORIZONTAL,
|
216
|
-
0, 0, 200, 30)
|
190
|
+
FXSlider.new(group2, :opts => LAYOUT_TOP|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT|SLIDER_HORIZONTAL, :width => 200, :height => 30)
|
217
191
|
|
218
192
|
FXLabel.new(group2, "Up Arrow")
|
219
|
-
FXSlider.new(group2,
|
220
|
-
SLIDER_HORIZONTAL|SLIDER_ARROW_UP), 0, 0, 200, 30)
|
193
|
+
FXSlider.new(group2, :opts => LAYOUT_TOP|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT|SLIDER_HORIZONTAL|SLIDER_ARROW_UP, :width => 200, :height => 30)
|
221
194
|
|
222
195
|
FXLabel.new(group2, "Down Arrow")
|
223
|
-
FXSlider.new(group2,
|
224
|
-
SLIDER_HORIZONTAL|SLIDER_ARROW_DOWN), 0, 0, 200, 30)
|
196
|
+
FXSlider.new(group2, :opts => LAYOUT_TOP|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT|SLIDER_HORIZONTAL|SLIDER_ARROW_DOWN, :width => 200, :height => 30)
|
225
197
|
|
226
198
|
FXLabel.new(group2, "Inside Bar")
|
227
|
-
slider = FXSlider.new(group2,
|
228
|
-
LAYOUT_FIX_HEIGHT|SLIDER_HORIZONTAL|SLIDER_INSIDE_BAR), 0, 0, 200, 20)
|
199
|
+
slider = FXSlider.new(group2, :opts => LAYOUT_TOP|LAYOUT_FILL_X|LAYOUT_FIX_HEIGHT|SLIDER_HORIZONTAL|SLIDER_INSIDE_BAR, :width => 200, :height => 20)
|
229
200
|
slider.range = 0..3
|
230
201
|
|
231
202
|
frame = FXHorizontalFrame.new(group2, LAYOUT_FILL_X|LAYOUT_FILL_Y)
|
@@ -252,8 +223,7 @@ class GroupWindow < FXMainWindow
|
|
252
223
|
LAYOUT_FILL_X|LAYOUT_FILL_Y|FRAME_RAISED|FRAME_THICK|ARROW_RIGHT)
|
253
224
|
|
254
225
|
vframe2 = FXVerticalFrame.new(frame, LAYOUT_FILL_X|LAYOUT_FILL_Y)
|
255
|
-
FXArrowButton.new(vframe2,
|
256
|
-
FRAME_RAISED|FRAME_THICK|ARROW_UP|ARROW_TOOLBAR))
|
226
|
+
FXArrowButton.new(vframe2, :opts => LAYOUT_FILL_X|LAYOUT_FILL_Y|FRAME_RAISED|FRAME_THICK|ARROW_UP|ARROW_TOOLBAR)
|
257
227
|
FXArrowButton.new(vframe2, nil, 0, (LAYOUT_FILL_X|LAYOUT_FILL_Y|
|
258
228
|
FRAME_RAISED|FRAME_THICK|ARROW_DOWN|ARROW_TOOLBAR))
|
259
229
|
FXArrowButton.new(vframe2, nil, 0, (LAYOUT_FILL_X|LAYOUT_FILL_Y|
|
data/ext/fox16/extconf.rb
CHANGED
@@ -6,7 +6,8 @@ require 'mkmf'
|
|
6
6
|
def find_installed_fox_version
|
7
7
|
stddirs = ["/usr/include/fox-1.6",
|
8
8
|
"/usr/local/include/fox-1.6",
|
9
|
-
"/sw/include/fox-1.6"
|
9
|
+
"/sw/include/fox-1.6",
|
10
|
+
"/opt/local/include/fox-1.6"]
|
10
11
|
usrdirs = []
|
11
12
|
ARGV.each do |arg|
|
12
13
|
if arg =~ /--with-fox-include/
|
@@ -35,7 +36,8 @@ $autodetected_fxscintilla = false
|
|
35
36
|
def find_installed_fxscintilla_version
|
36
37
|
stddirs = ["/usr/include/fxscintilla",
|
37
38
|
"/usr/local/include/fxscintilla",
|
38
|
-
"/sw/include/fxscintilla"
|
39
|
+
"/sw/include/fxscintilla",
|
40
|
+
"/opt/local/include/fxscintilla"]
|
39
41
|
usrdirs = []
|
40
42
|
ARGV.each do |arg|
|
41
43
|
if arg =~ /--with-fxscintilla-include/
|
data/lib/fox16/version.rb
CHANGED
metadata
CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.2
|
|
3
3
|
specification_version: 1
|
4
4
|
name: fxruby
|
5
5
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 1.6.
|
7
|
-
date: 2007-
|
6
|
+
version: 1.6.7
|
7
|
+
date: 2007-03-31 00:00:00 -05:00
|
8
8
|
summary: FXRuby is the Ruby binding to the FOX GUI toolkit.
|
9
9
|
require_paths:
|
10
10
|
- ext/fox16
|
@@ -103,7 +103,6 @@ files:
|
|
103
103
|
- doc/images/table.png
|
104
104
|
- doc/images/tutorial1.png
|
105
105
|
- examples/README
|
106
|
-
- examples/accell.rb
|
107
106
|
- examples/babelfish.rb
|
108
107
|
- examples/bounce.rb
|
109
108
|
- examples/browser.rb
|
data/examples/accell.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
require 'fox16'
|
2
|
-
|
3
|
-
include Fox
|
4
|
-
|
5
|
-
class MyWindow < FXMainWindow
|
6
|
-
|
7
|
-
include Responder
|
8
|
-
|
9
|
-
ID_SAVE = FXMainWindow::ID_LAST
|
10
|
-
|
11
|
-
def initialize(app)
|
12
|
-
|
13
|
-
super(app, "Window", nil, nil, DECOR_ALL, 0, 0, 200, 100)
|
14
|
-
|
15
|
-
FXMAPFUNC(SEL_COMMAND, MyWindow::ID_SAVE, 'onSave')
|
16
|
-
accelTable.addAccel(fxparseAccel("Ctrl-S"), self, FXSEL(SEL_COMMAND, MyWindow::ID_SAVE))
|
17
|
-
|
18
|
-
end
|
19
|
-
|
20
|
-
def onSave(sender, selector, data)
|
21
|
-
puts "save"
|
22
|
-
end
|
23
|
-
|
24
|
-
def create
|
25
|
-
super
|
26
|
-
show(PLACEMENT_SCREEN)
|
27
|
-
end
|
28
|
-
|
29
|
-
end
|
30
|
-
|
31
|
-
if __FILE__ == $0
|
32
|
-
application = FXApp.new("Fox", "FXRuby Test")
|
33
|
-
MyWindow.new(application)
|
34
|
-
application.create
|
35
|
-
application.run
|
36
|
-
end
|