Mercurial > pidgin-twitter
comparison pidgin-twitter.c @ 176:7affa10c1f0e multiaccounts
removed some global preferences that was replaced preferences per conversation
author | mikanbako <maoutwo@gmail.com> |
---|---|
date | Sat, 02 Aug 2008 22:09:41 +0900 |
parents | c4a8afde91c0 |
children | 0339b4abe290 |
comparison
equal
deleted
inserted
replaced
175:c4a8afde91c0 | 176:7affa10c1f0e |
---|---|
2433 } | 2433 } |
2434 } | 2434 } |
2435 } | 2435 } |
2436 } | 2436 } |
2437 | 2437 |
2438 static void | |
2439 api_base_post_cb(const char *name, PurplePrefType type, gconstpointer value, | |
2440 gpointer data) | |
2441 { | |
2442 signed_on_cb(NULL); | |
2443 get_status_with_api((gpointer)(source.conv)); | |
2444 } | |
2445 | |
2446 static gboolean | 2438 static gboolean |
2447 load_plugin(PurplePlugin *plugin) | 2439 load_plugin(PurplePlugin *plugin) |
2448 { | 2440 { |
2449 int i; | 2441 int i; |
2450 | 2442 |
2629 (GHFunc)invalidate_icon_data_func, NULL); | 2621 (GHFunc)invalidate_icon_data_func, NULL); |
2630 } | 2622 } |
2631 } | 2623 } |
2632 | 2624 |
2633 static void | 2625 static void |
2634 interval_prefs_cb(const char *name, PurplePrefType type, | |
2635 gconstpointer val, gpointer data) | |
2636 { | |
2637 /* remove idle func */ | |
2638 g_source_remove_by_user_data((gpointer)(source.conv)); | |
2639 | |
2640 /* add idle func */ | |
2641 if(purple_prefs_get_bool(OPT_API_BASE_POST)) { | |
2642 source.id = g_timeout_add_seconds( | |
2643 purple_prefs_get_int(OPT_API_BASE_GET_INTERVAL), | |
2644 get_status_with_api, (gpointer)(source.conv)); | |
2645 } | |
2646 } | |
2647 | |
2648 static void | |
2649 text_changed_cb(gpointer *data) | 2626 text_changed_cb(gpointer *data) |
2650 { | 2627 { |
2651 const gchar *text; | 2628 const gchar *text; |
2652 gchar *pref = (gchar *)g_object_get_data(G_OBJECT(data), "pref"); | 2629 gchar *pref = (gchar *)g_object_get_data(G_OBJECT(data), "pref"); |
2653 text = gtk_entry_get_text(GTK_ENTRY(data)); | 2630 text = gtk_entry_get_text(GTK_ENTRY(data)); |
2732 | 2709 |
2733 | 2710 |
2734 /**********************/ | 2711 /**********************/ |
2735 /* connect to signals */ | 2712 /* connect to signals */ |
2736 /**********************/ | 2713 /**********************/ |
2737 | |
2738 /****************/ | |
2739 /* account page */ | |
2740 /****************/ | |
2741 e = GTK_WIDGET(gtk_builder_get_object (builder, "account_twitter")); | |
2742 g_object_set_data(G_OBJECT(e), "pref", OPT_SCREEN_NAME_TWITTER); | |
2743 text = purple_prefs_get_string(OPT_SCREEN_NAME_TWITTER); | |
2744 gtk_entry_set_text(GTK_ENTRY(e), text); | |
2745 g_signal_connect(e, "changed", | |
2746 G_CALLBACK(text_changed_cb), &e); | |
2747 | |
2748 e = GTK_WIDGET(gtk_builder_get_object (builder, "account_wassr")); | |
2749 g_object_set_data(G_OBJECT(e), "pref", OPT_SCREEN_NAME_WASSR); | |
2750 text = purple_prefs_get_string(OPT_SCREEN_NAME_WASSR); | |
2751 gtk_entry_set_text(GTK_ENTRY(e), text); | |
2752 g_signal_connect(e, "changed", | |
2753 G_CALLBACK(text_changed_cb), &e); | |
2754 | |
2755 e = GTK_WIDGET(gtk_builder_get_object (builder, "account_identica")); | |
2756 g_object_set_data(G_OBJECT(e), "pref", OPT_SCREEN_NAME_IDENTICA); | |
2757 text = purple_prefs_get_string(OPT_SCREEN_NAME_IDENTICA); | |
2758 gtk_entry_set_text(GTK_ENTRY(e), text); | |
2759 g_signal_connect(e, "changed", | |
2760 G_CALLBACK(text_changed_cb), &e); | |
2761 | |
2762 e = GTK_WIDGET(gtk_builder_get_object (builder, "account_api")); | |
2763 g_object_set_data(G_OBJECT(e), "pref", OPT_API_BASE_POST); | |
2764 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(e), | |
2765 purple_prefs_get_bool(OPT_API_BASE_POST)); | |
2766 g_signal_connect(e, "toggled", | |
2767 G_CALLBACK(bool_toggled_cb), &e); | |
2768 purple_prefs_connect_callback(plugin, OPT_API_BASE_POST, /* xxx divide? */ | |
2769 api_base_post_cb, NULL); | |
2770 | |
2771 e = GTK_WIDGET(gtk_builder_get_object (builder, "account_api_password")); | |
2772 g_object_set_data(G_OBJECT(e), "pref", OPT_PASSWORD_TWITTER); | |
2773 | |
2774 gtk_entry_set_visibility(GTK_ENTRY(e), FALSE); | |
2775 if (gtk_entry_get_invisible_char(GTK_ENTRY(e)) == '*') | |
2776 gtk_entry_set_invisible_char(GTK_ENTRY(e), PIDGIN_INVISIBLE_CHAR); | |
2777 | |
2778 text = purple_prefs_get_string(OPT_PASSWORD_TWITTER); | |
2779 gtk_entry_set_text(GTK_ENTRY(e), text); | |
2780 g_signal_connect(e, "changed", | |
2781 G_CALLBACK(text_changed_cb), &e); | |
2782 | |
2783 | |
2784 /* interval spin */ | |
2785 e = GTK_WIDGET(gtk_builder_get_object (builder, | |
2786 "account_api_get_interval_spin")); | |
2787 g_object_set_data(G_OBJECT(e), "pref", OPT_API_BASE_GET_INTERVAL); | |
2788 | |
2789 spin = GTK_SPIN_BUTTON(e); | |
2790 | |
2791 value = purple_prefs_get_int(OPT_API_BASE_GET_INTERVAL); | |
2792 twitter_debug("spin value = %d\n", value); | |
2793 | |
2794 adjust = gtk_adjustment_new(value, 40, 3600, 10, 100, 100); | |
2795 gtk_spin_button_set_adjustment(spin, GTK_ADJUSTMENT(adjust)); | |
2796 gtk_widget_set_size_request(GTK_WIDGET(spin), 50, -1); | |
2797 | |
2798 if(value == 0) { | |
2799 value = TWITTER_DEFAULT_INTERVAL; | |
2800 purple_prefs_set_int(OPT_API_BASE_GET_INTERVAL, value); | |
2801 } | |
2802 gtk_spin_button_set_value(GTK_SPIN_BUTTON(e), (gdouble)value); | |
2803 g_signal_connect(e, "value-changed", | |
2804 G_CALLBACK(spin_changed_cb), &e); | |
2805 purple_prefs_connect_callback(plugin, OPT_API_BASE_GET_INTERVAL, | |
2806 interval_prefs_cb, NULL); | |
2807 | |
2808 | |
2809 | 2714 |
2810 /********************/ | 2715 /********************/ |
2811 /* translation page */ | 2716 /* translation page */ |
2812 /********************/ | 2717 /********************/ |
2813 e = GTK_WIDGET(gtk_builder_get_object (builder, "translation_recipient")); | 2718 e = GTK_WIDGET(gtk_builder_get_object (builder, "translation_recipient")); |
3309 { | 3214 { |
3310 /* remove idle func */ | 3215 /* remove idle func */ |
3311 g_source_remove_by_user_data((gpointer)(source.conv)); | 3216 g_source_remove_by_user_data((gpointer)(source.conv)); |
3312 | 3217 |
3313 /* add idle func */ | 3218 /* add idle func */ |
3314 if(purple_prefs_get_bool(OPT_API_BASE_POST)) { | 3219 if(service_account_get_bool(account, conv_name, OPT_API_BASE_POST, FALSE)) { |
3315 source.id = g_timeout_add_seconds( | 3220 source.id = g_timeout_add_seconds( |
3316 service_account_get_int(account, | 3221 service_account_get_int(account, |
3317 conv_name, | 3222 conv_name, |
3318 OPT_API_BASE_GET_INTERVAL, | 3223 OPT_API_BASE_GET_INTERVAL, |
3319 TWITTER_DEFAULT_INTERVAL), | 3224 TWITTER_DEFAULT_INTERVAL), |
3506 | 3411 |
3507 purple_prefs_add_bool(OPT_COUNTER, TRUE); | 3412 purple_prefs_add_bool(OPT_COUNTER, TRUE); |
3508 purple_prefs_add_bool(OPT_SUPPRESS_OOPS, TRUE); | 3413 purple_prefs_add_bool(OPT_SUPPRESS_OOPS, TRUE); |
3509 purple_prefs_add_bool(OPT_PREVENT_NOTIFICATION, FALSE); | 3414 purple_prefs_add_bool(OPT_PREVENT_NOTIFICATION, FALSE); |
3510 | 3415 |
3511 purple_prefs_add_bool(OPT_API_BASE_POST, FALSE); | |
3512 purple_prefs_add_int(OPT_API_BASE_GET_INTERVAL, TWITTER_DEFAULT_INTERVAL); | |
3513 purple_prefs_add_string(OPT_SCREEN_NAME_TWITTER, EMPTY); | |
3514 purple_prefs_add_string(OPT_PASSWORD_TWITTER, EMPTY); | |
3515 purple_prefs_add_string(OPT_SCREEN_NAME_WASSR, EMPTY); | |
3516 purple_prefs_add_string(OPT_SCREEN_NAME_IDENTICA, EMPTY); | |
3517 | |
3518 purple_prefs_add_bool(OPT_SHOW_ICON, TRUE); | 3416 purple_prefs_add_bool(OPT_SHOW_ICON, TRUE); |
3519 purple_prefs_add_int(OPT_ICON_SIZE, DEFAULT_ICON_SIZE); | 3417 purple_prefs_add_int(OPT_ICON_SIZE, DEFAULT_ICON_SIZE); |
3520 purple_prefs_add_bool(OPT_UPDATE_ICON, TRUE); | 3418 purple_prefs_add_bool(OPT_UPDATE_ICON, TRUE); |
3521 purple_prefs_add_int(OPT_ICON_MAX_COUNT, DEFAULT_ICON_MAX_COUNT); | 3419 purple_prefs_add_int(OPT_ICON_MAX_COUNT, DEFAULT_ICON_MAX_COUNT); |
3522 purple_prefs_add_int(OPT_ICON_MAX_DAYS, DEFAULT_ICON_MAX_DAYS); | 3420 purple_prefs_add_int(OPT_ICON_MAX_DAYS, DEFAULT_ICON_MAX_DAYS); |