Поиск обработчиков событий в исходных деревьях
Итак, я пытаюсь реализовать режим зацикливания в проигрывателе тотема. Я хотел бы сделать это, добавив флажок "Изменить", который включает цикл.
Я пытаюсь выяснить, какой код вызывается при нажатии кнопки "Изменить" и "Режим перемешивания" под ним. Есть ли простой способ найти подходящий обработчик события? Мой обычный метод чтения кода (пошаговое выполнение с помощью отладчика) не сработал, потому что это программа с графическим интерфейсом, и как только вы попадаете в основной цикл, он не останавливается до тех пор, пока не появится точка останова, и где не нужно поместить Точки останова - это в основном то, что я пытаюсь выяснить.
Я использовал Netbeans для этого, и я должен отметить, что я не могу использовать Eclipse.
Спасибо.
1 ответ
Пользовательский интерфейс для Totem и имена обратных вызовов для каждого элемента, определенного в файле GtkBuilder, data / totem.ui. http://git.gnome.org/browse/totem/tree/data/totem.ui
В этом файле говорится, что обработчиком для действия "Режим случайного воспроизведения" является shuffle_mode_action_callback. Тогда вы можете использовать grep:
grep -r shuffle_mode_action_callback totem-git/src
Результат этой команды указывает, что эта функция определена в src/totem-menu.c.