Tue, 15 Oct 2024 00:47:42 -0500
Port prefs to AdwSwitchRow
Now that we depend on Adwaita 1.4, we can flip the switch on using these (pun intended).
This also simplifies some extra tracking we needed to do for activations and focus, since the Adwaita widgets do that for us.
Testing Done:
Opened prefs, confirmed all the switches were there, and toggled them all without any warnings.
Also used the mnemonics to toggle the switches from the keyboard.
Reviewed at https://reviews.imfreedom.org/r/3582/
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
1 | /* |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
2 | * Purple - Internet Messaging Library |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
3 | * Copyright (C) Pidgin Developers <devel@pidgin.im> |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
4 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
5 | * Purple is the legal property of its developers, whose names are too numerous |
|
42594
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
6 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
7 | * source distribution. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
8 | * |
|
42594
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
9 | * This library is free software; you can redistribute it and/or modify it |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
10 | * under the terms of the GNU General Public License as published by the Free |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
11 | * Software Foundation; either version 2 of the License, or (at your option) |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
12 | * any later version. |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
13 | * |
|
42594
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
14 | * This library is distributed in the hope that it will be useful, but WITHOUT |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
15 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
16 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
17 | * more details. |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
18 | * |
|
42594
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
19 | * You should have received a copy of the GNU General Public License along with |
|
eddde70cedd8
Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents:
42576
diff
changeset
|
20 | * this library; if not, see <https://www.gnu.org/licenses/>. |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
21 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
22 | |
|
42344
c51d37734155
Rename account.[ch] to purpleaccount.[ch]
Gary Kramlich <grim@reaperworld.com>
parents:
42330
diff
changeset
|
23 | #include "purpleaccount.h" |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
24 | #include "purplecontactinfo.h" |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
25 | #include "purpleenums.h" |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
26 | #include "purplefiletransfer.h" |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
27 | #include "util.h" |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
28 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
29 | enum { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
30 | PROP_0, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
31 | PROP_ACCOUNT, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
32 | PROP_REMOTE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
33 | PROP_INITIATOR, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
34 | PROP_CANCELLABLE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
35 | PROP_STATE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
36 | PROP_ERROR, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
37 | PROP_LOCAL_FILE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
38 | PROP_FILENAME, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
39 | PROP_FILE_SIZE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
40 | PROP_CONTENT_TYPE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
41 | PROP_MESSAGE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
42 | N_PROPERTIES, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
43 | }; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
44 | static GParamSpec *properties[N_PROPERTIES] = {NULL, }; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
45 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
46 | struct _PurpleFileTransfer { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
47 | GObject parent; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
48 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
49 | PurpleAccount *account; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
50 | PurpleContactInfo *remote; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
51 | PurpleContactInfo *initiator; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
52 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
53 | GCancellable *cancellable; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
54 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
55 | PurpleFileTransferState state; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
56 | GError *error; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
57 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
58 | GFile *local_file; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
59 | char *filename; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
60 | guint64 file_size; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
61 | char *content_type; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
62 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
63 | char *message; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
64 | }; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
65 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
66 | /****************************************************************************** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
67 | * Helpers |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
68 | *****************************************************************************/ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
69 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
70 | purple_file_transfer_set_account(PurpleFileTransfer *transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
71 | PurpleAccount *account) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
72 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
73 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
74 | g_return_if_fail(PURPLE_IS_ACCOUNT(account)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
75 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
76 | if(g_set_object(&transfer->account, account)) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
77 | g_object_notify_by_pspec(G_OBJECT(transfer), properties[PROP_ACCOUNT]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
78 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
79 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
80 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
81 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
82 | purple_file_transfer_set_remote(PurpleFileTransfer *transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
83 | PurpleContactInfo *remote) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
84 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
85 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
86 | g_return_if_fail(PURPLE_IS_CONTACT_INFO(remote)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
87 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
88 | if(g_set_object(&transfer->remote, remote)) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
89 | g_object_notify_by_pspec(G_OBJECT(transfer), properties[PROP_REMOTE]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
90 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
91 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
92 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
93 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
94 | purple_file_transfer_set_initiator(PurpleFileTransfer *transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
95 | PurpleContactInfo *initiator) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
96 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
97 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
98 | g_return_if_fail(PURPLE_IS_CONTACT_INFO(initiator)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
99 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
100 | if(g_set_object(&transfer->initiator, initiator)) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
101 | g_object_notify_by_pspec(G_OBJECT(transfer), |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
102 | properties[PROP_INITIATOR]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
103 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
104 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
105 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
106 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
107 | purple_file_transfer_set_filename(PurpleFileTransfer *transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
108 | const char *filename) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
109 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
110 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
111 | g_return_if_fail(!purple_strempty(filename)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
112 | |
|
42767
8cf1d11b59c1
Use g_set_str everywhere
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42614
diff
changeset
|
113 | if(g_set_str(&transfer->filename, filename)) { |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
114 | g_object_notify_by_pspec(G_OBJECT(transfer), |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
115 | properties[PROP_FILENAME]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
116 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
117 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
118 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
119 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
120 | purple_file_transfer_set_file_size(PurpleFileTransfer *transfer, guint64 size) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
121 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
122 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
123 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
124 | if(transfer->file_size != size) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
125 | transfer->file_size = size; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
126 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
127 | g_object_notify_by_pspec(G_OBJECT(transfer), |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
128 | properties[PROP_FILE_SIZE]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
129 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
130 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
131 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
132 | static char * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
133 | purple_file_transfer_get_local_file_name_and_size(GFile *local_file, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
134 | guint64 *file_size) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
135 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
136 | GError *error = NULL; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
137 | GFileInfo *info = NULL; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
138 | const char *display_name = NULL; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
139 | char *ret = NULL; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
140 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
141 | info = g_file_query_info(local_file, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
142 | G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME "," |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
143 | G_FILE_ATTRIBUTE_STANDARD_SIZE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
144 | G_FILE_QUERY_INFO_NONE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
145 | NULL, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
146 | &error); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
147 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
148 | if(error != NULL) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
149 | char *path = g_file_get_path(local_file); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
150 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
151 | g_warning("failed to query %s: %s", path, error->message); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
152 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
153 | g_clear_pointer(&path, g_free); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
154 | g_clear_error(&error); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
155 | g_clear_object(&info); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
156 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
157 | return NULL; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
158 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
159 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
160 | display_name = g_file_info_get_attribute_string(info, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
161 | G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
162 | /* display_name is only valid as long as the GFileInfo object is around, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
163 | * but it is freed before this function returns, so we need to dupe the |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
164 | * display name attribute to return it. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
165 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
166 | ret = g_strdup(display_name); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
167 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
168 | if(file_size != NULL) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
169 | *file_size = g_file_info_get_attribute_uint64(info, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
170 | G_FILE_ATTRIBUTE_STANDARD_SIZE); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
171 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
172 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
173 | g_clear_object(&info); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
174 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
175 | return ret; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
176 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
177 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
178 | /****************************************************************************** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
179 | * GObject Implementation |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
180 | *****************************************************************************/ |
|
42576
ab1ca778ddb2
Make sure all of the final types in libpurple are defined as such
Gary Kramlich <grim@reaperworld.com>
parents:
42344
diff
changeset
|
181 | G_DEFINE_FINAL_TYPE(PurpleFileTransfer, purple_file_transfer, G_TYPE_OBJECT) |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
182 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
183 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
184 | purple_file_transfer_finalize(GObject *obj) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
185 | PurpleFileTransfer *transfer = PURPLE_FILE_TRANSFER(obj); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
186 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
187 | g_clear_object(&transfer->account); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
188 | g_clear_object(&transfer->remote); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
189 | g_clear_object(&transfer->initiator); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
190 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
191 | g_clear_object(&transfer->cancellable); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
192 | g_clear_error(&transfer->error); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
193 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
194 | g_clear_object(&transfer->local_file); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
195 | g_clear_pointer(&transfer->filename, g_free); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
196 | g_clear_pointer(&transfer->content_type, g_free); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
197 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
198 | g_clear_pointer(&transfer->message, g_free); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
199 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
200 | G_OBJECT_CLASS(purple_file_transfer_parent_class)->finalize(obj); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
201 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
202 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
203 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
204 | purple_file_transfer_get_property(GObject *obj, guint param_id, GValue *value, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
205 | GParamSpec *pspec) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
206 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
207 | PurpleFileTransfer *transfer = PURPLE_FILE_TRANSFER(obj); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
208 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
209 | switch(param_id) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
210 | case PROP_ACCOUNT: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
211 | g_value_set_object(value, purple_file_transfer_get_account(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
212 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
213 | case PROP_REMOTE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
214 | g_value_set_object(value, purple_file_transfer_get_remote(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
215 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
216 | case PROP_INITIATOR: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
217 | g_value_set_object(value, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
218 | purple_file_transfer_get_initiator(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
219 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
220 | case PROP_CANCELLABLE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
221 | g_value_set_object(value, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
222 | purple_file_transfer_get_cancellable(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
223 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
224 | case PROP_STATE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
225 | g_value_set_enum(value, purple_file_transfer_get_state(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
226 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
227 | case PROP_ERROR: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
228 | g_value_set_boxed(value, purple_file_transfer_get_error(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
229 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
230 | case PROP_LOCAL_FILE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
231 | g_value_set_object(value, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
232 | purple_file_transfer_get_local_file(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
233 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
234 | case PROP_FILENAME: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
235 | g_value_set_string(value, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
236 | purple_file_transfer_get_filename(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
237 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
238 | case PROP_FILE_SIZE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
239 | g_value_set_uint64(value, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
240 | purple_file_transfer_get_file_size(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
241 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
242 | case PROP_CONTENT_TYPE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
243 | g_value_set_string(value, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
244 | purple_file_transfer_get_content_type(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
245 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
246 | case PROP_MESSAGE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
247 | g_value_set_string(value, purple_file_transfer_get_message(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
248 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
249 | default: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
250 | G_OBJECT_WARN_INVALID_PROPERTY_ID(obj, param_id, pspec); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
251 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
252 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
253 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
254 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
255 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
256 | purple_file_transfer_set_property(GObject *obj, guint param_id, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
257 | const GValue *value, GParamSpec *pspec) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
258 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
259 | PurpleFileTransfer *transfer = PURPLE_FILE_TRANSFER(obj); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
260 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
261 | switch(param_id) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
262 | case PROP_ACCOUNT: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
263 | purple_file_transfer_set_account(transfer, g_value_get_object(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
264 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
265 | case PROP_REMOTE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
266 | purple_file_transfer_set_remote(transfer, g_value_get_object(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
267 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
268 | case PROP_INITIATOR: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
269 | purple_file_transfer_set_initiator(transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
270 | g_value_get_object(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
271 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
272 | case PROP_STATE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
273 | purple_file_transfer_set_state(transfer, g_value_get_enum(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
274 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
275 | case PROP_ERROR: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
276 | purple_file_transfer_set_error(transfer, g_value_get_boxed(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
277 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
278 | case PROP_LOCAL_FILE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
279 | purple_file_transfer_set_local_file(transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
280 | g_value_get_object(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
281 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
282 | case PROP_FILENAME: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
283 | purple_file_transfer_set_filename(transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
284 | g_value_get_string(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
285 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
286 | case PROP_FILE_SIZE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
287 | purple_file_transfer_set_file_size(transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
288 | g_value_get_uint64(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
289 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
290 | case PROP_CONTENT_TYPE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
291 | purple_file_transfer_set_content_type(transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
292 | g_value_get_string(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
293 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
294 | case PROP_MESSAGE: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
295 | purple_file_transfer_set_message(transfer, g_value_get_string(value)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
296 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
297 | default: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
298 | G_OBJECT_WARN_INVALID_PROPERTY_ID(obj, param_id, pspec); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
299 | break; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
300 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
301 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
302 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
303 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
304 | purple_file_transfer_init(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
305 | transfer->cancellable = g_cancellable_new(); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
306 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
307 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
308 | static void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
309 | purple_file_transfer_class_init(PurpleFileTransferClass *klass) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
310 | GObjectClass *obj_class = G_OBJECT_CLASS(klass); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
311 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
312 | obj_class->finalize = purple_file_transfer_finalize; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
313 | obj_class->get_property = purple_file_transfer_get_property; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
314 | obj_class->set_property = purple_file_transfer_set_property; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
315 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
316 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
317 | * PurpleFileTransfer:account: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
318 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
319 | * The account that this file transfer is for. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
320 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
321 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
322 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
323 | properties[PROP_ACCOUNT] = g_param_spec_object( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
324 | "account", "account", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
325 | "The account that this file transfer is for.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
326 | PURPLE_TYPE_ACCOUNT, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
327 | G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
328 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
329 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
330 | * PurpleFileTransfer:remote: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
331 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
332 | * The [class@ContactInfo] for the remote user of this file transfer. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
333 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
334 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
335 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
336 | properties[PROP_REMOTE] = g_param_spec_object( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
337 | "remote", "remote", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
338 | "The contact info for the remote user.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
339 | PURPLE_TYPE_CONTACT_INFO, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
340 | G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
341 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
342 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
343 | * PurpleFileTransfer:initiator: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
344 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
345 | * The [class@ContactInfo] that initiated this file transfer. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
346 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
347 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
348 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
349 | properties[PROP_INITIATOR] = g_param_spec_object( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
350 | "initiator", "initiator", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
351 | "The contact info of the user that initiated the file transfer.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
352 | PURPLE_TYPE_CONTACT_INFO, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
353 | G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
354 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
355 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
356 | * PurpleFileTransfer:cancellable: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
357 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
358 | * The [class@Gio.Cancellable] for this transfer. It may be used to cancel |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
359 | * the file transfer at any time. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
360 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
361 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
362 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
363 | properties[PROP_CANCELLABLE] = g_param_spec_object( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
364 | "cancellable", "cancellable", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
365 | "The cancellable for this transfer.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
366 | G_TYPE_CANCELLABLE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
367 | G_PARAM_READABLE | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
368 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
369 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
370 | * PurpleFileTransfer:state: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
371 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
372 | * The state of the transfer. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
373 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
374 | * This is typically only set by the protocol plugin that is performing the |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
375 | * file transfer. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
376 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
377 | * If the state is set to error then [property@FileTransfer:error] |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
378 | * should be set. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
379 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
380 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
381 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
382 | properties[PROP_STATE] = g_param_spec_enum( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
383 | "state", "state", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
384 | "The state of the transfer.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
385 | PURPLE_TYPE_FILE_TRANSFER_STATE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
386 | PURPLE_FILE_TRANSFER_STATE_UNKNOWN, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
387 | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
388 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
389 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
390 | * PurpleFileTransfer:error: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
391 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
392 | * A #GError representing the failure of the transfer. This should only be |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
393 | * set if [property@FileTransfer:state] is set to error. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
394 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
395 | * This should be used to tell the user about network issues or if the |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
396 | * transfer was cancelled and so on. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
397 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
398 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
399 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
400 | properties[PROP_ERROR] = g_param_spec_boxed( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
401 | "error", "error", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
402 | "The error that caused the transfer to fail.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
403 | G_TYPE_ERROR, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
404 | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
405 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
406 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
407 | * PurpleFileTransfer:local-file: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
408 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
409 | * The local file that is being sent or received. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
410 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
411 | * When sending a file, this is the file that's being sent. When receiving |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
412 | * a file, this is the file where the transfer is being written. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
413 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
414 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
415 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
416 | properties[PROP_LOCAL_FILE] = g_param_spec_object( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
417 | "local-file", "local-file", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
418 | "The local file for the transfer.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
419 | G_TYPE_FILE, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
420 | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
421 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
422 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
423 | * PurpleFileTransfer:filename: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
424 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
425 | * The base filename for the transfer. This is used as the default filename |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
426 | * for the receiving side. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
427 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
428 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
429 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
430 | properties[PROP_FILENAME] = g_param_spec_string( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
431 | "filename", "filename", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
432 | "The base filename for the transfer.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
433 | NULL, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
434 | G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
435 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
436 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
437 | * PurpleFileTransfer:file-size: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
438 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
439 | * The size of the file in bytes. A value of %0 typically means the size is |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
440 | * unknown, but it is possible to transfer empty files as well. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
441 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
442 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
443 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
444 | properties[PROP_FILE_SIZE] = g_param_spec_uint64( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
445 | "file-size", "file-size", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
446 | "The size of the file in bytes.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
447 | 0, G_MAXUINT64, 0, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
448 | G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
449 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
450 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
451 | * PurpleFileTransfer:content-type: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
452 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
453 | * The content or media type of the file that's being transferred. This is |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
454 | * meant to be used as a hint to user interfaces so they can provide |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
455 | * previews or appropriate actions for the files. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
456 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
457 | * See the [Media Types page](https://www.iana.org/assignments/media-types/media-types.xhtml) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
458 | * for more information. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
459 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
460 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
461 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
462 | properties[PROP_CONTENT_TYPE] = g_param_spec_string( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
463 | "content-type", "content-type", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
464 | "The content type of the file being transferred.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
465 | NULL, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
466 | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
467 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
468 | /** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
469 | * PurpleFileTransfer:message: |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
470 | * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
471 | * Some protocols support sending a message with the file transfer. This |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
472 | * field is to hold that message. |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
473 | * |
|
42614
b75a5bbf6c35
Remove the micro version from since tags for libpurple part 3
Gary Kramlich <grim@reaperworld.com>
parents:
42594
diff
changeset
|
474 | * Since: 3.0 |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
475 | */ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
476 | properties[PROP_MESSAGE] = g_param_spec_string( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
477 | "message", "message", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
478 | "The message to send with the transfer.", |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
479 | NULL, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
480 | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
481 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
482 | g_object_class_install_properties(obj_class, N_PROPERTIES, properties); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
483 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
484 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
485 | /****************************************************************************** |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
486 | * Public API |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
487 | *****************************************************************************/ |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
488 | PurpleFileTransfer * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
489 | purple_file_transfer_new_send(PurpleAccount *account, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
490 | PurpleContactInfo *remote, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
491 | GFile *local_file) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
492 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
493 | PurpleFileTransfer *transfer = NULL; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
494 | gchar *filename = NULL; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
495 | guint64 file_size = 0; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
496 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
497 | g_return_val_if_fail(PURPLE_IS_ACCOUNT(account), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
498 | g_return_val_if_fail(PURPLE_IS_CONTACT_INFO(remote), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
499 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
500 | filename = purple_file_transfer_get_local_file_name_and_size(local_file, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
501 | &file_size); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
502 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
503 | transfer = g_object_new( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
504 | PURPLE_TYPE_FILE_TRANSFER, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
505 | "account", account, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
506 | "remote", remote, |
|
42805
3e77e81168a5
Update libpurple to use get id and username directly on PurpleAccount
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
507 | "initiator", purple_account_get_contact_info(account), |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
508 | "local-file", local_file, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
509 | "filename", filename, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
510 | "file-size", file_size, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
511 | NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
512 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
513 | g_clear_pointer(&filename, g_free); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
514 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
515 | return transfer; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
516 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
517 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
518 | PurpleFileTransfer * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
519 | purple_file_transfer_new_receive(PurpleAccount *account, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
520 | PurpleContactInfo *remote, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
521 | const char *filename, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
522 | guint64 file_size) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
523 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
524 | g_return_val_if_fail(PURPLE_IS_ACCOUNT(account), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
525 | g_return_val_if_fail(PURPLE_IS_CONTACT_INFO(remote), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
526 | g_return_val_if_fail(!purple_strempty(filename), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
527 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
528 | return g_object_new( |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
529 | PURPLE_TYPE_FILE_TRANSFER, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
530 | "account", account, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
531 | "remote", remote, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
532 | "initiator", remote, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
533 | "filename", filename, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
534 | "file-size", file_size, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
535 | NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
536 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
537 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
538 | PurpleAccount * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
539 | purple_file_transfer_get_account(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
540 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
541 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
542 | return transfer->account; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
543 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
544 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
545 | PurpleContactInfo * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
546 | purple_file_transfer_get_remote(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
547 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
548 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
549 | return transfer->remote; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
550 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
551 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
552 | PurpleContactInfo * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
553 | purple_file_transfer_get_initiator(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
554 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
555 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
556 | return transfer->initiator; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
557 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
558 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
559 | GCancellable * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
560 | purple_file_transfer_get_cancellable(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
561 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
562 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
563 | return transfer->cancellable; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
564 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
565 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
566 | PurpleFileTransferState |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
567 | purple_file_transfer_get_state(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
568 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
569 | PURPLE_FILE_TRANSFER_STATE_UNKNOWN); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
570 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
571 | return transfer->state; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
572 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
573 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
574 | void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
575 | purple_file_transfer_set_state(PurpleFileTransfer *transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
576 | PurpleFileTransferState state) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
577 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
578 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
579 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
580 | if(transfer->state != state) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
581 | transfer->state = state; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
582 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
583 | g_object_notify_by_pspec(G_OBJECT(transfer), properties[PROP_STATE]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
584 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
585 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
586 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
587 | GError * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
588 | purple_file_transfer_get_error(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
589 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
590 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
591 | return transfer->error; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
592 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
593 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
594 | void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
595 | purple_file_transfer_set_error(PurpleFileTransfer *transfer, GError *error) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
596 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
597 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
598 | if(transfer->error != error) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
599 | g_clear_error(&transfer->error); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
600 | transfer->error = error; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
601 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
602 | g_object_notify_by_pspec(G_OBJECT(transfer), properties[PROP_ERROR]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
603 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
604 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
605 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
606 | GFile * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
607 | purple_file_transfer_get_local_file(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
608 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
609 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
610 | return transfer->local_file; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
611 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
612 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
613 | void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
614 | purple_file_transfer_set_local_file(PurpleFileTransfer *transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
615 | GFile *local_file) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
616 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
617 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
618 | g_return_if_fail(G_IS_FILE(local_file)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
619 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
620 | if(g_set_object(&transfer->local_file, local_file)) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
621 | g_object_notify_by_pspec(G_OBJECT(transfer), |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
622 | properties[PROP_LOCAL_FILE]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
623 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
624 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
625 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
626 | const char * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
627 | purple_file_transfer_get_filename(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
628 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
629 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
630 | return transfer->filename; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
631 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
632 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
633 | guint64 |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
634 | purple_file_transfer_get_file_size(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
635 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), 0); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
636 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
637 | return transfer->file_size; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
638 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
639 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
640 | const char * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
641 | purple_file_transfer_get_content_type(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
642 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
643 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
644 | return transfer->content_type; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
645 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
646 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
647 | void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
648 | purple_file_transfer_set_content_type(PurpleFileTransfer *transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
649 | const char *content_type) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
650 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
651 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
652 | |
|
42767
8cf1d11b59c1
Use g_set_str everywhere
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42614
diff
changeset
|
653 | if(g_set_str(&transfer->content_type, content_type)) { |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
654 | g_object_notify_by_pspec(G_OBJECT(transfer), |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
655 | properties[PROP_CONTENT_TYPE]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
656 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
657 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
658 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
659 | const char * |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
660 | purple_file_transfer_get_message(PurpleFileTransfer *transfer) { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
661 | g_return_val_if_fail(PURPLE_IS_FILE_TRANSFER(transfer), NULL); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
662 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
663 | return transfer->message; |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
664 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
665 | |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
666 | void |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
667 | purple_file_transfer_set_message(PurpleFileTransfer *transfer, |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
668 | const char *message) |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
669 | { |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
670 | g_return_if_fail(PURPLE_IS_FILE_TRANSFER(transfer)); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
671 | |
|
42767
8cf1d11b59c1
Use g_set_str everywhere
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42614
diff
changeset
|
672 | if(g_set_str(&transfer->message, message)) { |
|
42330
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
673 | g_object_notify_by_pspec(G_OBJECT(transfer), properties[PROP_MESSAGE]); |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
674 | } |
|
a2fa1d2d2452
Implement PurpleFileTransfer
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
675 | } |