static gboolean internal_init () { ol_log_func (); if (window == NULL) { window = ol_gui_get_widget ("downloaddialog"); if (window == NULL) return FALSE; g_signal_connect (G_OBJECT (window), "delete-event", G_CALLBACK (gtk_widget_hide_on_delete), NULL); } if (download_button == NULL) { download_button = GTK_BUTTON (ol_gui_get_widget ("lrc-download")); } if (list == NULL) { list = GTK_TREE_VIEW (ol_gui_get_widget ("candidate-list")); ol_lrc_candidate_list_init (list, G_CALLBACK (ol_lrc_fetch_select_changed)); } return TRUE; }
gboolean ol_lrc_fetch_ui_download (GtkWidget *widget, gpointer data) { ol_log_func (); OlLrcCandidate candidate = {{0}}; if (ol_lrc_candidate_list_get_selected (list, &candidate)) { ol_lrc_fetch_begin_download (engine, &candidate, info, filepath, NULL); } OlConfig *config = ol_config_get_instance (); GtkToggleButton *prompt_btn = GTK_TOGGLE_BUTTON (ol_gui_get_widget ("choose-do-not-prompt")); if (prompt_btn != NULL && config != NULL) { if (gtk_toggle_button_get_active (prompt_btn)) { ol_config_set_bool (config, "Download", "download-first-lyric", TRUE); } } gtk_widget_hide (window); return TRUE; }
static void ol_menu_init () { /* create accelerator group */ GtkAccelGroup *accel = ol_keybinding_get_accel_group (); OlConfigProxy *config = ol_config_proxy_get_instance (); popup_menu = ol_gui_get_widget ("pop-menu"); gtk_menu_set_accel_group (GTK_MENU (popup_menu), accel); menu.lock = ol_gui_get_widget ("menu-lock"); if (menu.lock) { gtk_menu_item_set_accel_path (GTK_MENU_ITEM (menu.lock), "<OSD Lyrics>/Lock"); } menu.hide = ol_gui_get_widget ("menu-hide"); if (menu.hide) { gtk_menu_item_set_accel_path (GTK_MENU_ITEM (menu.hide), "<OSD Lyrics>/Hide"); } menu.preference = ol_gui_get_widget ("menu-prefernce"); menu.about = ol_gui_get_widget ("menu-about"); menu.quit = ol_gui_get_widget ("menu-quit"); menu.play = ol_gui_get_widget ("menu-play"); menu.pause = ol_gui_get_widget ("menu-pause"); menu.stop = ol_gui_get_widget ("menu-stop"); menu.prev = ol_gui_get_widget ("menu-prev"); menu.next = ol_gui_get_widget ("menu-next"); menu.switch_osd = ol_gui_get_widget ("menu-switch-osd"); menu.switch_scroll = ol_gui_get_widget ("menu-switch-scroll"); gtk_widget_show_all (popup_menu); _locked_changed_cb (config, "OSD/locked", NULL); _visible_changed_cb (config, ".visible", NULL); _display_mode_osd_changed_cb (config, "General/display-mode-osd", NULL); _display_mode_scroll_changed_cb (config, "General/display-mode-scroll", NULL); g_signal_connect (config, "changed::OSD/locked", G_CALLBACK (_locked_changed_cb), NULL); g_signal_connect (config, "changed::.visible", G_CALLBACK (_visible_changed_cb), NULL); g_signal_connect (config, "changed::General/display-mode-osd", G_CALLBACK (_display_mode_osd_changed_cb), NULL); g_signal_connect (config, "changed::General/display-mode-scroll", G_CALLBACK (_display_mode_scroll_changed_cb), NULL); }