src/pounce.c

changeset 4696
19ae2b8a44c7
parent 4690
e30dbd5b361f
child 4729
7521e221beb7
equal deleted inserted replaced
4695:82df59fb9931 4696:19ae2b8a44c7
31 GtkWidget *bpmenu = NULL; 31 GtkWidget *bpmenu = NULL;
32 32
33 void rem_bp(GtkWidget *w, struct buddy_pounce *b) 33 void rem_bp(GtkWidget *w, struct buddy_pounce *b)
34 { 34 {
35 buddy_pounces = g_list_remove(buddy_pounces, b); 35 buddy_pounces = g_list_remove(buddy_pounces, b);
36 //do_bp_menu(); 36 do_bp_menu();
37 save_prefs(); 37 save_prefs();
38 } 38 }
39 39
40 void do_pounce(struct gaim_connection *gc, char *name, int when) 40 void do_pounce(struct gaim_connection *gc, char *name, int when)
41 { 41 {
154 static void edit_bp_callback(GtkWidget *w, struct buddy_pounce *b) 154 static void edit_bp_callback(GtkWidget *w, struct buddy_pounce *b)
155 { 155 {
156 show_new_bp(NULL, NULL, 0, 0, b); 156 show_new_bp(NULL, NULL, 0, 0, b);
157 } 157 }
158 158
159 /*static GtkTooltips *bp_tooltip = NULL; 159 static GtkTooltips *bp_tooltip = NULL;
160 void do_bp_menu() 160 void do_bp_menu()
161 { 161 {
162 GtkWidget *menuitem, *mess, *messmenu; 162 GtkWidget *menuitem, *mess, *messmenu;
163 static GtkWidget *remmenu; 163 static GtkWidget *remmenu;
164 GtkWidget *remitem; 164 GtkWidget *remitem;
165 GtkWidget *sep; 165 GtkWidget *sep;
166 GList *l; 166 GList *l;
167 struct buddy_pounce *b; 167 struct buddy_pounce *b;
168 GList *bp = buddy_pounces; 168 GList *bp = buddy_pounces;
169 169
170 /* Tooltip for editing bp's 170 /* Tooltip for editing bp's */
171 if(!bp_tooltip) 171 if(!bp_tooltip)
172 bp_tooltip = gtk_tooltips_new(); 172 bp_tooltip = gtk_tooltips_new();
173 173
174 l = gtk_container_children(GTK_CONTAINER(bpmenu)); 174 l = gtk_container_get_children(GTK_CONTAINER(bpmenu));
175 175
176 while (l) { 176 while (l) {
177 gtk_widget_destroy(GTK_WIDGET(l->data)); 177 gtk_widget_destroy(GTK_WIDGET(l->data));
178 l = l->next; 178 l = l->next;
179 } 179 }
180 180
181 remmenu = gtk_menu_new(); 181 remmenu = gtk_menu_new();
182 182
183 menuitem = gtk_menu_item_new_with_label(_("New Buddy Pounce")); 183 menuitem = gtk_menu_item_new_with_label(_("New Buddy Pounce"));
184 gtk_menu_shell_append(GTK_MENU(bpmenu), menuitem); 184 gtk_menu_shell_append(GTK_MENU_SHELL(bpmenu), menuitem);
185 gtk_widget_show(menuitem); 185 gtk_widget_show(menuitem);
186 g_signal_connect(GTK_OBJECT(menuitem), "activate", G_CALLBACK(new_bp_callback), NULL); 186 g_signal_connect(GTK_OBJECT(menuitem), "activate", G_CALLBACK(new_bp_callback), NULL);
187 187
188 188
189 while (bp) { 189 while (bp) {
190 190
191 b = (struct buddy_pounce *)bp->data; 191 b = (struct buddy_pounce *)bp->data;
192 remitem = gtk_menu_item_new_with_label(b->name); 192 remitem = gtk_menu_item_new_with_label(b->name);
193 gtk_menu_shell_append(GTK_MENU(remmenu), remitem); 193 gtk_menu_shell_append(GTK_MENU_SHELL(remmenu), remitem);
194 gtk_widget_show(remitem); 194 gtk_widget_show(remitem);
195 g_signal_connect(GTK_OBJECT(remitem), "activate", G_CALLBACK(rem_bp), b); 195 g_signal_connect(GTK_OBJECT(remitem), "activate", G_CALLBACK(rem_bp), b);
196 196
197 bp = bp->next; 197 bp = bp->next;
198 198
199 } 199 }
200 200
201 menuitem = gtk_menu_item_new_with_label(_("Remove Buddy Pounce")); 201 menuitem = gtk_menu_item_new_with_label(_("Remove Buddy Pounce"));
202 gtk_menu_shell_append(GTK_MENU(bpmenu), menuitem); 202 gtk_menu_shell_append(GTK_MENU_SHELL(bpmenu), menuitem);
203 gtk_widget_show(menuitem); 203 gtk_widget_show(menuitem);
204 gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), remmenu); 204 gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), remmenu);
205 gtk_widget_show(remmenu); 205 gtk_widget_show(remmenu);
206 206
207 sep = gtk_hseparator_new(); 207 sep = gtk_hseparator_new();
208 menuitem = gtk_menu_item_new(); 208 menuitem = gtk_menu_item_new();
209 gtk_menu_shell_append(GTK_MENU(bpmenu), menuitem); 209 gtk_menu_shell_append(GTK_MENU_SHELL(bpmenu), menuitem);
210 gtk_container_add(GTK_CONTAINER(menuitem), sep); 210 gtk_container_add(GTK_CONTAINER(menuitem), sep);
211 gtk_widget_set_sensitive(menuitem, FALSE); 211 gtk_widget_set_sensitive(menuitem, FALSE);
212 gtk_widget_show(menuitem); 212 gtk_widget_show(menuitem);
213 gtk_widget_show(sep); 213 gtk_widget_show(sep);
214 214
217 while (bp) { 217 while (bp) {
218 218
219 b = (struct buddy_pounce *)bp->data; 219 b = (struct buddy_pounce *)bp->data;
220 220
221 menuitem = gtk_menu_item_new_with_label(b->name); 221 menuitem = gtk_menu_item_new_with_label(b->name);
222 gtk_menu_shell_append(GTK_MENU(bpmenu), menuitem); 222 gtk_menu_shell_append(GTK_MENU_SHELL(bpmenu), menuitem);
223 messmenu = gtk_menu_new(); 223 messmenu = gtk_menu_new();
224 gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), messmenu); 224 gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), messmenu);
225 gtk_widget_show(menuitem); 225 gtk_widget_show(menuitem);
226 226
227 if (strlen(b->message)) 227 if (strlen(b->message))
228 mess = gtk_menu_item_new_with_label(b->message); 228 mess = gtk_menu_item_new_with_label(b->message);
229 else 229 else
230 mess = gtk_menu_item_new_with_label(_("[no message]")); 230 mess = gtk_menu_item_new_with_label(_("[no message]"));
231 gtk_menu_shell_append(GTK_MENU(messmenu), mess); 231 gtk_menu_shell_append(GTK_MENU_SHELL(messmenu), mess);
232 gtk_tooltips_set_tip(bp_tooltip, GTK_WIDGET(mess), _("[Click to edit]"), NULL); 232 gtk_tooltips_set_tip(bp_tooltip, GTK_WIDGET(mess), _("[Click to edit]"), NULL);
233 gtk_widget_show(mess); 233 gtk_widget_show(mess);
234 g_signal_connect(GTK_OBJECT(mess), "activate", G_CALLBACK(edit_bp_callback), b); 234 g_signal_connect(GTK_OBJECT(mess), "activate", G_CALLBACK(edit_bp_callback), b);
235 bp = bp->next; 235 bp = bp->next;
236 236
237 } 237 }
238 238
239 } 239 }
240 */ 240
241 /*------------------------------------------------------------------------*/ 241 /*------------------------------------------------------------------------*/
242 /* The dialog for new buddy pounces */ 242 /* The dialog for new buddy pounces */
243 /*------------------------------------------------------------------------*/ 243 /*------------------------------------------------------------------------*/
244 244
245 245
299 bp->options |= OPT_POUNCE_SAVE; 299 bp->options |= OPT_POUNCE_SAVE;
300 300
301 if(!b->buddy_pounce) 301 if(!b->buddy_pounce)
302 buddy_pounces = g_list_append(buddy_pounces, bp); 302 buddy_pounces = g_list_append(buddy_pounces, bp);
303 303
304 // do_bp_menu(); 304 do_bp_menu();
305 305
306 gtk_widget_destroy(b->window); 306 gtk_widget_destroy(b->window);
307 307
308 save_prefs(); 308 save_prefs();
309 g_free(b); 309 g_free(b);
603 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); 603 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
604 gtk_widget_show(button); 604 gtk_widget_show(button);
605 605
606 button = gaim_pixbuf_button_from_stock(_("C_ancel"), "gtk-cancel", GAIM_BUTTON_HORIZONTAL); 606 button = gaim_pixbuf_button_from_stock(_("C_ancel"), "gtk-cancel", GAIM_BUTTON_HORIZONTAL);
607 gtk_size_group_add_widget(sg, button); 607 gtk_size_group_add_widget(sg, button);
608 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(gtk_widget_destroy), b->window); 608 g_signal_connect_swapped(GTK_OBJECT(button), "clicked", G_CALLBACK(gtk_widget_destroy), b->window);
609 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); 609 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
610 gtk_widget_show(button); 610 gtk_widget_show(button);
611 611
612 612
613 gtk_widget_show(b->window); 613 gtk_widget_show(b->window);

mercurial