2012-04-16 23 views
7

Jaki jest najlepszy sposób na powiązanie wielu skrótów klawiaturowych z jedną akcją w GTK + 3?Wiele skrótów dla jednej akcji w GTK

Szukałem odpowiedzi na to przez kilka dni i nie wymyśliłem niczego. Funkcja gtk_accelerator_parse nie obsługuje skrótów rozdzielanych przecinkami. Umieszczanie wielu tagów <accelerator> w pliku <accelerator> w tym samym atrybucie action i różnych atrybutach key również nie działa.

Nie chcę pisać instrukcji obsługi naciśnięcia klawisza niestandardowego, więc mogę mieć dwa skróty do jednej czynności, ale czy to naprawdę jedyna metoda?

Odpowiedz

1

Znalazłem sposób, ale jest naprawdę okropny. Korzystając z gtk_accel_group_connect mogę dodawać dodatkowe akceleratory dla własnych funkcji, które mogą następnie wywoływać pożądane działanie w oparciu o naciśnięty klawisz i dowolne modyfikatory. To jednak wydaje się być hackerem, ponieważ tworzę mapę akceleratora do działania zamiast używać GTK.

Chciałbym poznać lepszy sposób, jeśli ktoś o nim wie.