[ruby-gnome2-doc-cvs] [Ruby-GNOME2 Project Website] update - libglade2-tut-create-src

Back to archive index

ruby-****@sourc***** ruby-****@sourc*****
2008年 10月 19日 (日) 14:36:01 JST


-------------------------
REMOTE_ADDR = 222.225.51.171
REMOTE_HOST = 
        URL = http://ruby-gnome2.sourceforge.jp/ja/hiki.cgi?libglade2-tut-create-src
-------------------------
@@ -31,12 +31,14 @@
       bindtextdomain(domain, localedir, nil, "")
     end
 
-親クラスのinitializeを呼び出した後(super)、親クラスのinitializeで実行済みのbindtextdomainを再度呼び出しています。これは"hwedit_glade.rb"を編集せずに、ローカライズ用データの出力時の文字コードを正しく指定するためです。上記のように文字コード名に空文字列を指定しておくと、プログラム実行時のロケールに合わせたものが自動で選択されます(MS Windowsではそのように動作しました)。文字コード無指定のbindtextdomainを実行しなかった場合、HweditGladeクラスでのbindtextdomain実行時に指定したUTF-8が有効なままになるので、たとえばMS Windowsのコンソールウィンドウにローカライズ用データ文字列を出力すると文字化けします。
+親クラスのinitializeを呼び出した後(super)、親クラスのinitializeで実行済みのbindtextdomainを再度呼び出しています。これは"hwedit_glade.rb"を編集せずに、ローカライズ用データの出力時の文字コードを正しく指定するためです。上記のように文字コード名に空文字列を指定しておくと、プログラム実行時のロケールに合わせたものが自動で選択されます(MS Windowsではそのように動作しました)。文字コード無指定のbindtextdomainを実行しなかった場合、HweditGladeクラスでのbindtextdomain実行時に指定したUTF-8が有効なままになるので、たとえばMS Windowsのコンソールウィンドウにローカライズ用データ文字列を出力すると文字化けします。ただしGUI上に表示するだけであれば、MS WindowsでもUTF-8のままで大丈夫なようなので、必要ないと思う場合はここでのbindtextdomain呼び出しは省略してしまってもいいでしょう。
 
     def on_main_window_delete_event(widget, arg0)
+      puts "on_main_window_delete_event"		# 必要なくなったら消す
       false
     end
     def on_main_window_destroy(widget)
+      puts "on_main_window_destroy"
       Gtk.main_quit
     end
 
@@ -91,14 +93,19 @@
 以下、シグナルハンドラの実装例です。まずは簡単な所で、"Edit"メニューの"Cut(切り取り)"、"Copy(コピー)"、"Paste(貼り付け)"コマンドを実装してみます。
 
   def on_paste1_activate(widget)
+    puts "on_paste1_activate"
     @editor.paste_clipboard
   end
 
   def on_copy1_activate(widget)
+    puts "on_copy1_activate"
     @editor.copy_clipboard
   end
 
   def on_cut1_activate(widget)
+    puts "on_cut1_activate"
     @editor.cut_clipboard
   end
 
@@ -109,6 +114,12 @@
 次は、"Help"メニューの"About"コマンドを選択した時に、Gladeで作っておいたアバウトダイアログを表示する例です。
 
   def on_about1_activate(widget)
+    puts "on_about1_activate"
     @aboutdlg.run do |response|
       case response
       when Gtk::Dialog::RESPONSE_DELETE_EVENT
@@ -127,6 +133,13 @@
 ただアバウトダイアログの場合、"response ID"の値によって処理を分ける必要はないので、以下のようなコードで済ませてしまうのが普通です。
 
   def on_about1_activate(widget)
+    puts "on_about1_activate"
     @aboutdlg.run
     @aboutdlg.hide
   end
@@ -143,6 +150,14 @@
 まず文字コード変換処理に必要なKconvモジュールを読み込むコードを冒頭に追加します。プログラムからTextViewにテキストを入力する場合、文字コードがUTF-8になっている必要があります。
 
   def on_open1_activate(widget)
+    puts "on_open1_activate"
     if****@filed***** == Gtk::Dialog::RESPONSE_OK
       @editor.buffer.text  = ""			# バッファをクリア
       File.open(@filedlg.filename).each do |line|	# 1行ずつ処理




ruby-gnome2-cvs メーリングリストの案内
Back to archive index