Mon, 22 Aug 2022 22:05:55 -0500
Create PurpleAuthorizationRequest and use it for notifications.
This replaces the old internal representation of authorization requests as well
as the UI's implementation of their own objects. Everything is now controlled
via PurpleAuthorizationRequest and the UI's display the notification for
interaction.
Testing Done:
Verified the notification and actions work in both finch and pidgin.
Reviewed at https://reviews.imfreedom.org/r/1613/
|
39887
9c8f874c74a0
Clean up all of the license headers
Gary Kramlich <grim@reaperworld.com>
parents:
39759
diff
changeset
|
1 | /* |
|
9c8f874c74a0
Clean up all of the license headers
Gary Kramlich <grim@reaperworld.com>
parents:
39759
diff
changeset
|
2 | * finch |
|
14620
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
3 | * |
|
15931
716b5fac1895
Re-sed the copyright notices so they don't all talk about Purple.
Richard Laager <rlaager@pidgin.im>
parents:
15906
diff
changeset
|
4 | * Finch is the legal property of its developers, whose names are too numerous |
|
14620
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
5 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
6 | * source distribution. |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
7 | * |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
8 | * This program is free software; you can redistribute it and/or modify |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
9 | * it under the terms of the GNU General Public License as published by |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
10 | * the Free Software Foundation; either version 2 of the License, or |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
11 | * (at your option) any later version. |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
12 | * |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
13 | * This program is distributed in the hope that it will be useful, |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
16 | * GNU General Public License for more details. |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
17 | * |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
18 | * You should have received a copy of the GNU General Public License |
|
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
19 | * along with this program; if not, write to the Free Software |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19572
diff
changeset
|
20 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
|
14620
90d599495d65
[gaim-migrate @ 17281]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14484
diff
changeset
|
21 | */ |
|
39887
9c8f874c74a0
Clean up all of the license headers
Gary Kramlich <grim@reaperworld.com>
parents:
39759
diff
changeset
|
22 | |
|
40441
f23c7e772667
Make sure we're not including the gettext macros in header files and deal with the repercussions of that.
Gary Kramlich <grim@reaperworld.com>
parents:
40439
diff
changeset
|
23 | #include <glib/gi18n-lib.h> |
|
f23c7e772667
Make sure we're not including the gettext macros in header files and deal with the repercussions of that.
Gary Kramlich <grim@reaperworld.com>
parents:
40439
diff
changeset
|
24 | |
|
40439
e9838d634d5e
Make sure that internal.h can only be included by libpurple and split out some pieces to purpleprivate.h
Gary Kramlich <grim@reaperworld.com>
parents:
40350
diff
changeset
|
25 | #include <purple.h> |
|
29106
51c7b2177e42
Fix all the remaining files for which internal.h doesn't end up being the first include.
Paul Aurich <darkrain42@pidgin.im>
parents:
28587
diff
changeset
|
26 | |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
27 | #include <gnt.h> |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
28 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
29 | #include "gntaccount.h" |
|
17845
8ac5337e8f6d
Show information about the user requesting authorization.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
17164
diff
changeset
|
30 | #include "gntblist.h" |
|
40616
064ff9f4150a
Don't allow libraries to include their own global header files.
Gary Kramlich <grim@reaperworld.com>
parents:
40511
diff
changeset
|
31 | #include "libfinch.h" |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
32 | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
33 | #include <string.h> |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
34 | |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
35 | typedef struct |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
36 | { |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
37 | GntWidget *window; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
38 | GntWidget *tree; |
|
15878
f52832b611fe
renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents:
15829
diff
changeset
|
39 | } FinchAccountList; |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
40 | |
|
15878
f52832b611fe
renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents:
15829
diff
changeset
|
41 | static FinchAccountList accounts; |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
42 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
43 | typedef struct |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
44 | { |
| 15884 | 45 | PurpleAccount *account; /* NULL for a new account */ |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
46 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
47 | GntWidget *window; |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
48 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
49 | GntWidget *protocol; |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
24861
diff
changeset
|
50 | GntWidget *username; |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
51 | GntWidget *alias; |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
52 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
53 | GntWidget *splits; |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
54 | GList *split_entries; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
55 | |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
56 | GList *protocol_entries; |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
57 | GntWidget *protocols; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
58 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
59 | GntWidget *remember; |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
60 | GntWidget *regserver; |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
61 | } AccountEditDialog; |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
62 | |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
63 | /* This is necessary to close an edit-dialog when an account is deleted */ |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
64 | static GList *accountdialogs; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
65 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
66 | static void |
| 15884 | 67 | account_add(PurpleAccount *account) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
68 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
69 | gnt_tree_add_choice(GNT_TREE(accounts.tree), account, |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
70 | gnt_tree_create_row(GNT_TREE(accounts.tree), |
| 15884 | 71 | purple_account_get_username(account), |
| 72 | purple_account_get_protocol_name(account)), | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
73 | NULL, NULL); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
74 | gnt_tree_set_choice(GNT_TREE(accounts.tree), account, |
|
41392
b5c84f55d5d2
Remove the ui parameter from purple_account_[gs]et_enabled
Gary Kramlich <grim@reaperworld.com>
parents:
41314
diff
changeset
|
75 | purple_account_get_enabled(account)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
76 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
77 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
78 | static void |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
79 | edit_dialog_destroy(AccountEditDialog *dialog) |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
80 | { |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
81 | accountdialogs = g_list_remove(accountdialogs, dialog); |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
82 | g_list_free(dialog->protocol_entries); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
83 | g_list_free(dialog->split_entries); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
84 | g_free(dialog); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
85 | } |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
86 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
87 | static void |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
88 | save_account_cb(AccountEditDialog *dialog) |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
89 | { |
| 15884 | 90 | PurpleAccount *account; |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
91 | PurpleProtocol *protocol; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
92 | const char *value; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
93 | GString *username; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
94 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
95 | /* XXX: Do some error checking first. */ |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
96 | |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
97 | protocol = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(dialog->protocol)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
98 | |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
24861
diff
changeset
|
99 | /* Username && user-splits */ |
|
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
24861
diff
changeset
|
100 | value = gnt_entry_get_text(GNT_ENTRY(dialog->username)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
101 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
102 | if (value == NULL || *value == '\0') |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
103 | { |
|
30496
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
104 | purple_notify_error(NULL, _("Error"), |
|
34449
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
105 | dialog->account ? _("Account was not modified") : |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
106 | _("Account was not added"), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
107 | _("Username of an account must be non-empty."), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
108 | purple_request_cpar_from_account(dialog->account)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
109 | return; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
110 | } |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
111 | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
112 | username = g_string_new(value); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
113 | |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
114 | if (protocol != NULL) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
115 | { |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
116 | GList *iter, *entries, *splits; |
|
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
117 | splits = purple_protocol_get_user_splits(protocol); |
|
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
118 | for (iter = splits, entries = dialog->split_entries; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
119 | iter && entries; iter = iter->next, entries = entries->next) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
120 | { |
| 15884 | 121 | PurpleAccountUserSplit *split = iter->data; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
122 | GntWidget *entry = entries->data; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
123 | |
|
36020
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
124 | value = entry ? gnt_entry_get_text(GNT_ENTRY(entry)) : NULL; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
125 | if (value == NULL || *value == '\0') |
| 15884 | 126 | value = purple_account_user_split_get_default_value(split); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
127 | g_string_append_printf(username, "%c%s", |
| 15884 | 128 | purple_account_user_split_get_separator(split), |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
129 | value); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
130 | } |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
131 | g_list_free_full(splits, |
|
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
132 | (GDestroyNotify)purple_account_user_split_destroy); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
133 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
134 | |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
135 | if(dialog->account == NULL) { |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
136 | PurpleAccountManager *manager = purple_account_manager_get_default(); |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
137 | |
|
36607
7ad7681dcfd8
Use purple_protocol_get_* API instead of protocol->member
Ankit Vani <a@nevitus.org>
parents:
36574
diff
changeset
|
138 | account = purple_account_new(username->str, purple_protocol_get_id(protocol)); |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
139 | purple_account_manager_add(manager, account); |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
140 | } else { |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
141 | account = dialog->account; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
142 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
143 | /* Protocol */ |
|
30496
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
144 | if (purple_account_is_disconnected(account)) { |
|
36607
7ad7681dcfd8
Use purple_protocol_get_* API instead of protocol->member
Ankit Vani <a@nevitus.org>
parents:
36574
diff
changeset
|
145 | purple_account_set_protocol_id(account, purple_protocol_get_id(protocol)); |
|
30496
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
146 | purple_account_set_username(account, username->str); |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
147 | } else { |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
148 | const char *old = purple_account_get_protocol_id(account); |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
149 | char *oldproto; |
| 38358 | 150 | if (!purple_strequal(old, purple_protocol_get_id(protocol))) { |
|
34449
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
151 | purple_notify_error(NULL, _("Error"), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
152 | _("Account was not modified"), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
153 | _("The account's protocol cannot be " |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
154 | "changed while it is connected to the " |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
155 | "server."), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
156 | purple_request_cpar_from_account( |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
157 | account)); |
|
39903
05d2cd3d93df
finch: Fix possible leaks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39901
diff
changeset
|
158 | g_string_free(username, TRUE); |
|
30496
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
159 | return; |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
160 | } |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
161 | |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
162 | oldproto = g_strdup(purple_normalize(account, purple_account_get_username(account))); |
|
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
163 | if (g_utf8_collate(oldproto, purple_normalize(account, username->str))) { |
|
34449
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
164 | purple_notify_error(NULL, _("Error"), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
165 | _("Account was not modified"), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
166 | _("The account's username cannot be " |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
167 | "changed while it is connected to the " |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
168 | "server."), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
169 | purple_request_cpar_from_account( |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
170 | account)); |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
171 | g_free(oldproto); |
|
39918
1c8e11f9274f
Fix several memory leaks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39903
diff
changeset
|
172 | g_string_free(username, TRUE); |
|
30496
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
173 | return; |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
174 | } |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
175 | g_free(oldproto); |
|
30496
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
176 | purple_account_set_username(account, username->str); |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
177 | } |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
178 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
179 | g_string_free(username, TRUE); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
180 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
181 | /* Alias */ |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
182 | value = gnt_entry_get_text(GNT_ENTRY(dialog->alias)); |
|
34589
428e92c79631
Renamed purple_account_[get,set]_alias to purple_account[get,set]_private_alias.
Ankit Vani <a@nevitus.org>
parents:
34111
diff
changeset
|
183 | purple_account_set_private_alias(account, value); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
184 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
185 | /* Remember password and password */ |
| 15884 | 186 | purple_account_set_remember_password(account, |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
187 | gnt_check_box_get_checked(GNT_CHECK_BOX(dialog->remember))); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
188 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
189 | /* Protocol options */ |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
190 | if (protocol) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
191 | { |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
192 | GList *iter, *entries, *opts; |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
193 | |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
194 | opts = purple_protocol_get_account_options(protocol); |
|
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
195 | for (iter = opts, entries = dialog->protocol_entries; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
196 | iter && entries; iter = iter->next, entries = entries->next) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
197 | { |
| 15884 | 198 | PurpleAccountOption *option = iter->data; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
199 | GntWidget *entry = entries->data; |
|
35378
5d9e2581005b
gtk-doc prep: *_get_type() functions are hidden as standard GType-returning funcs, so rename them.
Ankit Vani <a@nevitus.org>
parents:
34955
diff
changeset
|
200 | PurplePrefType type = purple_account_option_get_pref_type(option); |
| 15884 | 201 | const char *setting = purple_account_option_get_setting(option); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
202 | |
| 15884 | 203 | if (type == PURPLE_PREF_STRING) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
204 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
205 | const char *value = gnt_entry_get_text(GNT_ENTRY(entry)); |
| 15884 | 206 | purple_account_set_string(account, setting, value); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
207 | } |
| 15884 | 208 | else if (type == PURPLE_PREF_INT) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
209 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
210 | const char *str = gnt_entry_get_text(GNT_ENTRY(entry)); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
211 | int value = 0; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
212 | if (str) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
213 | value = atoi(str); |
| 15884 | 214 | purple_account_set_int(account, setting, value); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
215 | } |
| 15884 | 216 | else if (type == PURPLE_PREF_BOOLEAN) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
217 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
218 | gboolean value = gnt_check_box_get_checked(GNT_CHECK_BOX(entry)); |
| 15884 | 219 | purple_account_set_bool(account, setting, value); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
220 | } |
| 15884 | 221 | else if (type == PURPLE_PREF_STRING_LIST) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
222 | { |
|
30725
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
223 | gchar *value = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(entry)); |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
224 | purple_account_set_string(account, setting, value); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
225 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
226 | else |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
227 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
228 | g_assert_not_reached(); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
229 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
230 | } |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
231 | g_list_free_full(opts, (GDestroyNotify)purple_account_option_destroy); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
232 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
233 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
234 | /* XXX: Proxy options */ |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
235 | |
|
19572
52e2313b38f8
Focus the modified/created account in the accounts window after modifying/
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19125
diff
changeset
|
236 | if (accounts.window && accounts.tree) { |
|
52e2313b38f8
Focus the modified/created account in the accounts window after modifying/
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19125
diff
changeset
|
237 | gnt_tree_set_selected(GNT_TREE(accounts.tree), account); |
|
52e2313b38f8
Focus the modified/created account in the accounts window after modifying/
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19125
diff
changeset
|
238 | gnt_box_give_focus_to_child(GNT_BOX(accounts.window), accounts.tree); |
|
52e2313b38f8
Focus the modified/created account in the accounts window after modifying/
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19125
diff
changeset
|
239 | } |
|
52e2313b38f8
Focus the modified/created account in the accounts window after modifying/
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19125
diff
changeset
|
240 | |
|
39759
ea1401483849
Rename *_GET_*_IFACE to more standard *_GET_IFACE.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39626
diff
changeset
|
241 | if (protocol && PURPLE_PROTOCOL_IMPLEMENTS(protocol, SERVER, register_user) && |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
242 | gnt_check_box_get_checked(GNT_CHECK_BOX(dialog->regserver))) { |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
243 | purple_account_register(account); |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
244 | } else if (dialog->account == NULL) { |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
245 | /* This is a new account. Set it to the current status. */ |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
246 | /* Xerox from gtkaccount.c :D */ |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
247 | const PurpleSavedStatus *saved_status; |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
248 | saved_status = purple_savedstatus_get_current(); |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
249 | if (saved_status != NULL) { |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
250 | purple_savedstatus_activate_for_account(saved_status, account); |
|
41392
b5c84f55d5d2
Remove the ui parameter from purple_account_[gs]et_enabled
Gary Kramlich <grim@reaperworld.com>
parents:
41314
diff
changeset
|
251 | purple_account_set_enabled(account, TRUE); |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
252 | } |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
253 | } |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
254 | |
|
30496
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
255 | /* In case of a new account, the 'Accounts' window is updated from the account-added |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
256 | * callback. In case of changes in an existing account, we need to explicitly do it |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
257 | * here. |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
258 | */ |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
259 | if (dialog->account != NULL && accounts.window) { |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
260 | gnt_tree_change_text(GNT_TREE(accounts.tree), dialog->account, |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
261 | 0, purple_account_get_username(dialog->account)); |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
262 | gnt_tree_change_text(GNT_TREE(accounts.tree), dialog->account, |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
263 | 1, purple_account_get_protocol_name(dialog->account)); |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
264 | } |
|
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
265 | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
266 | gnt_widget_destroy(dialog->window); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
267 | } |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
268 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
269 | static void |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
270 | update_user_splits(AccountEditDialog *dialog) |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
271 | { |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
272 | GntWidget *hbox; |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
273 | PurpleProtocol *protocol; |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
274 | GList *iter, *entries, *splits; |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
275 | char *username = NULL; |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
276 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
277 | if (dialog->splits) |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
278 | { |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
279 | gnt_box_remove_all(GNT_BOX(dialog->splits)); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
280 | g_list_free(dialog->split_entries); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
281 | } |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
282 | else |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
283 | { |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
284 | dialog->splits = gnt_vbox_new(FALSE); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
285 | gnt_box_set_pad(GNT_BOX(dialog->splits), 0); |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
286 | gnt_box_set_fill(GNT_BOX(dialog->splits), TRUE); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
287 | } |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
288 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
289 | dialog->split_entries = NULL; |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
290 | |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
291 | protocol = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(dialog->protocol)); |
|
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
292 | if (!protocol) |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
293 | return; |
|
31294
73607ab89c6f
Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents:
30725
diff
changeset
|
294 | |
| 15884 | 295 | username = dialog->account ? g_strdup(purple_account_get_username(dialog->account)) : NULL; |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
296 | |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
297 | splits = purple_protocol_get_user_splits(protocol); |
|
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
298 | for (iter = splits; iter; iter = iter->next) |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
299 | { |
| 15884 | 300 | PurpleAccountUserSplit *split = iter->data; |
|
36020
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
301 | GntWidget *entry = NULL; |
|
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
302 | char *buf = NULL; |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
303 | |
|
36020
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
304 | if (!purple_account_user_split_is_constant(split)) { |
|
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
305 | hbox = gnt_hbox_new(TRUE); |
|
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
306 | gnt_box_add_widget(GNT_BOX(dialog->splits), hbox); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
307 | |
|
36020
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
308 | buf = g_strdup_printf("%s:", purple_account_user_split_get_text(split)); |
|
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
309 | gnt_box_add_widget(GNT_BOX(hbox), gnt_label_new(buf)); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
310 | |
|
36020
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
311 | entry = gnt_entry_new(NULL); |
|
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
312 | gnt_box_add_widget(GNT_BOX(hbox), entry); |
|
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
313 | } |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
314 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
315 | dialog->split_entries = g_list_append(dialog->split_entries, entry); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
316 | g_free(buf); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
317 | } |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
318 | |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
319 | for (iter = g_list_last(splits), entries = g_list_last(dialog->split_entries); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
320 | iter && entries; iter = iter->prev, entries = entries->prev) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
321 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
322 | GntWidget *entry = entries->data; |
| 15884 | 323 | PurpleAccountUserSplit *split = iter->data; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
324 | const char *value = NULL; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
325 | char *s; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
326 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
327 | if (dialog->account) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
328 | { |
|
18099
f38988d232f7
jabber can contain @ symbols and / in the resource, so we have to look for
Nathan Walp <nwalp@pidgin.im>
parents:
17401
diff
changeset
|
329 | if(purple_account_user_split_get_reverse(split)) |
|
f38988d232f7
jabber can contain @ symbols and / in the resource, so we have to look for
Nathan Walp <nwalp@pidgin.im>
parents:
17401
diff
changeset
|
330 | s = strrchr(username, purple_account_user_split_get_separator(split)); |
|
f38988d232f7
jabber can contain @ symbols and / in the resource, so we have to look for
Nathan Walp <nwalp@pidgin.im>
parents:
17401
diff
changeset
|
331 | else |
|
f38988d232f7
jabber can contain @ symbols and / in the resource, so we have to look for
Nathan Walp <nwalp@pidgin.im>
parents:
17401
diff
changeset
|
332 | s = strchr(username, purple_account_user_split_get_separator(split)); |
|
f38988d232f7
jabber can contain @ symbols and / in the resource, so we have to look for
Nathan Walp <nwalp@pidgin.im>
parents:
17401
diff
changeset
|
333 | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
334 | if (s != NULL) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
335 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
336 | *s = '\0'; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
337 | s++; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
338 | value = s; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
339 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
340 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
341 | if (value == NULL) |
| 15884 | 342 | value = purple_account_user_split_get_default_value(split); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
343 | |
|
36020
47474e8b92dd
Implement purple_account_user_split_(is|set)_constant, remove unsupported Facebook XMPP features
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
35475
diff
changeset
|
344 | if (value != NULL && entry != NULL) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
345 | gnt_entry_set_text(GNT_ENTRY(entry), value); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
346 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
347 | |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
348 | g_list_free_full(splits, (GDestroyNotify)purple_account_user_split_destroy); |
|
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
349 | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
350 | if (username != NULL) |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
24861
diff
changeset
|
351 | gnt_entry_set_text(GNT_ENTRY(dialog->username), username); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
352 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
353 | g_free(username); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
354 | } |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
355 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
356 | static void |
|
37038
8832d14d7d0c
Rename 'protocol_options' field of PurpleProtocol to more appropriate 'account_options'
Ankit Vani <a@nevitus.org>
parents:
36782
diff
changeset
|
357 | add_account_options(AccountEditDialog *dialog) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
358 | { |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
359 | PurpleProtocol *protocol; |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
360 | GList *iter, *opts; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
361 | GntWidget *vbox, *box; |
| 15884 | 362 | PurpleAccount *account; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
363 | |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
364 | if (dialog->protocols) |
|
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
365 | gnt_box_remove_all(GNT_BOX(dialog->protocols)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
366 | else |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
367 | { |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
368 | dialog->protocols = vbox = gnt_vbox_new(FALSE); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
369 | gnt_box_set_pad(GNT_BOX(vbox), 0); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
370 | gnt_box_set_alignment(GNT_BOX(vbox), GNT_ALIGN_LEFT); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
371 | gnt_box_set_fill(GNT_BOX(vbox), TRUE); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
372 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
373 | |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
374 | if (dialog->protocol_entries) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
375 | { |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
376 | g_list_free(dialog->protocol_entries); |
|
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
377 | dialog->protocol_entries = NULL; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
378 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
379 | |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
380 | vbox = dialog->protocols; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
381 | |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
382 | protocol = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(dialog->protocol)); |
|
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
383 | if (!protocol) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
384 | return; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
385 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
386 | account = dialog->account; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
387 | |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
388 | opts = purple_protocol_get_account_options(protocol); |
|
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
389 | for (iter = opts; iter; iter = iter->next) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
390 | { |
| 15884 | 391 | PurpleAccountOption *option = iter->data; |
|
35378
5d9e2581005b
gtk-doc prep: *_get_type() functions are hidden as standard GType-returning funcs, so rename them.
Ankit Vani <a@nevitus.org>
parents:
34955
diff
changeset
|
392 | PurplePrefType type = purple_account_option_get_pref_type(option); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
393 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
394 | box = gnt_hbox_new(TRUE); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
395 | gnt_box_set_pad(GNT_BOX(box), 0); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
396 | gnt_box_add_widget(GNT_BOX(vbox), box); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
397 | |
| 15884 | 398 | if (type == PURPLE_PREF_BOOLEAN) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
399 | { |
| 15884 | 400 | GntWidget *widget = gnt_check_box_new(purple_account_option_get_text(option)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
401 | gnt_box_add_widget(GNT_BOX(box), widget); |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
402 | dialog->protocol_entries = g_list_append(dialog->protocol_entries, widget); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
403 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
404 | if (account) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
405 | gnt_check_box_set_checked(GNT_CHECK_BOX(widget), |
| 15884 | 406 | purple_account_get_bool(account, |
| 407 | purple_account_option_get_setting(option), | |
| 408 | purple_account_option_get_default_bool(option))); | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
409 | else |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
410 | gnt_check_box_set_checked(GNT_CHECK_BOX(widget), |
| 15884 | 411 | purple_account_option_get_default_bool(option)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
412 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
413 | else |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
414 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
415 | gnt_box_add_widget(GNT_BOX(box), |
| 15884 | 416 | gnt_label_new(purple_account_option_get_text(option))); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
417 | |
| 15884 | 418 | if (type == PURPLE_PREF_STRING_LIST) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
419 | { |
|
30725
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
420 | GntWidget *combo = gnt_combo_box_new(); |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
421 | GList *opt_iter = purple_account_option_get_list(option); |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
422 | const char *dv = purple_account_option_get_default_list_value(option); |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
423 | const char *active = dv; |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
424 | |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
425 | if (account) |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
426 | active = purple_account_get_string(account, |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
427 | purple_account_option_get_setting(option), dv); |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
428 | |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
429 | gnt_box_add_widget(GNT_BOX(box), combo); |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
430 | dialog->protocol_entries = g_list_append(dialog->protocol_entries, combo); |
|
30725
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
431 | |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
432 | for ( ; opt_iter; opt_iter = opt_iter->next) |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
433 | { |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
434 | PurpleKeyValuePair *kvp = opt_iter->data; |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
435 | gnt_combo_box_add_data(GNT_COMBO_BOX(combo), kvp->value, kvp->key); |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
436 | |
|
38256
035f00c4fd87
Replace misused g_str_equal() with purple_strequal()
qarkai <qarkai@gmail.com>
parents:
31294
diff
changeset
|
437 | if (purple_strequal(kvp->value, active)) |
|
30725
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
438 | gnt_combo_box_set_selected(GNT_COMBO_BOX(combo), kvp->value); |
|
4aa8ed98e52a
finch: Add support for string lists as account options
Paul Aurich <darkrain42@pidgin.im>
parents:
30496
diff
changeset
|
439 | } |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
440 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
441 | else |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
442 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
443 | GntWidget *entry = gnt_entry_new(NULL); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
444 | gnt_box_add_widget(GNT_BOX(box), entry); |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
445 | dialog->protocol_entries = g_list_append(dialog->protocol_entries, entry); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
446 | |
| 15884 | 447 | if (type == PURPLE_PREF_STRING) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
448 | { |
| 15884 | 449 | const char *dv = purple_account_option_get_default_string(option); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
450 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
451 | if (account) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
452 | gnt_entry_set_text(GNT_ENTRY(entry), |
| 15884 | 453 | purple_account_get_string(account, |
| 454 | purple_account_option_get_setting(option), dv)); | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
455 | else |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
456 | gnt_entry_set_text(GNT_ENTRY(entry), dv); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
457 | } |
| 15884 | 458 | else if (type == PURPLE_PREF_INT) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
459 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
460 | char str[32]; |
| 15884 | 461 | int value = purple_account_option_get_default_int(option); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
462 | if (account) |
| 15884 | 463 | value = purple_account_get_int(account, |
| 464 | purple_account_option_get_setting(option), value); | |
|
40094
8e6d91e4dd8f
Use g_(v)snprintf so we need less wrappers.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
40044
diff
changeset
|
465 | g_snprintf(str, sizeof(str), "%d", value); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
466 | gnt_entry_set_flag(GNT_ENTRY(entry), GNT_ENTRY_FLAG_INT); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
467 | gnt_entry_set_text(GNT_ENTRY(entry), str); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
468 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
469 | else |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
470 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
471 | g_assert_not_reached(); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
472 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
473 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
474 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
475 | } |
|
40813
71305a7d7423
Modernize PurpleProtocol
Gary Kramlich <grim@reaperworld.com>
parents:
40806
diff
changeset
|
476 | g_list_free_full(opts, (GDestroyNotify)purple_account_option_destroy); |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
477 | |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
478 | /* Show the registration checkbox only in a new account dialog, |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
479 | * and when the selected protocol has the support for it. */ |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
480 | gnt_widget_set_visible(dialog->regserver, account == NULL && |
|
39759
ea1401483849
Rename *_GET_*_IFACE to more standard *_GET_IFACE.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39626
diff
changeset
|
481 | PURPLE_PROTOCOL_IMPLEMENTS(protocol, SERVER, register_user)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
482 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
483 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
484 | static void |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
485 | update_user_options(AccountEditDialog *dialog) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
486 | { |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
487 | PurpleProtocol *protocol; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
488 | |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
489 | protocol = gnt_combo_box_get_selected_data(GNT_COMBO_BOX(dialog->protocol)); |
|
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
490 | if (!protocol) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
491 | return; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
492 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
493 | if (dialog->remember == NULL) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
494 | dialog->remember = gnt_check_box_new(_("Remember password")); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
495 | if (dialog->account) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
496 | gnt_check_box_set_checked(GNT_CHECK_BOX(dialog->remember), |
| 15884 | 497 | purple_account_get_remember_password(dialog->account)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
498 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
499 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
500 | static void |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
501 | protocol_changed_cb(GntWidget *combo, PurpleProtocol *old, PurpleProtocol *new, AccountEditDialog *dialog) |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
502 | { |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
503 | update_user_splits(dialog); |
|
37038
8832d14d7d0c
Rename 'protocol_options' field of PurpleProtocol to more appropriate 'account_options'
Ankit Vani <a@nevitus.org>
parents:
36782
diff
changeset
|
504 | add_account_options(dialog); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
505 | update_user_options(dialog); /* This may not be necessary here */ |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
506 | gnt_box_readjust(GNT_BOX(dialog->window)); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
507 | gnt_widget_draw(dialog->window); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
508 | } |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
509 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
510 | static void |
|
41498
ea40c778bf9d
Fix the add account button in Finch by removing passwords from it.
Gary Kramlich <grim@reaperworld.com>
parents:
41446
diff
changeset
|
511 | edit_account(PurpleAccount *account) |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
512 | { |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
513 | GntWidget *window, *hbox; |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
514 | GntWidget *combo, *button, *entry; |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
515 | GList *list, *iter; |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
516 | AccountEditDialog *dialog; |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
517 | PurpleProtocol *protocol; |
|
40806
51a4fc3b947a
Port finch from the purple_protocols api to the purple_protocol_manager api
Gary Kramlich <grim@reaperworld.com>
parents:
40707
diff
changeset
|
518 | PurpleProtocolManager *protocol_manager = NULL; |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
519 | |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
520 | if (account) |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
521 | { |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
522 | GList *iter; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
523 | for (iter = accountdialogs; iter; iter = iter->next) |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
524 | { |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
525 | AccountEditDialog *dlg = iter->data; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
526 | if (dlg->account == account) |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
527 | return; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
528 | } |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
529 | } |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
530 | |
|
40806
51a4fc3b947a
Port finch from the purple_protocols api to the purple_protocol_manager api
Gary Kramlich <grim@reaperworld.com>
parents:
40707
diff
changeset
|
531 | protocol_manager = purple_protocol_manager_get_default(); |
|
51a4fc3b947a
Port finch from the purple_protocols api to the purple_protocol_manager api
Gary Kramlich <grim@reaperworld.com>
parents:
40707
diff
changeset
|
532 | list = purple_protocol_manager_get_all(protocol_manager); |
|
18611
03e6a4f7514b
Do not crash when people run finch without 'make install'ing first.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18400
diff
changeset
|
533 | if (list == NULL) { |
|
03e6a4f7514b
Do not crash when people run finch without 'make install'ing first.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18400
diff
changeset
|
534 | purple_notify_error(NULL, _("Error"), |
| 36782 | 535 | _("There are no protocols installed."), |
|
34449
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
536 | _("(You probably forgot to 'make install'.)"), |
|
bbcb198650b7
Notify API: extend purple_notify_message with PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34331
diff
changeset
|
537 | purple_request_cpar_from_account(account)); |
|
18611
03e6a4f7514b
Do not crash when people run finch without 'make install'ing first.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18400
diff
changeset
|
538 | return; |
|
03e6a4f7514b
Do not crash when people run finch without 'make install'ing first.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18400
diff
changeset
|
539 | } |
|
03e6a4f7514b
Do not crash when people run finch without 'make install'ing first.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18400
diff
changeset
|
540 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
541 | dialog = g_new0(AccountEditDialog, 1); |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
542 | accountdialogs = g_list_prepend(accountdialogs, dialog); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
543 | |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
544 | dialog->window = window = gnt_vbox_new(FALSE); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
545 | dialog->account = account; |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
546 | gnt_box_set_toplevel(GNT_BOX(window), TRUE); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
547 | gnt_box_set_title(GNT_BOX(window), account ? _("Modify Account") : _("New Account")); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
548 | gnt_box_set_alignment(GNT_BOX(window), GNT_ALIGN_MID); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
549 | gnt_box_set_pad(GNT_BOX(window), 0); |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
550 | gnt_widget_set_name(window, "edit-account"); |
|
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
551 | gnt_box_set_fill(GNT_BOX(window), TRUE); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
552 | |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
553 | hbox = gnt_hbox_new(TRUE); |
|
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
554 | gnt_box_set_pad(GNT_BOX(hbox), 0); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
555 | gnt_box_add_widget(GNT_BOX(window), hbox); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
556 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
557 | dialog->protocol = combo = gnt_combo_box_new(); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
558 | for (iter = list; iter; iter = iter->next) |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
559 | { |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
560 | gnt_combo_box_add_data(GNT_COMBO_BOX(combo), iter->data, |
|
36632
1f0650e7b1b5
Refactored finch and a bit of libpurple plugins to use the new protocol API
Ankit Vani <a@nevitus.org>
parents:
36626
diff
changeset
|
561 | purple_protocol_get_name(PURPLE_PROTOCOL(iter->data))); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
562 | } |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
563 | |
|
40806
51a4fc3b947a
Port finch from the purple_protocols api to the purple_protocol_manager api
Gary Kramlich <grim@reaperworld.com>
parents:
40707
diff
changeset
|
564 | protocol = purple_account_get_protocol(account); |
|
28115
da3d8cf3f2ab
Don't crash trying to modify the settings for an account where the prpl is
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
27829
diff
changeset
|
565 | |
|
36544
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
566 | if (account && protocol) |
|
1bf8b6ef5aea
Renamed PurplePluginProtocolInfo to PurpleProtocol
Ankit Vani <a@nevitus.org>
parents:
36384
diff
changeset
|
567 | gnt_combo_box_set_selected(GNT_COMBO_BOX(combo), protocol); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
568 | else |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
569 | gnt_combo_box_set_selected(GNT_COMBO_BOX(combo), list->data); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
570 | |
|
36545
23b59a16c808
Replaced some _prpl_ stuff with _protocol_
Ankit Vani <a@nevitus.org>
parents:
36544
diff
changeset
|
571 | g_signal_connect(G_OBJECT(combo), "selection-changed", G_CALLBACK(protocol_changed_cb), dialog); |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
572 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
573 | gnt_box_add_widget(GNT_BOX(hbox), gnt_label_new(_("Protocol:"))); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
574 | gnt_box_add_widget(GNT_BOX(hbox), combo); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
575 | |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
576 | hbox = gnt_hbox_new(TRUE); |
|
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
577 | gnt_box_set_pad(GNT_BOX(hbox), 0); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
578 | gnt_box_add_widget(GNT_BOX(window), hbox); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
579 | |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
24861
diff
changeset
|
580 | dialog->username = entry = gnt_entry_new(NULL); |
|
22942
2bf494f8e2a4
Change the string "screen name" to "username" everywhere. I think most
Mark Doliner <markdoliner@pidgin.im>
parents:
22385
diff
changeset
|
581 | gnt_box_add_widget(GNT_BOX(hbox), gnt_label_new(_("Username:"))); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
582 | gnt_box_add_widget(GNT_BOX(hbox), entry); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
583 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
584 | /* User splits */ |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
585 | update_user_splits(dialog); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
586 | gnt_box_add_widget(GNT_BOX(window), dialog->splits); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
587 | |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
588 | hbox = gnt_hbox_new(TRUE); |
|
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
589 | gnt_box_set_pad(GNT_BOX(hbox), 0); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
590 | gnt_box_add_widget(GNT_BOX(window), hbox); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
591 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
592 | dialog->alias = entry = gnt_entry_new(NULL); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
593 | gnt_box_add_widget(GNT_BOX(hbox), gnt_label_new(_("Alias:"))); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
594 | gnt_box_add_widget(GNT_BOX(hbox), entry); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
595 | if (account) |
|
34589
428e92c79631
Renamed purple_account_[get,set]_alias to purple_account[get,set]_private_alias.
Ankit Vani <a@nevitus.org>
parents:
34111
diff
changeset
|
596 | gnt_entry_set_text(GNT_ENTRY(entry), purple_account_get_private_alias(account)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
597 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
598 | /* User options */ |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
599 | update_user_options(dialog); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
600 | gnt_box_add_widget(GNT_BOX(window), dialog->remember); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
601 | |
|
23250
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
602 | /* Register checkbox */ |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
603 | dialog->regserver = gnt_check_box_new(_("Create this account on the server")); |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
604 | gnt_box_add_widget(GNT_BOX(window), dialog->regserver); |
|
f02a5d93cf17
Allow account registration in a new account dialog.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22942
diff
changeset
|
605 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
606 | gnt_box_add_widget(GNT_BOX(window), gnt_line_new(FALSE)); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
607 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
608 | /* The advanced box */ |
|
37038
8832d14d7d0c
Rename 'protocol_options' field of PurpleProtocol to more appropriate 'account_options'
Ankit Vani <a@nevitus.org>
parents:
36782
diff
changeset
|
609 | add_account_options(dialog); |
|
36637
9b0109ae118d
Renamed some prpl stuff to protocol stuff.
Ankit Vani <a@nevitus.org>
parents:
36632
diff
changeset
|
610 | gnt_box_add_widget(GNT_BOX(window), dialog->protocols); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
611 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
612 | /* TODO: Add proxy options */ |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
613 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
614 | /* The button box */ |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
615 | hbox = gnt_hbox_new(FALSE); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
616 | gnt_box_add_widget(GNT_BOX(window), hbox); |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
617 | gnt_box_set_alignment(GNT_BOX(hbox), GNT_ALIGN_MID); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
618 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
619 | button = gnt_button_new(_("Cancel")); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
620 | gnt_box_add_widget(GNT_BOX(hbox), button); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
621 | g_signal_connect_swapped(G_OBJECT(button), "activate", G_CALLBACK(gnt_widget_destroy), window); |
|
30496
2f0380d2a282
Some updates to the account window.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
29106
diff
changeset
|
622 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
623 | button = gnt_button_new(_("Save")); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
624 | gnt_box_add_widget(GNT_BOX(hbox), button); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
625 | g_signal_connect_swapped(G_OBJECT(button), "activate", G_CALLBACK(save_account_cb), dialog); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
626 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
627 | g_signal_connect_swapped(G_OBJECT(window), "destroy", G_CALLBACK(edit_dialog_destroy), dialog); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
628 | |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
629 | gnt_widget_show(window); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
630 | gnt_box_readjust(GNT_BOX(window)); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
631 | gnt_widget_draw(window); |
|
36659
fbaa6f248ebc
Free the list returned by purple_protocols_get_all()
Ankit Vani <a@nevitus.org>
parents:
36637
diff
changeset
|
632 | |
|
fbaa6f248ebc
Free the list returned by purple_protocols_get_all()
Ankit Vani <a@nevitus.org>
parents:
36637
diff
changeset
|
633 | g_list_free(list); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
634 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
635 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
636 | static void |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
637 | add_account_cb(GntWidget *widget, gpointer null) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
638 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
639 | edit_account(NULL); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
640 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
641 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
642 | static void |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
643 | modify_account_cb(GntWidget *widget, GntTree *tree) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
644 | { |
| 15884 | 645 | PurpleAccount *account = gnt_tree_get_selection_data(tree); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
646 | if (!account) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
647 | return; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
648 | edit_account(account); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
649 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
650 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
651 | static void |
| 15884 | 652 | really_delete_account(PurpleAccount *account) |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
653 | { |
|
41514
a96768bacb59
Create PurpleAuthorizationRequest and use it for notifications.
Gary Kramlich <grim@reaperworld.com>
parents:
41498
diff
changeset
|
654 | PurpleNotificationManager *manager = NULL; |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
655 | GList *iter; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
656 | for (iter = accountdialogs; iter; iter = iter->next) |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
657 | { |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
658 | AccountEditDialog *dlg = iter->data; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
659 | if (dlg->account == account) |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
660 | { |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
661 | gnt_widget_destroy(dlg->window); |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
662 | break; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
663 | } |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
664 | } |
|
41514
a96768bacb59
Create PurpleAuthorizationRequest and use it for notifications.
Gary Kramlich <grim@reaperworld.com>
parents:
41498
diff
changeset
|
665 | |
|
a96768bacb59
Create PurpleAuthorizationRequest and use it for notifications.
Gary Kramlich <grim@reaperworld.com>
parents:
41498
diff
changeset
|
666 | manager = purple_notification_manager_get_default(); |
|
a96768bacb59
Create PurpleAuthorizationRequest and use it for notifications.
Gary Kramlich <grim@reaperworld.com>
parents:
41498
diff
changeset
|
667 | purple_notification_manager_remove_with_account(manager, account); |
|
a96768bacb59
Create PurpleAuthorizationRequest and use it for notifications.
Gary Kramlich <grim@reaperworld.com>
parents:
41498
diff
changeset
|
668 | |
| 15884 | 669 | purple_accounts_delete(account); |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
670 | } |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
671 | |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
672 | static void |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
673 | delete_account_cb(GntWidget *widget, GntTree *tree) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
674 | { |
| 15884 | 675 | PurpleAccount *account; |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
676 | char *prompt; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
677 | |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
678 | account = gnt_tree_get_selection_data(tree); |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
679 | if (!account) |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
680 | return; |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
681 | |
|
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
682 | prompt = g_strdup_printf(_("Are you sure you want to delete %s?"), |
| 15884 | 683 | purple_account_get_username(account)); |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
684 | |
|
22385
d14ac3ae2007
The Gnome Human Interface Guidelines say, "if pressing this button by
Mark Doliner <markdoliner@pidgin.im>
parents:
22335
diff
changeset
|
685 | purple_request_action(account, _("Delete Account"), prompt, NULL, |
|
34331
c8486462bb63
Request API refactoring: switch purple_request_action to PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34304
diff
changeset
|
686 | PURPLE_DEFAULT_ACTION_NONE, |
|
c8486462bb63
Request API refactoring: switch purple_request_action to PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34304
diff
changeset
|
687 | purple_request_cpar_from_account(account), account, 2, |
|
c8486462bb63
Request API refactoring: switch purple_request_action to PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34304
diff
changeset
|
688 | _("Delete"), really_delete_account, _("Cancel"), NULL); |
|
14103
bcac61d40461
[gaim-migrate @ 16647]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14086
diff
changeset
|
689 | g_free(prompt); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
690 | } |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
691 | |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
692 | static void |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
693 | account_toggled(GntWidget *widget, void *key, gpointer null) |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
694 | { |
| 15884 | 695 | PurpleAccount *account = key; |
|
26719
314682a2c762
Activate the current status for an account being enabled
Richard Nelson <wabz@pidgin.im>
parents:
26477
diff
changeset
|
696 | gboolean enabled = gnt_tree_get_choice(GNT_TREE(widget), key); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
697 | |
|
26719
314682a2c762
Activate the current status for an account being enabled
Richard Nelson <wabz@pidgin.im>
parents:
26477
diff
changeset
|
698 | if (enabled) |
|
314682a2c762
Activate the current status for an account being enabled
Richard Nelson <wabz@pidgin.im>
parents:
26477
diff
changeset
|
699 | purple_savedstatus_activate_for_account(purple_savedstatus_get_current(), |
|
314682a2c762
Activate the current status for an account being enabled
Richard Nelson <wabz@pidgin.im>
parents:
26477
diff
changeset
|
700 | account); |
|
314682a2c762
Activate the current status for an account being enabled
Richard Nelson <wabz@pidgin.im>
parents:
26477
diff
changeset
|
701 | |
|
41392
b5c84f55d5d2
Remove the ui parameter from purple_account_[gs]et_enabled
Gary Kramlich <grim@reaperworld.com>
parents:
41314
diff
changeset
|
702 | purple_account_set_enabled(account, enabled); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
703 | } |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
704 | |
|
24227
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
705 | static gboolean |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
706 | account_list_key_pressed_cb(GntWidget *widget, const char *text, gpointer null) |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
707 | { |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
708 | GntTree *tree = GNT_TREE(widget); |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
709 | PurpleAccountManager *manager = NULL; |
|
24227
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
710 | PurpleAccount *account = gnt_tree_get_selection_data(tree); |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
711 | int move, pos, count; |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
712 | GList *accounts; |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
713 | |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
714 | if (!account) |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
715 | return FALSE; |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
716 | |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
717 | switch (text[0]) { |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
718 | case '-': |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
719 | move = -1; |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
720 | break; |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
721 | case '=': |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
722 | move = 2; /* XXX: This seems to be a bug in libpurple */ |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
723 | break; |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
724 | default: |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
725 | return FALSE; |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
726 | } |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
727 | |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
728 | manager = purple_account_manager_get_default(); |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
729 | accounts = purple_account_manager_get_all(manager); |
|
24227
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
730 | count = g_list_length(accounts); |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
731 | pos = g_list_index(accounts, account); |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
732 | pos = (move + pos + count + 1) % (count + 1); |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
733 | if(pos >= 0) { |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
734 | purple_account_manager_reorder(manager, account, pos); |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
735 | } |
|
24227
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
736 | |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
737 | /* I don't like this, but recreating the entire list seems to be |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
738 | * the easiest way of doing it */ |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
739 | gnt_tree_remove_all(tree); |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
740 | accounts = purple_account_manager_get_all(manager); |
|
24227
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
741 | for (; accounts; accounts = accounts->next) |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
742 | account_add(accounts->data); |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
743 | gnt_tree_set_selected(tree, account); |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
744 | |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
745 | return TRUE; |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
746 | } |
|
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
747 | |
|
14086
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
748 | static void |
|
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
749 | reset_accounts_win(GntWidget *widget, gpointer null) |
|
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
750 | { |
|
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
751 | accounts.window = NULL; |
|
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
752 | accounts.tree = NULL; |
|
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
753 | } |
|
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
754 | |
|
15878
f52832b611fe
renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents:
15829
diff
changeset
|
755 | void finch_accounts_show_all() |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
756 | { |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
757 | PurpleAccountManager *manager = NULL; |
|
18122
9bf9970c1b6a
disapproval of revision '2d8ea56b90971e7851442d96b7d74ecb4f052126'
Richard Laager <rlaager@pidgin.im>
parents:
18121
diff
changeset
|
758 | GList *iter; |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
759 | GntWidget *box, *button; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
760 | |
|
18400
549820f4725c
If the action-windows are already there, then bring them to front when
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18273
diff
changeset
|
761 | if (accounts.window) { |
|
549820f4725c
If the action-windows are already there, then bring them to front when
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18273
diff
changeset
|
762 | gnt_window_present(accounts.window); |
|
14388
15a44e361ac4
[gaim-migrate @ 17021]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14121
diff
changeset
|
763 | return; |
|
18400
549820f4725c
If the action-windows are already there, then bring them to front when
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18273
diff
changeset
|
764 | } |
|
14388
15a44e361ac4
[gaim-migrate @ 17021]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14121
diff
changeset
|
765 | |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
766 | accounts.window = gnt_vbox_new(FALSE); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
767 | gnt_box_set_toplevel(GNT_BOX(accounts.window), TRUE); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
768 | gnt_box_set_title(GNT_BOX(accounts.window), _("Accounts")); |
|
13996
fa46d71780ff
[gaim-migrate @ 16462]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13978
diff
changeset
|
769 | gnt_box_set_pad(GNT_BOX(accounts.window), 0); |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
770 | gnt_box_set_alignment(GNT_BOX(accounts.window), GNT_ALIGN_MID); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
771 | gnt_widget_set_name(accounts.window, "accounts"); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
772 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
773 | gnt_box_add_widget(GNT_BOX(accounts.window), |
|
13978
70d7030b7f26
[gaim-migrate @ 16418]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13969
diff
changeset
|
774 | gnt_label_new(_("You can enable/disable accounts from the following list."))); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
775 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
776 | gnt_box_add_widget(GNT_BOX(accounts.window), gnt_line_new(FALSE)); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
777 | |
|
14026
ad91ce0effe2
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14005
diff
changeset
|
778 | accounts.tree = gnt_tree_new_with_columns(2); |
|
39617
1d0453799f73
Use GntWidget flag accessor functions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38358
diff
changeset
|
779 | gnt_widget_set_has_border(accounts.tree, FALSE); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
780 | |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
781 | manager = purple_account_manager_get_default(); |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
782 | iter = purple_account_manager_get_all(manager); |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
783 | |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
784 | for(; iter; iter = iter->next) { |
| 15884 | 785 | PurpleAccount *account = iter->data; |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
786 | account_add(account); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
787 | } |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
788 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
789 | g_signal_connect(G_OBJECT(accounts.tree), "toggled", G_CALLBACK(account_toggled), NULL); |
|
24227
bd2641bf0dec
Press - or = in the accounts list to reorder accounts.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23250
diff
changeset
|
790 | g_signal_connect(G_OBJECT(accounts.tree), "key_pressed", G_CALLBACK(account_list_key_pressed_cb), NULL); |
|
22335
f6715418a9a8
Update finch to not touch the internals of PurpleAccount. This also includes a change I made to reduce the Cyclomatic Complexity of one of the functions.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22104
diff
changeset
|
791 | |
|
14026
ad91ce0effe2
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14005
diff
changeset
|
792 | gnt_tree_set_col_width(GNT_TREE(accounts.tree), 0, 40); |
|
ad91ce0effe2
[gaim-migrate @ 16520]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14005
diff
changeset
|
793 | gnt_tree_set_col_width(GNT_TREE(accounts.tree), 1, 10); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
794 | gnt_box_add_widget(GNT_BOX(accounts.window), accounts.tree); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
795 | |
|
14005
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
796 | gnt_box_add_widget(GNT_BOX(accounts.window), gnt_line_new(FALSE)); |
|
198d1658b390
[gaim-migrate @ 16480]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
13996
diff
changeset
|
797 | |
|
14121
3d8804b82150
[gaim-migrate @ 16674]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14103
diff
changeset
|
798 | box = gnt_hbox_new(FALSE); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
799 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
800 | button = gnt_button_new(_("Add")); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
801 | gnt_box_add_widget(GNT_BOX(box), button); |
|
18763
7731e1028071
Add utility function to trigger some button when some key is pressed with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18611
diff
changeset
|
802 | gnt_util_set_trigger_widget(GNT_WIDGET(accounts.tree), GNT_KEY_INS, button); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
803 | g_signal_connect(G_OBJECT(button), "activate", G_CALLBACK(add_account_cb), NULL); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
804 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
805 | button = gnt_button_new(_("Modify")); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
806 | gnt_box_add_widget(GNT_BOX(box), button); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
807 | g_signal_connect(G_OBJECT(button), "activate", G_CALLBACK(modify_account_cb), accounts.tree); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
808 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
809 | button = gnt_button_new(_("Delete")); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
810 | gnt_box_add_widget(GNT_BOX(box), button); |
|
18763
7731e1028071
Add utility function to trigger some button when some key is pressed with
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
18611
diff
changeset
|
811 | gnt_util_set_trigger_widget(GNT_WIDGET(accounts.tree), GNT_KEY_DEL, button); |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
812 | g_signal_connect(G_OBJECT(button), "activate", G_CALLBACK(delete_account_cb), accounts.tree); |
|
22335
f6715418a9a8
Update finch to not touch the internals of PurpleAccount. This also includes a change I made to reduce the Cyclomatic Complexity of one of the functions.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22104
diff
changeset
|
813 | |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
814 | gnt_box_add_widget(GNT_BOX(accounts.window), box); |
|
14086
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
815 | |
|
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
816 | g_signal_connect(G_OBJECT(accounts.window), "destroy", G_CALLBACK(reset_accounts_win), NULL); |
|
22335
f6715418a9a8
Update finch to not touch the internals of PurpleAccount. This also includes a change I made to reduce the Cyclomatic Complexity of one of the functions.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
22104
diff
changeset
|
817 | |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
818 | gnt_widget_show(accounts.window); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
819 | } |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
820 | |
|
19969
53aca1037b2c
Instead of just notifying the user about a connection error, give him options
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19935
diff
changeset
|
821 | void finch_account_dialog_show(PurpleAccount *account) |
|
53aca1037b2c
Instead of just notifying the user about a connection error, give him options
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19935
diff
changeset
|
822 | { |
|
53aca1037b2c
Instead of just notifying the user about a connection error, give him options
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19935
diff
changeset
|
823 | edit_account(account); |
|
53aca1037b2c
Instead of just notifying the user about a connection error, give him options
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19935
diff
changeset
|
824 | } |
|
53aca1037b2c
Instead of just notifying the user about a connection error, give him options
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19935
diff
changeset
|
825 | |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
826 | static gpointer |
|
22104
56970903b8e9
Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@pidgin.im>
parents:
21653
diff
changeset
|
827 | finch_accounts_get_handle(void) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
828 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
829 | static int handle; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
830 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
831 | return &handle; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
832 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
833 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
834 | static void |
| 15884 | 835 | account_added_callback(PurpleAccount *account) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
836 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
837 | if (accounts.window == NULL) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
838 | return; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
839 | account_add(account); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
840 | gnt_widget_draw(accounts.tree); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
841 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
842 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
843 | static void |
| 15884 | 844 | account_removed_callback(PurpleAccount *account) |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
845 | { |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
846 | if (accounts.window == NULL) |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
847 | return; |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
848 | |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
849 | gnt_tree_remove(GNT_TREE(accounts.tree), account); |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
850 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
851 | |
|
17401
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
852 | static void |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
853 | account_abled_cb(PurpleAccount *account, gpointer user_data) |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
854 | { |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
855 | if (accounts.window == NULL) |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
856 | return; |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
857 | gnt_tree_set_choice(GNT_TREE(accounts.tree), account, |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
858 | GPOINTER_TO_INT(user_data)); |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
859 | } |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
860 | |
|
15878
f52832b611fe
renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents:
15829
diff
changeset
|
861 | void finch_accounts_init() |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
862 | { |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
863 | PurpleAccountManager *manager = NULL; |
|
18122
9bf9970c1b6a
disapproval of revision '2d8ea56b90971e7851442d96b7d74ecb4f052126'
Richard Laager <rlaager@pidgin.im>
parents:
18121
diff
changeset
|
864 | GList *iter; |
|
14484
68626467b639
[gaim-migrate @ 17130]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14388
diff
changeset
|
865 | |
| 15884 | 866 | purple_signal_connect(purple_accounts_get_handle(), "account-added", |
|
41314
0dc72eacd8bf
Replace PURPLE_CALLBACK by G_CALLBACK
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41202
diff
changeset
|
867 | finch_accounts_get_handle(), G_CALLBACK(account_added_callback), |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
868 | NULL); |
| 15884 | 869 | purple_signal_connect(purple_accounts_get_handle(), "account-removed", |
|
41314
0dc72eacd8bf
Replace PURPLE_CALLBACK by G_CALLBACK
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41202
diff
changeset
|
870 | finch_accounts_get_handle(), G_CALLBACK(account_removed_callback), |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
871 | NULL); |
|
17401
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
872 | purple_signal_connect(purple_accounts_get_handle(), "account-disabled", |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
873 | finch_accounts_get_handle(), |
|
41314
0dc72eacd8bf
Replace PURPLE_CALLBACK by G_CALLBACK
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41202
diff
changeset
|
874 | G_CALLBACK(account_abled_cb), GINT_TO_POINTER(FALSE)); |
|
17401
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
875 | purple_signal_connect(purple_accounts_get_handle(), "account-enabled", |
|
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
876 | finch_accounts_get_handle(), |
|
41314
0dc72eacd8bf
Replace PURPLE_CALLBACK by G_CALLBACK
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41202
diff
changeset
|
877 | G_CALLBACK(account_abled_cb), GINT_TO_POINTER(TRUE)); |
|
17401
4db9d9d3e928
Finch autoreconnecting (largely copy/paste from pidgin)
Richard Nelson <wabz@pidgin.im>
parents:
17164
diff
changeset
|
878 | |
|
41202
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
879 | manager = purple_account_manager_get_default(); |
|
5c41b36cb13e
port finch to the new AccountManager API
Gary Kramlich <grim@reaperworld.com>
parents:
40813
diff
changeset
|
880 | iter = purple_account_manager_get_all(manager); |
|
17857
bc85241727f8
If there's no account at startup, sohw the 'New Account' dialog too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
17848
diff
changeset
|
881 | if (iter) { |
| 40044 | 882 | for (; iter; iter = iter->next) { |
|
41392
b5c84f55d5d2
Remove the ui parameter from purple_account_[gs]et_enabled
Gary Kramlich <grim@reaperworld.com>
parents:
41314
diff
changeset
|
883 | if (purple_account_get_enabled(iter->data)) |
| 40044 | 884 | break; |
| 885 | } | |
| 886 | if (!iter) | |
|
17857
bc85241727f8
If there's no account at startup, sohw the 'New Account' dialog too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
17848
diff
changeset
|
887 | finch_accounts_show_all(); |
|
bc85241727f8
If there's no account at startup, sohw the 'New Account' dialog too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
17848
diff
changeset
|
888 | } else { |
|
bc85241727f8
If there's no account at startup, sohw the 'New Account' dialog too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
17848
diff
changeset
|
889 | edit_account(NULL); |
|
bc85241727f8
If there's no account at startup, sohw the 'New Account' dialog too.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
17848
diff
changeset
|
890 | finch_accounts_show_all(); |
|
14484
68626467b639
[gaim-migrate @ 17130]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14388
diff
changeset
|
891 | } |
|
14041
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
892 | } |
|
6afba85cfc30
[gaim-migrate @ 16540]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14026
diff
changeset
|
893 | |
|
15878
f52832b611fe
renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents:
15829
diff
changeset
|
894 | void finch_accounts_uninit() |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
895 | { |
|
14086
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
896 | if (accounts.window) |
|
732c14687955
[gaim-migrate @ 16622]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14047
diff
changeset
|
897 | gnt_widget_destroy(accounts.window); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
898 | } |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
899 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
900 | /* The following uiops stuff are copied from gtkaccount.c */ |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
901 | typedef struct |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
902 | { |
| 15884 | 903 | PurpleAccount *account; |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
904 | char *username; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
905 | char *alias; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
906 | } AddUserData; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
907 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
908 | static char * |
| 15884 | 909 | make_info(PurpleAccount *account, PurpleConnection *gc, const char *remote_user, |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
910 | const char *id, const char *alias, const char *msg) |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
911 | { |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
912 | if (msg != NULL && *msg == '\0') |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
913 | msg = NULL; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
914 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
915 | return g_strdup_printf(_("%s%s%s%s has made %s his or her buddy%s%s"), |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
916 | remote_user, |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
917 | (alias != NULL ? " (" : ""), |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
918 | (alias != NULL ? alias : ""), |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
919 | (alias != NULL ? ")" : ""), |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
920 | (id != NULL |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
921 | ? id |
| 15884 | 922 | : (purple_connection_get_display_name(gc) != NULL |
| 923 | ? purple_connection_get_display_name(gc) | |
| 924 | : purple_account_get_username(account))), | |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
925 | (msg != NULL ? ": " : "."), |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
926 | (msg != NULL ? msg : "")); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
927 | } |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
928 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
929 | static void |
|
14047
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
930 | free_add_user_data(AddUserData *data) |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
931 | { |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
932 | g_free(data->username); |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
933 | |
|
37426
6fd4989b77e4
The last of the NULL-checks before free()
Michael McConville <mmcco@mykolab.com>
parents:
37144
diff
changeset
|
934 | g_free(data->alias); |
|
14047
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
935 | |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
936 | g_free(data); |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
937 | } |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
938 | |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
939 | static void |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
940 | add_user_cb(AddUserData *data) |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
941 | { |
| 15884 | 942 | PurpleConnection *gc = purple_account_get_connection(data->account); |
|
14047
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
943 | |
|
18122
9bf9970c1b6a
disapproval of revision '2d8ea56b90971e7851442d96b7d74ecb4f052126'
Richard Laager <rlaager@pidgin.im>
parents:
18121
diff
changeset
|
944 | if (g_list_find(purple_connections_get_all(), gc)) |
|
14047
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
945 | { |
| 15884 | 946 | purple_blist_request_add_buddy(data->account, data->username, |
|
14047
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
947 | NULL, data->alias); |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
948 | } |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
949 | |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
950 | free_add_user_data(data); |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
951 | } |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
952 | |
|
764a70ebfdc5
[gaim-migrate @ 16555]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14042
diff
changeset
|
953 | static void |
| 15884 | 954 | request_add(PurpleAccount *account, const char *remote_user, |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
955 | const char *id, const char *alias, |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
956 | const char *msg) |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
957 | { |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
958 | char *buffer; |
| 15884 | 959 | PurpleConnection *gc; |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
960 | AddUserData *data; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
961 | |
| 15884 | 962 | gc = purple_account_get_connection(account); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
963 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
964 | data = g_new0(AddUserData, 1); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
965 | data->account = account; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
966 | data->username = g_strdup(remote_user); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
967 | data->alias = (alias != NULL ? g_strdup(alias) : NULL); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
968 | |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
969 | buffer = make_info(account, gc, remote_user, id, alias, msg); |
|
34331
c8486462bb63
Request API refactoring: switch purple_request_action to PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34304
diff
changeset
|
970 | purple_request_action(NULL, NULL, _("Add buddy to your list?"), buffer, |
|
c8486462bb63
Request API refactoring: switch purple_request_action to PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34304
diff
changeset
|
971 | PURPLE_DEFAULT_ACTION_NONE, |
|
c8486462bb63
Request API refactoring: switch purple_request_action to PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34304
diff
changeset
|
972 | purple_request_cpar_from_account(account), data, 2, |
|
c8486462bb63
Request API refactoring: switch purple_request_action to PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34304
diff
changeset
|
973 | _("Add"), G_CALLBACK(add_user_cb), |
|
c8486462bb63
Request API refactoring: switch purple_request_action to PurpleRequestCommonParameters
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
34304
diff
changeset
|
974 | _("Cancel"), G_CALLBACK(free_add_user_data)); |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
975 | g_free(buffer); |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
976 | } |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
977 | |
|
15829
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
978 | /* Copied from gtkaccount.c */ |
|
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
979 | typedef struct { |
| 15884 | 980 | PurpleAccountRequestAuthorizationCb auth_cb; |
| 981 | PurpleAccountRequestAuthorizationCb deny_cb; | |
|
15829
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
982 | void *data; |
|
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
983 | char *username; |
|
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
984 | char *alias; |
| 15884 | 985 | PurpleAccount *account; |
|
15829
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
986 | } auth_and_add; |
|
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
987 | |
|
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
988 | static void |
|
15878
f52832b611fe
renamed gaim-text to finch
Sean Egan <seanegan@pidgin.im>
parents:
15829
diff
changeset
|
989 | finch_request_close(void *uihandle) |
|
15829
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
990 | { |
| 15884 | 991 | purple_request_close(PURPLE_REQUEST_ACTION, uihandle); |
|
15829
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
992 | } |
|
ee5af14dc815
Add request_authorize to gaim-text's account ui ops
Richard Nelson <wabz@pidgin.im>
parents:
15781
diff
changeset
|
993 | |
| 15884 | 994 | static PurpleAccountUiOps ui_ops = |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
995 | { |
|
40707
f84f2b4ef0e5
Fix some warnings about missing braces by moving to struct initializers
Gary Kramlich <grim@reaperworld.com>
parents:
40694
diff
changeset
|
996 | .request_add = request_add, |
|
f84f2b4ef0e5
Fix some warnings about missing braces by moving to struct initializers
Gary Kramlich <grim@reaperworld.com>
parents:
40694
diff
changeset
|
997 | .close_account_request = finch_request_close, |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
998 | }; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
999 | |
| 15884 | 1000 | PurpleAccountUiOps *finch_accounts_get_ui_ops() |
|
13969
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
1001 | { |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
1002 | return &ui_ops; |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
1003 | } |
|
0541f389442e
[gaim-migrate @ 16402]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
diff
changeset
|
1004 |