[ruby-dev:38323] [1.8.7][1.9.1][tk] 自前実装の拡張 widget を使いたい場合

View: New views
2 Messages — Rating Filter:   Alert me  
< Prev | 1 - 2 | Next >

[ruby-dev:38805] Re: [1.8.7][1.9.1][tk] 自前実装の拡張 widget を使いたい場合

by Hidetoshi NAGAI :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

永井@知能.九工大です.

From: oshida@...
Subject: [ruby-dev:38803] Re: [1.8.7][1.9.1][tk] 自前実装の拡張 widget を使いたい場合
Date: Thu, 16 Jul 2009 11:25:42 +0900
Message-ID: <1247711125.4a5e8f957c0d3@...>
> Bug #1774 の件、ruby-dev:38792 で
>
> > mingwやcygwinはここ数年見てません...
>
> とありましたので、trunk@24117 を Cygwin で make してみたのです。
> #それはそれで、あちらにレスしようと思います。
>
> そうしたら、、、動いてしまいました(^^;

あれま.(^_^;

> ruby は trunk@24117 素の状態で、
> ext/tk/sample/tkcombobox.rb には ruby-dev:38755 のパッチ、
> ↓を充てた状態です。
>
> > module TkCore
> >   RUN_EVENTLOOP_ON_MAIN_THREAD = true
> > end
>
>
> パッチを充てない tkcombobox.rb は、
> 前回と同様に固まってしまいます。
>
> これで、一件落着、でしょうか?(^^;

TkAqua の場合と同様,完全な解決とは言えませんが,
当座の回避策としては一件落着としてもいいのでしょうね.

確認のため, ext/tk/sample/tkcombobox.rb にあてた
[ruby-dev:38755] を削り,tk.rb に以下を適用してみていただけますか?

Index: ext/tk/lib/tk.rb
===================================================================
--- ext/tk/lib/tk.rb (revision 24110)
+++ ext/tk/lib/tk.rb (working copy)
@@ -1178,7 +1178,10 @@
       if WITH_RUBY_VM ### check Ruby 1.9 !!!!!!!
         # *** NEED TO FIX ***
         ip = TclTkIp.new(name, opts)
-        if ip._invoke_without_enc('tk', 'windowingsystem') == 'aqua' &&
+        if RUBY_PLATFORM =~ /cygwin/
+          RUN_EVENTLOOP_ON_MAIN_THREAD = true
+          INTERP = ip
+        elsif ip._invoke_without_enc('tk', 'windowingsystem') == 'aqua' &&
             (TclTkLib.get_version<=>[8,4,TclTkLib::RELEASE_TYPE::FINAL,6]) > 0
           # *** KNOWN BUG ***
           #   Main event loop thread of TkAqua (> Tk8.4.9) must be the main
@@ -5636,7 +5639,7 @@
 #Tk.freeze
 
 module Tk
-  RELEASE_DATE = '2009-07-12'.freeze
+  RELEASE_DATE = '2009-07-16'.freeze
 
   autoload :AUTO_PATH,        'tk/variable'
   autoload :TCL_PACKAGE_PATH, 'tk/variable'

--
永井 秀利  (nagai@...)
九州工業大学 大学院情報工学研究院 知能情報工学研究系 知能情報メディア部門


[ruby-dev:38809] Re: [1.8.7][1.9.1][tk] 自前実装の拡張 widget を使いたい場合

by oshida :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

押田です。


> 確認のため, ext/tk/sample/tkcombobox.rb にあてた
> [ruby-dev:38755] を削り,tk.rb に以下を適用してみていただけますか?

こちらの方法でも正常動作しました(^^)

< Prev | 1 - 2 | Next >