Re: [glade--]TreeView and button_press_event



Murray Cumming schrieb:
On Mon, 2004-05-10 at 11:55 +0200, Christof Petig wrote:

Fabrice Colin schrieb:

Fabrice Colin wrote:
> Christof Petig wrote:
>> Besides that I never heard of connect_notify() - can you explain the
>> difference?
>>
> The only thing I know about it is from the explanation given by Murray
> Cummings in the bug report I mentioned.
> With connect(), it is first passed to the treeview/renderer (where,
> unfortunately, "the standard handler stops the further handling of the
> signal", ie it is not delivered in turn to the user's handler),
> whereas with connect_notify(), the event is passed to the users's
> handler first and then to tthe treeview.
> Using connect_notify() ensures the application gets the
> button_press_event message.
>

I found another page that mentions connect_notify(), this time a tutorial :

http://www.gtkmm.org/gtkmm2/docs/tutorial/html/ch08s07.html

Hmmm. Now that I get a small understanding of what this is all about (the handler only get's invoced if you use this largely undocumented hack):


There is a bug about it in bugzilla, but we didn't have time to deal
with it for gtkmm 2.4 - there was lots of other stuff to do. The problem
has existed since gtkmm 2.0.


How would you like me to solve the problem?


My theory is that you should use connect_notify() or connect(false) with
all _event() signals (all signals with
return-type-stops-signal-handling).

Oh, I forgot that you made "after" the default (IIRC glademm's "after=false" just uses the default, fixed right now in CVS). So !after never worked with glademm and gtkmm2.2+ (IIRC gtkmm2.0 had after=false as a default)

Do you consider a warning when connecting an *_event signal with after appropriate?

   Christof



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]