Glade3のgladeファイルからRubyプログラムのひな型を生成するプログラム

新バージョンのRuby-GNOME2

 2010年の秋から公開され始めたバージョン0.90系のRuby-GNOME2はRuby 1.9対応で、gemとしてインストールできるようになっていたり、GtkBuilder形式のgladeファイルを読み込んで利用できるようになっていたりします。
(2013/08/13 追記。Ruby-GNOME2は現在2.0.2が公開されており、Ruby 2.0に対応しています。)
(2014/05/05現在、Ruby-GNOME2は2.2.0が公開されており、Ruby 2.1に対応しています。)

 ただ、GladeやGladeを利用したプログラミングのためのツールはパッケージに含まれていないので、旧バージョンを利用するよりは多少不便な状況です。

ruby_glade3_create_template.exe

 そこでツールを一つ作ってみました。Glade3のGtkBuilder形式のgladeファイルからRubyプログラムのひな型を生成するプログラムで、旧バージョンに含まれていたruby-glade-create-templateにあたるものです。ruby-glade-create-templateについては、Ruby-GNOME2公式Wikiの『Glade, Ruby/Libglade2チュートリアル』を参照してください。

 使い方はgladeファイルのアイコンをruby_glade3_create_template.exeのアイコンにドラッグアンドドロップするだけです。gladeファイルと同じ場所にrbファイルが作られます。gladeファイルのパスを引数にしてコマンドラインからruby_glade3_create_template.exeを実行してもOKです。拡張子から分かると思いますがWindows専用です。

生成したRubyプログラムの使い方

 『Glade, Ruby/Libglade2チュートリアル』を読めば、だいたい分かると思いますが、xxx_glade.rbはいじらずにxxx.rbを編集してプログラムを作っていきます。

 ただしxxx_glade.rbのinitializeメソッドの最後にあるshow_allメソッドの呼び出し元は、Gladeで作ったメインウィンドウ(プログラムが起動された時に最初に表示したいウィンドウ)でなければならないので、もし食い違っている場合は修正して下さい。処理としては、gladeファイルで最初に出てくるオブジェクトをshow_allメソッドの呼び出し元にしているので、gladeファイルのオブジェクトの記述順を変更するやり方でもかまいません。

 また「# uncomment if you use GetText gem.」というコメントがついている行はGetText gem を使う場合に有効にして下さい。

 ruby_glade3_create_template.exeを何回実行しても、xxx.rbが既に存在する場合には上書きされず、xxx_glade.rbだけが再生成されます。

ダウンロード

 Readmeはつけていません。exeに加えて、Windows 7/HSP 3.3で動作確認をしたソーススクリプトを同梱しています。

ruby_glade3_create_template

参考リンク

Glade - A User Interface Designer(英語)

 Windows用のプログラムはページ右上のWindows Binariesリンクからダウンロードできます。2種類のアーカイブが置いてあると思いますが、バージョンが古いほうがGTK+2用で、新しいほうがGTK+3用です。Gladeを使うだけであれば、GTK+を別途ダウンロードする必要はありません。

 ちなみにRuby-GNOME2にも専用のGTK+が同梱されていますので、Rubyから使うだけであれば別途ダウンロードする必要はありません(Windowsの話です)。

Visual Ruby -- GUI with Ruby and Glade(英語)

 「RubyとGlade(GTK+)を利用して簡単にGUIプログラミングしよう」というコンセプトで作られたシンプルなIDE、Visual Rubyが公開されています。

 ただし、今のところRuby 1.9.xとGlade 3.6.7〜3.8.x(GTK+2)の組み合わせ専用で、またこのソフト専用のRubyクラスについて把握する必要があります。もし環境と好みが合うのであれば、ruby_glade3_create_template.exeとは別の選択肢として試してみてはいかがでしょうか。

Ruby-GNOME2 Project Website (公式Wiki) - 『Glade, Ruby/Libglade2チュートリアル』

 ruby_glade3_create_template.exeの使い方の参考にしてください。

このページの更新履歴

2014/05/07

 「生成したRubyプログラムの使い方」に説明を追加。

2014/05/05 午後

 午前に公開したruby_glade3_create_template.exe(20140505.zip)にバグがあったため、「ダウンロード」(公開プログラム)を更新。お手数をおかけしますが、再度ダウンロードをお願いします。

【ruby_glade3_create_template.exeの変更点】

・gladeファイルに書かれているGTK+のバージョンが2系の時、取得できないバグを修正。

2014/05/05

 「新バージョンのRuby-GNOME2」、「生成したRubyプログラムの使い方」、「ダウンロード」(公開プログラム)、「参考リンク」を更新。

【ruby_glade3_create_template.exeの変更点】

・GTK+3用Gladeで作成したgladeファイルにも一応対応。
・このプログラムが生成したRubyスクリプト内で使う、メインウィンドウのオブジェクト(show_allメソッド呼び出し元)名を、固定ではなくgladeファイルで最初に出てくるオブジェクトから取るように変更。

2013/08/13

 公開プログラムを更新。xxx_glade.rbだけでなくxxx.rbも生成するようにした(上書き生成はしない)。その他微修正。

2011/11/06

 公開プログラムを更新。生成するソースに、Gladeで貼りつけたGUI部品を参照する変数を定義するコードを挿入するようにした。公開アーカイブ中のソースファイルに不足があったのを修正。

2010/10/25

 公開。