| 338 } |
338 } |
| 339 |
339 |
| 340 gtk_window_present(GTK_WINDOW(font_dialog)); |
340 gtk_window_present(GTK_WINDOW(font_dialog)); |
| 341 } |
341 } |
| 342 |
342 |
| 343 static gboolean |
|
| 344 purplerc_plugin_load(PurplePlugin *plugin) |
|
| 345 { |
|
| 346 purplerc_make_changes(); |
|
| 347 |
|
| 348 pref_callback = purple_prefs_connect_callback(plugin, |
|
| 349 "/plugins/gtk/purplerc", |
|
| 350 purplerc_pref_changed_cb, |
|
| 351 NULL); |
|
| 352 |
|
| 353 return TRUE; |
|
| 354 } |
|
| 355 |
|
| 356 static gboolean |
|
| 357 purplerc_plugin_unload(PurplePlugin *plugin) |
|
| 358 { |
|
| 359 purple_prefs_disconnect_callback(pref_callback); |
|
| 360 |
|
| 361 return TRUE; |
|
| 362 } |
|
| 363 |
|
| 364 static GtkWidget * |
343 static GtkWidget * |
| 365 purplerc_make_interface_vbox(void) |
344 purplerc_make_interface_vbox(void) |
| 366 { |
345 { |
| 367 GtkWidget *vbox = NULL, *hbox = NULL, *check = NULL; |
346 GtkWidget *vbox = NULL, *hbox = NULL, *check = NULL; |
| 368 GtkSizeGroup *labelsg = NULL; |
347 GtkSizeGroup *labelsg = NULL; |
| 595 |
574 |
| 596 |
575 |
| 597 return ret; |
576 return ret; |
| 598 } |
577 } |
| 599 |
578 |
| 600 static PidginPluginUiInfo purplerc_ui_info = |
579 static PidginPluginInfo * |
| 601 { |
580 purplerc_plugin_query(GError **error) |
| 602 purplerc_get_config_frame, |
581 { |
| 603 0, /* page_num (Reserved) */ |
582 const gchar * const authors[] = { |
| 604 |
583 "Etan Reisner <deryni@pidgin.im>", |
| 605 /* padding */ |
584 NULL |
| 606 NULL, |
585 }; |
| 607 NULL, |
586 |
| 608 NULL, |
587 return pidgin_plugin_info_new( |
| 609 NULL |
588 "id", "purplerc", |
| 610 }; |
589 "name", N_("Pidgin GTK+ Theme Control"), |
| 611 |
590 "version", DISPLAY_VERSION, |
| 612 static PurplePluginInfo purplerc_info = |
591 "category", N_("Theming"), |
| 613 { |
592 "summary", N_("Provides access to commonly used gtkrc " |
| 614 PURPLE_PLUGIN_MAGIC, |
593 "settings."), |
| 615 PURPLE_MAJOR_VERSION, |
594 "description", N_("Provides access to commonly used gtkrc " |
| 616 PURPLE_MINOR_VERSION, |
595 "settings."), |
| 617 PURPLE_PLUGIN_STANDARD, |
596 "authors", authors, |
| 618 PIDGIN_PLUGIN_TYPE, |
597 "website", PURPLE_WEBSITE, |
| 619 0, |
598 "abi-version", PURPLE_ABI_VERSION, |
| 620 NULL, |
599 "pidgin-config-frame", purplerc_get_config_frame, |
| 621 PURPLE_PRIORITY_DEFAULT, |
600 NULL |
| 622 "purplerc", |
601 ); |
| 623 N_("Pidgin GTK+ Theme Control"), |
602 } |
| 624 DISPLAY_VERSION, |
603 |
| 625 N_("Provides access to commonly used gtkrc settings."), |
604 static gboolean |
| 626 N_("Provides access to commonly used gtkrc settings."), |
605 purplerc_plugin_load(PurplePlugin *plugin, GError **error) |
| 627 "Etan Reisner <deryni@pidgin.im>", |
|
| 628 PURPLE_WEBSITE, |
|
| 629 purplerc_plugin_load, |
|
| 630 purplerc_plugin_unload, |
|
| 631 NULL, |
|
| 632 &purplerc_ui_info, |
|
| 633 NULL, |
|
| 634 NULL, |
|
| 635 NULL, |
|
| 636 |
|
| 637 /* padding */ |
|
| 638 NULL, |
|
| 639 NULL, |
|
| 640 NULL, |
|
| 641 NULL |
|
| 642 }; |
|
| 643 |
|
| 644 static void |
|
| 645 purplerc_init(PurplePlugin *plugin) |
|
| 646 { |
606 { |
| 647 gsize i; |
607 gsize i; |
| 648 |
608 |
| 649 purple_prefs_add_none("/plugins"); |
609 purple_prefs_add_none("/plugins"); |
| 650 purple_prefs_add_none("/plugins/gtk"); |
610 purple_prefs_add_none("/plugins/gtk"); |
| 693 /* remove old cursor color prefs */ |
653 /* remove old cursor color prefs */ |
| 694 purple_prefs_remove("/plugins/gtk/purplerc/color/GtkWidget::cursor-color"); |
654 purple_prefs_remove("/plugins/gtk/purplerc/color/GtkWidget::cursor-color"); |
| 695 purple_prefs_remove("/plugins/gtk/purplerc/color/GtkWidget::secondary-cursor-color"); |
655 purple_prefs_remove("/plugins/gtk/purplerc/color/GtkWidget::secondary-cursor-color"); |
| 696 purple_prefs_remove("/plugins/gtk/purplerc/set/color/GtkWidget::cursor-color"); |
656 purple_prefs_remove("/plugins/gtk/purplerc/set/color/GtkWidget::cursor-color"); |
| 697 purple_prefs_remove("/plugins/gtk/purplerc/set/color/GtkWidget::secondary-cursor-color"); |
657 purple_prefs_remove("/plugins/gtk/purplerc/set/color/GtkWidget::secondary-cursor-color"); |
| 698 } |
658 |
| 699 |
659 purplerc_make_changes(); |
| 700 PURPLE_INIT_PLUGIN(purplerc, purplerc_init, purplerc_info) |
660 |
| |
661 pref_callback = purple_prefs_connect_callback(plugin, |
| |
662 "/plugins/gtk/purplerc", |
| |
663 purplerc_pref_changed_cb, |
| |
664 NULL); |
| |
665 |
| |
666 return TRUE; |
| |
667 } |
| |
668 |
| |
669 static gboolean |
| |
670 purplerc_plugin_unload(PurplePlugin *plugin, GError **error) |
| |
671 { |
| |
672 purple_prefs_disconnect_callback(pref_callback); |
| |
673 |
| |
674 return TRUE; |
| |
675 } |
| |
676 |
| |
677 PURPLE_PLUGIN_INIT(purplerc, purplerc_plugin_query, purplerc_plugin_load, purplerc_plugin_unload); |