LINUX.ORG.RU

GTK2: actions


0

0

назначил в гтк-шной проге экшн Ctrl+Tab на переключение табов в одном из экземпляров GtkNotebook. однако, табы, тем не менее, не переключаются. если назначаю другое сочетание клавиш - все пучком. как заставить прогу переключать табы именно по Ctrl+Tab?

★★★

Ответ на: Re: GTK2: actions от Pi

Re: GTK2: actions

Ctrl+Tab ловится не wm а приложением. По умолчанию эта клавиша служит для перехода фокуса из тех окон, откуда фокус не может выйти по Tab. Переопределять её нежелательно.

Недавно это долго и нудно обсуждалось на usability@gnome.org

http://mail.gnome.org/archives/usability/2006-March/msg00012.html

welkam ★★
()
Ответ на: Re: GTK2: actions от welkam

Re: GTK2: actions

там, в основном, предлагаются альтернативы Ctrl+Tab. юзабилити - оно, конечно, хорошо, но как ее, все-таки, переопределить?

friday ★★★
() автор топика
Ответ на: Re: GTK2: actions от friday

Re: GTK2: actions

Если очень интересно, GtkWindow определяет bindings на Ctrl+Tab. Можно попробовать перехватить сигнал в наследнике GtkWindow или просто присоединившись к нему. Можно получить binding_set по классу GtkWindow и потом оттуда убрать Ctrl+Tab. Извращаться можно многими способами. Вот только нужно ли. Все равно в большинстве приложений Ctrl+Tab будет делать совсем другое.

welkam ★★
()
Ответ на: Re: GTK2: actions от welkam

Re: GTK2: actions

в большинстве программ оно пусть что хочет, то и делает:-) мне нужно, чтобы в _моей_ программе оно делало то, что нужно мне, т.е. табы переключало:-)

в общем, что-то похожее нашел в документации. буду попробовать через gdk

friday ★★★
() автор топика
Ответ на: Re: GTK2: actions от welkam

Re: GTK2: actions

> Ctrl+Tab ловится не wm а приложением.

ЭТО ЗАВИСИТ ОТ wm. ВСЕ зависит от wm. У мене на C-Tab waffle висит, например.

anonymous
()
Ответ на: Re: GTK2: actions от anonymous

Re: GTK2: actions

> ЭТО ЗАВИСИТ ОТ wm. ВСЕ зависит от wm. У мене на C-Tab waffle висит, например.

не мешай - у них по-другому всё

Pi ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.