ダウンロード?

どんなもんだか、現在のへなちょこものを落として見ようという奇特な方、 ありがとうございます。相変わらず機能の網羅は全然進んでません。
作者の環境はCYGWIN版です。mswin版でのコンパイルは時々出来なくなっています(汗)。これは作者がVC++を持っていないためで、多分どうしようもありません。
バージョンは0.0.1.0程度の番号を当てようと思いましたが、 今後も日付でバージョン相当とすることにします。

Cによる拡張ライブラリと、Rubyによるスクリプトのハイブリッドです。
こういうのが嫌いな方もいるかとは思いますが...

無論、Cによる拡張ライブラリのみでも十分使用可能です。

今後、プログラムの構成その他に劇的な変化が生じることは、とてもありがちです。 配布はしてますがその点はご了承下さい。


使用条件

ごちゃごちゃ考えるのめんどくさくなりました。
ありがたくRuby本体のライセンスに準じさせていただきます。


まともなドキュメントというほどの物はまだありません(ちょっとはあるけど)。
書いたらこのあたりに置いときます。

本サイト以外のバイナリ配布

わたなべ様がRuby Binariesにてcygwin/mingw32のswinとvrubyを配布して下さっています。

互換性や配布形態に関わる改変履歴

ダウンロードファイル

dw Cによる拡張ライブラリ部分(swin.so)ソースおよびテストスクリプト5本
(62kB) 09/02/07のもの。
dw vruby。つまりRuby側ライブラリとテスト用サンプルスクリプト2本
(98kB) 08/02/29のものです。
swin.soの実行形式の配布は止めました
雪見酒氏によるリファレンスのHTMLヘルプが氏のページにあります。
dw サンプル一式。説明はこちら
(30kB) 08/02/29のもの。 説明と同じ所(web)にバラバラの状態で置いてあります。
旧バージョン。各コントロールがモジュールだった頃の物(000422)
拡張ライブラリ、Rubyライブラリソース
サンプル集
モジュールとクラスが変わったときの、変更ポイントは近況00/04/25参照。←日付間違ってました(追記000612)

試し方

バイナリを持っていくつもりの人はCygwin版Rubyが動作することを確認して下さい。
自力でdllなどを作成される方はソースのアーカイブを、作り置きで良い人は実行形式とソースの2つのアーカイブをダウンロードして、展開(解凍)します。 サンプルのアーカイブもダウンロードして下さい。

#ruby test.rb
#ruby sample.rb
#ruby sample2.rb
などでどうぞ。

ファイルの解説

サンプル以外の説明です。

swin.c
Cによる拡張ライブラリのソースです
swingdi.c
Cによる拡張ライブラリの描画系のソースです
swinbmp.c
Cによる拡張ライブラリのビットマップ周りのソースです
swinmenu.c
Cによる拡張ライブラリのメニュー周りのソースです
swincdlg.c
Cによる拡張ライブラリのコモンダイアログ周りのソースです
swincvs.c
Cによる拡張ライブラリの互換DC描画周りのソースです
swin.h
そのヘッダ
extconf.rb
RubyによってMakefileを作成する際に必要です。
swin.dll
Cによる拡張ライブラリです
test.rb
swin.dllの機能の確認用のスクリプト。ruby test.rb として動かします
test2.rb
swin.dllの描画機能の確認用のスクリプト。ruby test2.rb として動かします
test3.rb
swin.dllでコモンコントロールの使用確認用のスクリプト。
test4.rb
swin.dllでビットマップ描画確認用のスクリプト。
test5.rb
swin.dllでメニューのイベント確認用のスクリプト。
dtest.rb
ダイアログを開く例ですが、テンプレート作成のためにvruby側も必要です。
winconst.rb
Windowsのメッセージ定数やスタイルの定数他、ユーティリティのメソッドなど
vruby.rb
VisualuRubyライブラリのコアとなるスクリプトです。他からrequireします
vrcontrol.rb
ボタン、チェックボックス、コンボボックスなどのコントロールの定義。他から requireします
vrlayout.rb
レイアウトマネージャ。縦分割と横分割、Gridをつかうものがあります。 Panelを使って組み合わせもできます(例参照layouttest.rb)
vrcomctl.rb
コモンコントロール関係。
vrmmedia.rb
マルチメディア関係(MCIWnd)。
vrtwopane.rb
画面2分割(分割線移動可能)の例?。画面があまりきれいにならないのですが...
vrddrop.rb
ドラッグ&ドロップ関係
sample.rb/sample2.rb
vruby側のテスト。2つは同じ事を行いますが、実装の仕方が違います。フォームのデザインを特異メソッドで行うか、後付けのモジュールで実装するかの違いです。
DLLManager.rb
Win32API.dllの問題対応。ruby-1.4.3以前のには問題があるようです。最新版のWin32API.dllでは修正されています。

サンプルに付いての説明はこちらにあります

「道半ば」どころか千里の道の一歩目... からは進んで5歩目くらいは来たかな。是非ともコメント下さい。お待ちしています。


戻る
Email: nyasu@osk.3web.ne.jp