Create  Edit  Diff  Phillro Industries  Index  Search  Changes  History  Source  RSS  Note  wikifarm  Login

ApolloHomePageByWikiEng

[ Japanese ] / [ English ] Hello, another way.

Dream duet of Delphi and Ruby .

Apollo = Delphi + Ruby

Let's try.

Related project(s)

Embedding Ruby in Kylix/Delphi Component is useful package. Let's try.

Platform

Apollo runs on the environment on which Delphi6 can run. At present, it runs on MS-Windows 95/98/NT4.0 or later.

I expect that Apollo will run on Unix, when Borland would release Kylix. The current version's Apollo for Kylix had many problems and it was not usable.

Download

from SourceForge?.jp

Please check the following list and download the archive.

Apollo for Ruby-1.6.8

Apollo binaries + Delphi6 runtime packages

ap-639_bde60.msi bin, lib, doc, sample, VCL60, BDE, ruby 1.6.8 (2003-07-27) [i586-mswin32]

BDE module configuration file

bdemerge.ini with .msi

Apollo binaries + Apollo sources

ap-639_vcl60.zip bin, lib, doc, sample, src for Delphi6

Apollo for Ruby-1.8.1

Apollo binaries + Delphi6 runtime packages

ap-839_bde60.msi bin, lib, doc, sample, VCL60, BDE, ruby 1.8.1 (2003-10-27) [i386-mswin32]

BDE module configuration file

bdemerge.ini with .msi

Apollo binaries + Apollo sources

ap-839_vcl60.zip bin, lib, doc, sample, src for Delphi6

CVS

SourceForge?.jp

Install

Expand distributed files. That is all.

Executable files which were contained in Apollo Distribution.

Apollo has some files with .exe extension.

Apollo.exe

A development environment with simple editor.

ruby_ap.exe

A executable environment on DOS console.

Usage

If you could not run Apollo, your computer may not have VCL60, and please install MSI release or other proper VCL

library.

 Apollo Main Window
 +-----------------------------------------------------------+
 | ..Apollo                                            _ o x |
 +-----------------------------------------------------------+
 | +---------------------------+ +-----------+ +-----------+ |
 | | foo.rb   (Command Line)   | | Browse..  | | Execute   | |
 | +---------------------------+ +-----------+ +-----------+ |
 | +-----------------------------------------------------+-+ |
 | | require 'Phi'                                       | | |
 | |                                                     | | |
 | | form = Form.new        (Memo Window)                | | |
 | |                                                     | | |
 | | .......                                             | | |
 | |                                                     | | |
 | |                                                     | | |
 | +-----------------------------------------------------+-+ |
 | Ready                    (Status Line)                    |
 +-----------------------------------------------------------+

At start time, "Command Line" is "foo.rb", and Apollo trys to read foo.rb on the current directory. And Apollo shows

foo.rb in the Memo Window if it exist. Otherwise, the Memo is empty.

You can input Ruby script file and its option on the Command Line.

foo.rb foo.txt

You can click "Execute" button and run the script which was written on the Command Line.

When you click "Browse" button, you will see a "Open File" dialog.

"Execute" button will be replaced by "Terminate" button, when the script was running. And you can terminate the execution of the script by pushing "Terminate" button.

"Execute" button or "Terminate" button is replaced by "Save" button, when you changed the script in the Memo Window. And you can save your change to the file which was described in Command Line window.

What is Apollo?

I call Apollo as a whole system which connect Ruby and Delphi.

Apollo is under experiment and not fixed. Design may be changed.

What is Phi?

Phi is Ruby extension library to use Delphi's Visual Component Library(VCL). Usage is as same as other Ruby extension library. That is;

require 'phi'

Then you can use a module of VCL. At first, try to make a form.

form = Phi::Form.new form.show

And, make a button and its handler for clicks.

btn = Phi::Button.new(form, :btn) def btn.on_click

 print "click!\n"

end

Finally, run a event loop.

Phi.mainloop

I hope you will enjoy powerfull Delphi's VCL with simple Ruby script.

Mailing list

Project Apollo ML

mailto:ap-list@freeml.com (Japanese)

apollo-talk (English)

author: YOSHIDA Kazuhiro

Translated by Kumagai Hidetake(take_tk).

I hope you will correct my rude English, please.

[ top ] [ prev ] [ up ] [ next ]

Last modified:2004/11/13 14:51:34
Keyword(s):
References:[ApolloHomePageByWiki]