From: Kouhei S. <ko...@co...> - 2006-10-14 15:07:11
|
須藤です. In <200...@hi...> "Re: [ruby-gnome2-devel-ja] libglade2のパッチ" on Sat, 14 Oct 2006 23:50:10 +0900, Masao Mutoh <mu...@hi...> wrote: > > 違うアイディアを思い付きました. > > > > --- libglade2.rb.~1.14.~ 2006-10-12 22:50:17.000000000 +0900 > > +++ libglade2.rb 2006-10-14 22:59:00.000000000 +0900 > > @@ -40,10 +40,9 @@ class GladeXML > > end > > > > if signal_proc > > - @sources ||= {} > > - @sources[source.object_id] = source > > - source.signal_connect("destroy") do |object| > > - @sources.delete(object.object_id) > > + parent = source.parent > > + while parent > > + parent = parent.parent > > end > > case signal_proc.arity > > when 0 > > 念のため,例えば,親ウィジェットにGtk::Windowがいない場合, > > のために,@sourcesにウィジェットを残しておく処理も残しておき > > ますか? > > 確かに両方のパターンが考えられますので、両方とも採用しましょう。 両方有効にしてコミットしておきました. |