From 62e76ff519062cee7f365facae6f6c0407e2bbd5 Mon Sep 17 00:00:00 2001 From: Paul Mangan Date: Mon, 10 May 2004 10:13:31 +0000 Subject: [PATCH] removed --- src/inputdialog.c | 327 ---------------------------------------------- src/inputdialog.h | 39 ------ 2 files changed, 366 deletions(-) delete mode 100644 src/inputdialog.c delete mode 100644 src/inputdialog.h diff --git a/src/inputdialog.c b/src/inputdialog.c deleted file mode 100644 index 03a42b662..000000000 --- a/src/inputdialog.c +++ /dev/null @@ -1,327 +0,0 @@ -/* - * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999-2003 Hiroyuki Yamamoto - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "intl.h" -#include "inputdialog.h" -#include "manage_window.h" -#include "gtkutils.h" -#include "utils.h" - -#define INPUT_DIALOG_WIDTH 420 - -typedef enum -{ - INPUT_DIALOG_NORMAL, - INPUT_DIALOG_INVISIBLE, - INPUT_DIALOG_COMBO -} InputDialogType; - -static gboolean ack; -static gboolean fin; - -static InputDialogType type; - -static GtkWidget *dialog; -static GtkWidget *msg_label; -static GtkWidget *entry; -static GtkWidget *combo; -static GtkWidget *ok_button; - -static void input_dialog_create (void); -static gchar *input_dialog_open (const gchar *title, - const gchar *message, - const gchar *default_string); -static void input_dialog_set (const gchar *title, - const gchar *message, - const gchar *default_string); - -static void ok_clicked (GtkWidget *widget, - gpointer data); -static void cancel_clicked (GtkWidget *widget, - gpointer data); -static gint delete_event (GtkWidget *widget, - GdkEventAny *event, - gpointer data); -static gboolean key_pressed (GtkWidget *widget, - GdkEventKey *event, - gpointer data); -static void entry_activated (GtkEditable *editable); -static void combo_activated (GtkEditable *editable); - - -gchar *input_dialog(const gchar *title, const gchar *message, - const gchar *default_string) -{ - if (dialog && GTK_WIDGET_VISIBLE(dialog)) return NULL; - - if (!dialog) - input_dialog_create(); - - type = INPUT_DIALOG_NORMAL; - gtk_widget_hide(combo); - gtk_widget_show(entry); - gtk_entry_set_visibility(GTK_ENTRY(entry), TRUE); - - return input_dialog_open(title, message, default_string); -} - -gchar *input_dialog_with_invisible(const gchar *title, const gchar *message, - const gchar *default_string) -{ - if (dialog && GTK_WIDGET_VISIBLE(dialog)) return NULL; - - if (!dialog) - input_dialog_create(); - - type = INPUT_DIALOG_INVISIBLE; - gtk_widget_hide(combo); - gtk_widget_show(entry); - gtk_entry_set_visibility(GTK_ENTRY(entry), FALSE); - - return input_dialog_open(title, message, default_string); -} - -gchar *input_dialog_combo(const gchar *title, const gchar *message, - const gchar *default_string, GList *list, - gboolean case_sensitive) -{ - if (dialog && GTK_WIDGET_VISIBLE(dialog)) return NULL; - - if (!dialog) - input_dialog_create(); - - type = INPUT_DIALOG_COMBO; - gtk_widget_hide(entry); - gtk_widget_show(combo); - - if (!list) { - GList empty_list; - - empty_list.data = (gpointer)""; - empty_list.next = NULL; - empty_list.prev = NULL; - gtk_combo_set_popdown_strings(GTK_COMBO(combo), &empty_list); - } else - gtk_combo_set_popdown_strings(GTK_COMBO(combo), list); - - gtk_combo_set_case_sensitive(GTK_COMBO(combo), case_sensitive); - - return input_dialog_open(title, message, default_string); -} - -gchar *input_dialog_query_password(const gchar *server, const gchar *user) -{ - gchar *message; - gchar *pass; - - message = g_strdup_printf(_("Input password for %s on %s:"), - user, server); - pass = input_dialog_with_invisible(_("Input password"), message, NULL); - g_free(message); - - return pass; -} - -static void input_dialog_create(void) -{ - GtkWidget *vbox; - GtkWidget *hbox; - GtkWidget *confirm_area; - GtkWidget *cancel_button; - - dialog = gtk_dialog_new(); - gtk_window_set_policy(GTK_WINDOW(dialog), FALSE, FALSE, FALSE); - gtk_widget_set_size_request(dialog, INPUT_DIALOG_WIDTH, -1); - gtk_container_set_border_width - (GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), 5); - gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER); - g_signal_connect(G_OBJECT(dialog), "delete_event", - G_CALLBACK(delete_event), NULL); - g_signal_connect(G_OBJECT(dialog), "key_press_event", - G_CALLBACK(key_pressed), NULL); - MANAGE_WINDOW_SIGNALS_CONNECT(dialog); - - gtk_widget_realize(dialog); - - vbox = gtk_vbox_new(FALSE, 8); - gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox), vbox); - gtk_container_set_border_width(GTK_CONTAINER(vbox), 8); - - hbox = gtk_hbox_new(FALSE, 0); - gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); - - msg_label = gtk_label_new(""); - gtk_box_pack_start(GTK_BOX(hbox), msg_label, FALSE, FALSE, 0); - gtk_label_set_justify(GTK_LABEL(msg_label), GTK_JUSTIFY_LEFT); - - entry = gtk_entry_new(); - gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0); - g_signal_connect(G_OBJECT(entry), "activate", - G_CALLBACK(entry_activated), NULL); - - combo = gtk_combo_new(); - gtk_box_pack_start(GTK_BOX(vbox), combo, FALSE, FALSE, 0); - g_signal_connect(G_OBJECT(GTK_COMBO(combo)->entry), "activate", - G_CALLBACK(combo_activated), NULL); - - gtkut_button_set_create(&confirm_area, - &ok_button, _("OK"), - &cancel_button, _("Cancel"), - NULL, NULL); - gtk_container_add(GTK_CONTAINER(GTK_DIALOG(dialog)->action_area), - confirm_area); - gtk_widget_grab_default(ok_button); - - g_signal_connect(G_OBJECT(ok_button), "clicked", - G_CALLBACK(ok_clicked), NULL); - g_signal_connect(G_OBJECT(cancel_button), "clicked", - G_CALLBACK(cancel_clicked), NULL); - - - gtk_widget_show_all(GTK_DIALOG(dialog)->vbox); -} - -static gchar *input_dialog_open(const gchar *title, const gchar *message, - const gchar *default_string) -{ - gchar *str; - - if (dialog && GTK_WIDGET_VISIBLE(dialog)) return NULL; - - if (!dialog) - input_dialog_create(); - - input_dialog_set(title, message, default_string); - gtk_widget_show(dialog); - gtk_window_set_modal(GTK_WINDOW(dialog), TRUE); - manage_window_set_transient(GTK_WINDOW(dialog)); - - ack = fin = FALSE; - - while (fin == FALSE) - gtk_main_iteration(); - - manage_window_focus_out(dialog, NULL, NULL); - gtk_widget_hide(dialog); - - if (ack) { - GtkEditable *editable; - - if (type == INPUT_DIALOG_COMBO) - editable = GTK_EDITABLE(GTK_COMBO(combo)->entry); - else - editable = GTK_EDITABLE(entry); - - str = gtk_editable_get_chars(editable, 0, -1); - if (str && *str == '\0') { - g_free(str); - str = NULL; - } - } else - str = NULL; - - GTK_EVENTS_FLUSH(); - - debug_print("return string = %s\n", str ? str : "(none)"); - return str; -} - -static void input_dialog_set(const gchar *title, const gchar *message, - const gchar *default_string) -{ - GtkWidget *entry_; - - if (type == INPUT_DIALOG_COMBO) - entry_ = GTK_COMBO(combo)->entry; - else - entry_ = entry; - - gtk_window_set_title(GTK_WINDOW(dialog), title); - gtk_label_set_text(GTK_LABEL(msg_label), message); - if (default_string && *default_string) { - gtk_entry_set_text(GTK_ENTRY(entry_), default_string); - gtk_editable_set_position(GTK_EDITABLE(entry_), 0); - gtk_editable_select_region(GTK_EDITABLE(entry_), 0, -1); - } else - gtk_entry_set_text(GTK_ENTRY(entry_), ""); - - gtk_widget_grab_focus(ok_button); - gtk_widget_grab_focus(entry_); -} - -static void ok_clicked(GtkWidget *widget, gpointer data) -{ - ack = TRUE; - fin = TRUE; -} - -static void cancel_clicked(GtkWidget *widget, gpointer data) -{ - ack = FALSE; - fin = TRUE; -} - -static gint delete_event(GtkWidget *widget, GdkEventAny *event, gpointer data) -{ - ack = FALSE; - fin = TRUE; - - return TRUE; -} - -static gboolean key_pressed(GtkWidget *widget, GdkEventKey *event, gpointer data) -{ - if (event && event->keyval == GDK_Escape) { - ack = FALSE; - fin = TRUE; - } - - return FALSE; -} - -static void entry_activated(GtkEditable *editable) -{ - ack = TRUE; - fin = TRUE; -} - -static void combo_activated(GtkEditable *editable) -{ - ack = TRUE; - fin = TRUE; -} diff --git a/src/inputdialog.h b/src/inputdialog.h deleted file mode 100644 index 0e9175a80..000000000 --- a/src/inputdialog.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999-2002 Hiroyuki Yamamoto - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifndef __INPUTDIALOG_H__ -#define __INPUTDIALOG_H__ - -#include - -gchar *input_dialog (const gchar *title, - const gchar *message, - const gchar *default_string); -gchar *input_dialog_with_invisible (const gchar *title, - const gchar *message, - const gchar *default_string); -gchar *input_dialog_combo (const gchar *title, - const gchar *message, - const gchar *default_string, - GList *list, - gboolean case_sensitive); -gchar *input_dialog_query_password (const gchar *server, - const gchar *user); - -#endif /* __INPUTDIALOG_H__ */ -- 2.25.1