Re: Signals question
- From: Peter Bloomfield <peterbloomfield bellsouth net>
- To: Derrick J Houy <djhouy paw za org>
- Cc: gtk-app-devel-list gnome org
- Subject: Re: Signals question
- Date: Thu, 02 Jun 2005 14:47:26 +0000
On 06/02/2005 10:32:03 AM, Derrick J Houy wrote:
In a simple text editor, I have a "docked" find/replace bar, as
apposed to the common dialog version.
The problem I had is that when pressing Ctrl-v inside either
the find or the replace entry box, the text is pasted into the
editing window instead.
If I create my Edit->Paste menu item without an accelerator,
the related function is never called, and all works well--it
seems that both the find entry box, and the editor window
handle the Ctrl-v implicitly. But, if I do that, selecting the
menu item obviously does nothing, and the non-existent
accelerator is not displayed for users.
In the end, I overcame the problem by connecting/disconnecting
the accelerator for the Edit->Paste menu item when the editor
window receives/loses focus. This works, but feels a bit
"bubblegum-and-sticky-tape'ish", and I can't help wondering if
there is perhaps a better, more robust, way of doing this. My
main concern with my current approach is that
gtk_action_disconnect_accelerator only disconnects the
accelerator if the accel_count has reached 0--and I cannot find
a way to tell what accel_count is for a given GtkAction.
I'm not sure whether this is any less
"bubblegum-and-sticky-tape'ish", but...you can view your ctrl+V
callback as a director. Get the focus-widget for the parent
window, and take different actions depending on which widget it
is.
HTH!
Peter
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]