Mercurial > pidgin
comparison src/dialogs.c @ 1387:595a844dbe0b
[gaim-migrate @ 1397]
I'm bored.
committer: Tailor Script <tailor@pidgin.im>
author | Rob Flynn <gaim@robflynn.com> |
---|---|
date | Fri, 05 Jan 2001 09:07:49 +0000 |
parents | 0b4278a90323 |
children | 7dc0a8bb4dcb |
comparison
equal
deleted
inserted
replaced
1386:f8f9c68960ea | 1387:595a844dbe0b |
---|---|
3063 | 3063 |
3064 if (!ca->mess) | 3064 if (!ca->mess) |
3065 am = g_new0(struct away_message, 1); | 3065 am = g_new0(struct away_message, 1); |
3066 else | 3066 else |
3067 am = ca->mess; | 3067 am = ca->mess; |
3068 | |
3068 g_snprintf(am->name, sizeof(am->name), "%s", gtk_entry_get_text(GTK_ENTRY(ca->entry))); | 3069 g_snprintf(am->name, sizeof(am->name), "%s", gtk_entry_get_text(GTK_ENTRY(ca->entry))); |
3069 text_len = gtk_text_get_length(GTK_TEXT(ca->text)); | 3070 text_len = gtk_text_get_length(GTK_TEXT(ca->text)); |
3070 away_message = gtk_editable_get_chars(GTK_EDITABLE(ca->text), 0, text_len); | 3071 away_message = gtk_editable_get_chars(GTK_EDITABLE(ca->text), 0, text_len); |
3071 | 3072 |
3072 g_snprintf(am->message, sizeof(am->message), "%s", away_message); | 3073 g_snprintf(am->message, sizeof(am->message), "%s", away_message); |
3082 gtk_list_select_item(GTK_LIST(prefs_away_list), g_slist_index(away_messages, am)); | 3083 gtk_list_select_item(GTK_LIST(prefs_away_list), g_slist_index(away_messages, am)); |
3083 | 3084 |
3084 return am; | 3085 return am; |
3085 } | 3086 } |
3086 | 3087 |
3088 int check_away_mess(struct create_away *ca, int type) | |
3089 { | |
3090 if ((strlen(gtk_entry_get_text(GTK_ENTRY(ca->entry))) == 0) && (type == 1)) | |
3091 { | |
3092 /* We shouldn't allow a blank title */ | |
3093 do_error_dialog(_("You cannot create an away message with a blank title"), _("Gaim - Error")); | |
3094 return 0; | |
3095 } | |
3096 | |
3097 if ((gtk_text_get_length(GTK_TEXT(ca->text)) == 0) && (type <= 1)) | |
3098 { | |
3099 /* We shouldn't allow a blank message */ | |
3100 do_error_dialog(_("You cannot create an empty away message"), _("Gaim - Error")); | |
3101 return 0; | |
3102 } | |
3103 | |
3104 return 1; | |
3105 } | |
3106 | |
3087 void save_away_mess(GtkWidget *widget, struct create_away *ca) | 3107 void save_away_mess(GtkWidget *widget, struct create_away *ca) |
3088 { | 3108 { |
3109 if (!check_away_mess(ca, 1)) | |
3110 return; | |
3111 | |
3089 save_away_message(ca); | 3112 save_away_message(ca); |
3090 destroy_dialog(NULL, ca->window); | 3113 destroy_dialog(NULL, ca->window); |
3091 g_free(ca); | 3114 g_free(ca); |
3092 } | 3115 } |
3093 | 3116 |
3094 void use_away_mess(GtkWidget *widget, struct create_away *ca) | 3117 void use_away_mess(GtkWidget *widget, struct create_away *ca) |
3095 { | 3118 { |
3096 static struct away_message am; | 3119 static struct away_message am; |
3097 guint text_len; | 3120 guint text_len; |
3098 gchar *away_message; | 3121 gchar *away_message; |
3122 | |
3123 if (!check_away_mess(ca, 0)) | |
3124 return; | |
3099 | 3125 |
3100 g_snprintf(am.name, sizeof(am.name), "%s", gtk_entry_get_text(GTK_ENTRY(ca->entry))); | 3126 g_snprintf(am.name, sizeof(am.name), "%s", gtk_entry_get_text(GTK_ENTRY(ca->entry))); |
3101 text_len = gtk_text_get_length(GTK_TEXT(ca->text)); | 3127 text_len = gtk_text_get_length(GTK_TEXT(ca->text)); |
3102 if (text_len < 0) return; | 3128 if (text_len < 0) return; |
3103 away_message = gtk_editable_get_chars(GTK_EDITABLE(ca->text), 0, text_len); | 3129 away_message = gtk_editable_get_chars(GTK_EDITABLE(ca->text), 0, text_len); |
3111 g_free(ca); | 3137 g_free(ca); |
3112 } | 3138 } |
3113 | 3139 |
3114 void su_away_mess(GtkWidget *widget, struct create_away *ca) | 3140 void su_away_mess(GtkWidget *widget, struct create_away *ca) |
3115 { | 3141 { |
3142 if (!check_away_mess(ca, 1)) | |
3143 return; | |
3116 do_away_message(NULL, save_away_message(ca)); | 3144 do_away_message(NULL, save_away_message(ca)); |
3117 destroy_dialog(NULL, ca->window); | 3145 destroy_dialog(NULL, ca->window); |
3118 g_free(ca); | 3146 g_free(ca); |
3119 } | 3147 } |
3120 | 3148 |