Mercurial > pidgin.yaz
comparison libpurple/account.c @ 21418:38cc722159ff
propagate from branch 'im.pidgin.pidgin' (head d8103be97302efb404e2f6922925f661c807ad23)
to branch 'im.pidgin.cpw.resiak.disconnectreason' (head 0ac25a1f38ae28654c967caa143f1c0d12ef2e1c)
author | Will Thompson <will.thompson@collabora.co.uk> |
---|---|
date | Sat, 10 Nov 2007 12:10:04 +0000 |
parents | ff5cd00e4f14 6de09629f091 |
children | 9fe16ecaa4ab |
comparison
equal
deleted
inserted
replaced
21417:21bea7c72a80 | 21418:38cc722159ff |
---|---|
58 | 58 |
59 union | 59 union |
60 { | 60 { |
61 int integer; | 61 int integer; |
62 char *string; | 62 char *string; |
63 gboolean bool; | 63 gboolean boolean; |
64 | 64 |
65 } value; | 65 } value; |
66 | 66 |
67 } PurpleAccountSetting; | 67 } PurpleAccountSetting; |
68 | 68 |
116 xmlnode_set_attrib(child, "type", "string"); | 116 xmlnode_set_attrib(child, "type", "string"); |
117 xmlnode_insert_data(child, setting->value.string, -1); | 117 xmlnode_insert_data(child, setting->value.string, -1); |
118 } | 118 } |
119 else if (setting->type == PURPLE_PREF_BOOLEAN) { | 119 else if (setting->type == PURPLE_PREF_BOOLEAN) { |
120 xmlnode_set_attrib(child, "type", "bool"); | 120 xmlnode_set_attrib(child, "type", "bool"); |
121 snprintf(buf, sizeof(buf), "%d", setting->value.bool); | 121 snprintf(buf, sizeof(buf), "%d", setting->value.boolean); |
122 xmlnode_insert_data(child, buf, -1); | 122 xmlnode_insert_data(child, buf, -1); |
123 } | 123 } |
124 } | 124 } |
125 | 125 |
126 static void | 126 static void |
1707 g_return_if_fail(name != NULL); | 1707 g_return_if_fail(name != NULL); |
1708 | 1708 |
1709 setting = g_new0(PurpleAccountSetting, 1); | 1709 setting = g_new0(PurpleAccountSetting, 1); |
1710 | 1710 |
1711 setting->type = PURPLE_PREF_BOOLEAN; | 1711 setting->type = PURPLE_PREF_BOOLEAN; |
1712 setting->value.bool = value; | 1712 setting->value.boolean = value; |
1713 | 1713 |
1714 g_hash_table_insert(account->settings, g_strdup(name), setting); | 1714 g_hash_table_insert(account->settings, g_strdup(name), setting); |
1715 | 1715 |
1716 schedule_accounts_save(); | 1716 schedule_accounts_save(); |
1717 } | 1717 } |
1793 | 1793 |
1794 setting = g_new0(PurpleAccountSetting, 1); | 1794 setting = g_new0(PurpleAccountSetting, 1); |
1795 | 1795 |
1796 setting->type = PURPLE_PREF_BOOLEAN; | 1796 setting->type = PURPLE_PREF_BOOLEAN; |
1797 setting->ui = g_strdup(ui); | 1797 setting->ui = g_strdup(ui); |
1798 setting->value.bool = value; | 1798 setting->value.boolean = value; |
1799 | 1799 |
1800 table = get_ui_settings_table(account, ui); | 1800 table = get_ui_settings_table(account, ui); |
1801 | 1801 |
1802 g_hash_table_insert(table, g_strdup(name), setting); | 1802 g_hash_table_insert(table, g_strdup(name), setting); |
1803 | 1803 |
2068 if (setting == NULL) | 2068 if (setting == NULL) |
2069 return default_value; | 2069 return default_value; |
2070 | 2070 |
2071 g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value); | 2071 g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value); |
2072 | 2072 |
2073 return setting->value.bool; | 2073 return setting->value.boolean; |
2074 } | 2074 } |
2075 | 2075 |
2076 int | 2076 int |
2077 purple_account_get_ui_int(const PurpleAccount *account, const char *ui, | 2077 purple_account_get_ui_int(const PurpleAccount *account, const char *ui, |
2078 const char *name, int default_value) | 2078 const char *name, int default_value) |
2134 if ((setting = g_hash_table_lookup(table, name)) == NULL) | 2134 if ((setting = g_hash_table_lookup(table, name)) == NULL) |
2135 return default_value; | 2135 return default_value; |
2136 | 2136 |
2137 g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value); | 2137 g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value); |
2138 | 2138 |
2139 return setting->value.bool; | 2139 return setting->value.boolean; |
2140 } | 2140 } |
2141 | 2141 |
2142 PurpleLog * | 2142 PurpleLog * |
2143 purple_account_get_log(PurpleAccount *account, gboolean create) | 2143 purple_account_get_log(PurpleAccount *account, gboolean create) |
2144 { | 2144 { |
2354 { | 2354 { |
2355 PurpleAccountPrivate *priv = PURPLE_ACCOUNT_GET_PRIVATE(account); | 2355 PurpleAccountPrivate *priv = PURPLE_ACCOUNT_GET_PRIVATE(account); |
2356 return priv->current_error; | 2356 return priv->current_error; |
2357 } | 2357 } |
2358 | 2358 |
2359 void | 2359 static void |
2360 purple_account_clear_current_error(PurpleAccount *account) | 2360 signed_on_cb(PurpleConnection *gc, |
2361 { | 2361 gpointer unused) |
2362 set_current_error(account, NULL); | 2362 { |
2363 } | 2363 PurpleAccount *account = purple_connection_get_account(gc); |
2364 | 2364 purple_account_clear_current_error(account); |
2365 | 2365 } |
2366 void | 2366 void |
2367 purple_accounts_add(PurpleAccount *account) | 2367 purple_accounts_add(PurpleAccount *account) |
2368 { | 2368 { |
2369 g_return_if_fail(account != NULL); | 2369 g_return_if_fail(account != NULL); |
2370 | 2370 |