comparison src/multi.c @ 1051:713b0e14e0a9

[gaim-migrate @ 1061] user_info only in aim_user (saves 2k per connection); mem leak fixes in dialogs.c and multi.c; and proto_opt in aim_user (so prpls can have their own saved information per user). no way to draw protocol option selection window thingy yet, so prpls will either have to do that on their own or something. i don't know. we'll figure it out. committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Thu, 02 Nov 2000 22:29:51 +0000
parents 38452403563b
children bde34730789c
comparison
equal deleted inserted replaced
1050:c4baa5509558 1051:713b0e14e0a9
171 } else { 171 } else {
172 tmpusr.options = tmpusr.options ^ m->opt; 172 tmpusr.options = tmpusr.options ^ m->opt;
173 } 173 }
174 } 174 }
175 175
176 static void free_muo(GtkWidget *b, struct mod_usr_opt *m) {
177 g_free(m);
178 }
179
176 static GtkWidget *acct_button(const char *text, struct aim_user *u, int option, GtkWidget *box) 180 static GtkWidget *acct_button(const char *text, struct aim_user *u, int option, GtkWidget *box)
177 { 181 {
178 GtkWidget *button; 182 GtkWidget *button;
179 struct mod_usr_opt *muo = g_new0(struct mod_usr_opt, 1); 183 struct mod_usr_opt *muo = g_new0(struct mod_usr_opt, 1);
180 button = gtk_check_button_new_with_label(text); 184 button = gtk_check_button_new_with_label(text);
184 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(button), (tmpusr.options & option)); 188 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(button), (tmpusr.options & option));
185 } 189 }
186 gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0); 190 gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0);
187 muo->user = u; muo->opt = option; 191 muo->user = u; muo->opt = option;
188 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(mod_opt), muo); 192 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(mod_opt), muo);
193 gtk_signal_connect(GTK_OBJECT(button), "destroy", GTK_SIGNAL_FUNC(free_muo), muo);
189 gtk_widget_show(button); 194 gtk_widget_show(button);
190 return button; 195 return button;
191 } 196 }
192 197
193 static void ok_mod(GtkWidget *w, struct aim_user *u) 198 static void ok_mod(GtkWidget *w, struct aim_user *u)