EXPORT void audgui_jump_to_time (void) { if (audgui_reshow_unique_window (AUDGUI_JUMP_TO_TIME_WINDOW)) return; GtkWidget * entry = gtk_entry_new (); gtk_entry_set_activates_default ((GtkEntry *) entry, TRUE); GtkWidget * button1 = audgui_button_new (_("Jump"), "go-jump", jump_cb, entry); GtkWidget * button2 = audgui_button_new (_("Cancel"), "process-stop", NULL, NULL); GtkWidget * dialog = audgui_dialog_new (GTK_MESSAGE_OTHER, _("Jump to Time"), _("Enter time (minutes:seconds):"), button1, button2); audgui_dialog_add_widget (dialog, entry); if (aud_drct_get_playing ()) { int time = aud_drct_get_time () / 1000; SPRINTF (buf, "%u:%02u", time / 60, time % 60); gtk_entry_set_text ((GtkEntry *) entry, buf); } audgui_show_unique_window (AUDGUI_JUMP_TO_TIME_WINDOW, dialog); }
static GtkWidget * create_url_opener (bool_t open) { const char * title, * verb, * icon; if (open) { title = _("Open URL"); verb = _("_Open"); icon = "document-open"; } else { title = _("Add URL"); verb = _("_Add"); icon = "list-add"; } GtkWidget * combo = gtk_combo_box_text_new_with_entry (); GtkWidget * entry = gtk_bin_get_child ((GtkBin *) combo); gtk_entry_set_activates_default ((GtkEntry *) entry, TRUE); const char * item; for (int i = 0; (item = aud_history_get (i)); i++) gtk_combo_box_text_append_text ((GtkComboBoxText *) combo, item); g_object_set_data ((GObject *) entry, "open", GINT_TO_POINTER (open)); GtkWidget * button1 = audgui_button_new (verb, icon, open_cb, entry); GtkWidget * button2 = audgui_button_new (_("_Cancel"), "process-stop", NULL, NULL); GtkWidget * dialog = audgui_dialog_new (GTK_MESSAGE_OTHER, title, _("Enter URL:"), button1, button2); gtk_widget_set_size_request (dialog, 400, -1); audgui_dialog_add_widget (dialog, combo); return dialog; }