diff options
Diffstat (limited to 'src')
95 files changed, 6236 insertions, 6246 deletions
diff --git a/src/bencode.c b/src/bencode.c index c6eb9e0..c9c9b6a 100644 --- a/src/bencode.c +++ b/src/bencode.c @@ -24,8 +24,8 @@ * into the public domain as well). */ -#include <stdlib.h> /* malloc() realloc() free() strtoll() */ -#include <string.h> /* memset() */ +#include <stdlib.h> /* malloc() realloc() free() strtoll() */ +#include <string.h> /* memset() */ #include <ctype.h> #include <glib.h> @@ -36,7 +36,7 @@ static be_node *be_alloc(be_type type) { be_node *ret = g_malloc0(sizeof(be_node)); if (ret) - ret->type = type; + ret->type = type; return ret; } @@ -53,7 +53,7 @@ gint64 be_str_len(be_node * node) { gint64 ret = 0; if (node->val.s) - memcpy(&ret, node->val.s - sizeof(ret), sizeof(ret)); + memcpy(&ret, node->val.s - sizeof(ret), sizeof(ret)); return ret; } @@ -66,30 +66,30 @@ static char *_be_decode_str(const char **data, gint64 * data_len) /* slen is signed, so negative values get rejected */ if (sllen < 0) - return ret; + return ret; /* reject attempts to allocate large values that overflow the * size_t type which is used with malloc() */ if (sizeof(gint64) != sizeof(long)) - if (sllen != slen) - return ret; + if (sllen != slen) + return ret; /* make sure we have enough data left */ if (sllen > *data_len - 1) - return ret; + return ret; /* switch from signed to unsigned so we don't overflow below */ len = slen; if (**data == ':') { - char *_ret = g_malloc(sizeof(sllen) + len + 1); - memcpy(_ret, &sllen, sizeof(sllen)); - ret = _ret + sizeof(sllen); - memcpy(ret, *data + 1, len); - ret[len] = '\0'; - *data += len + 1; - *data_len -= len + 1; + char *_ret = g_malloc(sizeof(sllen) + len + 1); + memcpy(_ret, &sllen, sizeof(sllen)); + ret = _ret + sizeof(sllen); + memcpy(ret, *data + 1, len); + ret[len] = '\0'; + *data += len + 1; + *data_len -= len + 1; } return ret; } @@ -100,71 +100,71 @@ static be_node *_be_decode(const char **data, gint64 * data_len) char dc; if (!*data_len) - return ret; + return ret; dc = **data; if (dc == 'l') { - unsigned int i = 0; - - ret = be_alloc(BE_LIST); - - --(*data_len); - ++(*data); - while (**data != 'e') { - ret->val.l = - g_realloc(ret->val.l, (i + 2) * sizeof(*ret->val.l)); - ret->val.l[i] = _be_decode(data, data_len); - if (!ret->val.l[i]) - break; - ++i; - } - --(*data_len); - ++(*data); - - if (i > 0) - ret->val.l[i] = NULL; - - return ret; + unsigned int i = 0; + + ret = be_alloc(BE_LIST); + + --(*data_len); + ++(*data); + while (**data != 'e') { + ret->val.l = + g_realloc(ret->val.l, (i + 2) * sizeof(*ret->val.l)); + ret->val.l[i] = _be_decode(data, data_len); + if (!ret->val.l[i]) + break; + ++i; + } + --(*data_len); + ++(*data); + + if (i > 0) + ret->val.l[i] = NULL; + + return ret; } else if (dc == 'd') { - unsigned int i = 0; - - ret = be_alloc(BE_DICT); - - --(*data_len); - ++(*data); - while (**data != 'e') { - ret->val.d = - g_realloc(ret->val.d, (i + 2) * sizeof(*ret->val.d)); - ret->val.d[i].key = _be_decode_str(data, data_len); - ret->val.d[i].val = _be_decode(data, data_len); - if (!ret->val.l[i]) - break; - ++i; - } - --(*data_len); - ++(*data); - - if (i > 0) - ret->val.d[i].val = NULL; - - return ret; + unsigned int i = 0; + + ret = be_alloc(BE_DICT); + + --(*data_len); + ++(*data); + while (**data != 'e') { + ret->val.d = + g_realloc(ret->val.d, (i + 2) * sizeof(*ret->val.d)); + ret->val.d[i].key = _be_decode_str(data, data_len); + ret->val.d[i].val = _be_decode(data, data_len); + if (!ret->val.l[i]) + break; + ++i; + } + --(*data_len); + ++(*data); + + if (i > 0) + ret->val.d[i].val = NULL; + + return ret; } else if (dc == 'i') { - ret = be_alloc(BE_INT); + ret = be_alloc(BE_INT); - --(*data_len); - ++(*data); - ret->val.i = _be_decode_int(data, data_len); - if (**data != 'e') - return NULL; - --(*data_len); - ++(*data); + --(*data_len); + ++(*data); + ret->val.i = _be_decode_int(data, data_len); + if (**data != 'e') + return NULL; + --(*data_len); + ++(*data); - return ret; + return ret; } else if (isdigit(dc)) { - ret = be_alloc(BE_STR); + ret = be_alloc(BE_STR); - ret->val.s = _be_decode_str(data, data_len); - return ret; + ret->val.s = _be_decode_str(data, data_len); + return ret; } return ret; @@ -183,46 +183,46 @@ be_node *be_decode(const char *data) int be_validate_node(be_node * node, int type) { if (!node || node->type != type) - return 1; + return 1; else - return 0; + return 0; } static inline void _be_free_str(char *str) { if (str) - g_free(str - sizeof(gint64)); + g_free(str - sizeof(gint64)); } void be_free(be_node * node) { switch (node->type) { case BE_STR: - _be_free_str(node->val.s); - break; + _be_free_str(node->val.s); + break; case BE_INT: - break; + break; case BE_LIST:{ - unsigned int i; - if (node->val.l) { - for (i = 0; node->val.l[i]; ++i) - be_free(node->val.l[i]); - g_free(node->val.l); - } - break; - } + unsigned int i; + if (node->val.l) { + for (i = 0; node->val.l[i]; ++i) + be_free(node->val.l[i]); + g_free(node->val.l); + } + break; + } case BE_DICT:{ - unsigned int i; - for (i = 0; node->val.d[i].val; ++i) { - _be_free_str(node->val.d[i].key); - be_free(node->val.d[i].val); - } - g_free(node->val.d); - break; - } + unsigned int i; + for (i = 0; node->val.d[i].val; ++i) { + _be_free_str(node->val.d[i].key); + be_free(node->val.d[i].val); + } + g_free(node->val.d); + break; + } } g_free(node); } @@ -231,11 +231,11 @@ be_node *be_dict_find(be_node * node, char *key, int type) { int i; for (i = 0; node->val.d[i].val; ++i) { - if (!strcmp(node->val.d[i].key, key)) { - be_node *cn = node->val.d[i].val; - if (type < 0 || cn->type == type) - return node->val.d[i].val; - } + if (!strcmp(node->val.d[i].key, key)) { + be_node *cn = node->val.d[i].val; + if (type < 0 || cn->type == type) + return node->val.d[i].val; + } } return NULL; } @@ -247,7 +247,7 @@ be_node *be_dict_find(be_node * node, char *key, int type) static void _be_dump_indent(ssize_t indent) { while (indent-- > 0) - printf(" "); + printf(" "); } static void _be_dump(be_node * node, ssize_t indent) @@ -259,35 +259,35 @@ static void _be_dump(be_node * node, ssize_t indent) switch (node->type) { case BE_STR: - printf("str = %s (len = %lli)\n", node->val.s, be_str_len(node)); - break; + printf("str = %s (len = %lli)\n", node->val.s, be_str_len(node)); + break; case BE_INT: - printf("int = %lli\n", node->val.i); - break; + printf("int = %lli\n", node->val.i); + break; case BE_LIST: - puts("list ["); + puts("list ["); - for (i = 0; node->val.l[i]; ++i) - _be_dump(node->val.l[i], indent + 1); + for (i = 0; node->val.l[i]; ++i) + _be_dump(node->val.l[i], indent + 1); - _be_dump_indent(indent); - puts("]"); - break; + _be_dump_indent(indent); + puts("]"); + break; case BE_DICT: - puts("dict {"); + puts("dict {"); - for (i = 0; node->val.d[i].val; ++i) { - _be_dump_indent(indent + 1); - printf("%s => ", node->val.d[i].key); - _be_dump(node->val.d[i].val, -(indent + 1)); - } + for (i = 0; node->val.d[i].val; ++i) { + _be_dump_indent(indent + 1); + printf("%s => ", node->val.d[i].key); + _be_dump(node->val.d[i].val, -(indent + 1)); + } - _be_dump_indent(indent); - puts("}"); - break; + _be_dump_indent(indent); + puts("}"); + break; } } diff --git a/src/bencode.h b/src/bencode.h index 344fc4f..71760e0 100644 --- a/src/bencode.h +++ b/src/bencode.h @@ -24,10 +24,10 @@ extern "C" { #endif typedef enum { - BE_STR, - BE_INT, - BE_LIST, - BE_DICT + BE_STR, + BE_INT, + BE_LIST, + BE_DICT } be_type; struct be_dict; @@ -38,18 +38,18 @@ extern "C" { */ typedef struct be_dict { - char *key; - struct be_node *val; + char *key; + struct be_node *val; } be_dict; typedef struct be_node { - be_type type; - union { - char *s; - gint64 i; - struct be_node **l; - struct be_dict *d; - } val; + be_type type; + union { + char *s; + gint64 i; + struct be_node **l; + struct be_dict *d; + } val; } be_node; extern gint64 be_str_len(be_node * node); @@ -34,7 +34,7 @@ void hig_workarea_add_section_divider(GtkWidget * t, int *row) void hig_workarea_add_section_title_widget(GtkWidget * t, - int *row, GtkWidget * w) + int *row, GtkWidget * w) { gtk_table_attach(GTK_TABLE(t), w, 0, 2, *row, *row + 1, ~0, 0, 0, 0); ++*row; @@ -42,7 +42,7 @@ hig_workarea_add_section_title_widget(GtkWidget * t, void hig_workarea_add_section_title(GtkWidget * t, - int *row, const char *section_title) + int *row, const char *section_title) { char buf[512]; GtkWidget *l; @@ -66,9 +66,9 @@ static GtkWidget *rowNew(GtkWidget * w) /* lhs widget */ if (GTK_IS_MISC(w)) - gtk_misc_set_alignment(GTK_MISC(w), 0.0f, 0.5f); + gtk_misc_set_alignment(GTK_MISC(w), 0.0f, 0.5f); if (GTK_IS_LABEL(w)) - gtk_label_set_use_markup(GTK_LABEL(w), TRUE); + gtk_label_set_use_markup(GTK_LABEL(w), TRUE); gtk_box_pack_start(GTK_BOX(h), w, TRUE, TRUE, 0); return h; @@ -79,7 +79,7 @@ void hig_workarea_add_wide_control(GtkWidget * t, int *row, GtkWidget * w) GtkWidget *r = rowNew(w); gtk_table_attach(GTK_TABLE(t), r, 0, 2, *row, *row + 1, GTK_FILL, - 0, 0, 0); + 0, 0, 0); ++*row; } @@ -89,16 +89,16 @@ hig_workarea_add_wide_tall_control(GtkWidget * t, int *row, GtkWidget * w) GtkWidget *r = rowNew(w); gtk_table_attach(GTK_TABLE(t), r, 0, 2, *row, *row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); + GTK_EXPAND | GTK_SHRINK | GTK_FILL, + GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); ++*row; } GtkWidget *hig_workarea_add_wide_checkbutton(GtkWidget * t, - int *row, - const char *mnemonic_string, - gboolean is_active) + int *row, + const char *mnemonic_string, + gboolean is_active) { GtkWidget *w = gtk_check_button_new_with_mnemonic(mnemonic_string); @@ -112,11 +112,11 @@ void hig_workarea_add_label_w(GtkWidget * t, int row, GtkWidget * l) GtkWidget *w = rowNew(l); gtk_table_attach(GTK_TABLE(t), w, 0, 1, row, row + 1, GTK_FILL, - GTK_FILL, 0, 0); + GTK_FILL, 0, 0); } GtkWidget *hig_workarea_add_label(GtkWidget * t, - int row, const char *mnemonic_string) + int row, const char *mnemonic_string) { GtkWidget *l = gtk_label_new_with_mnemonic(mnemonic_string); @@ -128,42 +128,42 @@ static void hig_workarea_add_tall_control(GtkWidget * t, int row, GtkWidget * control) { if (GTK_IS_MISC(control)) - gtk_misc_set_alignment(GTK_MISC(control), 0.0f, 0.5f); + gtk_misc_set_alignment(GTK_MISC(control), 0.0f, 0.5f); gtk_table_attach(GTK_TABLE(t), control, - 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); + 1, 2, row, row + 1, + GTK_EXPAND | GTK_SHRINK | GTK_FILL, + GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); } void hig_workarea_add_control(GtkWidget * t, int row, GtkWidget * control) { if (GTK_IS_MISC(control)) - gtk_misc_set_alignment(GTK_MISC(control), 0.0f, 0.5f); + gtk_misc_set_alignment(GTK_MISC(control), 0.0f, 0.5f); gtk_table_attach(GTK_TABLE(t), control, - 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0, 0); + 1, 2, row, row + 1, + GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0, 0); } void hig_workarea_add_row_w(GtkWidget * t, - int *row, - GtkWidget * label, - GtkWidget * control, GtkWidget * mnemonic) + int *row, + GtkWidget * label, + GtkWidget * control, GtkWidget * mnemonic) { hig_workarea_add_label_w(t, *row, label); hig_workarea_add_control(t, *row, control); if (GTK_IS_LABEL(label)) - gtk_label_set_mnemonic_widget(GTK_LABEL(label), - mnemonic ? mnemonic : control); + gtk_label_set_mnemonic_widget(GTK_LABEL(label), + mnemonic ? mnemonic : control); ++*row; } GtkWidget *hig_workarea_add_row(GtkWidget * t, - int *row, - const char *mnemonic_string, - GtkWidget * control, GtkWidget * mnemonic) + int *row, + const char *mnemonic_string, + GtkWidget * control, GtkWidget * mnemonic) { GtkWidget *l = gtk_label_new_with_mnemonic(mnemonic_string); @@ -172,10 +172,10 @@ GtkWidget *hig_workarea_add_row(GtkWidget * t, } GtkWidget *hig_workarea_add_tall_row(GtkWidget * table, - int *row, - const char *mnemonic_string, - GtkWidget * control, - GtkWidget * mnemonic) + int *row, + const char *mnemonic_string, + GtkWidget * control, + GtkWidget * mnemonic) { GtkWidget *l = gtk_label_new_with_mnemonic(mnemonic_string); GtkWidget *h = gtk_hbox_new(FALSE, 0); @@ -187,8 +187,8 @@ GtkWidget *hig_workarea_add_tall_row(GtkWidget * table, hig_workarea_add_tall_control(table, *row, control); if (GTK_IS_LABEL(l)) - gtk_label_set_mnemonic_widget(GTK_LABEL(l), - mnemonic ? mnemonic : control); + gtk_label_set_mnemonic_widget(GTK_LABEL(l), + mnemonic ? mnemonic : control); ++*row; return l; @@ -201,7 +201,7 @@ void hig_workarea_finish(GtkWidget * t, int *row) void hig_message_dialog_set_text(GtkMessageDialog * dialog, - const char *primary, const char *secondary) + const char *primary, const char *secondary) { gtk_message_dialog_set_markup(dialog, primary); gtk_message_dialog_format_secondary_text(dialog, "%s", secondary); @@ -25,55 +25,55 @@ GtkWidget *hig_workarea_create(void); void hig_workarea_add_section_divider(GtkWidget * table, int *row); void hig_workarea_add_section_title_widget(GtkWidget * t, - int *row, GtkWidget * w); + int *row, GtkWidget * w); void hig_workarea_add_section_title(GtkWidget * table, - int *row, const char *section_title); + int *row, const char *section_title); void hig_workarea_add_wide_tall_control(GtkWidget * table, - int *row, GtkWidget * w); + int *row, GtkWidget * w); void hig_workarea_add_wide_control(GtkWidget * table, - int *row, GtkWidget * w); + int *row, GtkWidget * w); GtkWidget *hig_workarea_add_wide_checkbutton(GtkWidget * table, - int *row, - const char *mnemonic_string, - gboolean is_active); + int *row, + const char *mnemonic_string, + gboolean is_active); GtkWidget *hig_workarea_add_label(GtkWidget * table, - int row, const char *mnemonic_string); + int row, const char *mnemonic_string); void hig_workarea_add_label_w(GtkWidget * table, - int row, GtkWidget * label_widget); + int row, GtkWidget * label_widget); void hig_workarea_add_control(GtkWidget * table, - int row, GtkWidget * control); + int row, GtkWidget * control); GtkWidget *hig_workarea_add_tall_row(GtkWidget * table, - int *row, - const char *mnemonic_string, - GtkWidget * control, - GtkWidget * - mnemonic_or_null_for_control); + int *row, + const char *mnemonic_string, + GtkWidget * control, + GtkWidget * + mnemonic_or_null_for_control); GtkWidget *hig_workarea_add_row(GtkWidget * table, - int *row, - const char *mnemonic_string, - GtkWidget * control, - GtkWidget * mnemonic_or_null_for_control); + int *row, + const char *mnemonic_string, + GtkWidget * control, + GtkWidget * mnemonic_or_null_for_control); void hig_workarea_add_row_w(GtkWidget * table, - int *row, - GtkWidget * label, - GtkWidget * control, - GtkWidget * mnemonic_or_null_for_control); + int *row, + GtkWidget * label, + GtkWidget * control, + GtkWidget * mnemonic_or_null_for_control); void hig_workarea_finish(GtkWidget * table, int *row); void hig_message_dialog_set_text(GtkMessageDialog * dialog, - const char *primary, - const char *secondary); + const char *primary, + const char *secondary); enum { GUI_PAD_SMALL = 3, @@ -82,4 +82,4 @@ enum { GUI_PAD_LARGE = 12 }; -#endif /* __HIG_H__ */ +#endif /* __HIG_H__ */ @@ -52,30 +52,30 @@ JsonObject *trg_deserialize(trg_response * response, GError ** error) parser = json_parser_new(); json_parser_load_from_data(parser, response->raw, response->size, - error); + error); if (*error == NULL) { - root = json_parser_get_root(parser); + root = json_parser_get_root(parser); #ifdef DEBUG - if (g_getenv("TRG_SHOW_INCOMING") != NULL) { - g_debug("<=(INcoming)<=: %s", response->raw); - } else if (g_getenv("TRG_SHOW_INCOMING_PRETTY") != NULL) { - JsonGenerator *pg; - gsize len; - gchar *pgdata; - - pg = json_generator_new(); - g_object_set(pg, "pretty", TRUE, NULL); - json_generator_set_root(pg, root); - - pgdata = json_generator_to_data(pg, &len); - g_debug("<=(incoming)<=:\n%s\n", pgdata); - g_free(pgdata); - - g_object_unref(pg); - } + if (g_getenv("TRG_SHOW_INCOMING") != NULL) { + g_debug("<=(INcoming)<=: %s", response->raw); + } else if (g_getenv("TRG_SHOW_INCOMING_PRETTY") != NULL) { + JsonGenerator *pg; + gsize len; + gchar *pgdata; + + pg = json_generator_new(); + g_object_set(pg, "pretty", TRUE, NULL); + json_generator_set_root(pg, root); + + pgdata = json_generator_to_data(pg, &len); + g_debug("<=(incoming)<=:\n%s\n", pgdata); + g_free(pgdata); + + g_object_unref(pg); + } #endif - ret = json_node_get_object(root); - json_object_ref(ret); + ret = json_node_get_object(root); + json_object_ref(ret); } g_object_unref(parser); @@ -30,4 +30,4 @@ JsonObject *trg_deserialize(trg_response * response, GError ** error); JsonObject *get_arguments(JsonObject * req); JsonObject *node_get_arguments(JsonNode * req); -#endif /* JSON_H_ */ +#endif /* JSON_H_ */ @@ -50,7 +50,7 @@ */ #define TRG_LIBUNIQUE_DOMAIN "uk.org.eth0.trg" -#define TRG_MAILSLOT_NAME "\\\\.\\mailslot\\TransmissionRemoteGTK" //Name given to the Mailslot +#define TRG_MAILSLOT_NAME "\\\\.\\mailslot\\TransmissionRemoteGTK" //Name given to the Mailslot #define MAILSLOT_BUFFER_SIZE 1024*32 #ifdef HAVE_LIBUNIQUE @@ -62,9 +62,9 @@ enum { static UniqueResponse message_received_cb(UniqueApp * app G_GNUC_UNUSED, - gint command, - UniqueMessageData * message, - guint time_, gpointer user_data) + gint command, + UniqueMessageData * message, + guint time_, gpointer user_data) { TrgMainWindow *win; UniqueResponse res; @@ -74,21 +74,21 @@ message_received_cb(UniqueApp * app G_GNUC_UNUSED, switch (command) { case UNIQUE_ACTIVATE: - gtk_window_set_screen(GTK_WINDOW(user_data), - unique_message_data_get_screen(message)); - gtk_window_present_with_time(GTK_WINDOW(user_data), time_); - res = UNIQUE_RESPONSE_OK; - break; + gtk_window_set_screen(GTK_WINDOW(user_data), + unique_message_data_get_screen(message)); + gtk_window_present_with_time(GTK_WINDOW(user_data), time_); + res = UNIQUE_RESPONSE_OK; + break; case COMMAND_ADD: - uris = unique_message_data_get_uris(message); - res = - trg_add_from_filename(win, - uris) ? UNIQUE_RESPONSE_OK : - UNIQUE_RESPONSE_FAIL; - break; + uris = unique_message_data_get_uris(message); + res = + trg_add_from_filename(win, + uris) ? UNIQUE_RESPONSE_OK : + UNIQUE_RESPONSE_FAIL; + break; default: - res = UNIQUE_RESPONSE_OK; - break; + res = UNIQUE_RESPONSE_OK; + break; } return res; @@ -107,15 +107,15 @@ struct trg_mailslot_recv_args { static gboolean mailslot_recv_args(gpointer data) { struct trg_mailslot_recv_args *args = - (struct trg_mailslot_recv_args *) data; + (struct trg_mailslot_recv_args *) data; if (args->present) { - gtk_window_deiconify(GTK_WINDOW(args->win)); - gtk_window_present(GTK_WINDOW(args->win)); + gtk_window_deiconify(GTK_WINDOW(args->win)); + gtk_window_present(GTK_WINDOW(args->win)); } if (args->uris) - trg_add_from_filename(args->win, args->uris); + trg_add_from_filename(args->win, args->uris); g_free(args); @@ -131,73 +131,73 @@ static gpointer mailslot_recv_thread(gpointer data) DWORD cbBytes; BOOL bResult; - hMailslot = CreateMailslot(TRG_MAILSLOT_NAME, // mailslot name - MAILSLOT_BUFFER_SIZE, // input buffer size - MAILSLOT_WAIT_FOREVER, // no timeout - NULL); // default security attribute + hMailslot = CreateMailslot(TRG_MAILSLOT_NAME, // mailslot name + MAILSLOT_BUFFER_SIZE, // input buffer size + MAILSLOT_WAIT_FOREVER, // no timeout + NULL); // default security attribute if (INVALID_HANDLE_VALUE == hMailslot) { - g_error("\nError occurred while creating the mailslot: %d", - GetLastError()); - return NULL; //Error + g_error("\nError occurred while creating the mailslot: %d", + GetLastError()); + return NULL; //Error } while (1) { - bResult = ReadFile(hMailslot, // handle to mailslot - szBuffer, // buffer to receive data - sizeof(szBuffer), // size of buffer - &cbBytes, // number of bytes read - NULL); // not overlapped I/O + bResult = ReadFile(hMailslot, // handle to mailslot + szBuffer, // buffer to receive data + sizeof(szBuffer), // size of buffer + &cbBytes, // number of bytes read + NULL); // not overlapped I/O - if ((!bResult) || (0 == cbBytes)) { - g_error("Mailslot error from client: %d", GetLastError()); - break; - } + if ((!bResult) || (0 == cbBytes)) { + g_error("Mailslot error from client: %d", GetLastError()); + break; + } - parser = json_parser_new(); + parser = json_parser_new(); - if (json_parser_load_from_data(parser, szBuffer, cbBytes, NULL)) { - JsonNode *node = json_parser_get_root(parser); - JsonObject *obj = json_node_get_object(node); - struct trg_mailslot_recv_args *args = - g_new0(struct trg_mailslot_recv_args, 1); + if (json_parser_load_from_data(parser, szBuffer, cbBytes, NULL)) { + JsonNode *node = json_parser_get_root(parser); + JsonObject *obj = json_node_get_object(node); + struct trg_mailslot_recv_args *args = + g_new0(struct trg_mailslot_recv_args, 1); - args->present = json_object_has_member(obj, "present") - && json_object_get_boolean_member(obj, "present"); - args->win = win; + args->present = json_object_has_member(obj, "present") + && json_object_get_boolean_member(obj, "present"); + args->win = win; - if (json_object_has_member(obj, "args")) { - JsonArray *array = - json_object_get_array_member(obj, "args"); - GList *arrayList = json_array_get_elements(array); + if (json_object_has_member(obj, "args")) { + JsonArray *array = + json_object_get_array_member(obj, "args"); + GList *arrayList = json_array_get_elements(array); - if (arrayList) { - guint arrayLength = g_list_length(arrayList); - guint i = 0; - GList *li; + if (arrayList) { + guint arrayLength = g_list_length(arrayList); + guint i = 0; + GList *li; - args->uris = g_new0(gchar *, arrayLength + 1); + args->uris = g_new0(gchar *, arrayLength + 1); - for (li = arrayList; li; li = g_list_next(li)) { - const gchar *liStr = - json_node_get_string((JsonNode *) li->data); - args->uris[i++] = g_strdup(liStr); - } + for (li = arrayList; li; li = g_list_next(li)) { + const gchar *liStr = + json_node_get_string((JsonNode *) li->data); + args->uris[i++] = g_strdup(liStr); + } - g_list_free(arrayList); - } - } + g_list_free(arrayList); + } + } - json_node_free(node); + json_node_free(node); - g_idle_add(mailslot_recv_args, args); - } + g_idle_add(mailslot_recv_args, args); + } - g_object_unref(parser); + g_object_unref(parser); } CloseHandle(hMailslot); - return NULL; //Success + return NULL; //Success } static int mailslot_send_message(HANDLE h, gchar ** args) @@ -211,14 +211,14 @@ static int mailslot_send_message(HANDLE h, gchar ** args) int i; if (args) { - for (i = 0; args[i]; i++) - json_array_add_string_element(array, args[i]); + for (i = 0; args[i]; i++) + json_array_add_string_element(array, args[i]); - json_object_set_array_member(obj, "args", array); + json_object_set_array_member(obj, "args", array); - g_strfreev(args); + g_strfreev(args); } else { - json_object_set_boolean_member(obj, "present", TRUE); + json_object_set_boolean_member(obj, "present", TRUE); } json_node_take_object(node, obj); @@ -230,11 +230,11 @@ static int mailslot_send_message(HANDLE h, gchar ** args) json_node_free(node); g_object_unref(generator); - WriteFile(h, // handle to mailslot - msg, // buffer to write from - strlen(msg) + 1, // number of bytes to write, include the NULL - &cbBytes, // number of bytes written - NULL); + WriteFile(h, // handle to mailslot + msg, // buffer to write from + strlen(msg) + 1, // number of bytes to write, include the NULL + &cbBytes, // number of bytes written + NULL); CloseHandle(h); g_free(msg); @@ -247,16 +247,16 @@ static int mailslot_send_message(HANDLE h, gchar ** args) static gboolean is_minimised_arg(gchar * arg) { return !g_strcmp0(arg, "-m") - || !g_strcmp0(arg, "--minimized") - || !g_strcmp0(arg, "/m"); + || !g_strcmp0(arg, "--minimized") + || !g_strcmp0(arg, "/m"); } static gboolean should_be_minimised(int argc, char *argv[]) { int i; for (i = 1; i < argc; i++) - if (is_minimised_arg(argv[i])) - return TRUE; + if (is_minimised_arg(argv[i])) + return TRUE; return FALSE; } @@ -267,32 +267,32 @@ static gchar **convert_args(int argc, char *argv[]) gchar **files = NULL; if (argc > 1) { - GSList *list = NULL; - int i; - - for (i = 1; i < argc; i++) { - if (is_minimised_arg(argv[i])) { - continue; - } else if (!is_url(argv[i]) && !is_magnet(argv[i]) - && g_file_test(argv[i], G_FILE_TEST_IS_REGULAR) - && !g_path_is_absolute(argv[i])) { - list = g_slist_append(list, - g_build_path(G_DIR_SEPARATOR_S, cwd, - argv[i], NULL)); - } else { - list = g_slist_append(list, g_strdup(argv[i])); - } - } - - if (list) { - GSList *li; - files = g_new0(gchar *, g_slist_length(list) + 1); - i = 0; - for (li = list; li; li = g_slist_next(li)) { - files[i++] = li->data; - } - g_slist_free(list); - } + GSList *list = NULL; + int i; + + for (i = 1; i < argc; i++) { + if (is_minimised_arg(argv[i])) { + continue; + } else if (!is_url(argv[i]) && !is_magnet(argv[i]) + && g_file_test(argv[i], G_FILE_TEST_IS_REGULAR) + && !g_path_is_absolute(argv[i])) { + list = g_slist_append(list, + g_build_path(G_DIR_SEPARATOR_S, cwd, + argv[i], NULL)); + } else { + list = g_slist_append(list, g_strdup(argv[i])); + } + } + + if (list) { + GSList *li; + files = g_new0(gchar *, g_slist_length(list) + 1); + i = 0; + for (li = list; li; li = g_slist_next(li)) { + files[i++] = li->data; + } + g_slist_free(list); + } } g_free(cwd); @@ -329,7 +329,7 @@ int main(int argc, char *argv[]) #ifdef WIN32 moddir = g_win32_get_package_installation_directory_of_module(NULL); localedir = g_build_path(G_DIR_SEPARATOR_S, moddir, "share", "locale", - NULL); + NULL); g_free(moddir); bindtextdomain(GETTEXT_PACKAGE, localedir); g_free(localedir); @@ -343,68 +343,68 @@ int main(int argc, char *argv[]) #ifdef HAVE_LIBUNIQUE if (withUnique) - app = unique_app_new_with_commands(TRG_LIBUNIQUE_DOMAIN, NULL, - "add", COMMAND_ADD, NULL); + app = unique_app_new_with_commands(TRG_LIBUNIQUE_DOMAIN, NULL, + "add", COMMAND_ADD, NULL); if (withUnique && unique_app_is_running(app)) { - UniqueCommand command; - UniqueResponse response; - UniqueMessageData *message; - - if (args) { - command = COMMAND_ADD; - message = unique_message_data_new(); - unique_message_data_set_uris(message, args); - g_strfreev(args); - } else { - command = UNIQUE_ACTIVATE; - message = NULL; - } - - response = unique_app_send_message(app, command, message); - unique_message_data_free(message); - - if (response != UNIQUE_RESPONSE_OK) - returnValue = EXIT_FAILURE; + UniqueCommand command; + UniqueResponse response; + UniqueMessageData *message; + + if (args) { + command = COMMAND_ADD; + message = unique_message_data_new(); + unique_message_data_set_uris(message, args); + g_strfreev(args); + } else { + command = UNIQUE_ACTIVATE; + message = NULL; + } + + response = unique_app_send_message(app, command, message); + unique_message_data_free(message); + + if (response != UNIQUE_RESPONSE_OK) + returnValue = EXIT_FAILURE; } else { #elif WIN32 - hMailSlot = CreateFile(TRG_MAILSLOT_NAME, // mailslot name - GENERIC_WRITE, // mailslot write only - FILE_SHARE_READ, // required for mailslots - NULL, // default security attributes - OPEN_EXISTING, // opens existing mailslot - FILE_ATTRIBUTE_NORMAL, // normal attributes - NULL); // no template file + hMailSlot = CreateFile(TRG_MAILSLOT_NAME, // mailslot name + GENERIC_WRITE, // mailslot write only + FILE_SHARE_READ, // required for mailslots + NULL, // default security attributes + OPEN_EXISTING, // opens existing mailslot + FILE_ATTRIBUTE_NORMAL, // normal attributes + NULL); // no template file if (INVALID_HANDLE_VALUE != hMailSlot) { - returnValue = mailslot_send_message(hMailSlot, args); + returnValue = mailslot_send_message(hMailSlot, args); } else { #endif - client = trg_client_new(); + client = trg_client_new(); - curl_global_init(CURL_GLOBAL_ALL); + curl_global_init(CURL_GLOBAL_ALL); - window = - trg_main_window_new(client, should_be_minimised(argc, argv)); + window = + trg_main_window_new(client, should_be_minimised(argc, argv)); #ifdef HAVE_LIBUNIQUE - if (withUnique) { - g_signal_connect(app, "message-received", - G_CALLBACK(message_received_cb), window); - } + if (withUnique) { + g_signal_connect(app, "message-received", + G_CALLBACK(message_received_cb), window); + } #elif WIN32 - g_thread_create(mailslot_recv_thread, window, FALSE, NULL); + g_thread_create(mailslot_recv_thread, window, FALSE, NULL); #endif - auto_connect_if_required(window, args); - gtk_main(); + auto_connect_if_required(window, args); + gtk_main(); - curl_global_cleanup(); + curl_global_cleanup(); #ifdef HAVE_LIBUNIQUE } if (withUnique) - g_object_unref(app); + g_object_unref(app); #elif WIN32 } #endif diff --git a/src/protocol-constants.h b/src/protocol-constants.h index 3eb9d69..04dcd2c 100644 --- a/src/protocol-constants.h +++ b/src/protocol-constants.h @@ -33,7 +33,7 @@ /* torrents */ #define FIELD_RECENTLY_ACTIVE "recently-active" -#define FIELD_TORRENTS "torrents" /* parent node */ +#define FIELD_TORRENTS "torrents" /* parent node */ #define FIELD_REMOVED "removed" #define FIELD_ANNOUNCE_URL "announceUrl" #define FIELD_LEFT_UNTIL_DONE "leftUntilDone" @@ -172,18 +172,18 @@ typedef enum { } trg_old_status; typedef enum { - TR_STATUS_STOPPED = 0, /* Torrent is stopped */ - TR_STATUS_CHECK_WAIT = 1, /* Queued to check files */ - TR_STATUS_CHECK = 2, /* Checking files */ - TR_STATUS_DOWNLOAD_WAIT = 3, /* Queued to download */ - TR_STATUS_DOWNLOAD = 4, /* Downloading */ - TR_STATUS_SEED_WAIT = 5, /* Queued to seed */ - TR_STATUS_SEED = 6 /* Seeding */ + TR_STATUS_STOPPED = 0, /* Torrent is stopped */ + TR_STATUS_CHECK_WAIT = 1, /* Queued to check files */ + TR_STATUS_CHECK = 2, /* Checking files */ + TR_STATUS_DOWNLOAD_WAIT = 3, /* Queued to download */ + TR_STATUS_DOWNLOAD = 4, /* Downloading */ + TR_STATUS_SEED_WAIT = 5, /* Queued to seed */ + TR_STATUS_SEED = 6 /* Seeding */ } tr_torrent_activity; enum { TR_PRI_LOW = -1, - TR_PRI_NORMAL = 0, /* since NORMAL is 0, memset initializes nicely */ + TR_PRI_NORMAL = 0, /* since NORMAL is 0, memset initializes nicely */ TR_PRI_HIGH = 1 }; @@ -191,4 +191,4 @@ enum { #define TFILE_BYTES_COMPLETED "bytesCompleted" #define TFILE_NAME "name" -#endif /* PROTOCOL_CONSTANTS_H_ */ +#endif /* PROTOCOL_CONSTANTS_H_ */ diff --git a/src/remote-exec.c b/src/remote-exec.c index 3f665bc..fb6d903 100644 --- a/src/remote-exec.c +++ b/src/remote-exec.c @@ -48,7 +48,7 @@ static const char json_exceptions[] = { 0x7f, 0x80, 0x81, 0x82, 0x83, 0x84, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, 0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, - 0xfd, 0xfe, 0xff, '\0' /* g_strescape() expects a NUL-terminated string */ + 0xfd, 0xfe, 0xff, '\0' /* g_strescape() expects a NUL-terminated string */ }; static gchar *dump_json_value(JsonNode * node) @@ -62,33 +62,33 @@ static gchar *dump_json_value(JsonNode * node) switch (G_VALUE_TYPE(&value)) { case G_TYPE_INT64: - g_string_append_printf(buffer, "%" G_GINT64_FORMAT, - g_value_get_int64(&value)); - break; + g_string_append_printf(buffer, "%" G_GINT64_FORMAT, + g_value_get_int64(&value)); + break; case G_TYPE_STRING:{ - gchar *tmp; + gchar *tmp; - tmp = g_strescape(g_value_get_string(&value), json_exceptions); - g_string_append(buffer, tmp); + tmp = g_strescape(g_value_get_string(&value), json_exceptions); + g_string_append(buffer, tmp); - g_free(tmp); - } - break; + g_free(tmp); + } + break; case G_TYPE_DOUBLE:{ - gchar buf[G_ASCII_DTOSTR_BUF_SIZE]; + gchar buf[G_ASCII_DTOSTR_BUF_SIZE]; - g_string_append(buffer, - g_ascii_dtostr(buf, sizeof(buf), - g_value_get_double(&value))); - } - break; + g_string_append(buffer, + g_ascii_dtostr(buf, sizeof(buf), + g_value_get_double(&value))); + } + break; case G_TYPE_BOOLEAN: - g_string_append_printf(buffer, "%s", - g_value_get_boolean(&value) ? "true" : - "false"); - break; + g_string_append_printf(buffer, "%s", + g_value_get_boolean(&value) ? "true" : + "false"); + break; default: - break; + break; } g_value_unset(&value); @@ -97,7 +97,7 @@ static gchar *dump_json_value(JsonNode * node) } gchar *build_remote_exec_cmd(TrgClient * tc, GtkTreeModel * model, - GList * selection, const gchar * input) + GList * selection, const gchar * input) { TrgPrefs *prefs = trg_client_get_prefs(tc); JsonObject *session = trg_client_get_session(tc); @@ -109,7 +109,7 @@ gchar *build_remote_exec_cmd(TrgClient * tc, GtkTreeModel * model, JsonNode *replacement; if (!profile) - return NULL; + return NULL; work = g_strdup(input); regex = g_regex_new("%{([A-Za-z\\-]+)}(?:\\[(.*)\\])?", 0, 0, NULL); @@ -117,86 +117,86 @@ gchar *build_remote_exec_cmd(TrgClient * tc, GtkTreeModel * model, g_regex_match_full(regex, input, -1, 0, 0, &match_info, NULL); if (match_info) { - while (g_match_info_matches(match_info)) { - whole = g_match_info_fetch(match_info, 0); - wholeEscaped = g_regex_escape_string(whole, -1); - id = g_match_info_fetch(match_info, 1); - repeater = g_match_info_fetch(match_info, 2); - - replacerx = g_regex_new(wholeEscaped, 0, 0, NULL); - valuestr = NULL; - - if (profile && json_object_has_member(profile, id)) { - replacement = json_object_get_member(profile, id); - if (JSON_NODE_HOLDS_VALUE(replacement)) - valuestr = dump_json_value(replacement); - } else if (session && json_object_has_member(session, id)) { - replacement = json_object_get_member(session, id); - if (JSON_NODE_HOLDS_VALUE(replacement)) - valuestr = dump_json_value(replacement); - } else { - GString *gs = g_string_new(""); - GList *li; - GtkTreeIter iter; - JsonObject *json; - gchar *piece; - - for (li = selection; li; li = g_list_next(li)) { - piece = NULL; - gtk_tree_model_get_iter(model, &iter, - (GtkTreePath *) li->data); - gtk_tree_model_get(model, &iter, TORRENT_COLUMN_JSON, - &json, -1); - if (json_object_has_member(json, id)) { - replacement = json_object_get_member(json, id); - if (JSON_NODE_HOLDS_VALUE(replacement)) { - piece = dump_json_value(replacement); - } - } - - if (!piece) { - if (!g_strcmp0(id, "full-dir")) { - piece = torrent_get_full_dir(json); - } else if (!g_strcmp0(id, "full-path")) { - piece = torrent_get_full_path(json); - } - } - - if (piece) { - g_string_append(gs, piece); - g_free(piece); - } - - if (!repeater) - break; - - if (piece && li != g_list_last(selection)) - g_string_append(gs, repeater); - } - - if (gs->len > 0) - valuestr = g_string_free(gs, FALSE); - else - g_string_free(gs, TRUE); - } - - if (valuestr) { - tmp = g_regex_replace(replacerx, work, -1, 0, valuestr, 0, - NULL); - g_free(work); - work = tmp; - g_free(valuestr); - } - - g_regex_unref(replacerx); - g_free(whole); - g_free(repeater); - g_free(wholeEscaped); - g_free(id); - g_match_info_next(match_info, NULL); - } - - g_match_info_free(match_info); + while (g_match_info_matches(match_info)) { + whole = g_match_info_fetch(match_info, 0); + wholeEscaped = g_regex_escape_string(whole, -1); + id = g_match_info_fetch(match_info, 1); + repeater = g_match_info_fetch(match_info, 2); + + replacerx = g_regex_new(wholeEscaped, 0, 0, NULL); + valuestr = NULL; + + if (profile && json_object_has_member(profile, id)) { + replacement = json_object_get_member(profile, id); + if (JSON_NODE_HOLDS_VALUE(replacement)) + valuestr = dump_json_value(replacement); + } else if (session && json_object_has_member(session, id)) { + replacement = json_object_get_member(session, id); + if (JSON_NODE_HOLDS_VALUE(replacement)) + valuestr = dump_json_value(replacement); + } else { + GString *gs = g_string_new(""); + GList *li; + GtkTreeIter iter; + JsonObject *json; + gchar *piece; + + for (li = selection; li; li = g_list_next(li)) { + piece = NULL; + gtk_tree_model_get_iter(model, &iter, + (GtkTreePath *) li->data); + gtk_tree_model_get(model, &iter, TORRENT_COLUMN_JSON, + &json, -1); + if (json_object_has_member(json, id)) { + replacement = json_object_get_member(json, id); + if (JSON_NODE_HOLDS_VALUE(replacement)) { + piece = dump_json_value(replacement); + } + } + + if (!piece) { + if (!g_strcmp0(id, "full-dir")) { + piece = torrent_get_full_dir(json); + } else if (!g_strcmp0(id, "full-path")) { + piece = torrent_get_full_path(json); + } + } + + if (piece) { + g_string_append(gs, piece); + g_free(piece); + } + + if (!repeater) + break; + + if (piece && li != g_list_last(selection)) + g_string_append(gs, repeater); + } + + if (gs->len > 0) + valuestr = g_string_free(gs, FALSE); + else + g_string_free(gs, TRUE); + } + + if (valuestr) { + tmp = g_regex_replace(replacerx, work, -1, 0, valuestr, 0, + NULL); + g_free(work); + work = tmp; + g_free(valuestr); + } + + g_regex_unref(replacerx); + g_free(whole); + g_free(repeater); + g_free(wholeEscaped); + g_free(id); + g_match_info_next(match_info, NULL); + } + + g_match_info_free(match_info); } g_regex_unref(regex); diff --git a/src/remote-exec.h b/src/remote-exec.h index 6014531..4468a3a 100644 --- a/src/remote-exec.h +++ b/src/remote-exec.h @@ -21,6 +21,6 @@ #define REMOTE_EXEC_H_ gchar *build_remote_exec_cmd(TrgClient * tc, GtkTreeModel * model, - GList * selection, const gchar * input); + GList * selection, const gchar * input); -#endif /* REMOTE_EXEC_H_ */ +#endif /* REMOTE_EXEC_H_ */ diff --git a/src/requests.c b/src/requests.c index babb48c..a600396 100644 --- a/src/requests.c +++ b/src/requests.c @@ -40,8 +40,8 @@ JsonNode *generic_request(gchar * method, JsonArray * ids) JsonNode *root = base_request(method); if (ids) - json_object_set_array_member(node_get_arguments(root), - PARAM_IDS, ids); + json_object_set_array_member(node_get_arguments(root), + PARAM_IDS, ids); return root; } @@ -67,7 +67,7 @@ JsonNode *session_get(void) } JsonNode *torrent_set_location(JsonArray * array, gchar * location, - gboolean move) + gboolean move) { JsonNode *req = generic_request(METHOD_TORRENT_SET_LOCATION, array); JsonObject *args = node_get_arguments(req); @@ -137,7 +137,7 @@ JsonNode *torrent_remove(JsonArray * array, gboolean removeData) JsonObject *args = node_get_arguments(root); json_object_set_array_member(args, PARAM_IDS, array); json_object_set_boolean_member(args, PARAM_DELETE_LOCAL_DATA, - removeData); + removeData); return root; } @@ -148,12 +148,12 @@ JsonNode *torrent_get(gint64 id) JsonArray *fields = json_array_new(); if (id == TORRENT_GET_TAG_MODE_UPDATE) { - json_object_set_string_member(args, PARAM_IDS, - FIELD_RECENTLY_ACTIVE); + json_object_set_string_member(args, PARAM_IDS, + FIELD_RECENTLY_ACTIVE); } else if (id >= 0) { - JsonArray *ids = json_array_new(); - json_array_add_int_element(ids, id); - json_object_set_array_member(args, PARAM_IDS, ids); + JsonArray *ids = json_array_new(); + json_array_add_int_element(ids, id); + json_object_set_array_member(args, PARAM_IDS, ids); } json_array_add_string_element(fields, FIELD_ETA); @@ -224,32 +224,32 @@ JsonNode *torrent_add(gchar * target, gint flags) gchar *encodedFile; if (!isUri && !g_file_test(target, G_FILE_TEST_IS_REGULAR)) { - g_message("file \"%s\" does not exist.", target); - return NULL; + g_message("file \"%s\" does not exist.", target); + return NULL; } root = base_request(METHOD_TORRENT_ADD); args = node_get_arguments(root); if (isUri) { - json_object_set_string_member(args, PARAM_FILENAME, target); + json_object_set_string_member(args, PARAM_FILENAME, target); } else { - encodedFile = trg_base64encode(target); - if (encodedFile) { - json_object_set_string_member(args, PARAM_METAINFO, - encodedFile); - g_free(encodedFile); - } else { - g_error("unable to base64 encode file \"%s\".", target); - return NULL; - } + encodedFile = trg_base64encode(target); + if (encodedFile) { + json_object_set_string_member(args, PARAM_METAINFO, + encodedFile); + g_free(encodedFile); + } else { + g_error("unable to base64 encode file \"%s\".", target); + return NULL; + } } json_object_set_boolean_member(args, PARAM_PAUSED, - (flags & TORRENT_ADD_FLAG_PAUSED)); + (flags & TORRENT_ADD_FLAG_PAUSED)); if ((flags & TORRENT_ADD_FLAG_DELETE)) - g_unlink(target); + g_unlink(target); return root; } @@ -273,8 +273,8 @@ void request_set_tag(JsonNode * req, gint64 tag) void request_set_tag_from_ids(JsonNode * req, JsonArray * ids) { gint64 id = - json_array_get_length(ids) == 1 ? json_array_get_int_element(ids, - 0) : - -1; + json_array_get_length(ids) == 1 ? json_array_get_int_element(ids, + 0) : + -1; request_set_tag(req, id); } diff --git a/src/requests.h b/src/requests.h index 2a59324..4d08a88 100644 --- a/src/requests.h +++ b/src/requests.h @@ -37,7 +37,7 @@ JsonNode *torrent_remove(JsonArray * array, int removeData); JsonNode *torrent_add(gchar * filename, gint flags); JsonNode *torrent_add_url(const gchar * url, gboolean paused); JsonNode *torrent_set_location(JsonArray * array, gchar * location, - gboolean move); + gboolean move); JsonNode *blocklist_update(void); JsonNode *port_test(void); JsonNode *session_stats(void); @@ -50,4 +50,4 @@ JsonNode *torrent_start_now(JsonArray * array); void request_set_tag(JsonNode * req, gint64 tag); void request_set_tag_from_ids(JsonNode * req, JsonArray * ids); -#endif /* REQUESTS_H_ */ +#endif /* REQUESTS_H_ */ diff --git a/src/session-get.c b/src/session-get.c index b9b54bb..a6e033b 100644 --- a/src/session-get.c +++ b/src/session-get.c @@ -64,7 +64,7 @@ const gchar *session_get_download_dir(JsonObject * s) gboolean session_get_peer_port_random(JsonObject * s) { return json_object_get_boolean_member(s, - SGET_PEER_PORT_RANDOM_ON_START); + SGET_PEER_PORT_RANDOM_ON_START); } gint64 session_get_peer_port(JsonObject * s) @@ -80,9 +80,9 @@ gboolean session_get_port_forwarding_enabled(JsonObject * s) const gchar *session_get_blocklist_url(JsonObject * s) { if (json_object_has_member(s, SGET_BLOCKLIST_URL)) - return json_object_get_string_member(s, SGET_BLOCKLIST_URL); + return json_object_get_string_member(s, SGET_BLOCKLIST_URL); else - return NULL; + return NULL; } gint64 session_get_blocklist_size(JsonObject * s) @@ -143,21 +143,21 @@ gint64 session_get_seed_queue_size(JsonObject * s) const gchar *session_get_torrent_done_filename(JsonObject * s) { return json_object_get_string_member(s, - SGET_SCRIPT_TORRENT_DONE_FILENAME); + SGET_SCRIPT_TORRENT_DONE_FILENAME); } gboolean session_get_torrent_done_enabled(JsonObject * s) { return json_object_get_boolean_member(s, - SGET_SCRIPT_TORRENT_DONE_ENABLED); + SGET_SCRIPT_TORRENT_DONE_ENABLED); } gint64 session_get_cache_size_mb(JsonObject * s) { if (json_object_has_member(s, SGET_CACHE_SIZE_MB)) - return json_object_get_int_member(s, SGET_CACHE_SIZE_MB); + return json_object_get_int_member(s, SGET_CACHE_SIZE_MB); else - return -1; + return -1; } gdouble session_get_seed_ratio_limit(JsonObject * s) @@ -173,7 +173,7 @@ gboolean session_get_start_added_torrents(JsonObject * s) gboolean session_get_trash_original_torrent_files(JsonObject * s) { return json_object_get_boolean_member(s, - SGET_TRASH_ORIGINAL_TORRENT_FILES); + SGET_TRASH_ORIGINAL_TORRENT_FILES); } gboolean session_get_speed_limit_up_enabled(JsonObject * s) @@ -199,7 +199,7 @@ gint64 session_get_speed_limit_up(JsonObject * s) gboolean session_get_speed_limit_down_enabled(JsonObject * s) { return json_object_get_boolean_member(s, - SGET_SPEED_LIMIT_DOWN_ENABLED); + SGET_SPEED_LIMIT_DOWN_ENABLED); } gint64 session_get_speed_limit_down(JsonObject * s) diff --git a/src/session-get.h b/src/session-get.h index 4822cd7..26f4ab2 100644 --- a/src/session-get.h +++ b/src/session-get.h @@ -106,4 +106,4 @@ gint64 session_get_rpc_version(JsonObject * s); gint64 session_get_download_dir_free_space(JsonObject * s); gboolean session_get_dht_enabled(JsonObject * s); -#endif /* SESSION_GET_H_ */ +#endif /* SESSION_GET_H_ */ diff --git a/src/torrent.c b/src/torrent.c index bf70f45..c7562a4 100644 --- a/src/torrent.c +++ b/src/torrent.c @@ -71,11 +71,11 @@ const gchar *torrent_get_download_dir(JsonObject * t) gdouble torrent_get_metadata_percent_complete(JsonObject * t) { JsonNode *node = - json_object_get_member(t, FIELD_METADATAPERCENTCOMPLETE); + json_object_get_member(t, FIELD_METADATAPERCENTCOMPLETE); if (node) - return json_double_to_progress(node); + return json_double_to_progress(node); else - return 100.0; + return 100.0; } const gchar *torrent_get_name(JsonObject * t) @@ -191,15 +191,15 @@ gboolean torrent_get_is_private(JsonObject * t) gdouble torrent_get_percent_done(JsonObject * t) { return - json_double_to_progress(json_object_get_member - (t, FIELD_PERCENTDONE)); + json_double_to_progress(json_object_get_member + (t, FIELD_PERCENTDONE)); } gdouble torrent_get_recheck_progress(JsonObject * t) { return - json_double_to_progress(json_object_get_member - (t, FIELD_RECHECK_PROGRESS)); + json_double_to_progress(json_object_get_member + (t, FIELD_RECHECK_PROGRESS)); } gint64 torrent_get_activity_date(JsonObject * t) @@ -208,75 +208,75 @@ gint64 torrent_get_activity_date(JsonObject * t) } guint32 torrent_get_flags(JsonObject * t, gint64 rpcv, gint64 status, - gint64 downRate, gint64 upRate) + gint64 downRate, gint64 upRate) { guint32 flags = 0; if (torrent_get_is_finished(t) == TRUE) - flags |= TORRENT_FLAG_COMPLETE; + flags |= TORRENT_FLAG_COMPLETE; else - flags |= TORRENT_FLAG_INCOMPLETE; + flags |= TORRENT_FLAG_INCOMPLETE; if (rpcv >= NEW_STATUS_RPC_VERSION) { - switch (status) { - case TR_STATUS_STOPPED: - flags |= TORRENT_FLAG_PAUSED; - break; - case TR_STATUS_CHECK_WAIT: - flags |= TORRENT_FLAG_WAITING_CHECK; - flags |= TORRENT_FLAG_CHECKING_ANY; - break; - case TR_STATUS_CHECK: - flags |= TORRENT_FLAG_CHECKING; - flags |= TORRENT_FLAG_CHECKING_ANY; - break; - case TR_STATUS_DOWNLOAD_WAIT: - flags |= TORRENT_FLAG_DOWNLOADING_WAIT; - flags |= TORRENT_FLAG_QUEUED; - break; - case TR_STATUS_DOWNLOAD: - if (!(flags & TORRENT_FLAG_COMPLETE)) - flags |= TORRENT_FLAG_DOWNLOADING; - - //if (torrent_get_metadata_percent_complete(t) < 100) - // flags |= TORRENT_FLAG_DOWNLOADING_METADATA; - - flags |= TORRENT_FLAG_ACTIVE; - break; - case TR_STATUS_SEED_WAIT: - flags |= TORRENT_FLAG_SEEDING_WAIT; - break; - case TR_STATUS_SEED: - flags |= TORRENT_FLAG_SEEDING; - if (torrent_get_peers_getting_from_us(t)) - flags |= TORRENT_FLAG_ACTIVE; - break; - } + switch (status) { + case TR_STATUS_STOPPED: + flags |= TORRENT_FLAG_PAUSED; + break; + case TR_STATUS_CHECK_WAIT: + flags |= TORRENT_FLAG_WAITING_CHECK; + flags |= TORRENT_FLAG_CHECKING_ANY; + break; + case TR_STATUS_CHECK: + flags |= TORRENT_FLAG_CHECKING; + flags |= TORRENT_FLAG_CHECKING_ANY; + break; + case TR_STATUS_DOWNLOAD_WAIT: + flags |= TORRENT_FLAG_DOWNLOADING_WAIT; + flags |= TORRENT_FLAG_QUEUED; + break; + case TR_STATUS_DOWNLOAD: + if (!(flags & TORRENT_FLAG_COMPLETE)) + flags |= TORRENT_FLAG_DOWNLOADING; + + //if (torrent_get_metadata_percent_complete(t) < 100) + // flags |= TORRENT_FLAG_DOWNLOADING_METADATA; + + flags |= TORRENT_FLAG_ACTIVE; + break; + case TR_STATUS_SEED_WAIT: + flags |= TORRENT_FLAG_SEEDING_WAIT; + break; + case TR_STATUS_SEED: + flags |= TORRENT_FLAG_SEEDING; + if (torrent_get_peers_getting_from_us(t)) + flags |= TORRENT_FLAG_ACTIVE; + break; + } } else { - switch (status) { - case OLD_STATUS_DOWNLOADING: - flags |= TORRENT_FLAG_DOWNLOADING; - break; - case OLD_STATUS_PAUSED: - flags |= TORRENT_FLAG_PAUSED; - break; - case OLD_STATUS_SEEDING: - flags |= TORRENT_FLAG_SEEDING; - break; - case OLD_STATUS_CHECKING: - flags |= TORRENT_FLAG_CHECKING; - break; - case OLD_STATUS_WAITING_TO_CHECK: - flags |= TORRENT_FLAG_WAITING_CHECK; - flags |= TORRENT_FLAG_CHECKING; - break; - } - if (downRate > 0 || upRate > 0) - flags |= TORRENT_FLAG_ACTIVE; + switch (status) { + case OLD_STATUS_DOWNLOADING: + flags |= TORRENT_FLAG_DOWNLOADING; + break; + case OLD_STATUS_PAUSED: + flags |= TORRENT_FLAG_PAUSED; + break; + case OLD_STATUS_SEEDING: + flags |= TORRENT_FLAG_SEEDING; + break; + case OLD_STATUS_CHECKING: + flags |= TORRENT_FLAG_CHECKING; + break; + case OLD_STATUS_WAITING_TO_CHECK: + flags |= TORRENT_FLAG_WAITING_CHECK; + flags |= TORRENT_FLAG_CHECKING; + break; + } + if (downRate > 0 || upRate > 0) + flags |= TORRENT_FLAG_ACTIVE; } if (strlen(torrent_get_errorstr(t)) > 0) - flags |= TORRENT_FLAG_ERROR; + flags |= TORRENT_FLAG_ERROR; return flags; } @@ -284,19 +284,19 @@ guint32 torrent_get_flags(JsonObject * t, gint64 rpcv, gint64 status, gchar *torrent_get_status_icon(gint64 rpcv, guint flags) { if (flags & TORRENT_FLAG_ERROR) - return g_strdup(GTK_STOCK_DIALOG_WARNING); + return g_strdup(GTK_STOCK_DIALOG_WARNING); //else if (flags & TORRENT_FLAG_DOWNLOADING_METADATA) // return g_strdup(GTK_STOCK_FIND); else if (flags & TORRENT_FLAG_DOWNLOADING) - return g_strdup(GTK_STOCK_GO_DOWN); + return g_strdup(GTK_STOCK_GO_DOWN); else if (flags & TORRENT_FLAG_PAUSED) - return g_strdup(GTK_STOCK_MEDIA_PAUSE); + return g_strdup(GTK_STOCK_MEDIA_PAUSE); else if (flags & TORRENT_FLAG_SEEDING) - return g_strdup(GTK_STOCK_GO_UP); + return g_strdup(GTK_STOCK_GO_UP); else if (flags & TORRENT_FLAG_CHECKING) - return g_strdup(GTK_STOCK_REFRESH); + return g_strdup(GTK_STOCK_REFRESH); else - return g_strdup(GTK_STOCK_DIALOG_QUESTION); + return g_strdup(GTK_STOCK_DIALOG_QUESTION); } gint64 torrent_get_done_date(JsonObject * t) @@ -312,41 +312,41 @@ const gchar *torrent_get_errorstr(JsonObject * t) gchar *torrent_get_status_string(gint64 rpcv, gint64 value, guint flags) { if (rpcv >= NEW_STATUS_RPC_VERSION) { - switch (value) { - case TR_STATUS_DOWNLOAD: - /*if (flags & TORRENT_FLAG_DOWNLOADING_METADATA) - return g_strdup(_("Metadata Downloading")); - else */ - return g_strdup(_("Downloading")); - case TR_STATUS_DOWNLOAD_WAIT: - return g_strdup(_("Queued download")); - case TR_STATUS_CHECK_WAIT: - return g_strdup(_("Waiting To Check")); - case TR_STATUS_CHECK: - return g_strdup(_("Checking")); - case TR_STATUS_SEED_WAIT: - return g_strdup(_("Queued seed")); - case TR_STATUS_SEED: - return g_strdup(_("Seeding")); - case TR_STATUS_STOPPED: - return g_strdup(_("Paused")); - } + switch (value) { + case TR_STATUS_DOWNLOAD: + /*if (flags & TORRENT_FLAG_DOWNLOADING_METADATA) + return g_strdup(_("Metadata Downloading")); + else */ + return g_strdup(_("Downloading")); + case TR_STATUS_DOWNLOAD_WAIT: + return g_strdup(_("Queued download")); + case TR_STATUS_CHECK_WAIT: + return g_strdup(_("Waiting To Check")); + case TR_STATUS_CHECK: + return g_strdup(_("Checking")); + case TR_STATUS_SEED_WAIT: + return g_strdup(_("Queued seed")); + case TR_STATUS_SEED: + return g_strdup(_("Seeding")); + case TR_STATUS_STOPPED: + return g_strdup(_("Paused")); + } } else { - switch (value) { - case OLD_STATUS_DOWNLOADING: - /*if (flags & TORRENT_FLAG_DOWNLOADING_METADATA) - return g_strdup(_("Metadata Downloading")); - else */ - return g_strdup(_("Downloading")); - case OLD_STATUS_PAUSED: - return g_strdup(_("Paused")); - case OLD_STATUS_SEEDING: - return g_strdup(_("Seeding")); - case OLD_STATUS_CHECKING: - return g_strdup(_("Checking")); - case OLD_STATUS_WAITING_TO_CHECK: - return g_strdup(_("Waiting To Check")); - } + switch (value) { + case OLD_STATUS_DOWNLOADING: + /*if (flags & TORRENT_FLAG_DOWNLOADING_METADATA) + return g_strdup(_("Metadata Downloading")); + else */ + return g_strdup(_("Downloading")); + case OLD_STATUS_PAUSED: + return g_strdup(_("Paused")); + case OLD_STATUS_SEEDING: + return g_strdup(_("Seeding")); + case OLD_STATUS_CHECKING: + return g_strdup(_("Checking")); + case OLD_STATUS_WAITING_TO_CHECK: + return g_strdup(_("Waiting To Check")); + } } //g_warning("Unknown status: %ld", value); @@ -362,16 +362,16 @@ gboolean torrent_has_tracker(JsonObject * t, GRegex * rx, gchar * search) trackers = json_array_get_elements(torrent_get_tracker_stats(t)); for (li = trackers; li; li = g_list_next(li)) { - JsonObject *tracker = json_node_get_object((JsonNode *) li->data); - const gchar *trackerAnnounce = tracker_stats_get_announce(tracker); - gchar *trackerAnnounceHost = - trg_gregex_get_first(rx, trackerAnnounce); - int cmpResult = g_strcmp0(trackerAnnounceHost, search); - g_free(trackerAnnounceHost); - if (!cmpResult) { - ret = TRUE; - break; - } + JsonObject *tracker = json_node_get_object((JsonNode *) li->data); + const gchar *trackerAnnounce = tracker_stats_get_announce(tracker); + gchar *trackerAnnounceHost = + trg_gregex_get_first(rx, trackerAnnounce); + int cmpResult = g_strcmp0(trackerAnnounceHost, search); + g_free(trackerAnnounceHost); + if (!cmpResult) { + ret = TRUE; + break; + } } g_list_free(trackers); @@ -397,9 +397,9 @@ const gchar *tracker_stats_get_scrape(JsonObject * t) JsonArray *get_torrents_removed(JsonObject * response) { if (G_UNLIKELY(json_object_has_member(response, FIELD_REMOVED))) - return json_object_get_array_member(response, FIELD_REMOVED); + return json_object_get_array_member(response, FIELD_REMOVED); else - return NULL; + return NULL; } JsonArray *get_torrents(JsonObject * response) @@ -432,9 +432,9 @@ gint64 torrent_get_peers_getting_from_us(JsonObject * args) gint64 torrent_get_queue_position(JsonObject * args) { if (json_object_has_member(args, FIELD_QUEUE_POSITION)) - return json_object_get_int_member(args, FIELD_QUEUE_POSITION); + return json_object_get_int_member(args, FIELD_QUEUE_POSITION); else - return -1; + return -1; } /* tracker stats */ @@ -492,7 +492,7 @@ const gchar *tracker_stats_get_host(JsonObject * t) gchar *torrent_get_full_path(JsonObject * obj) { const gchar *location = - json_object_get_string_member(obj, FIELD_DOWNLOAD_DIR); + json_object_get_string_member(obj, FIELD_DOWNLOAD_DIR); const gchar *name = json_object_get_string_member(obj, FIELD_NAME); return g_strdup_printf("%s/%s", location, name); } @@ -509,10 +509,10 @@ gchar *torrent_get_full_dir(JsonObject * obj) name = g_strdup(json_object_get_string_member(firstFile, TFILE_NAME)); if ((delim = g_strstr_len(name, -1, "/"))) { - *delim = '\0'; - containing_path = g_strdup_printf("%s/%s", location, name); + *delim = '\0'; + containing_path = g_strdup_printf("%s/%s", location, name); } else { - containing_path = g_strdup(location); + containing_path = g_strdup(location); } g_free(name); @@ -554,7 +554,7 @@ gboolean peer_get_is_downloading_from(JsonObject * p) gdouble peer_get_progress(JsonObject * p) { return - json_double_to_progress(json_object_get_member(p, TPEER_PROGRESS)); + json_double_to_progress(json_object_get_member(p, TPEER_PROGRESS)); } gint64 peer_get_rate_to_client(JsonObject * p) @@ -601,7 +601,7 @@ gint64 peerfrom_get_incoming(JsonObject * pf) gint64 peerfrom_get_lpd(JsonObject * pf) { return json_object_has_member(pf, TPEERFROM_FROMLPD) ? - json_object_get_int_member(pf, TPEERFROM_FROMLPD) : -1; + json_object_get_int_member(pf, TPEERFROM_FROMLPD) : -1; } /* files */ @@ -610,10 +610,10 @@ gdouble file_get_progress(JsonObject * f) { gint64 length = file_get_length(f); if (length > 0) { - return ((gdouble) file_get_bytes_completed(f) / - (gdouble) length) * 100.0; + return ((gdouble) file_get_bytes_completed(f) / + (gdouble) length) * 100.0; } else { - return 0.0; + return 0.0; } } diff --git a/src/torrent.h b/src/torrent.h index 93bb920..daca8c2 100644 --- a/src/torrent.h +++ b/src/torrent.h @@ -41,8 +41,8 @@ #define FILTER_FLAG_TRACKER (1 << 14) #define FILTER_FLAG_DIR (1 << 15) -#define TORRENT_ADD_FLAG_PAUSED (1 << 0) /* 0x01 */ -#define TORRENT_ADD_FLAG_DELETE (1 << 1) /* 0x02 */ +#define TORRENT_ADD_FLAG_PAUSED (1 << 0) /* 0x01 */ +#define TORRENT_ADD_FLAG_DELETE (1 << 1) /* 0x02 */ gint64 torrent_get_size(JsonObject * t); const gchar *torrent_get_name(JsonObject * t); @@ -59,7 +59,7 @@ gint64 torrent_get_status(JsonObject * t); gchar *torrent_get_status_string(gint64 rpcv, gint64 value, guint flags); gchar *torrent_get_status_icon(gint64 rpcv, guint flags); guint32 torrent_get_flags(JsonObject * t, gint64 rpcv, gint64 status, - gint64 downRate, gint64 upRate); + gint64 downRate, gint64 upRate); JsonArray *torrent_get_peers(JsonObject * t); JsonObject *torrent_get_peersfrom(JsonObject * t); JsonArray *torrent_get_tracker_stats(JsonObject * t); @@ -139,4 +139,4 @@ gint64 peerfrom_get_ltep(JsonObject * pf); gint64 peerfrom_get_resume(JsonObject * pf); gint64 peerfrom_get_incoming(JsonObject * pf); gint64 peerfrom_get_lpd(JsonObject * pf); -#endif /* TORRENT_H_ */ +#endif /* TORRENT_H_ */ diff --git a/src/trg-about-window.c b/src/trg-about-window.c index e5dc383..f92e7ca 100644 --- a/src/trg-about-window.c +++ b/src/trg-about-window.c @@ -38,7 +38,7 @@ GtkWidget *trg_about_window_new(GtkWindow * parent) #ifdef WIN32 gchar *moddir = - g_win32_get_package_installation_directory_of_module(NULL); + g_win32_get_package_installation_directory_of_module(NULL); licenseFile = g_build_filename(moddir, "COPYING.TXT", NULL); g_free(moddir); #else @@ -50,47 +50,47 @@ GtkWidget *trg_about_window_new(GtkWindow * parent) gtk_window_set_destroy_with_parent(GTK_WINDOW(dialog), TRUE); logo = - gtk_icon_theme_load_icon(gtk_icon_theme_get_default(), - PACKAGE_NAME, 48, - GTK_ICON_LOOKUP_USE_BUILTIN, NULL); + gtk_icon_theme_load_icon(gtk_icon_theme_get_default(), + PACKAGE_NAME, 48, + GTK_ICON_LOOKUP_USE_BUILTIN, NULL); if (logo != NULL) { - gtk_about_dialog_set_logo(GTK_ABOUT_DIALOG(dialog), logo); - g_object_unref(logo); + gtk_about_dialog_set_logo(GTK_ABOUT_DIALOG(dialog), logo); + g_object_unref(logo); } if (g_file_get_contents(licenseFile, &licenseText, NULL, NULL)) { - gtk_about_dialog_set_license(GTK_ABOUT_DIALOG(dialog), - licenseText); + gtk_about_dialog_set_license(GTK_ABOUT_DIALOG(dialog), + licenseText); } else { - gtk_about_dialog_set_license(GTK_ABOUT_DIALOG(dialog), "GPL2"); + gtk_about_dialog_set_license(GTK_ABOUT_DIALOG(dialog), "GPL2"); } gtk_about_dialog_set_program_name(GTK_ABOUT_DIALOG(dialog), - PACKAGE_NAME); + PACKAGE_NAME); gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(dialog), - PACKAGE_VERSION); + PACKAGE_VERSION); gtk_about_dialog_set_copyright(GTK_ABOUT_DIALOG(dialog), - "(C) 2011 Alan Fitton"); + "(C) 2011 Alan Fitton"); gtk_about_dialog_set_comments(GTK_ABOUT_DIALOG(dialog), - _ - ("A remote client to transmission-daemon.")); + _ + ("A remote client to transmission-daemon.")); gtk_about_dialog_set_website(GTK_ABOUT_DIALOG(dialog), - "http://code.google.com/p/transmission-remote-gtk/"); + "http://code.google.com/p/transmission-remote-gtk/"); gtk_about_dialog_set_website_label(GTK_ABOUT_DIALOG(dialog), - "http://code.google.com/p/transmission-remote-gtk/"); + "http://code.google.com/p/transmission-remote-gtk/"); gtk_about_dialog_set_authors(GTK_ABOUT_DIALOG(dialog), trgAuthors); /*gtk_about_dialog_set_documenters(GTK_ABOUT_DIALOG(dialog), documenters); */ gtk_about_dialog_set_translator_credits(GTK_ABOUT_DIALOG(dialog), - "translations kindly contributed by\n\n" - "* Julian Held (German)\n" - "* Youn sok Choi (Korean)\n" - "* Piotr (Polish)\n" - "* Y3AVD (Russian)\n" - "* ROR191 (Ukranian)\n" - "* aspidzent (Spanish)"); + "translations kindly contributed by\n\n" + "* Julian Held (German)\n" + "* Youn sok Choi (Korean)\n" + "* Piotr (Polish)\n" + "* Y3AVD (Russian)\n" + "* ROR191 (Ukranian)\n" + "* aspidzent (Spanish)"); g_free(licenseFile); g_free(licenseText); diff --git a/src/trg-about-window.h b/src/trg-about-window.h index 621ccfc..8fbd132 100644 --- a/src/trg-about-window.h +++ b/src/trg-about-window.h @@ -24,4 +24,4 @@ GtkWidget *trg_about_window_new(GtkWindow * parent); -#endif /* ABOUT_WINDOW_H_ */ +#endif /* ABOUT_WINDOW_H_ */ diff --git a/src/trg-cell-renderer-epoch.c b/src/trg-cell-renderer-epoch.c index c440c3a..5b05f09 100644 --- a/src/trg-cell-renderer-epoch.c +++ b/src/trg-cell-renderer-epoch.c @@ -30,7 +30,7 @@ enum { }; G_DEFINE_TYPE(TrgCellRendererEpoch, trg_cell_renderer_epoch, - GTK_TYPE_CELL_RENDERER_TEXT) + GTK_TYPE_CELL_RENDERER_TEXT) #define TRG_CELL_RENDERER_EPOCH_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_CELL_RENDERER_EPOCH, TrgCellRendererEpochPrivate)) typedef struct _TrgCellRendererEpochPrivate TrgCellRendererEpochPrivate; @@ -41,52 +41,52 @@ struct _TrgCellRendererEpochPrivate { static void trg_cell_renderer_epoch_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { TrgCellRendererEpochPrivate *priv = - TRG_CELL_RENDERER_EPOCH_GET_PRIVATE(object); + TRG_CELL_RENDERER_EPOCH_GET_PRIVATE(object); switch (property_id) { case PROP_EPOCH_VALUE: - g_value_set_int64(value, priv->epoch_value); - break; + g_value_set_int64(value, priv->epoch_value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_cell_renderer_epoch_set_property(GObject * object, guint property_id, - const GValue * value, - GParamSpec * pspec) + const GValue * value, + GParamSpec * pspec) { TrgCellRendererEpochPrivate *priv = - TRG_CELL_RENDERER_EPOCH_GET_PRIVATE(object); + TRG_CELL_RENDERER_EPOCH_GET_PRIVATE(object); if (property_id == PROP_EPOCH_VALUE) { - gint64 new_value = g_value_get_int64(value); - if (priv->epoch_value != new_value) { - if (new_value > 0) { + gint64 new_value = g_value_get_int64(value); + if (priv->epoch_value != new_value) { + if (new_value > 0) { #if GLIB_CHECK_VERSION(2, 26, 00) - GDateTime *dt = g_date_time_new_from_unix_local(new_value); - gchar *timestring = g_date_time_format(dt, "%F %H:%M:%S"); - g_object_set(object, "text", timestring, NULL); - g_free(timestring); - g_date_time_unref(dt); + GDateTime *dt = g_date_time_new_from_unix_local(new_value); + gchar *timestring = g_date_time_format(dt, "%F %H:%M:%S"); + g_object_set(object, "text", timestring, NULL); + g_free(timestring); + g_date_time_unref(dt); #else - time_t time_val = new_value; - char buf[64]; - struct tm *ts = localtime(&time_val); - strftime(buf, sizeof(buf), "%Y-%m-%d %H:%M:%S", ts); - g_object_set(object, "text", buf, NULL); + time_t time_val = new_value; + char buf[64]; + struct tm *ts = localtime(&time_val); + strftime(buf, sizeof(buf), "%Y-%m-%d %H:%M:%S", ts); + g_object_set(object, "text", buf, NULL); #endif - } else { - g_object_set(object, "text", "", NULL); - } - priv->epoch_value = new_value; - } + } else { + g_object_set(object, "text", "", NULL); + } + priv->epoch_value = new_value; + } } else { - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } @@ -99,20 +99,20 @@ trg_cell_renderer_epoch_class_init(TrgCellRendererEpochClass * klass) object_class->set_property = trg_cell_renderer_epoch_set_property; g_object_class_install_property(object_class, - PROP_EPOCH_VALUE, - g_param_spec_int64("epoch-value", - "Epoch Value", - "Epoch Value", - INT64_MIN, - INT64_MAX, - 0, - G_PARAM_READWRITE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_EPOCH_VALUE, + g_param_spec_int64("epoch-value", + "Epoch Value", + "Epoch Value", + INT64_MIN, + INT64_MAX, + 0, + G_PARAM_READWRITE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(klass, sizeof(TrgCellRendererEpochPrivate)); } @@ -125,6 +125,6 @@ trg_cell_renderer_epoch_init(TrgCellRendererEpoch * self G_GNUC_UNUSED) GtkCellRenderer *trg_cell_renderer_epoch_new(void) { return - GTK_CELL_RENDERER(g_object_new - (TRG_TYPE_CELL_RENDERER_EPOCH, NULL)); + GTK_CELL_RENDERER(g_object_new + (TRG_TYPE_CELL_RENDERER_EPOCH, NULL)); } diff --git a/src/trg-cell-renderer-epoch.h b/src/trg-cell-renderer-epoch.h index 742c1e4..af235bf 100644 --- a/src/trg-cell-renderer-epoch.h +++ b/src/trg-cell-renderer-epoch.h @@ -48,4 +48,4 @@ GType trg_cell_renderer_epoch_get_type(void); GtkCellRenderer *trg_cell_renderer_epoch_new(void); G_END_DECLS -#endif /* TRG_CELL_RENDERER_EPOCH_H_ */ +#endif /* TRG_CELL_RENDERER_EPOCH_H_ */ diff --git a/src/trg-cell-renderer-eta.c b/src/trg-cell-renderer-eta.c index fafedb1..604ac8f 100644 --- a/src/trg-cell-renderer-eta.c +++ b/src/trg-cell-renderer-eta.c @@ -29,7 +29,7 @@ enum { }; G_DEFINE_TYPE(TrgCellRendererEta, trg_cell_renderer_eta, - GTK_TYPE_CELL_RENDERER_TEXT) + GTK_TYPE_CELL_RENDERER_TEXT) #define TRG_CELL_RENDERER_ETA_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_CELL_RENDERER_ETA, TrgCellRendererEtaPrivate)) typedef struct _TrgCellRendererEtaPrivate TrgCellRendererEtaPrivate; @@ -40,42 +40,42 @@ struct _TrgCellRendererEtaPrivate { static void trg_cell_renderer_eta_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { TrgCellRendererEtaPrivate *priv = - TRG_CELL_RENDERER_ETA_GET_PRIVATE(object); + TRG_CELL_RENDERER_ETA_GET_PRIVATE(object); switch (property_id) { case PROP_ETA_VALUE: - g_value_set_int64(value, priv->eta_value); - break; + g_value_set_int64(value, priv->eta_value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_cell_renderer_eta_set_property(GObject * object, guint property_id, - const GValue * value, - GParamSpec * pspec) + const GValue * value, + GParamSpec * pspec) { TrgCellRendererEtaPrivate *priv = - TRG_CELL_RENDERER_ETA_GET_PRIVATE(object); + TRG_CELL_RENDERER_ETA_GET_PRIVATE(object); if (property_id == PROP_ETA_VALUE) { - priv->eta_value = g_value_get_int64(value); - if (priv->eta_value > 0) { - char etaString[32]; - tr_strltime_short(etaString, priv->eta_value, - sizeof(etaString)); - g_object_set(object, "text", etaString, NULL); - } else if (priv->eta_value == -2) { - g_object_set(object, "text", "∞", NULL); - } else { - g_object_set(object, "text", "", NULL); - } + priv->eta_value = g_value_get_int64(value); + if (priv->eta_value > 0) { + char etaString[32]; + tr_strltime_short(etaString, priv->eta_value, + sizeof(etaString)); + g_object_set(object, "text", etaString, NULL); + } else if (priv->eta_value == -2) { + g_object_set(object, "text", "∞", NULL); + } else { + g_object_set(object, "text", "", NULL); + } } else { - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } @@ -88,20 +88,20 @@ trg_cell_renderer_eta_class_init(TrgCellRendererEtaClass * klass) object_class->set_property = trg_cell_renderer_eta_set_property; g_object_class_install_property(object_class, - PROP_ETA_VALUE, - g_param_spec_int64("eta-value", - "Eta Value", - "Eta Value", - INT64_MIN, - INT64_MAX, - 0, - G_PARAM_READWRITE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_ETA_VALUE, + g_param_spec_int64("eta-value", + "Eta Value", + "Eta Value", + INT64_MIN, + INT64_MAX, + 0, + G_PARAM_READWRITE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(klass, sizeof(TrgCellRendererEtaPrivate)); } @@ -114,5 +114,5 @@ trg_cell_renderer_eta_init(TrgCellRendererEta * self G_GNUC_UNUSED) GtkCellRenderer *trg_cell_renderer_eta_new(void) { return - GTK_CELL_RENDERER(g_object_new(TRG_TYPE_CELL_RENDERER_ETA, NULL)); + GTK_CELL_RENDERER(g_object_new(TRG_TYPE_CELL_RENDERER_ETA, NULL)); } diff --git a/src/trg-cell-renderer-eta.h b/src/trg-cell-renderer-eta.h index d3533fc..a56d96f 100644 --- a/src/trg-cell-renderer-eta.h +++ b/src/trg-cell-renderer-eta.h @@ -48,4 +48,4 @@ GType trg_cell_renderer_eta_get_type(void); GtkCellRenderer *trg_cell_renderer_eta_new(void); G_END_DECLS -#endif /* TRG_CELL_RENDERER_ETA_H_ */ +#endif /* TRG_CELL_RENDERER_ETA_H_ */ diff --git a/src/trg-cell-renderer-numgteqthan.c b/src/trg-cell-renderer-numgteqthan.c index 4aa07bb..e0f9874 100644 --- a/src/trg-cell-renderer-numgteqthan.c +++ b/src/trg-cell-renderer-numgteqthan.c @@ -30,11 +30,11 @@ enum { }; G_DEFINE_TYPE(TrgCellRendererNumGtEqThan, trg_cell_renderer_numgteqthan, - GTK_TYPE_CELL_RENDERER_TEXT) + GTK_TYPE_CELL_RENDERER_TEXT) #define TRG_CELL_RENDERER_NUMGTEQTHAN_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_CELL_RENDERER_NUMGTEQTHAN, TrgCellRendererNumGtEqThanPrivate)) typedef struct _TrgCellRendererNumGtEqThanPrivate - TrgCellRendererNumGtEqThanPrivate; + TrgCellRendererNumGtEqThanPrivate; struct _TrgCellRendererNumGtEqThanPrivate { gint64 value_value; @@ -43,96 +43,96 @@ struct _TrgCellRendererNumGtEqThanPrivate { static void trg_cell_renderer_numgteqthan_get_property(GObject * object, - guint property_id, - GValue * value, - GParamSpec * pspec) + guint property_id, + GValue * value, + GParamSpec * pspec) { TrgCellRendererNumGtEqThanPrivate *priv = - TRG_CELL_RENDERER_NUMGTEQTHAN_GET_PRIVATE(object); + TRG_CELL_RENDERER_NUMGTEQTHAN_GET_PRIVATE(object); switch (property_id) { case PROP_VALUE_VALUE: - g_value_set_int64(value, priv->value_value); - break; + g_value_set_int64(value, priv->value_value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_cell_renderer_numgteqthan_set_property(GObject * object, - guint property_id, - const GValue * value, - GParamSpec * pspec) + guint property_id, + const GValue * value, + GParamSpec * pspec) { TrgCellRendererNumGtEqThanPrivate *priv = - TRG_CELL_RENDERER_NUMGTEQTHAN_GET_PRIVATE(object); + TRG_CELL_RENDERER_NUMGTEQTHAN_GET_PRIVATE(object); if (property_id == PROP_VALUE_VALUE) { - priv->value_value = g_value_get_int64(value); - if (priv->value_value >= priv->minvalue) { - gchar size_text[32]; - g_snprintf(size_text, sizeof(size_text), "%" G_GINT64_FORMAT, - priv->value_value); - g_object_set(object, "text", size_text, NULL); - } else { - g_object_set(object, "text", "", NULL); - } + priv->value_value = g_value_get_int64(value); + if (priv->value_value >= priv->minvalue) { + gchar size_text[32]; + g_snprintf(size_text, sizeof(size_text), "%" G_GINT64_FORMAT, + priv->value_value); + g_object_set(object, "text", size_text, NULL); + } else { + g_object_set(object, "text", "", NULL); + } } else if (property_id == PROP_MINVALUE) { - priv->minvalue = g_value_get_int64(value); + priv->minvalue = g_value_get_int64(value); } else { - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } static void trg_cell_renderer_numgteqthan_class_init(TrgCellRendererNumGtEqThanClass * - klass) + klass) { GObjectClass *object_class = G_OBJECT_CLASS(klass); object_class->get_property = - trg_cell_renderer_numgteqthan_get_property; + trg_cell_renderer_numgteqthan_get_property; object_class->set_property = - trg_cell_renderer_numgteqthan_set_property; + trg_cell_renderer_numgteqthan_set_property; g_object_class_install_property(object_class, - PROP_VALUE_VALUE, - g_param_spec_int64("value", - "Value", - "Value", - INT64_MIN, - INT64_MAX, - 0, - G_PARAM_READWRITE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_VALUE_VALUE, + g_param_spec_int64("value", + "Value", + "Value", + INT64_MIN, + INT64_MAX, + 0, + G_PARAM_READWRITE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_MINVALUE, - g_param_spec_int64("minvalue", - "Min Value", - "Min Value", - INT64_MIN, - INT64_MAX, - 1, - G_PARAM_READWRITE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_MINVALUE, + g_param_spec_int64("minvalue", + "Min Value", + "Min Value", + INT64_MIN, + INT64_MAX, + 1, + G_PARAM_READWRITE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(klass, - sizeof(TrgCellRendererNumGtEqThanPrivate)); + sizeof(TrgCellRendererNumGtEqThanPrivate)); } static void trg_cell_renderer_numgteqthan_init(TrgCellRendererNumGtEqThan * - self) + self) { g_object_set(self, "xalign", 1.0f, NULL); } @@ -140,7 +140,7 @@ static void trg_cell_renderer_numgteqthan_init(TrgCellRendererNumGtEqThan * GtkCellRenderer *trg_cell_renderer_numgteqthan_new(gint64 minvalue) { return - GTK_CELL_RENDERER(g_object_new - (TRG_TYPE_CELL_RENDERER_NUMGTEQTHAN, "minvalue", - minvalue, NULL)); + GTK_CELL_RENDERER(g_object_new + (TRG_TYPE_CELL_RENDERER_NUMGTEQTHAN, "minvalue", + minvalue, NULL)); } diff --git a/src/trg-cell-renderer-numgteqthan.h b/src/trg-cell-renderer-numgteqthan.h index fb15e5a..dca71c6 100644 --- a/src/trg-cell-renderer-numgteqthan.h +++ b/src/trg-cell-renderer-numgteqthan.h @@ -48,4 +48,4 @@ GType trg_cell_renderer_numgteqthan_get_type(void); GtkCellRenderer *trg_cell_renderer_numgteqthan_new(gint64 minvalue); G_END_DECLS -#endif /* TRG_CELL_RENDERER_NUMGTEQTHAN_H_ */ +#endif /* TRG_CELL_RENDERER_NUMGTEQTHAN_H_ */ diff --git a/src/trg-cell-renderer-priority.c b/src/trg-cell-renderer-priority.c index 747c6a5..14d4763 100644 --- a/src/trg-cell-renderer-priority.c +++ b/src/trg-cell-renderer-priority.c @@ -32,7 +32,7 @@ enum { }; G_DEFINE_TYPE(TrgCellRendererPriority, trg_cell_renderer_priority, - GTK_TYPE_CELL_RENDERER_TEXT) + GTK_TYPE_CELL_RENDERER_TEXT) #define TRG_CELL_RENDERER_PRIORITY_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_CELL_RENDERER_PRIORITY, TrgCellRendererPriorityPrivate)) typedef struct _TrgCellRendererPriorityPrivate @@ -44,40 +44,40 @@ struct _TrgCellRendererPriorityPrivate { static void trg_cell_renderer_priority_get_property(GObject * object, - guint property_id, GValue * value, - GParamSpec * pspec) + guint property_id, GValue * value, + GParamSpec * pspec) { TrgCellRendererPriorityPrivate *priv = - TRG_CELL_RENDERER_PRIORITY_GET_PRIVATE(object); + TRG_CELL_RENDERER_PRIORITY_GET_PRIVATE(object); switch (property_id) { case PROP_PRIORITY_VALUE: - g_value_set_int64(value, priv->priority_value); - break; + g_value_set_int64(value, priv->priority_value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } static void trg_cell_renderer_priority_set_property(GObject * object, - guint property_id, - const GValue * value, - GParamSpec * pspec) + guint property_id, + const GValue * value, + GParamSpec * pspec) { TrgCellRendererPriorityPrivate *priv = - TRG_CELL_RENDERER_PRIORITY_GET_PRIVATE(object); + TRG_CELL_RENDERER_PRIORITY_GET_PRIVATE(object); if (property_id == PROP_PRIORITY_VALUE) { - priv->priority_value = g_value_get_int64(value); - if (priv->priority_value == TR_PRI_LOW) { - g_object_set(object, "text", _("Low"), NULL); - } else if (priv->priority_value == TR_PRI_HIGH) { - g_object_set(object, "text", _("High"), NULL); - } else { - g_object_set(object, "text", _("Normal"), NULL); - } + priv->priority_value = g_value_get_int64(value); + if (priv->priority_value == TR_PRI_LOW) { + g_object_set(object, "text", _("Low"), NULL); + } else if (priv->priority_value == TR_PRI_HIGH) { + g_object_set(object, "text", _("High"), NULL); + } else { + g_object_set(object, "text", _("Normal"), NULL); + } } else { - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } @@ -90,30 +90,30 @@ trg_cell_renderer_priority_class_init(TrgCellRendererPriorityClass * klass) object_class->set_property = trg_cell_renderer_priority_set_property; g_object_class_install_property(object_class, - PROP_PRIORITY_VALUE, - g_param_spec_int64 - ("priority-value", - "Priority Value", - "Priority Value", TR_PRI_LOW, - TR_PRI_HIGH, TR_PRI_NORMAL, - G_PARAM_READWRITE | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_PRIORITY_VALUE, + g_param_spec_int64 + ("priority-value", + "Priority Value", + "Priority Value", TR_PRI_LOW, + TR_PRI_HIGH, TR_PRI_NORMAL, + G_PARAM_READWRITE | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(klass, - sizeof(TrgCellRendererPriorityPrivate)); + sizeof(TrgCellRendererPriorityPrivate)); } static void trg_cell_renderer_priority_init(TrgCellRendererPriority * - self G_GNUC_UNUSED) + self G_GNUC_UNUSED) { } GtkCellRenderer *trg_cell_renderer_priority_new(void) { return - GTK_CELL_RENDERER(g_object_new - (TRG_TYPE_CELL_RENDERER_PRIORITY, NULL)); + GTK_CELL_RENDERER(g_object_new + (TRG_TYPE_CELL_RENDERER_PRIORITY, NULL)); } diff --git a/src/trg-cell-renderer-priority.h b/src/trg-cell-renderer-priority.h index e53d8ce..8d47bca 100644 --- a/src/trg-cell-renderer-priority.h +++ b/src/trg-cell-renderer-priority.h @@ -49,4 +49,4 @@ GType trg_cell_renderer_priority_get_type(void); GtkCellRenderer *trg_cell_renderer_priority_new(void); G_END_DECLS -#endif /* TRG_CELL_RENDERER_PRIORITY_H_ */ +#endif /* TRG_CELL_RENDERER_PRIORITY_H_ */ diff --git a/src/trg-cell-renderer-ratio.c b/src/trg-cell-renderer-ratio.c index 5b0d4b6..2a1c304 100644 --- a/src/trg-cell-renderer-ratio.c +++ b/src/trg-cell-renderer-ratio.c @@ -29,7 +29,7 @@ enum { }; G_DEFINE_TYPE(TrgCellRendererRatio, trg_cell_renderer_ratio, - GTK_TYPE_CELL_RENDERER_TEXT) + GTK_TYPE_CELL_RENDERER_TEXT) #define TRG_CELL_RENDERER_RATIO_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_CELL_RENDERER_RATIO, TrgCellRendererRatioPrivate)) typedef struct _TrgCellRendererRatioPrivate TrgCellRendererRatioPrivate; @@ -40,37 +40,37 @@ struct _TrgCellRendererRatioPrivate { static void trg_cell_renderer_ratio_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { TrgCellRendererRatioPrivate *priv = - TRG_CELL_RENDERER_RATIO_GET_PRIVATE(object); + TRG_CELL_RENDERER_RATIO_GET_PRIVATE(object); switch (property_id) { case PROP_RATIO_VALUE: - g_value_set_double(value, priv->ratio_value); - break; + g_value_set_double(value, priv->ratio_value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } static void trg_cell_renderer_ratio_set_property(GObject * object, guint property_id, - const GValue * value, - GParamSpec * pspec) + const GValue * value, + GParamSpec * pspec) { TrgCellRendererRatioPrivate *priv = - TRG_CELL_RENDERER_RATIO_GET_PRIVATE(object); + TRG_CELL_RENDERER_RATIO_GET_PRIVATE(object); if (property_id == PROP_RATIO_VALUE) { - priv->ratio_value = g_value_get_double(value); - if (priv->ratio_value > 0) { - char ratioString[32]; - trg_strlratio(ratioString, priv->ratio_value); - g_object_set(object, "text", ratioString, NULL); - } else { - g_object_set(object, "text", "", NULL); - } + priv->ratio_value = g_value_get_double(value); + if (priv->ratio_value > 0) { + char ratioString[32]; + trg_strlratio(ratioString, priv->ratio_value); + g_object_set(object, "text", ratioString, NULL); + } else { + g_object_set(object, "text", "", NULL); + } } else { - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } @@ -83,20 +83,20 @@ trg_cell_renderer_ratio_class_init(TrgCellRendererRatioClass * klass) object_class->set_property = trg_cell_renderer_ratio_set_property; g_object_class_install_property(object_class, - PROP_RATIO_VALUE, - g_param_spec_double("ratio-value", - "Ratio Value", - "Ratio Value", - 0, - DBL_MAX, - 0, - G_PARAM_READWRITE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_RATIO_VALUE, + g_param_spec_double("ratio-value", + "Ratio Value", + "Ratio Value", + 0, + DBL_MAX, + 0, + G_PARAM_READWRITE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(klass, sizeof(TrgCellRendererRatioPrivate)); } @@ -109,6 +109,6 @@ static void trg_cell_renderer_ratio_init(TrgCellRendererRatio * self) GtkCellRenderer *trg_cell_renderer_ratio_new(void) { return - GTK_CELL_RENDERER(g_object_new - (TRG_TYPE_CELL_RENDERER_RATIO, NULL)); + GTK_CELL_RENDERER(g_object_new + (TRG_TYPE_CELL_RENDERER_RATIO, NULL)); } diff --git a/src/trg-cell-renderer-ratio.h b/src/trg-cell-renderer-ratio.h index 9606f54..82593a0 100644 --- a/src/trg-cell-renderer-ratio.h +++ b/src/trg-cell-renderer-ratio.h @@ -48,4 +48,4 @@ GType trg_cell_renderer_ratio_get_type(void); GtkCellRenderer *trg_cell_renderer_ratio_new(void); G_END_DECLS -#endif /* TRG_CELL_RENDERER_RATIO_H_ */ +#endif /* TRG_CELL_RENDERER_RATIO_H_ */ diff --git a/src/trg-cell-renderer-size.c b/src/trg-cell-renderer-size.c index eadf59e..2271d2e 100644 --- a/src/trg-cell-renderer-size.c +++ b/src/trg-cell-renderer-size.c @@ -29,7 +29,7 @@ enum { }; G_DEFINE_TYPE(TrgCellRendererSize, trg_cell_renderer_size, - GTK_TYPE_CELL_RENDERER_TEXT) + GTK_TYPE_CELL_RENDERER_TEXT) #define TRG_CELL_RENDERER_SIZE_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_CELL_RENDERER_SIZE, TrgCellRendererSizePrivate)) typedef struct _TrgCellRendererSizePrivate TrgCellRendererSizePrivate; @@ -40,37 +40,37 @@ struct _TrgCellRendererSizePrivate { static void trg_cell_renderer_size_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { TrgCellRendererSizePrivate *priv = - TRG_CELL_RENDERER_SIZE_GET_PRIVATE(object); + TRG_CELL_RENDERER_SIZE_GET_PRIVATE(object); switch (property_id) { case PROP_SIZE_VALUE: - g_value_set_int64(value, priv->size_value); - break; + g_value_set_int64(value, priv->size_value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } static void trg_cell_renderer_size_set_property(GObject * object, guint property_id, - const GValue * value, - GParamSpec * pspec) + const GValue * value, + GParamSpec * pspec) { TrgCellRendererSizePrivate *priv = - TRG_CELL_RENDERER_SIZE_GET_PRIVATE(object); + TRG_CELL_RENDERER_SIZE_GET_PRIVATE(object); if (property_id == PROP_SIZE_VALUE) { - priv->size_value = g_value_get_int64(value); - if (priv->size_value > 0) { - char sizeString[32]; - trg_strlsize(sizeString, priv->size_value); - g_object_set(object, "text", sizeString, NULL); - } else { - g_object_set(object, "text", "", NULL); - } + priv->size_value = g_value_get_int64(value); + if (priv->size_value > 0) { + char sizeString[32]; + trg_strlsize(sizeString, priv->size_value); + g_object_set(object, "text", sizeString, NULL); + } else { + g_object_set(object, "text", "", NULL); + } } else { - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } @@ -83,20 +83,20 @@ trg_cell_renderer_size_class_init(TrgCellRendererSizeClass * klass) object_class->set_property = trg_cell_renderer_size_set_property; g_object_class_install_property(object_class, - PROP_SIZE_VALUE, - g_param_spec_int64("size-value", - "Size Value", - "Size Value", - 0, - INT64_MAX, - 0, - G_PARAM_READWRITE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_SIZE_VALUE, + g_param_spec_int64("size-value", + "Size Value", + "Size Value", + 0, + INT64_MAX, + 0, + G_PARAM_READWRITE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(klass, sizeof(TrgCellRendererSizePrivate)); } @@ -109,5 +109,5 @@ static void trg_cell_renderer_size_init(TrgCellRendererSize * self) GtkCellRenderer *trg_cell_renderer_size_new(void) { return - GTK_CELL_RENDERER(g_object_new(TRG_TYPE_CELL_RENDERER_SIZE, NULL)); + GTK_CELL_RENDERER(g_object_new(TRG_TYPE_CELL_RENDERER_SIZE, NULL)); } diff --git a/src/trg-cell-renderer-size.h b/src/trg-cell-renderer-size.h index b7900d6..94e5a00 100644 --- a/src/trg-cell-renderer-size.h +++ b/src/trg-cell-renderer-size.h @@ -48,4 +48,4 @@ GType trg_cell_renderer_size_get_type(void); GtkCellRenderer *trg_cell_renderer_size_new(void); G_END_DECLS -#endif /* TRG_CELL_RENDERER_SIZE_H_ */ +#endif /* TRG_CELL_RENDERER_SIZE_H_ */ diff --git a/src/trg-cell-renderer-speed.c b/src/trg-cell-renderer-speed.c index 369e04d..6fcc797 100644 --- a/src/trg-cell-renderer-speed.c +++ b/src/trg-cell-renderer-speed.c @@ -29,7 +29,7 @@ enum { }; G_DEFINE_TYPE(TrgCellRendererSpeed, trg_cell_renderer_speed, - GTK_TYPE_CELL_RENDERER_TEXT) + GTK_TYPE_CELL_RENDERER_TEXT) #define TRG_CELL_RENDERER_SPEED_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_CELL_RENDERER_SPEED, TrgCellRendererSpeedPrivate)) typedef struct _TrgCellRendererSpeedPrivate TrgCellRendererSpeedPrivate; @@ -40,38 +40,38 @@ struct _TrgCellRendererSpeedPrivate { static void trg_cell_renderer_speed_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { TrgCellRendererSpeedPrivate *priv = - TRG_CELL_RENDERER_SPEED_GET_PRIVATE(object); + TRG_CELL_RENDERER_SPEED_GET_PRIVATE(object); switch (property_id) { case PROP_SPEED_VALUE: - g_value_set_int64(value, priv->speed_value); - break; + g_value_set_int64(value, priv->speed_value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } static void trg_cell_renderer_speed_set_property(GObject * object, guint property_id, - const GValue * value, - GParamSpec * pspec) + const GValue * value, + GParamSpec * pspec) { TrgCellRendererSpeedPrivate *priv = - TRG_CELL_RENDERER_SPEED_GET_PRIVATE(object); + TRG_CELL_RENDERER_SPEED_GET_PRIVATE(object); if (property_id == PROP_SPEED_VALUE) { - priv->speed_value = g_value_get_int64(value); - if (priv->speed_value > 0) { - char speedString[32]; - trg_strlspeed(speedString, - priv->speed_value / KILOBYTE_FACTOR); - g_object_set(object, "text", speedString, NULL); - } else { - g_object_set(object, "text", "", NULL); - } + priv->speed_value = g_value_get_int64(value); + if (priv->speed_value > 0) { + char speedString[32]; + trg_strlspeed(speedString, + priv->speed_value / KILOBYTE_FACTOR); + g_object_set(object, "text", speedString, NULL); + } else { + g_object_set(object, "text", "", NULL); + } } else { - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } } @@ -84,20 +84,20 @@ trg_cell_renderer_speed_class_init(TrgCellRendererSpeedClass * klass) object_class->set_property = trg_cell_renderer_speed_set_property; g_object_class_install_property(object_class, - PROP_SPEED_VALUE, - g_param_spec_int64("speed-value", - "Speed Value", - "Speed Value", - 0, - INT64_MAX, - 0, - G_PARAM_READWRITE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_SPEED_VALUE, + g_param_spec_int64("speed-value", + "Speed Value", + "Speed Value", + 0, + INT64_MAX, + 0, + G_PARAM_READWRITE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(klass, sizeof(TrgCellRendererSpeedPrivate)); } @@ -110,6 +110,6 @@ static void trg_cell_renderer_speed_init(TrgCellRendererSpeed * self) GtkCellRenderer *trg_cell_renderer_speed_new(void) { return - GTK_CELL_RENDERER(g_object_new - (TRG_TYPE_CELL_RENDERER_SPEED, NULL)); + GTK_CELL_RENDERER(g_object_new + (TRG_TYPE_CELL_RENDERER_SPEED, NULL)); } diff --git a/src/trg-cell-renderer-speed.h b/src/trg-cell-renderer-speed.h index 6aa6b7f..e8ea8f0 100644 --- a/src/trg-cell-renderer-speed.h +++ b/src/trg-cell-renderer-speed.h @@ -49,4 +49,4 @@ GType trg_cell_renderer_speed_get_type(void); GtkCellRenderer *trg_cell_renderer_speed_new(void); G_END_DECLS -#endif /* TRG_CELL_RENDERER_SPEED_H_ */ +#endif /* TRG_CELL_RENDERER_SPEED_H_ */ diff --git a/src/trg-client.c b/src/trg-client.c index 942121d..5304a81 100644 --- a/src/trg-client.c +++ b/src/trg-client.c @@ -88,27 +88,27 @@ struct _TrgClientPrivate { }; static void dispatch_async_threadfunc(trg_request * reqrsp, - TrgClient * client); + TrgClient * client); static void trg_client_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { switch (property_id) { default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_client_set_property(GObject * object, guint property_id, - const GValue * value, GParamSpec * pspec) + const GValue * value, GParamSpec * pspec) { switch (property_id) { default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } @@ -128,13 +128,13 @@ static void trg_client_class_init(TrgClientClass * klass) object_class->dispose = trg_client_dispose; signals[TC_SESSION_UPDATED] = - g_signal_new("session-updated", - G_TYPE_FROM_CLASS(object_class), - G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, - G_STRUCT_OFFSET(TrgClientClass, - session_updated), NULL, - NULL, g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); + g_signal_new("session-updated", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, + G_STRUCT_OFFSET(TrgClientClass, + session_updated), NULL, + NULL, g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, G_TYPE_POINTER); } static void trg_client_init(TrgClient * self) @@ -154,7 +154,7 @@ TrgClient *trg_client_new(void) priv->tlsKey = g_private_new(NULL); priv->pool = g_thread_pool_new((GFunc) dispatch_async_threadfunc, tc, - DISPATCH_POOL_SIZE, TRUE, NULL); + DISPATCH_POOL_SIZE, TRUE, NULL); return tc; } @@ -188,9 +188,9 @@ void trg_client_set_session(TrgClient * tc, JsonObject * session) TrgClientPrivate *priv = TRG_CLIENT_GET_PRIVATE(tc); if (priv->session) { - json_object_unref(priv->session); + json_object_unref(priv->session); } else { - session_get_version(session, &priv->version); + session_get_version(session, &priv->version); } priv->session = session; @@ -229,56 +229,56 @@ int trg_client_populate_with_settings(TrgClient * tc) priv->password = NULL; port = - trg_prefs_get_int(prefs, TRG_PREFS_KEY_PORT, TRG_PREFS_CONNECTION); + trg_prefs_get_int(prefs, TRG_PREFS_KEY_PORT, TRG_PREFS_CONNECTION); host = - trg_prefs_get_string(prefs, TRG_PREFS_KEY_HOSTNAME, - TRG_PREFS_CONNECTION); + trg_prefs_get_string(prefs, TRG_PREFS_KEY_HOSTNAME, + TRG_PREFS_CONNECTION); if (!host || strlen(host) < 1) { - g_free(host); - g_mutex_unlock(priv->configMutex); - return TRG_NO_HOSTNAME_SET; + g_free(host); + g_mutex_unlock(priv->configMutex); + return TRG_NO_HOSTNAME_SET; } #ifndef CURL_NO_SSL priv->ssl = - trg_prefs_get_bool(prefs, TRG_PREFS_KEY_SSL, TRG_PREFS_CONNECTION); + trg_prefs_get_bool(prefs, TRG_PREFS_KEY_SSL, TRG_PREFS_CONNECTION); #else priv->ssl = FALSE; #endif priv->url = - g_strdup_printf("%s://%s:%d/transmission/rpc", - priv->ssl ? HTTPS_URI_PREFIX : HTTP_URI_PREFIX, - host, port); + g_strdup_printf("%s://%s:%d/transmission/rpc", + priv->ssl ? HTTPS_URI_PREFIX : HTTP_URI_PREFIX, + host, port); g_free(host); priv->username = - trg_prefs_get_string(prefs, TRG_PREFS_KEY_USERNAME, - TRG_PREFS_CONNECTION); + trg_prefs_get_string(prefs, TRG_PREFS_KEY_USERNAME, + TRG_PREFS_CONNECTION); priv->password = - trg_prefs_get_string(prefs, TRG_PREFS_KEY_PASSWORD, - TRG_PREFS_CONNECTION); + trg_prefs_get_string(prefs, TRG_PREFS_KEY_PASSWORD, + TRG_PREFS_CONNECTION); g_free(priv->proxy); priv->proxy = NULL; #ifdef HAVE_LIBPROXY if ((pf = px_proxy_factory_new())) { - char **proxies = px_proxy_factory_get_proxies(pf, priv->url); - int i; - - for (i = 0; proxies[i]; i++) { - if (g_str_has_prefix(proxies[i], HTTP_URI_PREFIX)) { - g_free(priv->proxy); - priv->proxy = proxies[i]; - } else { - g_free(proxies[i]); - } - } - - g_free(proxies); - px_proxy_factory_free(pf); + char **proxies = px_proxy_factory_get_proxies(pf, priv->url); + int i; + + for (i = 0; proxies[i]; i++) { + if (g_str_has_prefix(proxies[i], HTTP_URI_PREFIX)) { + g_free(priv->proxy); + priv->proxy = proxies[i]; + } else { + g_free(proxies[i]); + } + } + + g_free(proxies); + px_proxy_factory_free(pf); } #endif @@ -318,7 +318,7 @@ void trg_client_set_session_id(TrgClient * tc, gchar * session_id) g_mutex_lock(priv->configMutex); if (priv->session_id) - g_free(priv->session_id); + g_free(priv->session_id); priv->session_id = session_id; @@ -330,13 +330,13 @@ void trg_client_status_change(TrgClient * tc, gboolean connected) TrgClientPrivate *priv = TRG_CLIENT_GET_PRIVATE(tc); if (!connected) { - if (priv->session) { - json_object_unref(priv->session); - priv->session = NULL; - } - g_mutex_lock(priv->configMutex); - trg_prefs_set_connection(priv->prefs, NULL); - g_mutex_unlock(priv->configMutex); + if (priv->session) { + json_object_unref(priv->session); + priv->session = NULL; + } + g_mutex_lock(priv->configMutex); + trg_prefs_set_connection(priv->prefs, NULL); + g_mutex_unlock(priv->configMutex); } } @@ -347,7 +347,7 @@ JsonObject *trg_client_get_session(TrgClient * tc) } void trg_client_thread_pool_push(TrgClient * tc, gpointer data, - GError ** err) + GError ** err) { TrgClientPrivate *priv = TRG_CLIENT_GET_PRIVATE(tc); g_thread_pool_push(priv->pool, data, err); @@ -444,7 +444,7 @@ void trg_client_configunlock(TrgClient * tc) void trg_response_free(trg_response * response) { if (response->obj) - json_object_unref(response->obj); + json_object_unref(response->obj); g_free(response); } @@ -456,30 +456,30 @@ http_receive_callback(void *ptr, size_t size, size_t nmemb, void *data) mem->raw = g_realloc(mem->raw, mem->size + realsize + 1); if (mem->raw) { - memcpy(&(mem->raw[mem->size]), ptr, realsize); - mem->size += realsize; - mem->raw[mem->size] = 0; + memcpy(&(mem->raw[mem->size]), ptr, realsize); + mem->size += realsize; + mem->raw[mem->size] = 0; } return realsize; } static size_t header_callback(void *ptr, size_t size, size_t nmemb, - void *data) + void *data) { char *header = (char *) (ptr); TrgClient *tc = TRG_CLIENT(data); gchar *session_id; if (g_str_has_prefix(header, X_TRANSMISSION_SESSION_ID_HEADER_PREFIX)) { - char *nl; + char *nl; - session_id = g_strdup(header); - nl = strrchr(session_id, '\r'); - if (nl) - *nl = '\0'; + session_id = g_strdup(header); + nl = strrchr(session_id, '\r'); + if (nl) + *nl = '\0'; - trg_client_set_session_id(tc, session_id); + trg_client_set_session_id(tc, session_id); } return (nmemb * size); @@ -490,20 +490,20 @@ static void trg_tls_update(TrgClient * tc, trg_tls * tls, gint serial) gchar *proxy; curl_easy_setopt(tls->curl, CURLOPT_PASSWORD, - trg_client_get_password(tc)); + trg_client_get_password(tc)); curl_easy_setopt(tls->curl, CURLOPT_USERNAME, - trg_client_get_username(tc)); + trg_client_get_username(tc)); curl_easy_setopt(tls->curl, CURLOPT_URL, trg_client_get_url(tc)); #ifndef CURL_NO_SSL if (trg_client_get_ssl(tc)) - curl_easy_setopt(tls->curl, CURLOPT_SSL_VERIFYPEER, 0); + curl_easy_setopt(tls->curl, CURLOPT_SSL_VERIFYPEER, 0); #endif proxy = trg_client_get_proxy(tc); if (proxy) { - curl_easy_setopt(tls->curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); - curl_easy_setopt(tls->curl, CURLOPT_PROXY, proxy); + curl_easy_setopt(tls->curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP); + curl_easy_setopt(tls->curl, CURLOPT_PROXY, proxy); } tls->serial = serial; @@ -518,7 +518,7 @@ trg_tls *trg_tls_new(TrgClient * tc) curl_easy_setopt(tls->curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_easy_setopt(tls->curl, CURLOPT_TIMEOUT, 20); curl_easy_setopt(tls->curl, CURLOPT_WRITEFUNCTION, - &http_receive_callback); + &http_receive_callback); curl_easy_setopt(tls->curl, CURLOPT_HEADERFUNCTION, &header_callback); curl_easy_setopt(tls->curl, CURLOPT_WRITEHEADER, (void *) tc); @@ -528,9 +528,9 @@ trg_tls *trg_tls_new(TrgClient * tc) } static int trg_http_perform_inner(TrgClient * tc, - gchar * reqstr, - trg_response * response, - gboolean recurse) + gchar * reqstr, + trg_response * response, + gboolean recurse) { TrgClientPrivate *priv = TRG_CLIENT_GET_PRIVATE(tc); gpointer threadLocalStorage = g_private_get(priv->tlsKey); @@ -540,21 +540,21 @@ static int trg_http_perform_inner(TrgClient * tc, struct curl_slist *headers = NULL; if (!threadLocalStorage) { - tls = trg_tls_new(tc); - g_private_set(priv->tlsKey, tls); + tls = trg_tls_new(tc); + g_private_set(priv->tlsKey, tls); } else { - tls = (trg_tls *) threadLocalStorage; + tls = (trg_tls *) threadLocalStorage; } g_mutex_lock(priv->configMutex); if (priv->configSerial > tls->serial) - trg_tls_update(tc, tls, priv->configSerial); + trg_tls_update(tc, tls, priv->configSerial); session_id = trg_client_get_session_id(tc); if (session_id) { - headers = curl_slist_append(NULL, session_id); - curl_easy_setopt(tls->curl, CURLOPT_HTTPHEADER, headers); + headers = curl_slist_append(NULL, session_id); + curl_easy_setopt(tls->curl, CURLOPT_HTTPHEADER, headers); } g_mutex_unlock(priv->configMutex); @@ -567,17 +567,17 @@ static int trg_http_perform_inner(TrgClient * tc, response->status = curl_easy_perform(tls->curl); if (session_id) { - g_free(session_id); - curl_slist_free_all(headers); + g_free(session_id); + curl_slist_free_all(headers); } curl_easy_getinfo(tls->curl, CURLINFO_RESPONSE_CODE, &httpCode); if (response->status == CURLE_OK) { - if (httpCode == HTTP_CONFLICT && recurse == TRUE) - return trg_http_perform_inner(tc, reqstr, response, FALSE); - else if (httpCode != HTTP_OK) - response->status = (-httpCode) - 100; + if (httpCode == HTTP_CONFLICT && recurse == TRUE) + return trg_http_perform_inner(tc, reqstr, response, FALSE); + else if (httpCode != HTTP_OK) + response->status = (-httpCode) - 100; } return response->status; @@ -596,7 +596,7 @@ trg_response *dispatch(TrgClient * client, JsonNode * req) json_node_free(req); #ifdef DEBUG if (g_getenv("TRG_SHOW_OUTGOING")) - g_debug("=>(OUTgoing)=>: %s", serialized); + g_debug("=>(OUTgoing)=>: %s", serialized); #endif return dispatch_str(client, serialized); } @@ -611,51 +611,51 @@ trg_response *dispatch_str(TrgClient * client, gchar * req) g_free(req); if (response->status != CURLE_OK) - return response; + return response; response->obj = trg_deserialize(response, &decode_error); g_free(response->raw); response->raw = NULL; if (decode_error) { - g_error("JSON decoding error: %s", decode_error->message); - g_error_free(decode_error); - response->status = FAIL_JSON_DECODE; - return response; + g_error("JSON decoding error: %s", decode_error->message); + g_error_free(decode_error); + response->status = FAIL_JSON_DECODE; + return response; } result = json_object_get_member(response->obj, FIELD_RESULT); if (!result || g_strcmp0(json_node_get_string(result), FIELD_SUCCESS)) - response->status = FAIL_RESPONSE_UNSUCCESSFUL; + response->status = FAIL_RESPONSE_UNSUCCESSFUL; return response; } static void dispatch_async_threadfunc(trg_request * req, - TrgClient * client) + TrgClient * client) { TrgClientPrivate *priv = TRG_CLIENT_GET_PRIVATE(client); trg_response *rsp; if (req->str) - rsp = dispatch_str(client, req->str); + rsp = dispatch_str(client, req->str); else - rsp = dispatch(client, req->node); + rsp = dispatch(client, req->node); rsp->cb_data = req->cb_data; if (req->callback && req->connid == g_atomic_int_get(&priv->connid)) - g_idle_add(req->callback, rsp); + g_idle_add(req->callback, rsp); else - trg_response_free(rsp); + trg_response_free(rsp); g_free(req); } static gboolean dispatch_async_common(TrgClient * client, - trg_request * trg_req, - GSourceFunc callback, gpointer data) + trg_request * trg_req, + GSourceFunc callback, gpointer data) { TrgClientPrivate *priv = TRG_CLIENT_GET_PRIVATE(client); GError *error = NULL; @@ -666,17 +666,17 @@ static gboolean dispatch_async_common(TrgClient * client, trg_client_thread_pool_push(client, trg_req, &error); if (error) { - g_error("thread creation error: %s\n", error->message); - g_error_free(error); - g_free(trg_req); - return FALSE; + g_error("thread creation error: %s\n", error->message); + g_error_free(error); + g_free(trg_req); + return FALSE; } else { - return TRUE; + return TRUE; } } gboolean dispatch_async(TrgClient * client, JsonNode * req, - GSourceFunc callback, gpointer data) + GSourceFunc callback, gpointer data) { trg_request *trg_req = g_new0(trg_request, 1); trg_req->node = req; @@ -685,7 +685,7 @@ gboolean dispatch_async(TrgClient * client, JsonNode * req, } gboolean dispatch_async_str(TrgClient * client, gchar * req, - GSourceFunc callback, gpointer data) + GSourceFunc callback, gpointer data) { trg_request *trg_req = g_new0(trg_request, 1); trg_req->str = req; diff --git a/src/trg-client.h b/src/trg-client.h index ae3c489..5a5e004 100644 --- a/src/trg-client.h +++ b/src/trg-client.h @@ -94,7 +94,7 @@ G_BEGIN_DECLS typedef struct { GObjectClass parent_class; void (*session_updated) (TrgClient * tc, JsonObject * session, - gpointer data); + gpointer data); } TrgClientClass; @@ -114,14 +114,14 @@ typedef struct { /* stuff that used to be in http.h */ void trg_response_free(trg_response * response); int trg_http_perform(TrgClient * client, gchar * reqstr, - trg_response * reqrsp); + trg_response * reqrsp); /* end http.h*/ /* stuff that used to be in dispatch.c */ trg_response *dispatch(TrgClient * client, JsonNode * req); trg_response *dispatch_str(TrgClient * client, gchar * req); gboolean dispatch_async(TrgClient * client, JsonNode * req, - GSourceFunc callback, gpointer data); + GSourceFunc callback, gpointer data); /* end dispatch.c*/ GType trg_client_get_type(void); @@ -144,7 +144,7 @@ gboolean trg_client_get_ssl(TrgClient * tc); gchar *trg_client_get_proxy(TrgClient * tc); gint64 trg_client_get_serial(TrgClient * tc); void trg_client_thread_pool_push(TrgClient * tc, gpointer data, - GError ** err); + GError ** err); void trg_client_set_torrent_table(TrgClient * tc, GHashTable * table); GHashTable *trg_client_get_torrent_table(TrgClient * tc); JsonObject *trg_client_get_session(TrgClient * tc); @@ -161,4 +161,4 @@ void trg_client_inc_serial(TrgClient * tc); void trg_client_inc_connid(TrgClient * tc); G_END_DECLS -#endif // _TRG_CLIENT_H_ +#endif // _TRG_CLIENT_H_ diff --git a/src/trg-destination-combo.c b/src/trg-destination-combo.c index c19a750..3ebc14d 100644 --- a/src/trg-destination-combo.c +++ b/src/trg-destination-combo.c @@ -27,7 +27,7 @@ #include "util.h" G_DEFINE_TYPE(TrgDestinationCombo, trg_destination_combo, - GTK_TYPE_COMBO_BOX) + GTK_TYPE_COMBO_BOX) #define TRG_DESTINATION_COMBO_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_DESTINATION_COMBO, TrgDestinationComboPrivate)) typedef struct _TrgDestinationComboPrivate TrgDestinationComboPrivate; @@ -54,47 +54,47 @@ enum { static void trg_destination_combo_finalize(GObject * object) { TrgDestinationComboPrivate *priv = - TRG_DESTINATION_COMBO_GET_PRIVATE(object); + TRG_DESTINATION_COMBO_GET_PRIVATE(object); g_free((gpointer) priv->last_selection); } static void trg_destination_combo_get_property(GObject * object, - guint property_id, - GValue * value, - GParamSpec * pspec) + guint property_id, + GValue * value, + GParamSpec * pspec) { TrgDestinationComboPrivate *priv = - TRG_DESTINATION_COMBO_GET_PRIVATE(object); + TRG_DESTINATION_COMBO_GET_PRIVATE(object); switch (property_id) { case PROP_CLIENT: - g_value_set_pointer(value, priv->client); - break; + g_value_set_pointer(value, priv->client); + break; case PROP_LAST_SELECTION: - g_value_set_string(value, priv->last_selection); - break; + g_value_set_string(value, priv->last_selection); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_destination_combo_set_property(GObject * object, - guint property_id, - const GValue * value, - GParamSpec * pspec) + guint property_id, + const GValue * value, + GParamSpec * pspec) { TrgDestinationComboPrivate *priv = - TRG_DESTINATION_COMBO_GET_PRIVATE(object); + TRG_DESTINATION_COMBO_GET_PRIVATE(object); switch (property_id) { case PROP_CLIENT: - priv->client = g_value_get_pointer(value); - break; + priv->client = g_value_get_pointer(value); + break; case PROP_LAST_SELECTION: - priv->last_selection = g_strdup(g_value_get_string(value)); - break; + priv->last_selection = g_strdup(g_value_get_string(value)); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } @@ -102,11 +102,11 @@ static gboolean g_slist_str_set_add(GSList ** list, const gchar * string) { GSList *li; for (li = *list; li; li = g_slist_next(li)) - if (!g_strcmp0((gchar *) li->data, string)) - return FALSE; + if (!g_strcmp0((gchar *) li->data, string)) + return FALSE; *list = g_slist_insert_sorted(*list, (gpointer) string, - (GCompareFunc) g_strcmp0); + (GCompareFunc) g_strcmp0); return TRUE; } @@ -114,92 +114,92 @@ static gboolean g_slist_str_set_add(GSList ** list, const gchar * string) void trg_destination_combo_save_selection(TrgDestinationCombo * combo_box) { TrgDestinationComboPrivate *priv = - TRG_DESTINATION_COMBO_GET_PRIVATE(combo_box); + TRG_DESTINATION_COMBO_GET_PRIVATE(combo_box); GtkTreeIter iter; if (priv->last_selection - && gtk_combo_box_get_active_iter(GTK_COMBO_BOX(combo_box), - &iter)) { - GtkTreeModel *model = - gtk_combo_box_get_model(GTK_COMBO_BOX(combo_box)); - TrgPrefs *prefs = trg_client_get_prefs(priv->client); - gchar *text; - - gtk_tree_model_get(model, &iter, DEST_COLUMN_LABEL, &text, -1); - trg_prefs_set_string(prefs, priv->last_selection, text, - TRG_PREFS_CONNECTION); - g_free(text); + && gtk_combo_box_get_active_iter(GTK_COMBO_BOX(combo_box), + &iter)) { + GtkTreeModel *model = + gtk_combo_box_get_model(GTK_COMBO_BOX(combo_box)); + TrgPrefs *prefs = trg_client_get_prefs(priv->client); + gchar *text; + + gtk_tree_model_get(model, &iter, DEST_COLUMN_LABEL, &text, -1); + trg_prefs_set_string(prefs, priv->last_selection, text, + TRG_PREFS_CONNECTION); + g_free(text); } } static void gtk_combo_box_entry_active_changed(GtkComboBox * combo_box, - gpointer user_data) + gpointer user_data) { GtkTreeModel *model; GtkTreeIter iter; gboolean editableEntry = TRUE; if (gtk_combo_box_get_active_iter(combo_box, &iter)) { - GtkEntry *entry = - trg_destination_combo_get_entry(TRG_DESTINATION_COMBO - (combo_box)); + GtkEntry *entry = + trg_destination_combo_get_entry(TRG_DESTINATION_COMBO + (combo_box)); - if (entry) { - GValue value = { 0, }; - guint type; + if (entry) { + GValue value = { 0, }; + guint type; - model = gtk_combo_box_get_model(combo_box); + model = gtk_combo_box_get_model(combo_box); - gtk_tree_model_get_value(model, &iter, DEST_COLUMN_LABEL, - &value); - gtk_tree_model_get(model, &iter, DEST_COLUMN_TYPE, &type, -1); + gtk_tree_model_get_value(model, &iter, DEST_COLUMN_LABEL, + &value); + gtk_tree_model_get(model, &iter, DEST_COLUMN_TYPE, &type, -1); - g_object_set_property(G_OBJECT(entry), "text", &value); - g_value_unset(&value); + g_object_set_property(G_OBJECT(entry), "text", &value); + g_value_unset(&value); - if (type == DEST_LABEL) - editableEntry = FALSE; - } + if (type == DEST_LABEL) + editableEntry = FALSE; + } } #if GTK_CHECK_VERSION( 3, 0, 0 ) gtk_editable_set_editable(GTK_EDITABLE - (trg_destination_combo_get_entry - (TRG_DESTINATION_COMBO(combo_box))), - editableEntry); + (trg_destination_combo_get_entry + (TRG_DESTINATION_COMBO(combo_box))), + editableEntry); #else gtk_entry_set_editable(trg_destination_combo_get_entry - (TRG_DESTINATION_COMBO(combo_box)), - editableEntry); + (TRG_DESTINATION_COMBO(combo_box)), + editableEntry); #endif } gboolean trg_destination_combo_has_text(TrgDestinationCombo * combo) { const gchar *text = - gtk_entry_get_text(trg_destination_combo_get_entry - (TRG_DESTINATION_COMBO(combo))); + gtk_entry_get_text(trg_destination_combo_get_entry + (TRG_DESTINATION_COMBO(combo))); return strlen(text) > 0; } GtkEntry *trg_destination_combo_get_entry(TrgDestinationCombo * combo) { TrgDestinationComboPrivate *priv = - TRG_DESTINATION_COMBO_GET_PRIVATE(combo); + TRG_DESTINATION_COMBO_GET_PRIVATE(combo); return GTK_ENTRY(priv->entry); } static void add_entry_cb(GtkEntry * entry, - GtkEntryIconPosition icon_pos, - GdkEvent * event, gpointer user_data) + GtkEntryIconPosition icon_pos, + GdkEvent * event, gpointer user_data) { GtkComboBox *combo = GTK_COMBO_BOX(user_data); GtkTreeModel *model = gtk_combo_box_get_model(combo); GtkTreeIter iter; gtk_list_store_insert_with_values(GTK_LIST_STORE(model), &iter, - INT_MAX, DEST_COLUMN_LABEL, "", - DEST_COLUMN_DIR, "", - DEST_COLUMN_TYPE, DEST_USERADD, -1); + INT_MAX, DEST_COLUMN_LABEL, "", + DEST_COLUMN_DIR, "", + DEST_COLUMN_TYPE, DEST_USERADD, -1); gtk_combo_box_set_active_iter(combo, &iter); } @@ -210,10 +210,10 @@ struct findDupeArg { gboolean trg_destination_combo_insert_check_dupe_foreach(GtkTreeModel * model, - GtkTreePath * - path G_GNUC_UNUSED, - GtkTreeIter * iter, - struct findDupeArg *args) + GtkTreePath * + path G_GNUC_UNUSED, + GtkTreeIter * iter, + struct findDupeArg *args) { gchar *existing; gtk_tree_model_get(model, iter, DEST_COLUMN_DIR, &existing, -1); @@ -223,52 +223,52 @@ trg_destination_combo_insert_check_dupe_foreach(GtkTreeModel * model, } static void trg_destination_combo_insert(GtkComboBox * box, - const gchar * label, - const gchar * dir, guint type, - const gchar * lastDestination) + const gchar * label, + const gchar * dir, guint type, + const gchar * lastDestination) { GtkTreeModel *model = gtk_combo_box_get_model(box); gchar *comboLabel; GtkTreeIter iter; if (type == DEST_EXISTING) { - struct findDupeArg args; - args.isDupe = FALSE; - args.dir = dir; - gtk_tree_model_foreach(GTK_TREE_MODEL(model), - (GtkTreeModelForeachFunc) - trg_destination_combo_insert_check_dupe_foreach, - &args); - if (args.isDupe) - return; + struct findDupeArg args; + args.isDupe = FALSE; + args.dir = dir; + gtk_tree_model_foreach(GTK_TREE_MODEL(model), + (GtkTreeModelForeachFunc) + trg_destination_combo_insert_check_dupe_foreach, + &args); + if (args.isDupe) + return; } comboLabel = - label ? g_strdup_printf("%s (%s)", label, dir) : g_strdup(dir); + label ? g_strdup_printf("%s (%s)", label, dir) : g_strdup(dir); gtk_list_store_insert_with_values(GTK_LIST_STORE(model), &iter, - INT_MAX, DEST_COLUMN_LABEL, - comboLabel, DEST_COLUMN_DIR, dir, - DEST_COLUMN_TYPE, type, -1); + INT_MAX, DEST_COLUMN_LABEL, + comboLabel, DEST_COLUMN_DIR, dir, + DEST_COLUMN_TYPE, type, -1); if (lastDestination && !g_strcmp0(lastDestination, comboLabel)) - gtk_combo_box_set_active_iter(box, &iter); + gtk_combo_box_set_active_iter(box, &iter); g_free(comboLabel); } static GObject *trg_destination_combo_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam * - construct_params) + guint + n_construct_properties, + GObjectConstructParam * + construct_params) { GObject *object = G_OBJECT_CLASS - (trg_destination_combo_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_destination_combo_parent_class)->constructor(type, + n_construct_properties, + construct_params); TrgDestinationComboPrivate *priv = - TRG_DESTINATION_COMBO_GET_PRIVATE(object); + TRG_DESTINATION_COMBO_GET_PRIVATE(object); TrgClient *client = priv->client; TrgPrefs *prefs = trg_client_get_prefs(client); @@ -284,102 +284,102 @@ static GObject *trg_destination_combo_constructor(GType type, const gchar *lastDestination = NULL; comboModel = gtk_list_store_new(N_DEST_COLUMNS, G_TYPE_STRING, - G_TYPE_STRING, G_TYPE_UINT); + G_TYPE_STRING, G_TYPE_UINT); gtk_combo_box_set_model(GTK_COMBO_BOX(object), - GTK_TREE_MODEL(comboModel)); + GTK_TREE_MODEL(comboModel)); g_object_unref(comboModel); g_signal_connect(object, "changed", - G_CALLBACK(gtk_combo_box_entry_active_changed), NULL); + G_CALLBACK(gtk_combo_box_entry_active_changed), NULL); priv->entry = gtk_entry_new(); gtk_container_add(GTK_CONTAINER(object), priv->entry); priv->text_renderer = gtk_cell_renderer_text_new(); gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(object), - priv->text_renderer, TRUE); + priv->text_renderer, TRUE); gtk_cell_layout_set_attributes(GTK_CELL_LAYOUT(object), - priv->text_renderer, "text", 0, NULL); + priv->text_renderer, "text", 0, NULL); g_slist_foreach(dirs, (GFunc) g_free, NULL); g_slist_free(dirs); gtk_entry_set_icon_from_stock(GTK_ENTRY(priv->entry), - GTK_ENTRY_ICON_SECONDARY, - GTK_STOCK_CLEAR); + GTK_ENTRY_ICON_SECONDARY, + GTK_STOCK_CLEAR); g_signal_connect(priv->entry, "icon-release", - G_CALLBACK(add_entry_cb), object); + G_CALLBACK(add_entry_cb), object); defaultDir = - g_strdup(session_get_download_dir(trg_client_get_session(client))); + g_strdup(session_get_download_dir(trg_client_get_session(client))); rm_trailing_slashes(defaultDir); savedDestinations = - trg_prefs_get_array(prefs, TRG_PREFS_KEY_DESTINATIONS, - TRG_PREFS_CONNECTION); + trg_prefs_get_array(prefs, TRG_PREFS_KEY_DESTINATIONS, + TRG_PREFS_CONNECTION); if (priv->last_selection) - lastDestination = trg_prefs_get_string(prefs, priv->last_selection, - TRG_PREFS_CONNECTION); + lastDestination = trg_prefs_get_string(prefs, priv->last_selection, + TRG_PREFS_CONNECTION); trg_destination_combo_insert(GTK_COMBO_BOX(object), - NULL, - defaultDir, - DEST_DEFAULT, lastDestination); + NULL, + defaultDir, + DEST_DEFAULT, lastDestination); if (savedDestinations) { - list = json_array_get_elements(savedDestinations); - if (list) { - for (li = list; li; li = g_list_next(li)) { - JsonObject *obj = - json_node_get_object((JsonNode *) li->data); - trg_destination_combo_insert(GTK_COMBO_BOX(object), - json_object_get_string_member - (obj, TRG_PREFS_SUBKEY_LABEL), - json_object_get_string_member - (obj, - TRG_PREFS_KEY_DESTINATIONS_SUBKEY_DIR), - DEST_LABEL, lastDestination); - } - g_list_free(list); - } + list = json_array_get_elements(savedDestinations); + if (list) { + for (li = list; li; li = g_list_next(li)) { + JsonObject *obj = + json_node_get_object((JsonNode *) li->data); + trg_destination_combo_insert(GTK_COMBO_BOX(object), + json_object_get_string_member + (obj, TRG_PREFS_SUBKEY_LABEL), + json_object_get_string_member + (obj, + TRG_PREFS_KEY_DESTINATIONS_SUBKEY_DIR), + DEST_LABEL, lastDestination); + } + g_list_free(list); + } } trg_client_updatelock(client); list = g_hash_table_get_values(trg_client_get_torrent_table(client)); for (li = list; li; li = g_list_next(li)) { - rr = (GtkTreeRowReference *) li->data; - model = gtk_tree_row_reference_get_model(rr); - path = gtk_tree_row_reference_get_path(rr); + rr = (GtkTreeRowReference *) li->data; + model = gtk_tree_row_reference_get_model(rr); + path = gtk_tree_row_reference_get_path(rr); - if (path) { - GtkTreeIter iter; + if (path) { + GtkTreeIter iter; - if (gtk_tree_model_get_iter(model, &iter, path)) { - gchar *dd; + if (gtk_tree_model_get_iter(model, &iter, path)) { + gchar *dd; - gtk_tree_model_get(model, &iter, - TORRENT_COLUMN_DOWNLOADDIR, &dd, -1); + gtk_tree_model_get(model, &iter, + TORRENT_COLUMN_DOWNLOADDIR, &dd, -1); - if (dd && g_strcmp0(dd, defaultDir)) - g_slist_str_set_add(&dirs, dd); - else - g_free(dd); - } + if (dd && g_strcmp0(dd, defaultDir)) + g_slist_str_set_add(&dirs, dd); + else + g_free(dd); + } - gtk_tree_path_free(path); - } + gtk_tree_path_free(path); + } } trg_client_updateunlock(client); for (sli = dirs; sli; sli = g_slist_next(sli)) - trg_destination_combo_insert(GTK_COMBO_BOX(object), - NULL, - (gchar *) sli->data, - DEST_EXISTING, lastDestination); + trg_destination_combo_insert(GTK_COMBO_BOX(object), + NULL, + (gchar *) sli->data, + DEST_EXISTING, lastDestination); g_list_free(list); g_free(defaultDir); @@ -393,24 +393,24 @@ gchar *trg_destination_combo_get_dir(TrgDestinationCombo * combo) GtkTreeIter iter; if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(combo), &iter)) { - gchar *value; - guint type; + gchar *value; + guint type; - gtk_tree_model_get(model, &iter, DEST_COLUMN_TYPE, &type, -1); + gtk_tree_model_get(model, &iter, DEST_COLUMN_TYPE, &type, -1); - if (type == DEST_LABEL) { - gtk_tree_model_get(model, &iter, DEST_COLUMN_DIR, &value, -1); - return value; - } + if (type == DEST_LABEL) { + gtk_tree_model_get(model, &iter, DEST_COLUMN_DIR, &value, -1); + return value; + } } return - g_strdup(gtk_entry_get_text - (trg_destination_combo_get_entry(combo))); + g_strdup(gtk_entry_get_text + (trg_destination_combo_get_entry(combo))); } static void trg_destination_combo_class_init(TrgDestinationComboClass * - klass) + klass) { GObjectClass *object_class = G_OBJECT_CLASS(klass); @@ -422,31 +422,31 @@ static void trg_destination_combo_class_init(TrgDestinationComboClass * object_class->constructor = trg_destination_combo_constructor; g_object_class_install_property(object_class, - PROP_CLIENT, - g_param_spec_pointer("trg-client", - "TClient", - "Client", - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_CLIENT, + g_param_spec_pointer("trg-client", + "TClient", + "Client", + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_LAST_SELECTION, - g_param_spec_string - ("last-selection-key", - "LastSelectionKey", - "LastSelectionKey", NULL, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_LAST_SELECTION, + g_param_spec_string + ("last-selection-key", + "LastSelectionKey", + "LastSelectionKey", NULL, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); } static void trg_destination_combo_init(TrgDestinationCombo * self) @@ -454,10 +454,10 @@ static void trg_destination_combo_init(TrgDestinationCombo * self) } GtkWidget *trg_destination_combo_new(TrgClient * client, - const gchar * lastSelectionKey) + const gchar * lastSelectionKey) { return GTK_WIDGET(g_object_new(TRG_TYPE_DESTINATION_COMBO, - "trg-client", client, - "last-selection-key", lastSelectionKey, - NULL)); + "trg-client", client, + "last-selection-key", lastSelectionKey, + NULL)); } diff --git a/src/trg-destination-combo.h b/src/trg-destination-combo.h index c7513f2..61eafdd 100644 --- a/src/trg-destination-combo.h +++ b/src/trg-destination-combo.h @@ -48,11 +48,11 @@ typedef struct { GType trg_destination_combo_get_type(void); GtkWidget *trg_destination_combo_new(TrgClient * client, - const gchar * lastSelectionKey); + const gchar * lastSelectionKey); gchar *trg_destination_combo_get_dir(TrgDestinationCombo * combo); gboolean trg_destination_combo_has_text(TrgDestinationCombo * combo); GtkEntry *trg_destination_combo_get_entry(TrgDestinationCombo * combo); void trg_destination_combo_save_selection(TrgDestinationCombo * combo_box); G_END_DECLS -#endif /* TRG_DESTINATION_COMBO_H_ */ +#endif /* TRG_DESTINATION_COMBO_H_ */ diff --git a/src/trg-file-parser.c b/src/trg-file-parser.c index f98b677..8565ce9 100644 --- a/src/trg-file-parser.c +++ b/src/trg-file-parser.c @@ -28,8 +28,8 @@ static trg_torrent_file_node * trg_torrent_file_node_insert(trg_torrent_file_node * top, - be_node * file_node, guint index, - gint64 * total_length) + be_node * file_node, guint index, + gint64 * total_length) { int i; trg_torrent_file_node *path_el_parent = top; @@ -37,45 +37,45 @@ static trg_torrent_file_node be_node *file_path_node = be_dict_find(file_node, "path", BE_LIST); if (!file_path_node || !file_length_node) - return NULL; + return NULL; /* Iterate over the path list which contains each file/directory * component of the path in order. */ for (i = 0;;) { - be_node *path_el_node = file_path_node->val.l[i]; - - trg_torrent_file_node *target_node = NULL; - GList *li; - - /* Does this element exist already? */ - for (li = path_el_parent->children; li != NULL; - li = g_list_next(li)) { - trg_torrent_file_node *x = (trg_torrent_file_node *) li->data; - if (!g_strcmp0(x->name, path_el_node->val.s)) { - target_node = x; - break; - } - } - - if (!target_node) { - /* Create a new node and add it as a child of the parent from the - * last iteration. */ - target_node = g_new0(trg_torrent_file_node, 1); - target_node->name = g_strdup(path_el_node->val.s); - path_el_parent->children = - g_list_append(path_el_parent->children, target_node); - } - - path_el_parent = target_node; - - /* Is this the last component of the path (the file)? */ - if (!file_path_node->val.l[++i]) { - *total_length += (target_node->length = - (gint64) (file_length_node->val.i)); - target_node->index = index; - return target_node; - } + be_node *path_el_node = file_path_node->val.l[i]; + + trg_torrent_file_node *target_node = NULL; + GList *li; + + /* Does this element exist already? */ + for (li = path_el_parent->children; li != NULL; + li = g_list_next(li)) { + trg_torrent_file_node *x = (trg_torrent_file_node *) li->data; + if (!g_strcmp0(x->name, path_el_node->val.s)) { + target_node = x; + break; + } + } + + if (!target_node) { + /* Create a new node and add it as a child of the parent from the + * last iteration. */ + target_node = g_new0(trg_torrent_file_node, 1); + target_node->name = g_strdup(path_el_node->val.s); + path_el_parent->children = + g_list_append(path_el_parent->children, target_node); + } + + path_el_parent = target_node; + + /* Is this the last component of the path (the file)? */ + if (!file_path_node->val.l[++i]) { + *total_length += (target_node->length = + (gint64) (file_length_node->val.i)); + target_node->index = index; + return target_node; + } } return NULL; @@ -85,7 +85,7 @@ static void trg_torrent_file_node_free(trg_torrent_file_node * node) { GList *li; for (li = node->children; li != NULL; li = g_list_next(li)) - trg_torrent_file_node_free((trg_torrent_file_node *) li->data); + trg_torrent_file_node_free((trg_torrent_file_node *) li->data); g_list_free(node->children); g_free(node->name); g_free(node); @@ -99,9 +99,9 @@ void trg_torrent_file_free(trg_torrent_file * t) } static trg_torrent_file_node *trg_parse_torrent_file_nodes(be_node * - info_node, - gint64 * - total_length) + info_node, + gint64 * + total_length) { be_node *files_node = be_dict_find(info_node, "files", BE_LIST); trg_torrent_file_node *top_node = g_new0(trg_torrent_file_node, 1); @@ -109,19 +109,19 @@ static trg_torrent_file_node *trg_parse_torrent_file_nodes(be_node * /* Probably means single file mode. */ if (!files_node) - return NULL; + return NULL; for (i = 0; files_node->val.l[i]; ++i) { - be_node *file_node = files_node->val.l[i]; - - if (be_validate_node(file_node, BE_DICT) || - !trg_torrent_file_node_insert(top_node, file_node, i, - total_length)) { - /* Unexpected format. Throw away everything, file indexes need to - * be correct. */ - trg_torrent_file_node_free(top_node); - return NULL; - } + be_node *file_node = files_node->val.l[i]; + + if (be_validate_node(file_node, BE_DICT) || + !trg_torrent_file_node_insert(top_node, file_node, i, + total_length)) { + /* Unexpected format. Throw away everything, file indexes need to + * be correct. */ + trg_torrent_file_node_free(top_node); + return NULL; + } } return top_node; @@ -135,59 +135,59 @@ trg_torrent_file *trg_parse_torrent_file(const gchar * filename) trg_torrent_file *ret = NULL; if (!g_file_test(filename, G_FILE_TEST_IS_REGULAR)) { - g_message("%s does not exist", filename); - return NULL; + g_message("%s does not exist", filename); + return NULL; } mf = g_mapped_file_new(filename, FALSE, &error); if (error) { - g_error("%s", error->message); - g_error_free(error); - g_mapped_file_unref(mf); - return NULL; + g_error("%s", error->message); + g_error_free(error); + g_mapped_file_unref(mf); + return NULL; } else { - top_node = - be_decoden(g_mapped_file_get_contents(mf), - g_mapped_file_get_length(mf)); + top_node = + be_decoden(g_mapped_file_get_contents(mf), + g_mapped_file_get_length(mf)); } g_mapped_file_unref(mf); if (!top_node) { - return NULL; + return NULL; } else if (be_validate_node(top_node, BE_DICT)) { - goto out; + goto out; } info_node = be_dict_find(top_node, "info", BE_DICT); if (!info_node) - goto out; + goto out; name_node = be_dict_find(info_node, "name", BE_STR); if (!name_node) - goto out; + goto out; ret = g_new0(trg_torrent_file, 1); ret->name = g_strdup(name_node->val.s); ret->top_node = - trg_parse_torrent_file_nodes(info_node, &(ret->total_length)); + trg_parse_torrent_file_nodes(info_node, &(ret->total_length)); if (!ret->top_node) { - trg_torrent_file_node *file_node; - be_node *length_node = be_dict_find(info_node, "length", BE_INT); - - if (!length_node) { - g_free(ret); - ret = NULL; - goto out; - } - - file_node = g_new0(trg_torrent_file_node, 1); - file_node->length = ret->total_length = - (gint64) (length_node->val.i); - file_node->name = g_strdup(ret->name); - ret->top_node = file_node; + trg_torrent_file_node *file_node; + be_node *length_node = be_dict_find(info_node, "length", BE_INT); + + if (!length_node) { + g_free(ret); + ret = NULL; + goto out; + } + + file_node = g_new0(trg_torrent_file_node, 1); + file_node->length = ret->total_length = + (gint64) (length_node->val.i); + file_node->name = g_strdup(ret->name); + ret->top_node = file_node; } out: diff --git a/src/trg-files-model.c b/src/trg-files-model.c index 494f94f..990c89b 100644 --- a/src/trg-files-model.c +++ b/src/trg-files-model.c @@ -40,25 +40,25 @@ struct _TrgFilesModelPrivate { }; static void trg_files_model_iter_new(TrgFilesModel * model, - GtkTreeIter * iter, JsonObject * file, - int id) + GtkTreeIter * iter, JsonObject * file, + int id) { gchar *mimetype; gtk_list_store_append(GTK_LIST_STORE(model), iter); gtk_list_store_set(GTK_LIST_STORE(model), iter, - FILESCOL_NAME, file_get_name(file), - FILESCOL_SIZE, file_get_length(file), - FILESCOL_ID, id, -1); + FILESCOL_NAME, file_get_name(file), + FILESCOL_SIZE, file_get_length(file), + FILESCOL_ID, id, -1); mimetype = g_content_type_guess(file_get_name(file), NULL, 0, NULL); if (mimetype) { - GIcon *icon = g_content_type_get_icon(mimetype); - if (icon) { - gtk_list_store_set(GTK_LIST_STORE(model), iter, - FILESCOL_ICON, icon, -1); - g_object_unref(icon); - } + GIcon *icon = g_content_type_get_icon(mimetype); + if (icon) { + gtk_list_store_set(GTK_LIST_STORE(model), iter, + FILESCOL_ICON, icon, -1); + g_object_unref(icon); + } } g_free(mimetype); @@ -72,26 +72,26 @@ void trg_files_model_set_accept(TrgFilesModel * model, gboolean accept) static void trg_files_model_iter_update(TrgFilesModel * model, - GtkTreeIter * filesIter, JsonObject * file, - JsonArray * wantedArray, - JsonArray * prioritiesArray, int id) + GtkTreeIter * filesIter, JsonObject * file, + JsonArray * wantedArray, + JsonArray * prioritiesArray, int id) { TrgFilesModelPrivate *priv = TRG_FILES_MODEL_GET_PRIVATE(model); gboolean wanted = json_node_get_int(json_array_get_element - (wantedArray, id)) == 1; + (wantedArray, id)) == 1; gint64 priority = - json_node_get_int(json_array_get_element(prioritiesArray, id)); + json_node_get_int(json_array_get_element(prioritiesArray, id)); gdouble progress = file_get_progress(file); gtk_list_store_set(GTK_LIST_STORE(model), filesIter, - FILESCOL_PROGRESS, progress, -1); + FILESCOL_PROGRESS, progress, -1); if (priv->accept) { - gtk_list_store_set(GTK_LIST_STORE(model), filesIter, - FILESCOL_WANTED, - wanted ? GTK_STOCK_APPLY : GTK_STOCK_CANCEL, - FILESCOL_PRIORITY, priority, -1); + gtk_list_store_set(GTK_LIST_STORE(model), filesIter, + FILESCOL_WANTED, + wanted ? GTK_STOCK_APPLY : GTK_STOCK_CANCEL, + FILESCOL_PRIORITY, priority, -1); } } @@ -116,13 +116,13 @@ static void trg_files_model_init(TrgFilesModel * self) column_types[FILESCOL_PRIORITY] = G_TYPE_INT64; gtk_list_store_set_column_types(GTK_LIST_STORE(self), - FILESCOL_COLUMNS, column_types); + FILESCOL_COLUMNS, column_types); } gboolean trg_files_model_update_foreach(GtkListStore * model, - GtkTreePath * path G_GNUC_UNUSED, - GtkTreeIter * iter, GList * files) + GtkTreePath * path G_GNUC_UNUSED, + GtkTreeIter * iter, GList * files) { TrgFilesModelPrivate *priv = TRG_FILES_MODEL_GET_PRIVATE(model); JsonObject *file; @@ -132,14 +132,14 @@ trg_files_model_update_foreach(GtkListStore * model, file = json_node_get_object(g_list_nth_data(files, id)); trg_files_model_iter_update(TRG_FILES_MODEL(model), iter, file, - priv->wanted, priv->priorities, id); + priv->wanted, priv->priorities, id); return FALSE; } void trg_files_model_update(TrgFilesModel * model, gint64 updateSerial, - JsonObject * t, gint mode) + JsonObject * t, gint mode) { TrgFilesModelPrivate *priv = TRG_FILES_MODEL_GET_PRIVATE(model); GList *filesList, *li; @@ -154,34 +154,34 @@ trg_files_model_update(TrgFilesModel * model, gint64 updateSerial, filesList = json_array_get_elements(torrent_get_files(t)); if (mode == TORRENT_GET_MODE_FIRST) { - gtk_list_store_clear(GTK_LIST_STORE(model)); - priv->accept = TRUE; - for (li = filesList; li; li = g_list_next(li)) { - file = json_node_get_object((JsonNode *) li->data); - - trg_files_model_iter_new(model, &filesIter, file, j); - trg_files_model_iter_update(model, &filesIter, - file, priv->wanted, - priv->priorities, j); - j++; - } + gtk_list_store_clear(GTK_LIST_STORE(model)); + priv->accept = TRUE; + for (li = filesList; li; li = g_list_next(li)) { + file = json_node_get_object((JsonNode *) li->data); + + trg_files_model_iter_new(model, &filesIter, file, j); + trg_files_model_iter_update(model, &filesIter, + file, priv->wanted, + priv->priorities, j); + j++; + } } else { - gint n_existing = - gtk_tree_model_iter_n_children(GTK_TREE_MODEL(model), NULL); - guint n_updates = g_list_length(filesList); - gtk_tree_model_foreach(GTK_TREE_MODEL(model), - (GtkTreeModelForeachFunc) - trg_files_model_update_foreach, filesList); - if (n_updates > n_existing) { - gint n_new = n_updates - n_existing; - for (j = n_updates - n_new; j < n_updates; j++) { - file = json_node_get_object(g_list_nth_data(filesList, j)); - trg_files_model_iter_new(model, &filesIter, file, j); - trg_files_model_iter_update(model, &filesIter, - file, priv->wanted, - priv->priorities, j); - } - } + gint n_existing = + gtk_tree_model_iter_n_children(GTK_TREE_MODEL(model), NULL); + guint n_updates = g_list_length(filesList); + gtk_tree_model_foreach(GTK_TREE_MODEL(model), + (GtkTreeModelForeachFunc) + trg_files_model_update_foreach, filesList); + if (n_updates > n_existing) { + gint n_new = n_updates - n_existing; + for (j = n_updates - n_new; j < n_updates; j++) { + file = json_node_get_object(g_list_nth_data(filesList, j)); + trg_files_model_iter_new(model, &filesIter, file, j); + trg_files_model_iter_update(model, &filesIter, + file, priv->wanted, + priv->priorities, j); + } + } } g_list_free(filesList); diff --git a/src/trg-files-model.h b/src/trg-files-model.h index 869503d..c47c361 100644 --- a/src/trg-files-model.h +++ b/src/trg-files-model.h @@ -62,8 +62,8 @@ G_END_DECLS enum { void trg_files_model_update(TrgFilesModel * model, gint64 updateSerial, - JsonObject * t, gint mode); + JsonObject * t, gint mode); gint64 trg_files_model_get_torrent_id(TrgFilesModel * model); void trg_files_model_set_accept(TrgFilesModel * model, gboolean accept); -#endif /* TRG_FILES_MODEL_H_ */ +#endif /* TRG_FILES_MODEL_H_ */ diff --git a/src/trg-files-tree-view.c b/src/trg-files-tree-view.c index b671b39..b3e4011 100644 --- a/src/trg-files-tree-view.c +++ b/src/trg-files-tree-view.c @@ -46,70 +46,70 @@ static void trg_files_tree_view_class_init(TrgFilesTreeViewClass * klass) } static void set_unwanted_foreachfunc(GtkTreeModel * model, - GtkTreePath * path G_GNUC_UNUSED, - GtkTreeIter * iter, - gpointer data G_GNUC_UNUSED) + GtkTreePath * path G_GNUC_UNUSED, + GtkTreeIter * iter, + gpointer data G_GNUC_UNUSED) { gtk_list_store_set(GTK_LIST_STORE(model), iter, FILESCOL_WANTED, - GTK_STOCK_CANCEL, -1); + GTK_STOCK_CANCEL, -1); } static void set_wanted_foreachfunc(GtkTreeModel * model, - GtkTreePath * path G_GNUC_UNUSED, - GtkTreeIter * iter, - gpointer data G_GNUC_UNUSED) + GtkTreePath * path G_GNUC_UNUSED, + GtkTreeIter * iter, + gpointer data G_GNUC_UNUSED) { gtk_list_store_set(GTK_LIST_STORE(model), iter, - FILESCOL_WANTED, GTK_STOCK_APPLY, -1); + FILESCOL_WANTED, GTK_STOCK_APPLY, -1); } static void set_priority_foreachfunc(GtkTreeModel * model, - GtkTreePath * path G_GNUC_UNUSED, - GtkTreeIter * iter, gpointer data) + GtkTreePath * path G_GNUC_UNUSED, + GtkTreeIter * iter, gpointer data) { GValue value = { 0 }; g_value_init(&value, G_TYPE_INT64); g_value_set_int64(&value, (gint64) GPOINTER_TO_INT(data)); gtk_list_store_set_value(GTK_LIST_STORE(model), iter, - FILESCOL_PRIORITY, &value); + FILESCOL_PRIORITY, &value); } static void send_updated_file_prefs_foreachfunc(GtkTreeModel * model, - GtkTreePath * - path G_GNUC_UNUSED, - GtkTreeIter * iter, - gpointer data) + GtkTreePath * + path G_GNUC_UNUSED, + GtkTreeIter * iter, + gpointer data) { JsonObject *args = (JsonObject *) data; gint64 priority, id; gchar *wanted; gtk_tree_model_get(model, iter, FILESCOL_WANTED, &wanted, - FILESCOL_PRIORITY, &priority, FILESCOL_ID, &id, -1); + FILESCOL_PRIORITY, &priority, FILESCOL_ID, &id, -1); if (!g_strcmp0(wanted, GTK_STOCK_CANCEL)) - add_file_id_to_array(args, FIELD_FILES_UNWANTED, id); + add_file_id_to_array(args, FIELD_FILES_UNWANTED, id); else - add_file_id_to_array(args, FIELD_FILES_WANTED, id); + add_file_id_to_array(args, FIELD_FILES_WANTED, id); g_free(wanted); if (priority == TR_PRI_LOW) - add_file_id_to_array(args, FIELD_FILES_PRIORITY_LOW, id); + add_file_id_to_array(args, FIELD_FILES_PRIORITY_LOW, id); else if (priority == TR_PRI_HIGH) - add_file_id_to_array(args, FIELD_FILES_PRIORITY_HIGH, id); + add_file_id_to_array(args, FIELD_FILES_PRIORITY_HIGH, id); else - add_file_id_to_array(args, FIELD_FILES_PRIORITY_NORMAL, id); + add_file_id_to_array(args, FIELD_FILES_PRIORITY_NORMAL, id); } static gboolean on_files_update(gpointer data) { trg_response *response = (trg_response *) data; TrgFilesTreeViewPrivate *priv = - TRG_FILES_TREE_VIEW_GET_PRIVATE(response->cb_data); + TRG_FILES_TREE_VIEW_GET_PRIVATE(response->cb_data); GtkTreeModel *model = - gtk_tree_view_get_model(GTK_TREE_VIEW(response->cb_data)); + gtk_tree_view_get_model(GTK_TREE_VIEW(response->cb_data)); trg_files_model_set_accept(TRG_FILES_MODEL(model), TRUE); @@ -138,8 +138,8 @@ static void send_updated_file_prefs(TrgFilesTreeView * tv) request_set_tag(req, targetId); gtk_tree_selection_selected_foreach(selection, - send_updated_file_prefs_foreachfunc, - args); + send_updated_file_prefs_foreachfunc, + args); trg_files_model_set_accept(TRG_FILES_MODEL(model), FALSE); @@ -150,10 +150,10 @@ static void set_low(GtkWidget * w G_GNUC_UNUSED, gpointer data) { TrgFilesTreeView *tv = TRG_FILES_TREE_VIEW(data); GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); gtk_tree_selection_selected_foreach(selection, - set_priority_foreachfunc, - GINT_TO_POINTER(TR_PRI_LOW)); + set_priority_foreachfunc, + GINT_TO_POINTER(TR_PRI_LOW)); send_updated_file_prefs(tv); } @@ -161,10 +161,10 @@ static void set_normal(GtkWidget * w G_GNUC_UNUSED, gpointer data) { TrgFilesTreeView *tv = TRG_FILES_TREE_VIEW(data); GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); gtk_tree_selection_selected_foreach(selection, - set_priority_foreachfunc, - GINT_TO_POINTER(TR_PRI_NORMAL)); + set_priority_foreachfunc, + GINT_TO_POINTER(TR_PRI_NORMAL)); send_updated_file_prefs(tv); } @@ -172,10 +172,10 @@ static void set_high(GtkWidget * w G_GNUC_UNUSED, gpointer data) { TrgFilesTreeView *tv = TRG_FILES_TREE_VIEW(data); GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); gtk_tree_selection_selected_foreach(selection, - set_priority_foreachfunc, - GINT_TO_POINTER(TR_PRI_HIGH)); + set_priority_foreachfunc, + GINT_TO_POINTER(TR_PRI_HIGH)); send_updated_file_prefs(tv); } @@ -183,9 +183,9 @@ static void set_unwanted(GtkWidget * w G_GNUC_UNUSED, gpointer data) { TrgFilesTreeView *tv = TRG_FILES_TREE_VIEW(data); GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); gtk_tree_selection_selected_foreach(selection, - set_unwanted_foreachfunc, NULL); + set_unwanted_foreachfunc, NULL); send_updated_file_prefs(tv); } @@ -193,15 +193,15 @@ static void set_wanted(GtkWidget * w G_GNUC_UNUSED, gpointer data) { TrgFilesTreeView *tv = TRG_FILES_TREE_VIEW(data); GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(data)); gtk_tree_selection_selected_foreach(selection, - set_wanted_foreachfunc, NULL); + set_wanted_foreachfunc, NULL); send_updated_file_prefs(tv); } static void view_popup_menu(GtkWidget * treeview, GdkEventButton * event, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { GtkWidget *menu, *menuitem; @@ -213,7 +213,7 @@ view_popup_menu(GtkWidget * treeview, GdkEventButton * event, menuitem = gtk_menu_item_new_with_label(_("Normal Priority")); g_signal_connect(menuitem, "activate", G_CALLBACK(set_normal), - treeview); + treeview); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); menuitem = gtk_menu_item_new_with_label(_("Low Priority")); @@ -221,56 +221,56 @@ view_popup_menu(GtkWidget * treeview, GdkEventButton * event, gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_menu_shell_append(GTK_MENU_SHELL(menu), - gtk_separator_menu_item_new()); + gtk_separator_menu_item_new()); menuitem = gtk_image_menu_item_new_with_label(GTK_STOCK_APPLY); gtk_image_menu_item_set_use_stock(GTK_IMAGE_MENU_ITEM(menuitem), TRUE); gtk_image_menu_item_set_always_show_image(GTK_IMAGE_MENU_ITEM - (menuitem), TRUE); + (menuitem), TRUE); gtk_menu_item_set_label(GTK_MENU_ITEM(menuitem), _("Download")); g_signal_connect(menuitem, "activate", G_CALLBACK(set_wanted), - treeview); + treeview); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); menuitem = gtk_image_menu_item_new_with_label(GTK_STOCK_CANCEL); gtk_image_menu_item_set_use_stock(GTK_IMAGE_MENU_ITEM(menuitem), TRUE); gtk_image_menu_item_set_always_show_image(GTK_IMAGE_MENU_ITEM - (menuitem), TRUE); + (menuitem), TRUE); gtk_menu_item_set_label(GTK_MENU_ITEM(menuitem), _("Skip")); g_signal_connect(menuitem, "activate", G_CALLBACK(set_unwanted), - treeview); + treeview); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); gtk_widget_show_all(menu); gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, - (event != NULL) ? event->button : 0, - gdk_event_get_time((GdkEvent *) event)); + (event != NULL) ? event->button : 0, + gdk_event_get_time((GdkEvent *) event)); } static gboolean view_onButtonPressed(GtkWidget * treeview, GdkEventButton * event, - gpointer userdata) + gpointer userdata) { GtkTreeSelection *selection; GtkTreePath *path; if (event->type == GDK_BUTTON_PRESS && event->button == 3) { - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); - - if (gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(treeview), - (gint) event->x, - (gint) event->y, &path, - NULL, NULL, NULL)) { - if (!gtk_tree_selection_path_is_selected(selection, path)) { - gtk_tree_selection_unselect_all(selection); - gtk_tree_selection_select_path(selection, path); - } - gtk_tree_path_free(path); - - view_popup_menu(treeview, event, userdata); - return TRUE; - } + selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); + + if (gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(treeview), + (gint) event->x, + (gint) event->y, &path, + NULL, NULL, NULL)) { + if (!gtk_tree_selection_path_is_selected(selection, path)) { + gtk_tree_selection_unselect_all(selection); + gtk_tree_selection_select_path(selection, path); + } + gtk_tree_path_free(path); + + view_popup_menu(treeview, event, userdata); + return TRUE; + } } return FALSE; @@ -288,36 +288,36 @@ static void trg_files_tree_view_init(TrgFilesTreeView * self) trg_column_description *desc; desc = - trg_tree_view_reg_column(ttv, TRG_COLTYPE_GICONTEXT, FILESCOL_NAME, - _("Name"), "name", 0); + trg_tree_view_reg_column(ttv, TRG_COLTYPE_GICONTEXT, FILESCOL_NAME, + _("Name"), "name", 0); desc->model_column_icon = FILESCOL_ICON; trg_tree_view_reg_column(ttv, TRG_COLTYPE_SIZE, FILESCOL_SIZE, - _("Size"), "size", 0); + _("Size"), "size", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_PROG, FILESCOL_PROGRESS, - _("Progress"), "progress", 0); + _("Progress"), "progress", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_ICON, FILESCOL_WANTED, - _("Wanted"), "wanted", 0); + _("Wanted"), "wanted", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_PRIO, FILESCOL_PRIORITY, - _("Priority"), "priority", 0); + _("Priority"), "priority", 0); gtk_tree_view_set_search_column(GTK_TREE_VIEW(self), FILESCOL_NAME); g_signal_connect(self, "button-press-event", - G_CALLBACK(view_onButtonPressed), NULL); + G_CALLBACK(view_onButtonPressed), NULL); g_signal_connect(self, "popup-menu", G_CALLBACK(view_onPopupMenu), - NULL); + NULL); } TrgFilesTreeView *trg_files_tree_view_new(TrgFilesModel * model, - TrgMainWindow * win, - TrgClient * client) + TrgMainWindow * win, + TrgClient * client) { GObject *obj = g_object_new(TRG_TYPE_FILES_TREE_VIEW, NULL); TrgFilesTreeViewPrivate *priv = TRG_FILES_TREE_VIEW_GET_PRIVATE(obj); trg_tree_view_set_prefs(TRG_TREE_VIEW(obj), - trg_client_get_prefs(client)); + trg_client_get_prefs(client)); gtk_tree_view_set_model(GTK_TREE_VIEW(obj), GTK_TREE_MODEL(model)); priv->client = client; priv->win = win; diff --git a/src/trg-files-tree-view.h b/src/trg-files-tree-view.h index 2ab4daf..06f83ba 100644 --- a/src/trg-files-tree-view.h +++ b/src/trg-files-tree-view.h @@ -49,8 +49,8 @@ typedef struct { GType trg_files_tree_view_get_type(void); TrgFilesTreeView *trg_files_tree_view_new(TrgFilesModel * model, - TrgMainWindow * win, - TrgClient * client); + TrgMainWindow * win, + TrgClient * client); G_END_DECLS -#endif /* TRG_FILES_TREE_VIEW_H_ */ +#endif /* TRG_FILES_TREE_VIEW_H_ */ diff --git a/src/trg-general-panel.c b/src/trg-general-panel.c index 144a12a..d5043a0 100644 --- a/src/trg-general-panel.c +++ b/src/trg-general-panel.c @@ -38,8 +38,8 @@ static void gtk_label_clear(GtkLabel * l); static GtkLabel *gen_panel_label_get_key_label(GtkLabel * l); static GtkLabel *trg_general_panel_add_label(TrgGeneralPanel * gp, - char *key, guint col, - guint row); + char *key, guint col, + guint row); G_DEFINE_TYPE(TrgGeneralPanel, trg_general_panel, GTK_TYPE_TABLE) #define TRG_GENERAL_PANEL_GET_PRIVATE(o) \ @@ -84,7 +84,7 @@ void trg_general_panel_clear(TrgGeneralPanel * panel) gtk_label_clear(priv->gen_downloaddir_label); gtk_label_clear(priv->gen_error_label); gtk_label_clear(gen_panel_label_get_key_label - (GTK_LABEL(priv->gen_error_label))); + (GTK_LABEL(priv->gen_error_label))); } static void gtk_label_clear(GtkLabel * l) @@ -103,7 +103,7 @@ static void trg_general_panel_class_init(TrgGeneralPanelClass * klass) } void trg_general_panel_update(TrgGeneralPanel * panel, JsonObject * t, - GtkTreeIter * iter) + GtkTreeIter * iter) { TrgGeneralPanelPrivate *priv; gchar buf[32]; @@ -117,9 +117,9 @@ void trg_general_panel_update(TrgGeneralPanel * panel, JsonObject * t, priv = TRG_GENERAL_PANEL_GET_PRIVATE(panel); gtk_tree_model_get(GTK_TREE_MODEL(priv->model), iter, - TORRENT_COLUMN_SEEDS, &seeders, - TORRENT_COLUMN_LEECHERS, &leechers, - TORRENT_COLUMN_STATUS, &statusString, -1); + TORRENT_COLUMN_SEEDS, &seeders, + TORRENT_COLUMN_LEECHERS, &leechers, + TORRENT_COLUMN_STATUS, &statusString, -1); sizeOfBuf = sizeof(buf); @@ -141,17 +141,17 @@ void trg_general_panel_update(TrgGeneralPanel * panel, JsonObject * t, gtk_label_set_text(GTK_LABEL(priv->gen_downloaded_label), buf); if (uploaded > 0 && downloaded > 0) { - trg_strlratio(buf, (double) uploaded / (double) downloaded); - gtk_label_set_text(GTK_LABEL(priv->gen_ratio_label), buf); + trg_strlratio(buf, (double) uploaded / (double) downloaded); + gtk_label_set_text(GTK_LABEL(priv->gen_ratio_label), buf); } else { - gtk_label_set_text(GTK_LABEL(priv->gen_ratio_label), _("N/A")); + gtk_label_set_text(GTK_LABEL(priv->gen_ratio_label), _("N/A")); } fullStatusString = g_strdup_printf("%s %s", statusString, - torrent_get_is_private(t) ? - _("(Private)") : _("(Public)")); + torrent_get_is_private(t) ? + _("(Private)") : _("(Public)")); gtk_label_set_text(GTK_LABEL(priv->gen_status_label), - fullStatusString); + fullStatusString); g_free(fullStatusString); g_free(statusString); @@ -159,37 +159,37 @@ void trg_general_panel_update(TrgGeneralPanel * panel, JsonObject * t, gtk_label_set_text(GTK_LABEL(priv->gen_completed_label), buf); gtk_label_set_text(GTK_LABEL(priv->gen_name_label), - torrent_get_name(t)); + torrent_get_name(t)); gtk_label_set_text(GTK_LABEL(priv->gen_downloaddir_label), - torrent_get_download_dir(t)); + torrent_get_download_dir(t)); errorStr = torrent_get_errorstr(t); keyLabel = - gen_panel_label_get_key_label(GTK_LABEL(priv->gen_error_label)); + gen_panel_label_get_key_label(GTK_LABEL(priv->gen_error_label)); if (strlen(errorStr) > 0) { - gchar *markup = - g_markup_printf_escaped("<span fgcolor=\"red\">%s</span>", - errorStr); - gtk_label_set_markup(GTK_LABEL(priv->gen_error_label), markup); - g_free(markup); - - markup = - g_markup_printf_escaped - ("<span font_weight=\"bold\" fgcolor=\"red\">%s</span>", - _("Error")); - gtk_label_set_markup(keyLabel, markup); - g_free(markup); + gchar *markup = + g_markup_printf_escaped("<span fgcolor=\"red\">%s</span>", + errorStr); + gtk_label_set_markup(GTK_LABEL(priv->gen_error_label), markup); + g_free(markup); + + markup = + g_markup_printf_escaped + ("<span font_weight=\"bold\" fgcolor=\"red\">%s</span>", + _("Error")); + gtk_label_set_markup(keyLabel, markup); + g_free(markup); } else { - gtk_label_clear(GTK_LABEL(priv->gen_error_label)); - gtk_label_clear(keyLabel); + gtk_label_clear(GTK_LABEL(priv->gen_error_label)); + gtk_label_clear(keyLabel); } if ((eta = torrent_get_eta(t)) > 0) { - tr_strltime_long(buf, eta, sizeOfBuf); - gtk_label_set_text(GTK_LABEL(priv->gen_eta_label), buf); + tr_strltime_long(buf, eta, sizeOfBuf); + gtk_label_set_text(GTK_LABEL(priv->gen_eta_label), buf); } else { - gtk_label_set_text(GTK_LABEL(priv->gen_eta_label), _("N/A")); + gtk_label_set_text(GTK_LABEL(priv->gen_eta_label), _("N/A")); } snprintf(buf, sizeof(buf), "%d", seeders >= 0 ? seeders : 0); @@ -199,10 +199,10 @@ void trg_general_panel_update(TrgGeneralPanel * panel, JsonObject * t, } static GtkLabel *trg_general_panel_add_label_with_width(TrgGeneralPanel * - gp, char *key, - guint col, - guint row, - gint width) + gp, char *key, + guint col, + guint row, + gint width) { GtkWidget *value, *keyLabel, *alignment; @@ -211,16 +211,16 @@ static GtkLabel *trg_general_panel_add_label_with_width(TrgGeneralPanel * alignment = gtk_alignment_new(0, 0, 0, 0); keyLabel = gtk_label_new(NULL); if (strlen(key) > 0) { - gchar *keyMarkup = - g_markup_printf_escaped(strlen(key) > 0 ? "<b>%s:</b>" : "", - key); - gtk_label_set_markup(GTK_LABEL(keyLabel), keyMarkup); - g_free(keyMarkup); + gchar *keyMarkup = + g_markup_printf_escaped(strlen(key) > 0 ? "<b>%s:</b>" : "", + key); + gtk_label_set_markup(GTK_LABEL(keyLabel), keyMarkup); + g_free(keyMarkup); } gtk_container_add(GTK_CONTAINER(alignment), keyLabel); gtk_table_attach(GTK_TABLE(gp), alignment, startCol, startCol + 1, row, - row + 1, GTK_FILL, 0, TRG_GENERAL_PANEL_SPACING_X, - TRG_GENERAL_PANEL_SPACING_Y); + row + 1, GTK_FILL, 0, TRG_GENERAL_PANEL_SPACING_X, + TRG_GENERAL_PANEL_SPACING_Y); alignment = gtk_alignment_new(0, 0, 0, 0); value = gtk_label_new(NULL); @@ -228,18 +228,18 @@ static GtkLabel *trg_general_panel_add_label_with_width(TrgGeneralPanel * gtk_label_set_selectable(GTK_LABEL(value), TRUE); gtk_container_add(GTK_CONTAINER(alignment), value); gtk_table_attach(GTK_TABLE(gp), alignment, startCol + 1, - width < - 0 ? TRG_GENERAL_PANEL_COLUMNS_TOTAL - 1 : startCol + - 1 + width, row, row + 1, GTK_FILL | GTK_SHRINK, 0, - TRG_GENERAL_PANEL_SPACING_X, - TRG_GENERAL_PANEL_SPACING_Y); + width < + 0 ? TRG_GENERAL_PANEL_COLUMNS_TOTAL - 1 : startCol + + 1 + width, row, row + 1, GTK_FILL | GTK_SHRINK, 0, + TRG_GENERAL_PANEL_SPACING_X, + TRG_GENERAL_PANEL_SPACING_Y); return GTK_LABEL(value); } static GtkLabel *trg_general_panel_add_label(TrgGeneralPanel * gp, - char *key, guint col, - guint row) + char *key, guint col, + guint row) { return trg_general_panel_add_label_with_width(gp, key, col, row, 1); } @@ -250,55 +250,55 @@ static void trg_general_panel_init(TrgGeneralPanel * self) int i; g_object_set(G_OBJECT(self), "n-columns", - TRG_GENERAL_PANEL_COLUMNS_TOTAL, "n-rows", 7, NULL); + TRG_GENERAL_PANEL_COLUMNS_TOTAL, "n-rows", 7, NULL); priv->gen_name_label = - trg_general_panel_add_label_with_width(self, _("Name"), 0, 0, -1); + trg_general_panel_add_label_with_width(self, _("Name"), 0, 0, -1); priv->gen_size_label = - trg_general_panel_add_label(self, _("Size"), 0, 1); + trg_general_panel_add_label(self, _("Size"), 0, 1); priv->gen_eta_label = - trg_general_panel_add_label(self, _("ETA"), 1, 1); + trg_general_panel_add_label(self, _("ETA"), 1, 1); priv->gen_completed_label = - trg_general_panel_add_label(self, _("Completed"), 2, 1); + trg_general_panel_add_label(self, _("Completed"), 2, 1); priv->gen_seeders_label = - trg_general_panel_add_label(self, _("Seeders"), 0, 2); + trg_general_panel_add_label(self, _("Seeders"), 0, 2); priv->gen_down_rate_label = - trg_general_panel_add_label(self, _("Rate Down"), 1, 2); + trg_general_panel_add_label(self, _("Rate Down"), 1, 2); priv->gen_downloaded_label = - trg_general_panel_add_label(self, _("Downloaded"), 2, 2); + trg_general_panel_add_label(self, _("Downloaded"), 2, 2); priv->gen_leechers_label = - trg_general_panel_add_label(self, _("Leechers"), 0, 3); + trg_general_panel_add_label(self, _("Leechers"), 0, 3); priv->gen_up_rate_label = - trg_general_panel_add_label(self, _("Rate Up"), 1, 3); + trg_general_panel_add_label(self, _("Rate Up"), 1, 3); priv->gen_uploaded_label = - trg_general_panel_add_label(self, _("Uploaded"), 2, 3); + trg_general_panel_add_label(self, _("Uploaded"), 2, 3); priv->gen_status_label = - trg_general_panel_add_label(self, _("Status"), 0, 4); + trg_general_panel_add_label(self, _("Status"), 0, 4); priv->gen_ratio_label = - trg_general_panel_add_label(self, _("Ratio"), 1, 4); + trg_general_panel_add_label(self, _("Ratio"), 1, 4); priv->gen_downloaddir_label = - trg_general_panel_add_label_with_width(self, _("Location"), 0, 5, - -1); + trg_general_panel_add_label_with_width(self, _("Location"), 0, 5, + -1); priv->gen_error_label = - trg_general_panel_add_label_with_width(self, "", 0, 6, -1); + trg_general_panel_add_label_with_width(self, "", 0, 6, -1); for (i = 0; i < TRG_GENERAL_PANEL_COLUMNS_TOTAL; i++) - gtk_table_set_col_spacing(GTK_TABLE(self), i, - i % 2 == - 0 ? TRG_GENERAL_PANEL_WIDTH_FROM_KEY : - TRG_GENERAL_PANEL_WIDTH_FROM_VALUE); + gtk_table_set_col_spacing(GTK_TABLE(self), i, + i % 2 == + 0 ? TRG_GENERAL_PANEL_WIDTH_FROM_KEY : + TRG_GENERAL_PANEL_WIDTH_FROM_VALUE); gtk_widget_set_sensitive(GTK_WIDGET(self), FALSE); } TrgGeneralPanel *trg_general_panel_new(GtkTreeModel * model, - TrgClient * tc) + TrgClient * tc) { GObject *obj; TrgGeneralPanelPrivate *priv; diff --git a/src/trg-general-panel.h b/src/trg-general-panel.h index ab7e2d3..33cbde3 100644 --- a/src/trg-general-panel.h +++ b/src/trg-general-panel.h @@ -51,11 +51,11 @@ typedef struct { GType trg_general_panel_get_type(void); TrgGeneralPanel *trg_general_panel_new(GtkTreeModel * model, - TrgClient * tc); + TrgClient * tc); G_END_DECLS void trg_general_panel_update(TrgGeneralPanel * panel, JsonObject * t, - GtkTreeIter * iter); + GtkTreeIter * iter); void trg_general_panel_clear(TrgGeneralPanel * panel); -#endif /* TRG_GENERAL_PANEL_H_ */ +#endif /* TRG_GENERAL_PANEL_H_ */ diff --git a/src/trg-json-widgets.c b/src/trg-json-widgets.c index 64cc757..e4e5ac5 100644 --- a/src/trg-json-widgets.c +++ b/src/trg-json-widgets.c @@ -35,8 +35,8 @@ void trg_json_widgets_save(GList * list, JsonObject * out) { GList *li; for (li = list; li; li = g_list_next(li)) { - trg_json_widget_desc *wd = (trg_json_widget_desc *) li->data; - wd->saveFunc(wd->widget, out, wd->key); + trg_json_widget_desc *wd = (trg_json_widget_desc *) li->data; + wd->saveFunc(wd->widget, out, wd->key); } } @@ -50,7 +50,7 @@ void trg_json_widget_desc_list_free(GList * list) { GList *li; for (li = list; li; li = g_list_next(li)) - trg_json_widget_desc_free((trg_json_widget_desc *) li->data); + trg_json_widget_desc_free((trg_json_widget_desc *) li->data); g_list_free(list); } @@ -58,13 +58,13 @@ void trg_json_widget_desc_list_free(GList * list) void toggle_active_arg_is_sensitive(GtkToggleButton * b, gpointer data) { gtk_widget_set_sensitive(GTK_WIDGET(data), - gtk_toggle_button_get_active(b)); + gtk_toggle_button_get_active(b)); } GtkWidget *trg_json_widget_check_new(GList ** wl, JsonObject * obj, - const gchar * key, - const gchar * label, - GtkWidget * toggleDep) + const gchar * key, + const gchar * label, + GtkWidget * toggleDep) { GtkWidget *w = gtk_check_button_new_with_mnemonic(label); trg_json_widget_desc *wd = g_new0(trg_json_widget_desc, 1); @@ -74,15 +74,15 @@ GtkWidget *trg_json_widget_check_new(GList ** wl, JsonObject * obj, wd->widget = w; if (toggleDep) { - gtk_widget_set_sensitive(w, - gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON(toggleDep))); - g_signal_connect(G_OBJECT(toggleDep), "toggled", - G_CALLBACK(toggle_active_arg_is_sensitive), w); + gtk_widget_set_sensitive(w, + gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON(toggleDep))); + g_signal_connect(G_OBJECT(toggleDep), "toggled", + G_CALLBACK(toggle_active_arg_is_sensitive), w); } gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w), - json_object_get_boolean_member(obj, key)); + json_object_get_boolean_member(obj, key)); *wl = g_list_append(*wl, wd); @@ -90,8 +90,8 @@ GtkWidget *trg_json_widget_check_new(GList ** wl, JsonObject * obj, } GtkWidget *trg_json_widget_entry_new(GList ** wl, JsonObject * obj, - const gchar * key, - GtkWidget * toggleDep) + const gchar * key, + GtkWidget * toggleDep) { GtkWidget *w = gtk_entry_new(); trg_json_widget_desc *wd = g_new0(trg_json_widget_desc, 1); @@ -101,15 +101,15 @@ GtkWidget *trg_json_widget_entry_new(GList ** wl, JsonObject * obj, wd->widget = w; if (toggleDep) { - gtk_widget_set_sensitive(w, - gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON(toggleDep))); - g_signal_connect(G_OBJECT(toggleDep), "toggled", - G_CALLBACK(toggle_active_arg_is_sensitive), w); + gtk_widget_set_sensitive(w, + gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON(toggleDep))); + g_signal_connect(G_OBJECT(toggleDep), "toggled", + G_CALLBACK(toggle_active_arg_is_sensitive), w); } gtk_entry_set_text(GTK_ENTRY(w), - json_object_get_string_member(obj, key)); + json_object_get_string_member(obj, key)); *wl = g_list_append(*wl, wd); @@ -117,35 +117,35 @@ GtkWidget *trg_json_widget_entry_new(GList ** wl, JsonObject * obj, } static GtkWidget *trg_json_widget_spin_common_new(GList ** wl, - JsonObject * obj, - const gchar * key, - GtkWidget * toggleDep, - trg_json_widget_spin_type - type, gint min, gint max, - gdouble step) + JsonObject * obj, + const gchar * key, + GtkWidget * toggleDep, + trg_json_widget_spin_type + type, gint min, gint max, + gdouble step) { GtkWidget *w = gtk_spin_button_new_with_range(min, max, step); trg_json_widget_desc *wd = g_new0(trg_json_widget_desc, 1); JsonNode *node = json_object_get_member(obj, key); if (type == TRG_JSON_WIDGET_SPIN_DOUBLE) - wd->saveFunc = trg_json_widget_spin_save_double; + wd->saveFunc = trg_json_widget_spin_save_double; else - wd->saveFunc = trg_json_widget_spin_save_int; + wd->saveFunc = trg_json_widget_spin_save_int; wd->key = g_strdup(key); wd->widget = w; if (toggleDep) { - gtk_widget_set_sensitive(w, - gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON(toggleDep))); - g_signal_connect(G_OBJECT(toggleDep), "toggled", - G_CALLBACK(toggle_active_arg_is_sensitive), w); + gtk_widget_set_sensitive(w, + gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON(toggleDep))); + g_signal_connect(G_OBJECT(toggleDep), "toggled", + G_CALLBACK(toggle_active_arg_is_sensitive), w); } gtk_spin_button_set_value(GTK_SPIN_BUTTON(w), - json_node_really_get_double(node)); + json_node_really_get_double(node)); *wl = g_list_append(*wl, wd); @@ -153,53 +153,52 @@ static GtkWidget *trg_json_widget_spin_common_new(GList ** wl, } GtkWidget *trg_json_widget_spin_new_int(GList ** wl, JsonObject * obj, - const gchar * key, - GtkWidget * toggleDep, gint min, - gint max, gint step) + const gchar * key, + GtkWidget * toggleDep, gint min, + gint max, gint step) { return trg_json_widget_spin_common_new(wl, obj, key, toggleDep, - TRG_JSON_WIDGET_SPIN_INT, min, - max, (gdouble) step); + TRG_JSON_WIDGET_SPIN_INT, min, + max, (gdouble) step); } GtkWidget *trg_json_widget_spin_new_double(GList ** wl, JsonObject * obj, - const gchar * key, - GtkWidget * toggleDep, gint min, - gint max, gdouble step) + const gchar * key, + GtkWidget * toggleDep, gint min, + gint max, gdouble step) { return trg_json_widget_spin_common_new(wl, obj, key, toggleDep, - TRG_JSON_WIDGET_SPIN_DOUBLE, - min, max, step); + TRG_JSON_WIDGET_SPIN_DOUBLE, + min, max, step); } void trg_json_widget_check_save(GtkWidget * widget, JsonObject * obj, - gchar * key) + gchar * key) { gboolean active = - gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)); + gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)); json_object_set_boolean_member(obj, key, active); } void trg_json_widget_entry_save(GtkWidget * widget, JsonObject * obj, - gchar * key) + gchar * key) { json_object_set_string_member(obj, key, - gtk_entry_get_text(GTK_ENTRY(widget))); + gtk_entry_get_text(GTK_ENTRY(widget))); } void trg_json_widget_spin_save_int(GtkWidget * widget, JsonObject * obj, - gchar * key) + gchar * key) { - json_object_set_int_member(obj, key, - (gint) - gtk_spin_button_get_value(GTK_SPIN_BUTTON - (widget))); + json_object_set_int_member(obj, key, (gint) + gtk_spin_button_get_value(GTK_SPIN_BUTTON + (widget))); } void trg_json_widget_spin_save_double(GtkWidget * widget, JsonObject * obj, - gchar * key) + gchar * key) { json_object_set_double_member(obj, key, - gtk_spin_button_get_value(GTK_SPIN_BUTTON - (widget))); + gtk_spin_button_get_value(GTK_SPIN_BUTTON + (widget))); } diff --git a/src/trg-json-widgets.h b/src/trg-json-widgets.h index 2f53d1e..9d9c0f8 100644 --- a/src/trg-json-widgets.h +++ b/src/trg-json-widgets.h @@ -37,32 +37,32 @@ typedef enum { void toggle_active_arg_is_sensitive(GtkToggleButton * b, gpointer data); GtkWidget *trg_json_widget_check_new(GList ** wl, JsonObject * obj, - const gchar * key, - const gchar * label, - GtkWidget * toggleDep); + const gchar * key, + const gchar * label, + GtkWidget * toggleDep); GtkWidget *trg_json_widget_entry_new(GList ** wl, JsonObject * obj, - const gchar * key, - GtkWidget * toggleDep); + const gchar * key, + GtkWidget * toggleDep); GtkWidget *trg_json_widget_spin_new_int(GList ** wl, JsonObject * obj, - const gchar * key, - GtkWidget * toggleDep, gint min, - gint max, gint step); + const gchar * key, + GtkWidget * toggleDep, gint min, + gint max, gint step); GtkWidget *trg_json_widget_spin_new_double(GList ** wl, JsonObject * obj, - const gchar * key, - GtkWidget * toggleDep, gint min, - gint max, gdouble step); + const gchar * key, + GtkWidget * toggleDep, gint min, + gint max, gdouble step); void trg_json_widget_check_save(GtkWidget * widget, JsonObject * obj, - gchar * key); + gchar * key); void trg_json_widget_entry_save(GtkWidget * widget, JsonObject * obj, - gchar * key); + gchar * key); void trg_json_widget_spin_save_int(GtkWidget * widget, JsonObject * obj, - gchar * key); + gchar * key); void trg_json_widget_spin_save_double(GtkWidget * widget, JsonObject * obj, - gchar * key); + gchar * key); void trg_json_widget_desc_free(trg_json_widget_desc * wd); void trg_json_widget_desc_list_free(GList * list); void trg_json_widgets_save(GList * list, JsonObject * out); -#endif /* TRG_JSON_WIDGETS_H_ */ +#endif /* TRG_JSON_WIDGETS_H_ */ diff --git a/src/trg-main-window.c b/src/trg-main-window.c index 47c6a9f..20a8497 100644 --- a/src/trg-main-window.c +++ b/src/trg-main-window.c @@ -82,30 +82,30 @@ /* The rather large main window class, which glues everything together. */ static void update_selected_torrent_notebook(TrgMainWindow * win, - gint mode, gint64 id); + gint mode, gint64 id); #ifdef HAVE_LIBNOTIFY static void torrent_event_notification(TrgTorrentModel * model, - gchar * icon, gchar * desc, - gint tmout, gchar * prefKey, - GtkTreeIter * iter, gpointer data); + gchar * icon, gchar * desc, + gint tmout, gchar * prefKey, + GtkTreeIter * iter, gpointer data); #endif static void connchange_whatever_statusicon(TrgMainWindow * win, - gboolean connected); + gboolean connected); static void update_whatever_statusicon(TrgMainWindow * win, - const gchar * speedLabel, - trg_torrent_model_update_stats * - stats); + const gchar * speedLabel, + trg_torrent_model_update_stats * + stats); static void on_torrent_completed(TrgTorrentModel * model, - GtkTreeIter * iter, gpointer data); + GtkTreeIter * iter, gpointer data); static void on_torrent_added(TrgTorrentModel * model, GtkTreeIter * iter, - gpointer data); + gpointer data); static gboolean delete_event(GtkWidget * w, GdkEvent * event, - gpointer data); + gpointer data); static void destroy_window(GtkWidget * w, gpointer data); static void torrent_tv_onRowActivated(GtkTreeView * treeview, - GtkTreePath * path, - GtkTreeViewColumn * col, - gpointer userdata); + GtkTreePath * path, + GtkTreeViewColumn * col, + gpointer userdata); static void add_url_cb(GtkWidget * w, gpointer data); static void add_cb(GtkWidget * w, gpointer data); static void disconnect_cb(GtkWidget * w, gpointer data); @@ -123,10 +123,10 @@ static void move_cb(GtkWidget * w, gpointer data); static void delete_cb(GtkWidget * w, gpointer data); static void open_props_cb(GtkWidget * w, gpointer data); static gint confirm_action_dialog(GtkWindow * win, - GtkTreeSelection * selection, - gchar * question_single, - gchar * question_multi, - gchar * action_stock); + GtkTreeSelection * selection, + gchar * question_single, + gchar * question_multi, + gchar * action_stock); static void view_stats_toggled_cb(GtkWidget * w, gpointer data); static void view_states_toggled_cb(GtkCheckMenuItem * w, gpointer data); static void view_notebook_toggled_cb(GtkCheckMenuItem * w, gpointer data); @@ -140,67 +140,67 @@ static gboolean on_torrent_get_interactive(gpointer data); static gboolean trg_update_torrents_timerfunc(gpointer data); static void open_about_cb(GtkWidget * w, GtkWindow * parent); static gboolean trg_torrent_tree_view_visible_func(GtkTreeModel * model, - GtkTreeIter * iter, - gpointer data); + GtkTreeIter * iter, + gpointer data); static TrgTorrentTreeView - *trg_main_window_torrent_tree_view_new(TrgMainWindow * win, - GtkTreeModel * model); + * trg_main_window_torrent_tree_view_new(TrgMainWindow * win, + GtkTreeModel * model); static gboolean trg_dialog_error_handler(TrgMainWindow * win, - trg_response * response); + trg_response * response); static gboolean torrent_selection_changed(GtkTreeSelection * selection, - gpointer data); + gpointer data); static void trg_main_window_torrent_scrub(TrgMainWindow * win); static void entry_filter_changed_cb(GtkWidget * w, gpointer data); static void torrent_state_selection_changed(TrgStateSelector * selector, - guint flag, gpointer data); + guint flag, gpointer data); static void trg_main_window_conn_changed(TrgMainWindow * win, - gboolean connected); + gboolean connected); static void trg_main_window_get_property(GObject * object, - guint property_id, GValue * value, - GParamSpec * pspec); + guint property_id, GValue * value, + GParamSpec * pspec); static void trg_main_window_set_property(GObject * object, - guint property_id, - const GValue * value, - GParamSpec * pspec); + guint property_id, + const GValue * value, + GParamSpec * pspec); static void quit_cb(GtkWidget * w, gpointer data); static TrgMenuBar *trg_main_window_menu_bar_new(TrgMainWindow * win); #ifndef HAVE_LIBAPPINDICATOR static void status_icon_activated(GtkStatusIcon * icon, gpointer data); static gboolean trg_status_icon_popup_menu_cb(GtkStatusIcon * icon, - gpointer userdata); + gpointer userdata); static gboolean status_icon_button_press_event(GtkStatusIcon * icon, - GdkEventButton * event, - gpointer data); + GdkEventButton * event, + gpointer data); #endif static void clear_filter_entry_cb(GtkEntry * entry, - GtkEntryIconPosition icon_pos, - GdkEvent * event, gpointer user_data); + GtkEntryIconPosition icon_pos, + GdkEvent * event, gpointer user_data); static gboolean torrent_tv_key_press_event(GtkWidget * w, - GdkEventKey * key, - gpointer data); + GdkEventKey * key, + gpointer data); static GtkWidget *trg_imagemenuitem_new(GtkMenuShell * shell, - const gchar * text, char *stock_id, - gboolean sensitive, GCallback cb, - gpointer cbdata); + const gchar * text, char *stock_id, + gboolean sensitive, GCallback cb, + gpointer cbdata); static void set_limit_cb(GtkWidget * w, gpointer data); static GtkWidget *limit_item_new(TrgMainWindow * win, GtkWidget * menu, - gint64 currentLimit, gfloat limit); + gint64 currentLimit, gfloat limit); static GtkWidget *limit_menu_new(TrgMainWindow * win, gchar * title, - gchar * enabledKey, gchar * speedKey, - JsonArray * ids); + gchar * enabledKey, gchar * speedKey, + JsonArray * ids); static void trg_torrent_tv_view_menu(GtkWidget * treeview, - GdkEventButton * event, - gpointer data); + GdkEventButton * event, + gpointer data); static GtkMenu *trg_status_icon_view_menu(TrgMainWindow * win, - const gchar * msg); + const gchar * msg); static gboolean torrent_tv_button_pressed_cb(GtkWidget * treeview, - GdkEventButton * event, - gpointer userdata); + GdkEventButton * event, + gpointer userdata); static gboolean torrent_tv_popup_menu_cb(GtkWidget * treeview, - gpointer userdata); + gpointer userdata); static gboolean window_state_event(GtkWidget * widget, - GdkEventWindowState * event, - gpointer trayIcon); + GdkEventWindowState * event, + gpointer trayIcon); G_DEFINE_TYPE(TrgMainWindow, trg_main_window, GTK_TYPE_WINDOW) #define TRG_MAIN_WINDOW_GET_PRIVATE(o) \ @@ -216,7 +216,7 @@ struct _TrgMainWindowPrivate { #ifdef HAVE_LIBAPPINDICATOR AppIndicator *appIndicator; GtkWidget *appIndicatorStatusItem, *appIndicatorDownloadingItem, - *appIndicatorSeedingItem, *appIndicatorSepItem; + *appIndicatorSeedingItem, *appIndicatorSepItem; #else GtkStatusIcon *statusIcon; #endif @@ -265,8 +265,8 @@ static void reset_connect_args(TrgMainWindow * win) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); if (priv->args) { - g_strfreev(priv->args); - priv->args = NULL; + g_strfreev(priv->args); + priv->args = NULL; } } @@ -287,7 +287,7 @@ gint trg_mw_get_selected_torrent_id(TrgMainWindow * win) } static void update_selected_torrent_notebook(TrgMainWindow * win, - gint mode, gint64 id) + gint mode, gint64 id) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); TrgClient *client = priv->client; @@ -295,20 +295,20 @@ static void update_selected_torrent_notebook(TrgMainWindow * win, GtkTreeIter iter; if (id >= 0 - && get_torrent_data(trg_client_get_torrent_table(client), id, &t, - &iter)) { - trg_toolbar_torrent_actions_sensitive(priv->toolBar, TRUE); - trg_menu_bar_torrent_actions_sensitive(priv->menuBar, TRUE); - trg_general_panel_update(priv->genDetails, t, &iter); - trg_trackers_model_update(priv->trackersModel, - trg_client_get_serial(client), t, mode); - trg_files_model_update(priv->filesModel, - trg_client_get_serial(client), t, mode); - trg_peers_model_update(priv->peersModel, - TRG_TREE_VIEW(priv->peersTreeView), - trg_client_get_serial(client), t, mode); + && get_torrent_data(trg_client_get_torrent_table(client), id, &t, + &iter)) { + trg_toolbar_torrent_actions_sensitive(priv->toolBar, TRUE); + trg_menu_bar_torrent_actions_sensitive(priv->menuBar, TRUE); + trg_general_panel_update(priv->genDetails, t, &iter); + trg_trackers_model_update(priv->trackersModel, + trg_client_get_serial(client), t, mode); + trg_files_model_update(priv->filesModel, + trg_client_get_serial(client), t, mode); + trg_peers_model_update(priv->peersModel, + TRG_TREE_VIEW(priv->peersTreeView), + trg_client_get_serial(client), t, mode); } else if (id < 0) { - trg_main_window_torrent_scrub(win); + trg_main_window_torrent_scrub(win); } priv->selectedTorrentId = id; @@ -316,9 +316,9 @@ static void update_selected_torrent_notebook(TrgMainWindow * win, #ifdef HAVE_LIBNOTIFY static void torrent_event_notification(TrgTorrentModel * model, - gchar * icon, gchar * desc, - gint tmout, gchar * prefKey, - GtkTreeIter * iter, gpointer data) + gchar * icon, gchar * desc, + gint tmout, gchar * prefKey, + GtkTreeIter * iter, gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); TrgPrefs *prefs = trg_client_get_prefs(priv->client); @@ -326,22 +326,22 @@ static void torrent_event_notification(TrgTorrentModel * model, NotifyNotification *notify; if (!trg_prefs_get_bool(prefs, prefKey, TRG_PREFS_NOFLAGS)) - return; + return; gtk_tree_model_get(GTK_TREE_MODEL(model), iter, TORRENT_COLUMN_NAME, - &name, -1); + &name, -1); notify = notify_notification_new(name, desc, icon #if !defined(NOTIFY_VERSION_MINOR) || (NOTIFY_VERSION_MAJOR == 0 && NOTIFY_VERSION_MINOR < 7) - , NULL + , NULL #endif - ); + ); #ifndef HAVE_LIBAPPINDICATOR #if !defined(NOTIFY_VERSION_MINOR) || (NOTIFY_VERSION_MAJOR == 0 && NOTIFY_VERSION_MINOR < 7) if (priv->statusIcon && gtk_status_icon_is_embedded(priv->statusIcon)) - notify_notification_attach_to_status_icon(notify, - priv->statusIcon); + notify_notification_attach_to_status_icon(notify, + priv->statusIcon); #endif #endif @@ -355,13 +355,13 @@ static void torrent_event_notification(TrgTorrentModel * model, #endif static void on_torrent_completed(TrgTorrentModel * model, - GtkTreeIter * iter, gpointer data) + GtkTreeIter * iter, gpointer data) { #ifdef HAVE_LIBNOTIFY torrent_event_notification(model, GTK_STOCK_APPLY, - _("This torrent has completed."), - TORRENT_COMPLETE_NOTIFY_TMOUT, - TRG_PREFS_KEY_COMPLETE_NOTIFY, iter, data); + _("This torrent has completed."), + TORRENT_COMPLETE_NOTIFY_TMOUT, + TRG_PREFS_KEY_COMPLETE_NOTIFY, iter, data); #endif } @@ -372,18 +372,18 @@ static void on_update_filters(TrgTorrentModel * model, gpointer data) } static void on_torrent_added(TrgTorrentModel * model, GtkTreeIter * iter, - gpointer data) + gpointer data) { #ifdef HAVE_LIBNOTIFY torrent_event_notification(model, GTK_STOCK_ADD, - _("This torrent has been added."), - TORRENT_ADD_NOTIFY_TMOUT, - TRG_PREFS_KEY_ADD_NOTIFY, iter, data); + _("This torrent has been added."), + TORRENT_ADD_NOTIFY_TMOUT, + TRG_PREFS_KEY_ADD_NOTIFY, iter, data); #endif } static gboolean delete_event(GtkWidget * w, GdkEvent * event G_GNUC_UNUSED, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { return FALSE; } @@ -394,15 +394,15 @@ static void destroy_window(GtkWidget * w, gpointer data G_GNUC_UNUSED) TrgPrefs *prefs = trg_client_get_prefs(priv->client); trg_prefs_set_int(prefs, TRG_PREFS_KEY_WINDOW_HEIGHT, priv->height, - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); trg_prefs_set_int(prefs, TRG_PREFS_KEY_WINDOW_WIDTH, priv->width, - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); trg_prefs_set_int(prefs, TRG_PREFS_KEY_NOTEBOOK_PANED_POS, - gtk_paned_get_position(GTK_PANED(priv->vpaned)), - TRG_PREFS_GLOBAL); + gtk_paned_get_position(GTK_PANED(priv->vpaned)), + TRG_PREFS_GLOBAL); trg_prefs_set_int(prefs, TRG_PREFS_KEY_STATES_PANED_POS, - gtk_paned_get_position(GTK_PANED(priv->hpaned)), - TRG_PREFS_GLOBAL); + gtk_paned_get_position(GTK_PANED(priv->hpaned)), + TRG_PREFS_GLOBAL); trg_tree_view_persist(TRG_TREE_VIEW(priv->peersTreeView), FALSE); trg_tree_view_persist(TRG_TREE_VIEW(priv->filesTreeView), FALSE); @@ -417,16 +417,16 @@ static void open_props_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); TrgTorrentPropsDialog *dialog = - trg_torrent_props_dialog_new(GTK_WINDOW(data), - priv->torrentTreeView, priv->client); + trg_torrent_props_dialog_new(GTK_WINDOW(data), + priv->torrentTreeView, priv->client); gtk_widget_show_all(GTK_WIDGET(dialog)); } static void torrent_tv_onRowActivated(GtkTreeView * treeview, - GtkTreePath * path G_GNUC_UNUSED, - GtkTreeViewColumn * - col G_GNUC_UNUSED, gpointer userdata) + GtkTreePath * path G_GNUC_UNUSED, + GtkTreeViewColumn * + col G_GNUC_UNUSED, gpointer userdata) { open_props_cb(GTK_WIDGET(treeview), userdata); } @@ -437,7 +437,8 @@ static void add_url_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); TrgTorrentAddUrlDialog *dlg = trg_torrent_add_url_dialog_new(win, - priv->client); + priv-> + client); gtk_widget_show_all(GTK_WIDGET(dlg)); } @@ -453,9 +454,9 @@ static void pause_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_pause(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_pause(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static void pause_all_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -463,7 +464,7 @@ static void pause_all_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, torrent_pause(NULL), - on_generic_interactive_action, data); + on_generic_interactive_action, data); } gboolean trg_add_from_filename(TrgMainWindow * win, gchar ** uris) @@ -475,28 +476,28 @@ gboolean trg_add_from_filename(TrgMainWindow * win, gchar ** uris) int i; for (i = 0; uris[i]; i++) - filesList = g_slist_append(filesList, uris[i]); + filesList = g_slist_append(filesList, uris[i]); if (trg_prefs_get_bool(prefs, TRG_PREFS_KEY_ADD_OPTIONS_DIALOG, - TRG_PREFS_GLOBAL)) { - TrgTorrentAddDialog *dialog = - trg_torrent_add_dialog_new(win, client, - filesList); + TRG_PREFS_GLOBAL)) { + TrgTorrentAddDialog *dialog = + trg_torrent_add_dialog_new(win, client, + filesList); - gtk_widget_show_all(GTK_WIDGET(dialog)); + gtk_widget_show_all(GTK_WIDGET(dialog)); } else { - struct add_torrent_threadfunc_args *args = - g_new0(struct add_torrent_threadfunc_args, 1); - args->list = filesList; - args->cb_data = win; - args->client = client; - args->extraArgs = FALSE; - args->flags = trg_prefs_get_add_flags(prefs); - - launch_add_thread(args); + struct add_torrent_threadfunc_args *args = + g_new0(struct add_torrent_threadfunc_args, 1); + args->list = filesList; + args->cb_data = win; + args->client = client; + args->extraArgs = FALSE; + args->flags = trg_prefs_get_add_flags(prefs); + + launch_add_thread(args); } - g_free(uris); // launch_add_thread() or trg_torrent_add_dialog() will free the filenames and fileList; + g_free(uris); // launch_add_thread() or trg_torrent_add_dialog() will free the filenames and fileList; priv->args = NULL; @@ -508,7 +509,7 @@ static void resume_all_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, torrent_start(NULL), - on_generic_interactive_action, data); + on_generic_interactive_action, data); } static void resume_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -516,9 +517,9 @@ static void resume_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_start(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_start(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static void disconnect_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -539,42 +540,42 @@ void connect_cb(GtkWidget * w, gpointer data) int populate_result; if (w) - profile = (JsonObject *) g_object_get_data(G_OBJECT(w), "profile"); + profile = (JsonObject *) g_object_get_data(G_OBJECT(w), "profile"); if (trg_client_is_connected(priv->client)) - disconnect_cb(NULL, data); + disconnect_cb(NULL, data); if (profile && currentProfile != profile) - trg_prefs_set_profile(prefs, profile); + trg_prefs_set_profile(prefs, profile); else - trg_prefs_profile_change_emit_signal(prefs); + trg_prefs_profile_change_emit_signal(prefs); populate_result = trg_client_populate_with_settings(priv->client); if (populate_result < 0) { - gchar *msg; - - switch (populate_result) { - case TRG_NO_HOSTNAME_SET: - msg = _("No hostname set"); - break; - default: - msg = _("Unknown error getting settings"); - break; - } - - dialog = gtk_message_dialog_new(GTK_WINDOW(data), - GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, - "%s", msg); - gtk_dialog_run(GTK_DIALOG(dialog)); - gtk_widget_destroy(dialog); - reset_connect_args(TRG_MAIN_WINDOW(data)); - return; + gchar *msg; + + switch (populate_result) { + case TRG_NO_HOSTNAME_SET: + msg = _("No hostname set"); + break; + default: + msg = _("Unknown error getting settings"); + break; + } + + dialog = gtk_message_dialog_new(GTK_WINDOW(data), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, + "%s", msg); + gtk_dialog_run(GTK_DIALOG(dialog)); + gtk_widget_destroy(dialog); + reset_connect_args(TRG_MAIN_WINDOW(data)); + return; } trg_status_bar_push_connection_msg(priv->statusBar, - _("Connecting...")); + _("Connecting...")); trg_client_inc_connid(priv->client); dispatch_async(priv->client, session_get(), on_session_get, data); } @@ -584,38 +585,38 @@ static void open_local_prefs_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); GtkWidget *dlg = - trg_preferences_dialog_get_instance(TRG_MAIN_WINDOW(data), - priv->client); + trg_preferences_dialog_get_instance(TRG_MAIN_WINDOW(data), + priv->client); gtk_widget_show_all(dlg); } static void open_remote_prefs_cb(GtkWidget * w G_GNUC_UNUSED, - gpointer data) + gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); TrgRemotePrefsDialog *dlg = - trg_remote_prefs_dialog_get_instance(TRG_MAIN_WINDOW(data), - priv->client); + trg_remote_prefs_dialog_get_instance(TRG_MAIN_WINDOW(data), + priv->client); gtk_widget_show_all(GTK_WIDGET(dlg)); } static void main_window_toggle_filter_dirs(GtkCheckMenuItem * w, - gpointer win) + gpointer win) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); trg_state_selector_set_show_dirs(priv->stateSelector, - gtk_check_menu_item_get_active(w)); + gtk_check_menu_item_get_active(w)); } static void main_window_toggle_filter_trackers(GtkCheckMenuItem * w, - gpointer win) + gpointer win) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); trg_state_selector_set_show_trackers(priv->stateSelector, - gtk_check_menu_item_get_active - (w)); + gtk_check_menu_item_get_active + (w)); } static TrgToolbar *trg_main_window_toolbar_new(TrgMainWindow * win) @@ -625,21 +626,21 @@ static TrgToolbar *trg_main_window_toolbar_new(TrgMainWindow * win) GObject *b_connect, *b_disconnect, *b_add, *b_resume, *b_pause; GObject *b_remove, *b_delete, *b_props, *b_local_prefs, - *b_remote_prefs; + *b_remote_prefs; TrgToolbar *toolBar = trg_toolbar_new(win, prefs); g_object_get(toolBar, "connect-button", &b_connect, - "disconnect-button", &b_disconnect, "add-button", &b_add, - "resume-button", &b_resume, "pause-button", &b_pause, - "delete-button", &b_delete, "remove-button", &b_remove, - "props-button", &b_props, "remote-prefs-button", - &b_remote_prefs, "local-prefs-button", &b_local_prefs, - NULL); + "disconnect-button", &b_disconnect, "add-button", &b_add, + "resume-button", &b_resume, "pause-button", &b_pause, + "delete-button", &b_delete, "remove-button", &b_remove, + "props-button", &b_props, "remote-prefs-button", + &b_remote_prefs, "local-prefs-button", &b_local_prefs, + NULL); g_signal_connect(b_connect, "clicked", G_CALLBACK(connect_cb), win); g_signal_connect(b_disconnect, "clicked", - G_CALLBACK(disconnect_cb), win); + G_CALLBACK(disconnect_cb), win); g_signal_connect(b_add, "clicked", G_CALLBACK(add_cb), win); g_signal_connect(b_resume, "clicked", G_CALLBACK(resume_cb), win); g_signal_connect(b_pause, "clicked", G_CALLBACK(pause_cb), win); @@ -647,9 +648,9 @@ static TrgToolbar *trg_main_window_toolbar_new(TrgMainWindow * win) g_signal_connect(b_remove, "clicked", G_CALLBACK(remove_cb), win); g_signal_connect(b_props, "clicked", G_CALLBACK(open_props_cb), win); g_signal_connect(b_local_prefs, "clicked", - G_CALLBACK(open_local_prefs_cb), win); + G_CALLBACK(open_local_prefs_cb), win); g_signal_connect(b_remote_prefs, "clicked", - G_CALLBACK(open_remote_prefs_cb), win); + G_CALLBACK(open_remote_prefs_cb), win); return toolBar; } @@ -659,9 +660,9 @@ static void reannounce_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_reannounce(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_reannounce(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static void verify_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -669,9 +670,9 @@ static void verify_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_verify(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_verify(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static void start_now_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -679,9 +680,9 @@ static void start_now_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_start_now(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_start_now(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static void up_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -689,9 +690,9 @@ static void up_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_queue_move_up(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_queue_move_up(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static void top_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -699,9 +700,9 @@ static void top_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_queue_move_top(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_queue_move_top(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static void bottom_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -709,9 +710,9 @@ static void bottom_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_queue_move_bottom(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_queue_move_bottom(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static void down_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -719,16 +720,16 @@ static void down_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); dispatch_async(priv->client, - torrent_queue_move_down(build_json_id_array - (priv->torrentTreeView)), - on_generic_interactive_action, data); + torrent_queue_move_down(build_json_id_array + (priv->torrentTreeView)), + on_generic_interactive_action, data); } static gint confirm_action_dialog(GtkWindow * win, - GtkTreeSelection * selection, - gchar * question_single, - gchar * question_multi, - gchar * action_stock) + GtkTreeSelection * selection, + gchar * question_single, + gchar * question_multi, + gchar * action_stock) { TrgMainWindowPrivate *priv; gint selectCount; @@ -740,48 +741,48 @@ static gint confirm_action_dialog(GtkWindow * win, selectCount = gtk_tree_selection_count_selected_rows(selection); if (selectCount == 1) { - GList *list; - GList *firstNode; - GtkTreeIter firstIter; - gchar *name = NULL; - - list = gtk_tree_selection_get_selected_rows(selection, NULL); - firstNode = g_list_first(list); - - gtk_tree_model_get_iter(GTK_TREE_MODEL - (priv->filteredTorrentModel), &firstIter, - firstNode->data); - gtk_tree_model_get(GTK_TREE_MODEL(priv->filteredTorrentModel), - &firstIter, TORRENT_COLUMN_NAME, &name, -1); - g_list_foreach(list, (GFunc) gtk_tree_path_free, NULL); - g_list_free(list); - - dialog = gtk_message_dialog_new_with_markup(GTK_WINDOW(win), - GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_QUESTION, - GTK_BUTTONS_NONE, - question_single, name); - g_free(name); + GList *list; + GList *firstNode; + GtkTreeIter firstIter; + gchar *name = NULL; + + list = gtk_tree_selection_get_selected_rows(selection, NULL); + firstNode = g_list_first(list); + + gtk_tree_model_get_iter(GTK_TREE_MODEL + (priv->filteredTorrentModel), &firstIter, + firstNode->data); + gtk_tree_model_get(GTK_TREE_MODEL(priv->filteredTorrentModel), + &firstIter, TORRENT_COLUMN_NAME, &name, -1); + g_list_foreach(list, (GFunc) gtk_tree_path_free, NULL); + g_list_free(list); + + dialog = gtk_message_dialog_new_with_markup(GTK_WINDOW(win), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_QUESTION, + GTK_BUTTONS_NONE, + question_single, name); + g_free(name); } else if (selectCount > 1) { - dialog = gtk_message_dialog_new_with_markup(GTK_WINDOW(win), - GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_QUESTION, - GTK_BUTTONS_NONE, - question_multi, - selectCount); + dialog = gtk_message_dialog_new_with_markup(GTK_WINDOW(win), + GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_QUESTION, + GTK_BUTTONS_NONE, + question_multi, + selectCount); } else { - return 0; + return 0; } gtk_dialog_add_buttons(GTK_DIALOG(dialog), GTK_STOCK_CANCEL, - GTK_RESPONSE_CANCEL, action_stock, - GTK_RESPONSE_ACCEPT, NULL); + GTK_RESPONSE_CANCEL, action_stock, + GTK_RESPONSE_ACCEPT, NULL); gtk_dialog_set_default_response(GTK_DIALOG(dialog), - GTK_RESPONSE_CANCEL); + GTK_RESPONSE_CANCEL); gtk_dialog_set_alternative_button_order(GTK_DIALOG(dialog), - GTK_RESPONSE_ACCEPT, - GTK_RESPONSE_CANCEL, -1); + GTK_RESPONSE_ACCEPT, + GTK_RESPONSE_CANCEL, -1); response = gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); @@ -792,8 +793,8 @@ static void move_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); TrgTorrentMoveDialog *dlg = - trg_torrent_move_dialog_new(TRG_MAIN_WINDOW(data), priv->client, - priv->torrentTreeView); + trg_torrent_move_dialog_new(TRG_MAIN_WINDOW(data), priv->client, + priv->torrentTreeView); gtk_widget_show_all(GTK_WIDGET(dlg)); } @@ -806,18 +807,18 @@ static void remove_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView)); ids = build_json_id_array(priv->torrentTreeView); if (confirm_action_dialog(GTK_WINDOW(data), selection, - _ - ("<big><b>Remove torrent \"%s\"?</b></big>"), - _("<big><b>Remove %d torrents?</b></big>"), - GTK_STOCK_REMOVE) - == GTK_RESPONSE_ACCEPT) - dispatch_async(priv->client, torrent_remove(ids, FALSE), - on_generic_interactive_action, data); + _ + ("<big><b>Remove torrent \"%s\"?</b></big>"), + _("<big><b>Remove %d torrents?</b></big>"), + GTK_STOCK_REMOVE) + == GTK_RESPONSE_ACCEPT) + dispatch_async(priv->client, torrent_remove(ids, FALSE), + on_generic_interactive_action, data); else - json_array_unref(ids); + json_array_unref(ids); } static void delete_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) @@ -829,19 +830,19 @@ static void delete_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView)); ids = build_json_id_array(priv->torrentTreeView); if (confirm_action_dialog(GTK_WINDOW(data), selection, - _ - ("<big><b>Remove and delete torrent \"%s\"?</b></big>"), - _ - ("<big><b>Remove and delete %d torrents?</b></big>"), - GTK_STOCK_DELETE) == GTK_RESPONSE_ACCEPT) - dispatch_async(priv->client, torrent_remove(ids, TRUE), - on_generic_interactive_action, data); + _ + ("<big><b>Remove and delete torrent \"%s\"?</b></big>"), + _ + ("<big><b>Remove and delete %d torrents?</b></big>"), + GTK_STOCK_DELETE) == GTK_RESPONSE_ACCEPT) + dispatch_async(priv->client, torrent_remove(ids, TRUE), + on_generic_interactive_action, data); else - json_array_unref(ids); + json_array_unref(ids); } static void view_stats_toggled_cb(GtkWidget * w, gpointer data) @@ -849,8 +850,8 @@ static void view_stats_toggled_cb(GtkWidget * w, gpointer data) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); TrgStatsDialog *dlg = - trg_stats_dialog_get_instance(TRG_MAIN_WINDOW(data), - priv->client); + trg_stats_dialog_get_instance(TRG_MAIN_WINDOW(data), + priv->client); gtk_widget_show_all(GTK_WIDGET(dlg)); } @@ -859,33 +860,33 @@ static void view_states_toggled_cb(GtkCheckMenuItem * w, gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); trg_widget_set_visible(priv->stateSelectorScroller, - gtk_check_menu_item_get_active(w)); + gtk_check_menu_item_get_active(w)); } static void view_notebook_toggled_cb(GtkCheckMenuItem * w, gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); trg_widget_set_visible(priv->notebook, - gtk_check_menu_item_get_active(w)); + gtk_check_menu_item_get_active(w)); } #ifndef TRG_NO_GRAPH static void trg_main_window_toggle_graph_cb(GtkCheckMenuItem * w, - gpointer win) + gpointer win) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); if (gtk_check_menu_item_get_active(w)) { - if (priv->graphNotebookIndex < 0) - trg_main_window_add_graph(TRG_MAIN_WINDOW(win), TRUE); + if (priv->graphNotebookIndex < 0) + trg_main_window_add_graph(TRG_MAIN_WINDOW(win), TRUE); } else { - if (priv->graphNotebookIndex >= 0) - trg_main_window_remove_graph(TRG_MAIN_WINDOW(win)); + if (priv->graphNotebookIndex >= 0) + trg_main_window_remove_graph(TRG_MAIN_WINDOW(win)); } } #endif void trg_main_window_notebook_set_visible(TrgMainWindow * win, - gboolean visible) + gboolean visible) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); trg_widget_set_visible(priv->notebook, visible); @@ -899,41 +900,41 @@ static GtkWidget *trg_main_window_notebook_new(TrgMainWindow * win) GtkWidget *notebook = priv->notebook = gtk_notebook_new(); priv->genDetails = - trg_general_panel_new(GTK_TREE_MODEL(priv->torrentModel), - priv->client); + trg_general_panel_new(GTK_TREE_MODEL(priv->torrentModel), + priv->client); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - GTK_WIDGET(priv->genDetails), - gtk_label_new(_("General"))); + GTK_WIDGET(priv->genDetails), + gtk_label_new(_("General"))); priv->trackersModel = trg_trackers_model_new(); priv->trackersTreeView = - trg_trackers_tree_view_new(priv->trackersModel, priv->client, win); + trg_trackers_tree_view_new(priv->trackersModel, priv->client, win); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - my_scrolledwin_new(GTK_WIDGET - (priv->trackersTreeView)), - gtk_label_new(_("Trackers"))); + my_scrolledwin_new(GTK_WIDGET + (priv->trackersTreeView)), + gtk_label_new(_("Trackers"))); priv->filesModel = trg_files_model_new(); priv->filesTreeView = trg_files_tree_view_new(priv->filesModel, win, - priv->client); + priv->client); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - my_scrolledwin_new(GTK_WIDGET - (priv->filesTreeView)), - gtk_label_new(_("Files"))); + my_scrolledwin_new(GTK_WIDGET + (priv->filesTreeView)), + gtk_label_new(_("Files"))); priv->peersModel = trg_peers_model_new(); priv->peersTreeView = trg_peers_tree_view_new(prefs, priv->peersModel); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - my_scrolledwin_new(GTK_WIDGET - (priv->peersTreeView)), - gtk_label_new(_("Peers"))); + my_scrolledwin_new(GTK_WIDGET + (priv->peersTreeView)), + gtk_label_new(_("Peers"))); #ifndef TRG_NO_GRAPH if (trg_prefs_get_bool - (prefs, TRG_PREFS_KEY_SHOW_GRAPH, TRG_PREFS_GLOBAL)) - trg_main_window_add_graph(win, FALSE); + (prefs, TRG_PREFS_KEY_SHOW_GRAPH, TRG_PREFS_GLOBAL)) + trg_main_window_add_graph(win, FALSE); else - priv->graphNotebookIndex = -1; + priv->graphNotebookIndex = -1; #endif return notebook; @@ -943,12 +944,12 @@ gboolean on_session_set(gpointer data) { trg_response *response = (trg_response *) data; TrgMainWindowPrivate *priv = - TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); + TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); if (response->status == CURLE_OK - || response->status == FAIL_RESPONSE_UNSUCCESSFUL) - dispatch_async(priv->client, session_get(), on_session_get, - response->cb_data); + || response->status == FAIL_RESPONSE_UNSUCCESSFUL) + dispatch_async(priv->client, session_get(), on_session_get, + response->cb_data); trg_dialog_error_handler(TRG_MAIN_WINDOW(response->cb_data), response); trg_response_free(response); @@ -961,56 +962,56 @@ static gboolean on_session_get(gpointer data) trg_response *response = (trg_response *) data; TrgMainWindow *win = TRG_MAIN_WINDOW(response->cb_data); TrgMainWindowPrivate *priv = - TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); + TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); TrgClient *client = priv->client; gboolean isConnected = trg_client_is_connected(client); JsonObject *newSession = NULL; if (response->obj) - newSession = get_arguments(response->obj); + newSession = get_arguments(response->obj); if (!isConnected) { - float version; - - if (trg_dialog_error_handler(win, response) == TRUE) { - trg_response_free(response); - reset_connect_args(win); - return FALSE; - } - - if (session_get_version(newSession, &version) == 0 - || version < TRANSMISSION_MIN_SUPPORTED) { - gchar *msg = - g_strdup_printf(_ - ("This application supports Transmission %.2f and later, you have %.2f."), + float version; + + if (trg_dialog_error_handler(win, response) == TRUE) { + trg_response_free(response); + reset_connect_args(win); + return FALSE; + } + + if (session_get_version(newSession, &version) == 0 + || version < TRANSMISSION_MIN_SUPPORTED) { + gchar *msg = + g_strdup_printf(_ + ("This application supports Transmission %.2f and later, you have %.2f."), TRANSMISSION_MIN_SUPPORTED, version); - GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(win), - GTK_DIALOG_MODAL, - GTK_MESSAGE_ERROR, - GTK_BUTTONS_OK, - "%s", msg); - gtk_window_set_title(GTK_WINDOW(dialog), _("Error")); - gtk_dialog_run(GTK_DIALOG(dialog)); - gtk_widget_destroy(dialog); - g_free(msg); - trg_response_free(response); - reset_connect_args(win); - return FALSE; - } - - trg_status_bar_connect(priv->statusBar, newSession); + GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(win), + GTK_DIALOG_MODAL, + GTK_MESSAGE_ERROR, + GTK_BUTTONS_OK, + "%s", msg); + gtk_window_set_title(GTK_WINDOW(dialog), _("Error")); + gtk_dialog_run(GTK_DIALOG(dialog)); + gtk_widget_destroy(dialog); + g_free(msg); + trg_response_free(response); + reset_connect_args(win); + return FALSE; + } + + trg_status_bar_connect(priv->statusBar, newSession); } if (newSession) { - trg_client_set_session(client, newSession); - json_object_ref(newSession); + trg_client_set_session(client, newSession); + json_object_ref(newSession); } if (!isConnected) { - trg_main_window_conn_changed(win, TRUE); - trg_trackers_tree_view_new_connection(priv->trackersTreeView, - client); - dispatch_async(client, torrent_get(-1), on_torrent_get_first, win); + trg_main_window_conn_changed(win, TRUE); + trg_trackers_tree_view_new_connection(priv->trackersTreeView, + client); + dispatch_async(client, torrent_get(-1), on_torrent_get_first, win); } trg_response_free(response); @@ -1019,69 +1020,69 @@ TRANSMISSION_MIN_SUPPORTED, version); } static void connchange_whatever_statusicon(TrgMainWindow * win, - gboolean connected) + gboolean connected) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); const gchar *display = connected ? _("Connected") : _("Disconnected"); #ifdef HAVE_LIBAPPINDICATOR if (priv->appIndicator) - app_indicator_set_menu(priv->appIndicator, - trg_status_icon_view_menu(win, display)); + app_indicator_set_menu(priv->appIndicator, + trg_status_icon_view_menu(win, display)); #else if (priv->statusIcon) - gtk_status_icon_set_tooltip_text(priv->statusIcon, display); + gtk_status_icon_set_tooltip_text(priv->statusIcon, display); #endif } static void update_whatever_statusicon(TrgMainWindow * win, - const gchar * speedLabel, - trg_torrent_model_update_stats * - stats) + const gchar * speedLabel, + trg_torrent_model_update_stats * + stats) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); #ifdef HAVE_LIBAPPINDICATOR gtk_widget_set_visible(priv->appIndicatorSeedingItem, stats != NULL); gtk_widget_set_visible(priv->appIndicatorDownloadingItem, - stats != NULL); + stats != NULL); gtk_widget_set_visible(priv->appIndicatorSepItem, stats != NULL); if (stats) { - gchar *downloadingLabel = - g_strdup_printf(_("Downloading %d"), stats->down); - gchar *seedingLabel = - g_strdup_printf(_("Seeding %d"), stats->seeding); - gtk_menu_item_set_label(GTK_MENU_ITEM - (priv->appIndicatorSeedingItem), - seedingLabel); - gtk_menu_item_set_label(GTK_MENU_ITEM - (priv->appIndicatorDownloadingItem), - downloadingLabel); - g_free(downloadingLabel); - g_free(seedingLabel); + gchar *downloadingLabel = + g_strdup_printf(_("Downloading %d"), stats->down); + gchar *seedingLabel = + g_strdup_printf(_("Seeding %d"), stats->seeding); + gtk_menu_item_set_label(GTK_MENU_ITEM + (priv->appIndicatorSeedingItem), + seedingLabel); + gtk_menu_item_set_label(GTK_MENU_ITEM + (priv->appIndicatorDownloadingItem), + downloadingLabel); + g_free(downloadingLabel); + g_free(seedingLabel); } if (priv->appIndicatorStatusItem) - gtk_menu_item_set_label(GTK_MENU_ITEM - (priv->appIndicatorStatusItem), - speedLabel); + gtk_menu_item_set_label(GTK_MENU_ITEM + (priv->appIndicatorStatusItem), + speedLabel); #else if (priv->statusIcon) - gtk_status_icon_set_tooltip_text(priv->statusIcon, speedLabel); + gtk_status_icon_set_tooltip_text(priv->statusIcon, speedLabel); #endif } - /* - * The callback for a torrent-get response. - */ + /* + * The callback for a torrent-get response. + */ static gboolean on_torrent_get(gpointer data, int mode) { trg_response *response = (trg_response *) data; TrgMainWindow *win = TRG_MAIN_WINDOW(response->cb_data); TrgMainWindowPrivate *priv = - TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); + TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); TrgClient *client = priv->client; TrgPrefs *prefs = trg_client_get_prefs(client); trg_torrent_model_update_stats *stats; @@ -1089,68 +1090,68 @@ static gboolean on_torrent_get(gpointer data, int mode) /* Disconnected between request and response callback */ if (!trg_client_is_connected(client)) { - trg_response_free(response); - return FALSE; + trg_response_free(response); + return FALSE; } trg_client_updatelock(client); interval - = - gtk_widget_get_visible(GTK_WIDGET(win)) ? trg_prefs_get_int(prefs, - TRG_PREFS_KEY_UPDATE_INTERVAL, - TRG_PREFS_CONNECTION) - : trg_prefs_get_int(prefs, TRG_PREFS_KEY_MINUPDATE_INTERVAL, - TRG_PREFS_CONNECTION); + = + gtk_widget_get_visible(GTK_WIDGET(win)) ? trg_prefs_get_int(prefs, + TRG_PREFS_KEY_UPDATE_INTERVAL, + TRG_PREFS_CONNECTION) + : trg_prefs_get_int(prefs, TRG_PREFS_KEY_MINUPDATE_INTERVAL, + TRG_PREFS_CONNECTION); if (interval < 1) - interval = TRG_INTERVAL_DEFAULT; + interval = TRG_INTERVAL_DEFAULT; if (response->status != CURLE_OK) { - if (trg_client_inc_failcount(client) >= TRG_MAX_RETRIES) { - trg_main_window_conn_changed(win, FALSE); - trg_dialog_error_handler(win, response); - } else { - gchar *msg = - make_error_message(response->obj, response->status); - gchar *statusBarMsg = - g_strdup_printf(_("Request %d/%d failed: %s"), - trg_client_get_failcount(client), - TRG_MAX_RETRIES, msg); - trg_status_bar_push_connection_msg(priv->statusBar, - statusBarMsg); - g_free(msg); - g_free(statusBarMsg); - priv->timerId = - g_timeout_add_seconds(interval, - trg_update_torrents_timerfunc, win); - } - trg_client_updateunlock(client); - trg_response_free(response); - return FALSE; + if (trg_client_inc_failcount(client) >= TRG_MAX_RETRIES) { + trg_main_window_conn_changed(win, FALSE); + trg_dialog_error_handler(win, response); + } else { + gchar *msg = + make_error_message(response->obj, response->status); + gchar *statusBarMsg = + g_strdup_printf(_("Request %d/%d failed: %s"), + trg_client_get_failcount(client), + TRG_MAX_RETRIES, msg); + trg_status_bar_push_connection_msg(priv->statusBar, + statusBarMsg); + g_free(msg); + g_free(statusBarMsg); + priv->timerId = + g_timeout_add_seconds(interval, + trg_update_torrents_timerfunc, win); + } + trg_client_updateunlock(client); + trg_response_free(response); + return FALSE; } trg_client_reset_failcount(client); trg_client_inc_serial(client); stats = - trg_torrent_model_update(priv->torrentModel, client, response->obj, - mode); + trg_torrent_model_update(priv->torrentModel, client, response->obj, + mode); trg_state_selector_stats_update(priv->stateSelector, stats); update_selected_torrent_notebook(win, mode, priv->selectedTorrentId); trg_status_bar_update(priv->statusBar, stats, client); update_whatever_statusicon(win, - trg_status_bar_get_speed_text - (priv->statusBar), stats); + trg_status_bar_get_speed_text + (priv->statusBar), stats); #ifndef TRG_NO_GRAPH if (priv->graphNotebookIndex >= 0) - trg_torrent_graph_set_speed(priv->graph, stats); + trg_torrent_graph_set_speed(priv->graph, stats); #endif if (mode != TORRENT_GET_MODE_INTERACTION) - priv->timerId = - g_timeout_add_seconds(interval, trg_update_torrents_timerfunc, - win); + priv->timerId = + g_timeout_add_seconds(interval, trg_update_torrents_timerfunc, + win); trg_client_updateunlock(client); trg_response_free(response); @@ -1166,13 +1167,13 @@ static gboolean on_torrent_get_first(gpointer data) { trg_response *response = (trg_response *) data; TrgMainWindowPrivate *priv = - TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); + TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); TrgMainWindow *win = TRG_MAIN_WINDOW(response->cb_data); gboolean result = on_torrent_get(data, TORRENT_GET_MODE_FIRST); if (priv->args) - trg_add_from_filename(win, priv->args); + trg_add_from_filename(win, priv->args); return result; } @@ -1194,25 +1195,25 @@ static gboolean trg_update_torrents_timerfunc(gpointer data) TrgPrefs *prefs = trg_client_get_prefs(tc); if (trg_client_is_connected(tc)) { - gboolean activeOnly = - trg_prefs_get_bool(prefs, TRG_PREFS_KEY_UPDATE_ACTIVE_ONLY, - TRG_PREFS_CONNECTION) - && (!trg_prefs_get_bool(prefs, - TRG_PREFS_ACTIVEONLY_FULLSYNC_ENABLED, - TRG_PREFS_CONNECTION) - || (trg_client_get_serial(tc) - % trg_prefs_get_int(prefs, - TRG_PREFS_ACTIVEONLY_FULLSYNC_EVERY, - TRG_PREFS_CONNECTION) != 0)); - dispatch_async(tc, - torrent_get(activeOnly ? TORRENT_GET_TAG_MODE_UPDATE - : TORRENT_GET_TAG_MODE_FULL), - activeOnly ? on_torrent_get_active : - on_torrent_get_update, data); - - if (trg_client_get_serial(tc) % SESSION_UPDATE_DIVISOR == 0) - dispatch_async(priv->client, session_get(), on_session_get, - data); + gboolean activeOnly = + trg_prefs_get_bool(prefs, TRG_PREFS_KEY_UPDATE_ACTIVE_ONLY, + TRG_PREFS_CONNECTION) + && (!trg_prefs_get_bool(prefs, + TRG_PREFS_ACTIVEONLY_FULLSYNC_ENABLED, + TRG_PREFS_CONNECTION) + || (trg_client_get_serial(tc) + % trg_prefs_get_int(prefs, + TRG_PREFS_ACTIVEONLY_FULLSYNC_EVERY, + TRG_PREFS_CONNECTION) != 0)); + dispatch_async(tc, + torrent_get(activeOnly ? TORRENT_GET_TAG_MODE_UPDATE + : TORRENT_GET_TAG_MODE_FULL), + activeOnly ? on_torrent_get_active : + on_torrent_get_update, data); + + if (trg_client_get_serial(tc) % SESSION_UPDATE_DIVISOR == 0) + dispatch_async(priv->client, session_get(), on_session_get, + data); } return FALSE; @@ -1227,8 +1228,8 @@ static void open_about_cb(GtkWidget * w G_GNUC_UNUSED, GtkWindow * parent) } static gboolean trg_torrent_tree_view_visible_func(GtkTreeModel * model, - GtkTreeIter * iter, - gpointer data) + GtkTreeIter * iter, + gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); @@ -1242,50 +1243,50 @@ static gboolean trg_torrent_tree_view_visible_func(GtkTreeModel * model, gtk_tree_model_get(model, iter, TORRENT_COLUMN_FLAGS, &flags, -1); if (criteria != 0) { - if (criteria & FILTER_FLAG_TRACKER) { - gchar *text = - trg_state_selector_get_selected_text(priv->stateSelector); - JsonObject *json; - gtk_tree_model_get(model, iter, TORRENT_COLUMN_JSON, &json, - -1); - - if (!json || !torrent_has_tracker(json, - trg_state_selector_get_url_host_regex - (priv->stateSelector), text)) - return FALSE; - } else if (criteria & FILTER_FLAG_DIR) { - gchar *text = - trg_state_selector_get_selected_text(priv->stateSelector); - gchar *dd; - int cmp; - gtk_tree_model_get(model, iter, - TORRENT_COLUMN_DOWNLOADDIR_SHORT, &dd, -1); - cmp = g_strcmp0(text, dd); - g_free(dd); - g_free(text); - if (cmp) - return FALSE; - } else if (!(flags & criteria)) { - return FALSE; - } + if (criteria & FILTER_FLAG_TRACKER) { + gchar *text = + trg_state_selector_get_selected_text(priv->stateSelector); + JsonObject *json; + gtk_tree_model_get(model, iter, TORRENT_COLUMN_JSON, &json, + -1); + + if (!json || !torrent_has_tracker(json, + trg_state_selector_get_url_host_regex + (priv->stateSelector), text)) + return FALSE; + } else if (criteria & FILTER_FLAG_DIR) { + gchar *text = + trg_state_selector_get_selected_text(priv->stateSelector); + gchar *dd; + int cmp; + gtk_tree_model_get(model, iter, + TORRENT_COLUMN_DOWNLOADDIR_SHORT, &dd, -1); + cmp = g_strcmp0(text, dd); + g_free(dd); + g_free(text); + if (cmp) + return FALSE; + } else if (!(flags & criteria)) { + return FALSE; + } } visible = TRUE; filterText = gtk_entry_get_text(GTK_ENTRY(priv->filterEntry)); if (strlen(filterText) > 0) { - gtk_tree_model_get(model, iter, TORRENT_COLUMN_NAME, &name, -1); - if (name) { - gchar *filterCmp = g_utf8_casefold(filterText, -1); - gchar *nameCmp = g_utf8_casefold(name, -1); - - if (!strstr(nameCmp, filterCmp)) - visible = FALSE; - - g_free(nameCmp); - g_free(filterCmp); - g_free(name); - } + gtk_tree_model_get(model, iter, TORRENT_COLUMN_NAME, &name, -1); + if (name) { + gchar *filterCmp = g_utf8_casefold(filterText, -1); + gchar *nameCmp = g_utf8_casefold(name, -1); + + if (!strstr(nameCmp, filterCmp)) + visible = FALSE; + + g_free(nameCmp); + g_free(filterCmp); + g_free(name); + } } return visible; @@ -1295,56 +1296,56 @@ void trg_main_window_reload_dir_aliases(TrgMainWindow * win) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); trg_torrent_model_reload_dir_aliases(priv->client, - GTK_TREE_MODEL - (priv->torrentModel)); + GTK_TREE_MODEL + (priv->torrentModel)); trg_state_selector_update(priv->stateSelector); } static TrgTorrentTreeView * trg_main_window_torrent_tree_view_new(TrgMainWindow * win, - GtkTreeModel * model) + GtkTreeModel * model) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); TrgTorrentTreeView *torrentTreeView = - trg_torrent_tree_view_new(trg_client_get_prefs(priv->client), - model); + trg_torrent_tree_view_new(trg_client_get_prefs(priv->client), + model); GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(torrentTreeView)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(torrentTreeView)); g_signal_connect(G_OBJECT(selection), "changed", - G_CALLBACK(torrent_selection_changed), win); + G_CALLBACK(torrent_selection_changed), win); return torrentTreeView; } static gboolean trg_dialog_error_handler(TrgMainWindow * win, - trg_response * response) + trg_response * response) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); if (response->status != CURLE_OK) { - GtkWidget *dialog; - const gchar *msg; - - msg = make_error_message(response->obj, response->status); - trg_status_bar_clear_indicators(priv->statusBar); - trg_status_bar_push_connection_msg(priv->statusBar, msg); - dialog = gtk_message_dialog_new(GTK_WINDOW(win), GTK_DIALOG_MODAL, - GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, - "%s", msg); - gtk_window_set_title(GTK_WINDOW(dialog), _("Error")); - gtk_dialog_run(GTK_DIALOG(dialog)); - gtk_widget_destroy(dialog); - g_free((gpointer) msg); - return TRUE; + GtkWidget *dialog; + const gchar *msg; + + msg = make_error_message(response->obj, response->status); + trg_status_bar_clear_indicators(priv->statusBar); + trg_status_bar_push_connection_msg(priv->statusBar, msg); + dialog = gtk_message_dialog_new(GTK_WINDOW(win), GTK_DIALOG_MODAL, + GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, + "%s", msg); + gtk_window_set_title(GTK_WINDOW(dialog), _("Error")); + gtk_dialog_run(GTK_DIALOG(dialog)); + gtk_widget_destroy(dialog); + g_free((gpointer) msg); + return TRUE; } else { - return FALSE; + return FALSE; } } static gboolean torrent_selection_changed(GtkTreeSelection * selection, - gpointer data) + gpointer data) { TrgMainWindow *win = TRG_MAIN_WINDOW(data); TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); @@ -1353,8 +1354,8 @@ static gboolean torrent_selection_changed(GtkTreeSelection * selection, gint64 id; if (trg_torrent_model_is_remove_in_progress(priv->torrentModel)) { - trg_main_window_torrent_scrub(win); - return TRUE; + trg_main_window_torrent_scrub(win); + return TRUE; } selectionList = gtk_tree_selection_get_selected_rows(selection, NULL); @@ -1362,12 +1363,12 @@ static gboolean torrent_selection_changed(GtkTreeSelection * selection, id = -1; if (firstNode) { - GtkTreeIter iter; - if (gtk_tree_model_get_iter(priv->filteredTorrentModel, &iter, - (GtkTreePath *) firstNode->data)) { - gtk_tree_model_get(priv->filteredTorrentModel, &iter, - TORRENT_COLUMN_ID, &id, -1); - } + GtkTreeIter iter; + if (gtk_tree_model_get_iter(priv->filteredTorrentModel, &iter, + (GtkTreePath *) firstNode->data)) { + gtk_tree_model_get(priv->filteredTorrentModel, &iter, + TORRENT_COLUMN_ID, &id, -1); + } } g_list_foreach(selectionList, (GFunc) gtk_tree_path_free, NULL); @@ -1383,27 +1384,27 @@ gboolean on_generic_interactive_action(gpointer data) trg_response *response = (trg_response *) data; TrgMainWindow *win = TRG_MAIN_WINDOW(response->cb_data); TrgMainWindowPrivate *priv = - TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); + TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data); TrgClient *tc = priv->client; TrgPrefs *prefs = trg_client_get_prefs(tc); if (trg_client_is_connected(tc)) { - trg_dialog_error_handler(win, response); - - if (response->status == CURLE_OK) { - gint64 id; - if (json_object_has_member(response->obj, PARAM_TAG)) - id = json_object_get_int_member(response->obj, PARAM_TAG); - else if (trg_prefs_get_bool - (prefs, TRG_PREFS_KEY_UPDATE_ACTIVE_ONLY, - TRG_PREFS_CONNECTION)) - id = -2; - else - id = -1; - - dispatch_async(tc, torrent_get(id), on_torrent_get_interactive, - win); - } + trg_dialog_error_handler(win, response); + + if (response->status == CURLE_OK) { + gint64 id; + if (json_object_has_member(response->obj, PARAM_TAG)) + id = json_object_get_int_member(response->obj, PARAM_TAG); + else if (trg_prefs_get_bool + (prefs, TRG_PREFS_KEY_UPDATE_ACTIVE_ONLY, + TRG_PREFS_CONNECTION)) + id = -2; + else + id = -1; + + dispatch_async(tc, torrent_get(id), on_torrent_get_interactive, + win); + } } trg_response_free(response); @@ -1420,7 +1421,7 @@ void trg_main_window_torrent_scrub(TrgMainWindow * win) gtk_list_store_clear(GTK_LIST_STORE(priv->peersModel)); trg_general_panel_clear(priv->genDetails); trg_trackers_model_set_no_selection(TRG_TRACKERS_MODEL - (priv->trackersModel)); + (priv->trackersModel)); trg_toolbar_torrent_actions_sensitive(priv->toolBar, FALSE); trg_menu_bar_torrent_actions_sensitive(priv->menuBar, FALSE); @@ -1432,16 +1433,16 @@ static void entry_filter_changed_cb(GtkWidget * w, gpointer data) gboolean clearSensitive = gtk_entry_get_text_length(GTK_ENTRY(w)) > 0; gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER - (priv->filteredTorrentModel)); + (priv->filteredTorrentModel)); g_object_set(priv->filterEntry, "secondary-icon-sensitive", - clearSensitive, NULL); + clearSensitive, NULL); } static void torrent_state_selection_changed(TrgStateSelector * - selector G_GNUC_UNUSED, - guint flag G_GNUC_UNUSED, - gpointer data) + selector G_GNUC_UNUSED, + guint flag G_GNUC_UNUSED, + gpointer data) { gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(data)); } @@ -1459,21 +1460,21 @@ void trg_main_window_conn_changed(TrgMainWindow * win, gboolean connected) gtk_widget_set_sensitive(GTK_WIDGET(priv->peersTreeView), connected); gtk_widget_set_sensitive(GTK_WIDGET(priv->filesTreeView), connected); gtk_widget_set_sensitive(GTK_WIDGET(priv->trackersTreeView), - connected); + connected); gtk_widget_set_sensitive(GTK_WIDGET(priv->genDetails), connected); if (!connected) { - trg_main_window_torrent_scrub(win); - trg_state_selector_disconnect(priv->stateSelector); + trg_main_window_torrent_scrub(win); + trg_state_selector_disconnect(priv->stateSelector); #ifndef TRG_NO_GRAPH - if (priv->graphNotebookIndex >= 0) - trg_torrent_graph_set_nothing(priv->graph); + if (priv->graphNotebookIndex >= 0) + trg_torrent_graph_set_nothing(priv->graph); #endif - trg_torrent_model_remove_all(priv->torrentModel); + trg_torrent_model_remove_all(priv->torrentModel); - priv->timerId = 0; + priv->timerId = 0; } trg_client_status_change(tc, connected); @@ -1481,39 +1482,39 @@ void trg_main_window_conn_changed(TrgMainWindow * win, gboolean connected) } static void trg_main_window_get_property(GObject * object, - guint property_id, GValue * value, - GParamSpec * pspec) + guint property_id, GValue * value, + GParamSpec * pspec) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(object); switch (property_id) { case PROP_CLIENT: - g_value_set_pointer(value, priv->client); - break; + g_value_set_pointer(value, priv->client); + break; case PROP_MINIMISE_ON_START: - g_value_set_boolean(value, priv->min_on_start); - break; + g_value_set_boolean(value, priv->min_on_start); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_main_window_set_property(GObject * object, - guint property_id, - const GValue * value, - GParamSpec * pspec) + guint property_id, + const GValue * value, + GParamSpec * pspec) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(object); switch (property_id) { case PROP_CLIENT: - priv->client = g_value_get_pointer(value); - break; + priv->client = g_value_get_pointer(value); + break; case PROP_MINIMISE_ON_START: - priv->min_on_start = g_value_get_boolean(value); - break; + priv->min_on_start = g_value_get_boolean(value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } @@ -1527,11 +1528,11 @@ static TrgMenuBar *trg_main_window_menu_bar_new(TrgMainWindow * win) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); GObject *b_disconnect, *b_add, *b_resume, *b_pause, *b_verify, - *b_remove, *b_delete, *b_props, *b_local_prefs, *b_remote_prefs, - *b_about, *b_view_states, *b_view_notebook, *b_view_stats, - *b_add_url, *b_quit, *b_move, *b_reannounce, *b_pause_all, - *b_resume_all, *b_dir_filters, *b_tracker_filters, - *b_up_queue, *b_down_queue, *b_top_queue, *b_bottom_queue, + *b_remove, *b_delete, *b_props, *b_local_prefs, *b_remote_prefs, + *b_about, *b_view_states, *b_view_notebook, *b_view_stats, + *b_add_url, *b_quit, *b_move, *b_reannounce, *b_pause_all, + *b_resume_all, *b_dir_filters, *b_tracker_filters, + *b_up_queue, *b_down_queue, *b_top_queue, *b_bottom_queue, #ifndef TRG_NO_GRAPH *b_show_graph, #endif @@ -1541,74 +1542,74 @@ static TrgMenuBar *trg_main_window_menu_bar_new(TrgMainWindow * win) menuBar = trg_menu_bar_new(win, trg_client_get_prefs(priv->client)); g_object_get(menuBar, "disconnect-button", - &b_disconnect, "add-button", &b_add, "add-url-button", - &b_add_url, "resume-button", &b_resume, - "resume-all-button", &b_resume_all, "pause-button", - &b_pause, "pause-all-button", &b_pause_all, - "delete-button", &b_delete, "remove-button", &b_remove, - "move-button", &b_move, "verify-button", &b_verify, - "reannounce-button", &b_reannounce, "props-button", - &b_props, "remote-prefs-button", &b_remote_prefs, - "local-prefs-button", &b_local_prefs, - "view-notebook-button", &b_view_notebook, - "view-states-button", &b_view_states, "view-stats-button", - &b_view_stats, "about-button", &b_about, "quit-button", - &b_quit, "dir-filters", &b_dir_filters, "tracker-filters", - &b_tracker_filters, + &b_disconnect, "add-button", &b_add, "add-url-button", + &b_add_url, "resume-button", &b_resume, + "resume-all-button", &b_resume_all, "pause-button", + &b_pause, "pause-all-button", &b_pause_all, + "delete-button", &b_delete, "remove-button", &b_remove, + "move-button", &b_move, "verify-button", &b_verify, + "reannounce-button", &b_reannounce, "props-button", + &b_props, "remote-prefs-button", &b_remote_prefs, + "local-prefs-button", &b_local_prefs, + "view-notebook-button", &b_view_notebook, + "view-states-button", &b_view_states, "view-stats-button", + &b_view_stats, "about-button", &b_about, "quit-button", + &b_quit, "dir-filters", &b_dir_filters, "tracker-filters", + &b_tracker_filters, #ifndef TRG_NO_GRAPH - "show-graph", &b_show_graph, + "show-graph", &b_show_graph, #endif - "up-queue", &b_up_queue, "down-queue", &b_down_queue, - "top-queue", &b_top_queue, "bottom-queue", - &b_bottom_queue, "start-now", &b_start_now, NULL); + "up-queue", &b_up_queue, "down-queue", &b_down_queue, + "top-queue", &b_top_queue, "bottom-queue", + &b_bottom_queue, "start-now", &b_start_now, NULL); g_signal_connect(b_disconnect, "activate", - G_CALLBACK(disconnect_cb), win); + G_CALLBACK(disconnect_cb), win); g_signal_connect(b_add, "activate", G_CALLBACK(add_cb), win); g_signal_connect(b_add_url, "activate", G_CALLBACK(add_url_cb), win); g_signal_connect(b_resume, "activate", G_CALLBACK(resume_cb), win); g_signal_connect(b_resume_all, "activate", G_CALLBACK(resume_all_cb), - win); + win); g_signal_connect(b_pause, "activate", G_CALLBACK(pause_cb), win); g_signal_connect(b_pause_all, "activate", G_CALLBACK(pause_all_cb), - win); + win); g_signal_connect(b_verify, "activate", G_CALLBACK(verify_cb), win); g_signal_connect(b_reannounce, "activate", G_CALLBACK(reannounce_cb), - win); + win); g_signal_connect(b_delete, "activate", G_CALLBACK(delete_cb), win); g_signal_connect(b_remove, "activate", G_CALLBACK(remove_cb), win); g_signal_connect(b_up_queue, "activate", G_CALLBACK(up_queue_cb), win); g_signal_connect(b_down_queue, "activate", G_CALLBACK(down_queue_cb), - win); + win); g_signal_connect(b_top_queue, "activate", G_CALLBACK(top_queue_cb), - win); + win); g_signal_connect(b_bottom_queue, "activate", - G_CALLBACK(bottom_queue_cb), win); + G_CALLBACK(bottom_queue_cb), win); g_signal_connect(b_start_now, "activate", G_CALLBACK(start_now_cb), - win); + win); g_signal_connect(b_move, "activate", G_CALLBACK(move_cb), win); g_signal_connect(b_about, "activate", G_CALLBACK(open_about_cb), win); g_signal_connect(b_local_prefs, "activate", - G_CALLBACK(open_local_prefs_cb), win); + G_CALLBACK(open_local_prefs_cb), win); g_signal_connect(b_remote_prefs, "activate", - G_CALLBACK(open_remote_prefs_cb), win); + G_CALLBACK(open_remote_prefs_cb), win); g_signal_connect(b_view_notebook, "toggled", - G_CALLBACK(view_notebook_toggled_cb), win); + G_CALLBACK(view_notebook_toggled_cb), win); g_signal_connect(b_dir_filters, "toggled", - G_CALLBACK(main_window_toggle_filter_dirs), win); + G_CALLBACK(main_window_toggle_filter_dirs), win); g_signal_connect(b_tracker_filters, "toggled", - G_CALLBACK(main_window_toggle_filter_trackers), win); + G_CALLBACK(main_window_toggle_filter_trackers), win); #ifndef TRG_NO_GRAPH g_signal_connect(b_tracker_filters, "toggled", - G_CALLBACK(trg_main_window_toggle_graph_cb), win); + G_CALLBACK(trg_main_window_toggle_graph_cb), win); #endif g_signal_connect(b_view_states, "toggled", - G_CALLBACK(view_states_toggled_cb), win); + G_CALLBACK(view_states_toggled_cb), win); g_signal_connect(b_view_stats, "activate", - G_CALLBACK(view_stats_toggled_cb), win); + G_CALLBACK(view_stats_toggled_cb), win); #ifndef TRG_NO_GRAPH g_signal_connect(b_show_graph, "toggled", - G_CALLBACK(trg_main_window_toggle_graph_cb), win); + G_CALLBACK(trg_main_window_toggle_graph_cb), win); #endif g_signal_connect(b_props, "activate", G_CALLBACK(open_props_cb), win); g_signal_connect(b_quit, "activate", G_CALLBACK(quit_cb), win); @@ -1618,7 +1619,7 @@ static TrgMenuBar *trg_main_window_menu_bar_new(TrgMainWindow * win) #ifndef HAVE_LIBAPPINDICATOR static void status_icon_activated(GtkStatusIcon * icon G_GNUC_UNUSED, - gpointer data) + gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); @@ -1626,18 +1627,18 @@ static void status_icon_activated(GtkStatusIcon * icon G_GNUC_UNUSED, gtk_window_present(GTK_WINDOW(data)); if (priv->timerId > 0) { - g_source_remove(priv->timerId); - dispatch_async(priv->client, - torrent_get(TORRENT_GET_TAG_MODE_FULL), - on_torrent_get_first, data); + g_source_remove(priv->timerId); + dispatch_async(priv->client, + torrent_get(TORRENT_GET_TAG_MODE_FULL), + on_torrent_get_first, data); } } static gboolean trg_status_icon_popup_menu_cb(GtkStatusIcon * icon, - gpointer userdata) + gpointer userdata) { GtkMenu *menu = - trg_status_icon_view_menu(TRG_MAIN_WINDOW(userdata), NULL); + trg_status_icon_view_menu(TRG_MAIN_WINDOW(userdata), NULL); gtk_menu_popup(menu, NULL, NULL, NULL, NULL, 0, 0); @@ -1645,59 +1646,59 @@ static gboolean trg_status_icon_popup_menu_cb(GtkStatusIcon * icon, } static gboolean status_icon_button_press_event(GtkStatusIcon * icon, - GdkEventButton * event, - gpointer data) + GdkEventButton * event, + gpointer data) { if (event->type == GDK_BUTTON_PRESS && event->button == 3) { - GtkMenu *menu = - trg_status_icon_view_menu(TRG_MAIN_WINDOW(data), NULL); - gtk_menu_popup(menu, NULL, NULL, NULL, NULL, - (event != NULL) ? event->button : 0, - gdk_event_get_time((GdkEvent *) event)); - return TRUE; + GtkMenu *menu = + trg_status_icon_view_menu(TRG_MAIN_WINDOW(data), NULL); + gtk_menu_popup(menu, NULL, NULL, NULL, NULL, + (event != NULL) ? event->button : 0, + gdk_event_get_time((GdkEvent *) event)); + return TRUE; } else { - return FALSE; + return FALSE; } } #endif static void clear_filter_entry_cb(GtkEntry * entry, - GtkEntryIconPosition icon_pos, - GdkEvent * event, gpointer user_data) + GtkEntryIconPosition icon_pos, + GdkEvent * event, gpointer user_data) { gtk_entry_set_text(entry, ""); } static gboolean torrent_tv_key_press_event(GtkWidget * w, - GdkEventKey * key, - gpointer data) + GdkEventKey * key, + gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); if (key->keyval == GDK_Delete) { - if (key->state & GDK_SHIFT_MASK) - delete_cb(w, data); - else - remove_cb(w, data); + if (key->state & GDK_SHIFT_MASK) + delete_cb(w, data); + else + remove_cb(w, data); } else if (priv->queuesEnabled && (key->state & GDK_MOD1_MASK) - && key->keyval == GDK_Up) { - up_queue_cb(w, data); + && key->keyval == GDK_Up) { + up_queue_cb(w, data); } else if (priv->queuesEnabled && (key->state & GDK_MOD1_MASK) - && key->keyval == GDK_Down) { - down_queue_cb(w, data); + && key->keyval == GDK_Down) { + down_queue_cb(w, data); } return FALSE; } static GtkWidget *trg_imagemenuitem_new(GtkMenuShell * shell, - const gchar * text, char *stock_id, - gboolean sensitive, GCallback cb, - gpointer cbdata) + const gchar * text, char *stock_id, + gboolean sensitive, GCallback cb, + gpointer cbdata) { GtkWidget *item = gtk_image_menu_item_new_with_label(stock_id); gtk_image_menu_item_set_use_stock(GTK_IMAGE_MENU_ITEM(item), TRUE); gtk_image_menu_item_set_always_show_image(GTK_IMAGE_MENU_ITEM - (item), TRUE); + (item), TRUE); gtk_menu_item_set_label(GTK_MENU_ITEM(item), text); g_signal_connect(item, "activate", cb, cbdata); gtk_widget_set_sensitive(item, sensitive); @@ -1721,41 +1722,41 @@ static void set_limit_cb(GtkWidget * w, gpointer data) JsonObject *args; if (limitIds) - req = torrent_set((JsonArray *) limitIds); + req = torrent_set((JsonArray *) limitIds); else - req = session_set(); + req = session_set(); args = node_get_arguments(req); if (speed >= 0) - json_object_set_int_member(args, speedKey, speed); + json_object_set_int_member(args, speedKey, speed); json_object_set_boolean_member(args, enabledKey, speed >= 0); if (limitIds) - dispatch_async(priv->client, req, on_generic_interactive_action, - data); + dispatch_async(priv->client, req, on_generic_interactive_action, + data); else - dispatch_async(priv->client, req, on_session_set, data); + dispatch_async(priv->client, req, on_session_set, data); } static GtkWidget *limit_item_new(TrgMainWindow * win, GtkWidget * menu, - gint64 currentLimit, gfloat limit) + gint64 currentLimit, gfloat limit) { char speed[32]; GtkWidget *item; gboolean active = limit < 0 ? FALSE : (currentLimit == (gint64) limit); if (limit >= 1000) - g_snprintf(speed, sizeof(speed), "%.2f MB/s", limit / 1024); + g_snprintf(speed, sizeof(speed), "%.2f MB/s", limit / 1024); else - g_snprintf(speed, sizeof(speed), "%.0f KB/s", limit); + g_snprintf(speed, sizeof(speed), "%.0f KB/s", limit); item = gtk_check_menu_item_new_with_label(speed); /* Yeah, I know it's unsafe to cast from a float to an int, but its safe here */ g_object_set_data(G_OBJECT(item), "limit", - GINT_TO_POINTER((gint) limit)); + GINT_TO_POINTER((gint) limit)); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(item), active); g_signal_connect(item, "activate", G_CALLBACK(set_limit_cb), win); @@ -1764,8 +1765,8 @@ static GtkWidget *limit_item_new(TrgMainWindow * win, GtkWidget * menu, } static GtkWidget *limit_menu_new(TrgMainWindow * win, gchar * title, - gchar * enabledKey, gchar * speedKey, - JsonArray * ids) + gchar * enabledKey, gchar * speedKey, + JsonArray * ids) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); TrgClient *client = priv->client; @@ -1775,31 +1776,31 @@ static GtkWidget *limit_menu_new(TrgMainWindow * win, gchar * title, gint64 limit; if (ids) - get_torrent_data(trg_client_get_torrent_table(client), - priv->selectedTorrentId, ¤t, &iter); + get_torrent_data(trg_client_get_torrent_table(client), + priv->selectedTorrentId, ¤t, &iter); else - current = trg_client_get_session(client); + current = trg_client_get_session(client); limit - = - json_object_get_boolean_member(current, - enabledKey) ? - json_object_get_int_member(current, speedKey) - : -1; + = + json_object_get_boolean_member(current, + enabledKey) ? + json_object_get_int_member(current, speedKey) + : -1; toplevel = gtk_image_menu_item_new_with_label(GTK_STOCK_NETWORK); gtk_image_menu_item_set_use_stock(GTK_IMAGE_MENU_ITEM(toplevel), TRUE); gtk_image_menu_item_set_always_show_image(GTK_IMAGE_MENU_ITEM - (toplevel), TRUE); + (toplevel), TRUE); gtk_menu_item_set_label(GTK_MENU_ITEM(toplevel), title); menu = gtk_menu_new(); g_object_set_data_full(G_OBJECT(menu), "speedKey", g_strdup(speedKey), - g_free); + g_free); g_object_set_data_full(G_OBJECT(menu), "enabledKey", - g_strdup(enabledKey), g_free); + g_strdup(enabledKey), g_free); g_object_set_data_full(G_OBJECT(menu), "limit-ids", ids, - (GDestroyNotify) json_array_unref); + (GDestroyNotify) json_array_unref); item = gtk_check_menu_item_new_with_label(_("No Limit")); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(item), limit < 0); @@ -1808,7 +1809,7 @@ static GtkWidget *limit_menu_new(TrgMainWindow * win, gchar * title, gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); gtk_menu_shell_append(GTK_MENU_SHELL(menu), - gtk_separator_menu_item_new()); + gtk_separator_menu_item_new()); limit_item_new(win, menu, limit, 0); limit_item_new(win, menu, limit, 5); @@ -1839,32 +1840,32 @@ static void exec_cmd_cb(GtkWidget * w, gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); JsonObject *cmd_obj = (JsonObject *) g_object_get_data(G_OBJECT(w), - "cmd-object"); + "cmd-object"); GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView)); GtkTreeModel *model; GList *selectedRows = - gtk_tree_selection_get_selected_rows(selection, &model); + gtk_tree_selection_get_selected_rows(selection, &model); GError *cmd_error = NULL; gchar *cmd_line, **argv; cmd_line = build_remote_exec_cmd(priv->client, - model, - selectedRows, - json_object_get_string_member(cmd_obj, - TRG_PREFS_KEY_EXEC_COMMANDS_SUBKEY_CMD)); + model, + selectedRows, + json_object_get_string_member(cmd_obj, + TRG_PREFS_KEY_EXEC_COMMANDS_SUBKEY_CMD)); g_debug("Exec: %s", cmd_line); if (!cmd_line) - return; + return; //GTK has bug, won't let you pass a string here containing a quoted param, so use parse and then spawn // rather than g_spawn_command_line_async(cmd_line,&cmd_error); g_shell_parse_argv(cmd_line, NULL, &argv, NULL); g_spawn_async(NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, - &cmd_error); + &cmd_error); g_list_foreach(selectedRows, (GFunc) gtk_tree_path_free, NULL); g_list_free(selectedRows); @@ -1872,20 +1873,20 @@ static void exec_cmd_cb(GtkWidget * w, gpointer data) g_free(cmd_line); if (cmd_error) { - GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(data), - GTK_DIALOG_MODAL, - GTK_MESSAGE_ERROR, - GTK_BUTTONS_OK, "%s", - cmd_error->message); - gtk_window_set_title(GTK_WINDOW(dialog), _("Error")); - gtk_dialog_run(GTK_DIALOG(dialog)); - gtk_widget_destroy(dialog); - g_error_free(cmd_error); + GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(data), + GTK_DIALOG_MODAL, + GTK_MESSAGE_ERROR, + GTK_BUTTONS_OK, "%s", + cmd_error->message); + gtk_window_set_title(GTK_WINDOW(dialog), _("Error")); + gtk_dialog_run(GTK_DIALOG(dialog)); + gtk_widget_destroy(dialog); + g_error_free(cmd_error); } } static void trg_torrent_tv_view_menu(GtkWidget * treeview, - GdkEventButton * event, gpointer data) + GdkEventButton * event, gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); TrgPrefs *prefs = trg_client_get_prefs(priv->client); @@ -1898,119 +1899,119 @@ static void trg_torrent_tv_view_menu(GtkWidget * treeview, ids = build_json_id_array(TRG_TORRENT_TREE_VIEW(treeview)); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Properties"), - GTK_STOCK_PROPERTIES, TRUE, - G_CALLBACK(open_props_cb), data); + GTK_STOCK_PROPERTIES, TRUE, + G_CALLBACK(open_props_cb), data); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Resume"), - GTK_STOCK_MEDIA_PLAY, TRUE, - G_CALLBACK(resume_cb), data); + GTK_STOCK_MEDIA_PLAY, TRUE, + G_CALLBACK(resume_cb), data); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Pause"), - GTK_STOCK_MEDIA_PAUSE, TRUE, - G_CALLBACK(pause_cb), data); + GTK_STOCK_MEDIA_PAUSE, TRUE, + G_CALLBACK(pause_cb), data); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Verify"), - GTK_STOCK_REFRESH, TRUE, G_CALLBACK(verify_cb), - data); + GTK_STOCK_REFRESH, TRUE, G_CALLBACK(verify_cb), + data); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Re-announce"), - GTK_STOCK_REFRESH, TRUE, - G_CALLBACK(reannounce_cb), data); + GTK_STOCK_REFRESH, TRUE, + G_CALLBACK(reannounce_cb), data); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Move"), - GTK_STOCK_HARDDISK, TRUE, G_CALLBACK(move_cb), - data); + GTK_STOCK_HARDDISK, TRUE, G_CALLBACK(move_cb), + data); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Remove"), - GTK_STOCK_REMOVE, TRUE, G_CALLBACK(remove_cb), - data); + GTK_STOCK_REMOVE, TRUE, G_CALLBACK(remove_cb), + data); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Remove & Delete"), - GTK_STOCK_CLEAR, TRUE, G_CALLBACK(delete_cb), - data); + GTK_STOCK_CLEAR, TRUE, G_CALLBACK(delete_cb), + data); cmds = - trg_prefs_get_array(prefs, TRG_PREFS_KEY_EXEC_COMMANDS, - TRG_PREFS_CONNECTION); + trg_prefs_get_array(prefs, TRG_PREFS_KEY_EXEC_COMMANDS, + TRG_PREFS_CONNECTION); n_cmds = json_array_get_length(cmds); if (n_cmds > 0) { - GList *cmds_list = json_array_get_elements(cmds); - GtkMenuShell *cmds_shell; - GList *cmds_li; - - if (n_cmds < 3) { - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - gtk_separator_menu_item_new()); - cmds_shell = GTK_MENU_SHELL(menu); - } else { - GtkImageMenuItem *cmds_menu = - GTK_IMAGE_MENU_ITEM(gtk_image_menu_item_new_with_label - (GTK_STOCK_EXECUTE)); - gtk_image_menu_item_set_use_stock(cmds_menu, TRUE); - gtk_image_menu_item_set_always_show_image(cmds_menu, TRUE); - gtk_menu_item_set_label(GTK_MENU_ITEM(cmds_menu), - _("Actions")); - - cmds_shell = GTK_MENU_SHELL(gtk_menu_new()); - gtk_menu_item_set_submenu(GTK_MENU_ITEM(cmds_menu), - GTK_WIDGET(cmds_shell)); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - GTK_WIDGET(cmds_menu)); - } - - for (cmds_li = cmds_list; cmds_li; cmds_li = g_list_next(cmds_li)) { - JsonObject *cmd_obj = - json_node_get_object((JsonNode *) cmds_li->data); - const gchar *cmd_label = - json_object_get_string_member(cmd_obj, "label"); - GtkWidget *item = trg_imagemenuitem_new(cmds_shell, cmd_label, - GTK_STOCK_EXECUTE, - TRUE, - G_CALLBACK - (exec_cmd_cb), data); - g_object_set_data(G_OBJECT(item), "cmd-object", cmd_obj); - } - - g_list_free(cmds_list); + GList *cmds_list = json_array_get_elements(cmds); + GtkMenuShell *cmds_shell; + GList *cmds_li; + + if (n_cmds < 3) { + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + gtk_separator_menu_item_new()); + cmds_shell = GTK_MENU_SHELL(menu); + } else { + GtkImageMenuItem *cmds_menu = + GTK_IMAGE_MENU_ITEM(gtk_image_menu_item_new_with_label + (GTK_STOCK_EXECUTE)); + gtk_image_menu_item_set_use_stock(cmds_menu, TRUE); + gtk_image_menu_item_set_always_show_image(cmds_menu, TRUE); + gtk_menu_item_set_label(GTK_MENU_ITEM(cmds_menu), + _("Actions")); + + cmds_shell = GTK_MENU_SHELL(gtk_menu_new()); + gtk_menu_item_set_submenu(GTK_MENU_ITEM(cmds_menu), + GTK_WIDGET(cmds_shell)); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + GTK_WIDGET(cmds_menu)); + } + + for (cmds_li = cmds_list; cmds_li; cmds_li = g_list_next(cmds_li)) { + JsonObject *cmd_obj = + json_node_get_object((JsonNode *) cmds_li->data); + const gchar *cmd_label = + json_object_get_string_member(cmd_obj, "label"); + GtkWidget *item = trg_imagemenuitem_new(cmds_shell, cmd_label, + GTK_STOCK_EXECUTE, + TRUE, + G_CALLBACK + (exec_cmd_cb), data); + g_object_set_data(G_OBJECT(item), "cmd-object", cmd_obj); + } + + g_list_free(cmds_list); } gtk_menu_shell_append(GTK_MENU_SHELL(menu), - gtk_separator_menu_item_new()); + gtk_separator_menu_item_new()); if (priv->queuesEnabled) { - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Start Now"), - GTK_STOCK_MEDIA_PLAY, TRUE, - G_CALLBACK(start_now_cb), data); - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Move Up Queue"), - GTK_STOCK_GO_UP, TRUE, - G_CALLBACK(up_queue_cb), data); - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Move Down Queue"), - GTK_STOCK_GO_DOWN, TRUE, - G_CALLBACK(down_queue_cb), data); - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Bottom Of Queue"), - GTK_STOCK_GOTO_BOTTOM, TRUE, - G_CALLBACK(bottom_queue_cb), data); - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Top Of Queue"), - GTK_STOCK_GOTO_TOP, TRUE, - G_CALLBACK(top_queue_cb), data); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - gtk_separator_menu_item_new()); + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Start Now"), + GTK_STOCK_MEDIA_PLAY, TRUE, + G_CALLBACK(start_now_cb), data); + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Move Up Queue"), + GTK_STOCK_GO_UP, TRUE, + G_CALLBACK(up_queue_cb), data); + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Move Down Queue"), + GTK_STOCK_GO_DOWN, TRUE, + G_CALLBACK(down_queue_cb), data); + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Bottom Of Queue"), + GTK_STOCK_GOTO_BOTTOM, TRUE, + G_CALLBACK(bottom_queue_cb), data); + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Top Of Queue"), + GTK_STOCK_GOTO_TOP, TRUE, + G_CALLBACK(top_queue_cb), data); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + gtk_separator_menu_item_new()); } gtk_menu_shell_append(GTK_MENU_SHELL(menu), - limit_menu_new(TRG_MAIN_WINDOW(data), - _("Down Limit"), - FIELD_DOWNLOAD_LIMITED, - FIELD_DOWNLOAD_LIMIT, ids)); + limit_menu_new(TRG_MAIN_WINDOW(data), + _("Down Limit"), + FIELD_DOWNLOAD_LIMITED, + FIELD_DOWNLOAD_LIMIT, ids)); gtk_menu_shell_append(GTK_MENU_SHELL(menu), - limit_menu_new(TRG_MAIN_WINDOW(data), - _("Up Limit"), - FIELD_UPLOAD_LIMITED, - FIELD_UPLOAD_LIMIT, ids)); + limit_menu_new(TRG_MAIN_WINDOW(data), + _("Up Limit"), + FIELD_UPLOAD_LIMITED, + FIELD_UPLOAD_LIMIT, ids)); gtk_widget_show_all(menu); gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, - (event != NULL) ? event->button : 0, - gdk_event_get_time((GdkEvent *) event)); + (event != NULL) ? event->button : 0, + gdk_event_get_time((GdkEvent *) event)); } static GtkMenu *trg_status_icon_view_menu(TrgMainWindow * win, - const gchar * msg) + const gchar * msg) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); TrgPrefs *prefs = trg_client_get_prefs(priv->client); @@ -2021,79 +2022,79 @@ static GtkMenu *trg_status_icon_view_menu(TrgMainWindow * win, #ifdef HAVE_LIBAPPINDICATOR if (msg) { - priv->appIndicatorStatusItem = gtk_menu_item_new_with_label(msg); - gtk_widget_set_sensitive(priv->appIndicatorStatusItem, FALSE); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - priv->appIndicatorStatusItem); - - if (connected) { - priv->appIndicatorDownloadingItem = gtk_menu_item_new(); - gtk_widget_set_visible(priv->appIndicatorDownloadingItem, - FALSE); - gtk_widget_set_sensitive(priv->appIndicatorDownloadingItem, - FALSE); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - priv->appIndicatorDownloadingItem); - - priv->appIndicatorSeedingItem = gtk_menu_item_new(); - gtk_widget_set_visible(priv->appIndicatorSeedingItem, FALSE); - gtk_widget_set_sensitive(priv->appIndicatorSeedingItem, FALSE); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - priv->appIndicatorSeedingItem); - } - - priv->appIndicatorSepItem = gtk_separator_menu_item_new(); - gtk_widget_set_sensitive(priv->appIndicatorSepItem, FALSE); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - priv->appIndicatorSepItem); + priv->appIndicatorStatusItem = gtk_menu_item_new_with_label(msg); + gtk_widget_set_sensitive(priv->appIndicatorStatusItem, FALSE); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + priv->appIndicatorStatusItem); + + if (connected) { + priv->appIndicatorDownloadingItem = gtk_menu_item_new(); + gtk_widget_set_visible(priv->appIndicatorDownloadingItem, + FALSE); + gtk_widget_set_sensitive(priv->appIndicatorDownloadingItem, + FALSE); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + priv->appIndicatorDownloadingItem); + + priv->appIndicatorSeedingItem = gtk_menu_item_new(); + gtk_widget_set_visible(priv->appIndicatorSeedingItem, FALSE); + gtk_widget_set_sensitive(priv->appIndicatorSeedingItem, FALSE); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + priv->appIndicatorSeedingItem); + } + + priv->appIndicatorSepItem = gtk_separator_menu_item_new(); + gtk_widget_set_sensitive(priv->appIndicatorSepItem, FALSE); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + priv->appIndicatorSepItem); } #endif connect = gtk_image_menu_item_new_with_label(GTK_STOCK_CONNECT); gtk_image_menu_item_set_use_stock(GTK_IMAGE_MENU_ITEM(connect), TRUE); gtk_image_menu_item_set_always_show_image(GTK_IMAGE_MENU_ITEM(connect), - TRUE); + TRUE); gtk_menu_item_set_label(GTK_MENU_ITEM(connect), _("Connect")); gtk_menu_item_set_submenu(GTK_MENU_ITEM(connect), - trg_menu_bar_file_connect_menu_new(win, - prefs)); + trg_menu_bar_file_connect_menu_new(win, + prefs)); gtk_menu_shell_append(GTK_MENU_SHELL(menu), connect); if (connected) { - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Disconnect"), - GTK_STOCK_DISCONNECT, connected, - G_CALLBACK(disconnect_cb), win); - - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Add"), - GTK_STOCK_ADD, connected, G_CALLBACK(add_cb), - win); - - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Add from URL"), - GTK_STOCK_ADD, connected, - G_CALLBACK(add_url_cb), win); - - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - limit_menu_new(win, _("Down Limit"), - SGET_SPEED_LIMIT_DOWN_ENABLED, - SGET_SPEED_LIMIT_DOWN, NULL)); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), - limit_menu_new(win, _("Up Limit"), - SGET_SPEED_LIMIT_UP_ENABLED, - SGET_SPEED_LIMIT_UP, NULL)); - - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Resume All"), - GTK_STOCK_MEDIA_PLAY, connected, - G_CALLBACK(resume_all_cb), win); - - trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Pause All"), - GTK_STOCK_MEDIA_PAUSE, connected, - G_CALLBACK(pause_all_cb), win); + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Disconnect"), + GTK_STOCK_DISCONNECT, connected, + G_CALLBACK(disconnect_cb), win); + + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Add"), + GTK_STOCK_ADD, connected, G_CALLBACK(add_cb), + win); + + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Add from URL"), + GTK_STOCK_ADD, connected, + G_CALLBACK(add_url_cb), win); + + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + limit_menu_new(win, _("Down Limit"), + SGET_SPEED_LIMIT_DOWN_ENABLED, + SGET_SPEED_LIMIT_DOWN, NULL)); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), + limit_menu_new(win, _("Up Limit"), + SGET_SPEED_LIMIT_UP_ENABLED, + SGET_SPEED_LIMIT_UP, NULL)); + + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Resume All"), + GTK_STOCK_MEDIA_PLAY, connected, + G_CALLBACK(resume_all_cb), win); + + trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Pause All"), + GTK_STOCK_MEDIA_PAUSE, connected, + G_CALLBACK(pause_all_cb), win); } gtk_menu_shell_append(GTK_MENU_SHELL(menu), - gtk_separator_menu_item_new()); + gtk_separator_menu_item_new()); trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Quit"), GTK_STOCK_QUIT, - TRUE, G_CALLBACK(quit_cb), win); + TRUE, G_CALLBACK(quit_cb), win); gtk_widget_show_all(menu); @@ -2101,56 +2102,56 @@ static GtkMenu *trg_status_icon_view_menu(TrgMainWindow * win, } static gboolean torrent_tv_button_pressed_cb(GtkWidget * treeview, - GdkEventButton * event, - gpointer userdata) + GdkEventButton * event, + gpointer userdata) { GtkTreeSelection *selection; GtkTreePath *path; if (event->type == GDK_BUTTON_PRESS && event->button == 3) { - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); + selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); - if (gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(treeview), - (gint) event->x, (gint) event->y, - &path, NULL, NULL, NULL)) { - if (!gtk_tree_selection_path_is_selected(selection, path)) { - gtk_tree_selection_unselect_all(selection); - gtk_tree_selection_select_path(selection, path); - } + if (gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(treeview), + (gint) event->x, (gint) event->y, + &path, NULL, NULL, NULL)) { + if (!gtk_tree_selection_path_is_selected(selection, path)) { + gtk_tree_selection_unselect_all(selection); + gtk_tree_selection_select_path(selection, path); + } - gtk_tree_path_free(path); + gtk_tree_path_free(path); - trg_torrent_tv_view_menu(treeview, event, userdata); - return TRUE; - } + trg_torrent_tv_view_menu(treeview, event, userdata); + return TRUE; + } } return FALSE; } static gboolean torrent_tv_popup_menu_cb(GtkWidget * treeview, - gpointer userdata) + gpointer userdata) { trg_torrent_tv_view_menu(treeview, NULL, userdata); return TRUE; } static gboolean window_state_event(GtkWidget * widget, - GdkEventWindowState * event, - gpointer trayIcon) + GdkEventWindowState * event, + gpointer trayIcon) { #ifndef HAVE_LIBAPPINDICATOR TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(widget); TrgPrefs *prefs = trg_client_get_prefs(priv->client); if (priv->statusIcon - && event->changed_mask == GDK_WINDOW_STATE_ICONIFIED - && (event->new_window_state == GDK_WINDOW_STATE_ICONIFIED - || event->new_window_state == - (GDK_WINDOW_STATE_ICONIFIED | GDK_WINDOW_STATE_MAXIMIZED)) - && trg_prefs_get_bool(prefs, TRG_PREFS_KEY_SYSTEM_TRAY_MINIMISE, - TRG_PREFS_GLOBAL)) { - gtk_widget_hide(GTK_WIDGET(widget)); + && event->changed_mask == GDK_WINDOW_STATE_ICONIFIED + && (event->new_window_state == GDK_WINDOW_STATE_ICONIFIED + || event->new_window_state == + (GDK_WINDOW_STATE_ICONIFIED | GDK_WINDOW_STATE_MAXIMIZED)) + && trg_prefs_get_bool(prefs, TRG_PREFS_KEY_SYSTEM_TRAY_MINIMISE, + TRG_PREFS_GLOBAL)) { + gtk_widget_hide(GTK_WIDGET(widget)); } return TRUE; @@ -2164,13 +2165,13 @@ void trg_main_window_remove_status_icon(TrgMainWindow * win) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); #ifdef HAVE_LIBAPPINDICATOR if (priv->appIndicator) - g_object_unref(G_OBJECT(priv->appIndicator)); + g_object_unref(G_OBJECT(priv->appIndicator)); priv->appIndicator = NULL; #else if (priv->statusIcon) - g_object_unref(G_OBJECT(priv->statusIcon)); + g_object_unref(G_OBJECT(priv->statusIcon)); priv->statusIcon = NULL; #endif @@ -2182,14 +2183,14 @@ void trg_main_window_add_graph(TrgMainWindow * win, gboolean show) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); priv->graph = - trg_torrent_graph_new(gtk_widget_get_style(priv->notebook)); + trg_torrent_graph_new(gtk_widget_get_style(priv->notebook)); priv->graphNotebookIndex = - gtk_notebook_append_page(GTK_NOTEBOOK(priv->notebook), - GTK_WIDGET(priv->graph), - gtk_label_new(_("Graph"))); + gtk_notebook_append_page(GTK_NOTEBOOK(priv->notebook), + GTK_WIDGET(priv->graph), + gtk_label_new(_("Graph"))); if (show) - gtk_widget_show_all(priv->notebook); + gtk_widget_show_all(priv->notebook); trg_torrent_graph_start(priv->graph); } @@ -2199,9 +2200,9 @@ void trg_main_window_remove_graph(TrgMainWindow * win) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); if (priv->graphNotebookIndex >= 0) { - gtk_notebook_remove_page(GTK_NOTEBOOK(priv->notebook), - priv->graphNotebookIndex); - priv->graphNotebookIndex = -1; + gtk_notebook_remove_page(GTK_NOTEBOOK(priv->notebook), + priv->graphNotebookIndex); + priv->graphNotebookIndex = -1; } } #endif @@ -2211,32 +2212,32 @@ void trg_main_window_add_status_icon(TrgMainWindow * win) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); #ifdef HAVE_LIBAPPINDICATOR if ((priv->appIndicator = - app_indicator_new(PACKAGE_NAME, PACKAGE_NAME, - APP_INDICATOR_CATEGORY_APPLICATION_STATUS))) { - app_indicator_set_status(priv->appIndicator, - APP_INDICATOR_STATUS_ACTIVE); - app_indicator_set_menu(priv->appIndicator, - trg_status_icon_view_menu(win, NULL)); + app_indicator_new(PACKAGE_NAME, PACKAGE_NAME, + APP_INDICATOR_CATEGORY_APPLICATION_STATUS))) { + app_indicator_set_status(priv->appIndicator, + APP_INDICATOR_STATUS_ACTIVE); + app_indicator_set_menu(priv->appIndicator, + trg_status_icon_view_menu(win, NULL)); } #else if (!priv->icon) - return; + return; priv->statusIcon = gtk_status_icon_new_from_pixbuf(priv->icon); gtk_status_icon_set_screen(priv->statusIcon, - gtk_window_get_screen(GTK_WINDOW(win))); + gtk_window_get_screen(GTK_WINDOW(win))); g_signal_connect(priv->statusIcon, "activate", - G_CALLBACK(status_icon_activated), win); + G_CALLBACK(status_icon_activated), win); g_signal_connect(priv->statusIcon, "button-press-event", - G_CALLBACK(status_icon_button_press_event), win); + G_CALLBACK(status_icon_button_press_event), win); g_signal_connect(priv->statusIcon, "popup-menu", - G_CALLBACK(trg_status_icon_popup_menu_cb), win); + G_CALLBACK(trg_status_icon_popup_menu_cb), win); gtk_status_icon_set_visible(priv->statusIcon, TRUE); #endif connchange_whatever_statusicon(win, - trg_client_is_connected(priv->client)); + trg_client_is_connected(priv->client)); } TrgStateSelector *trg_main_window_get_state_selector(TrgMainWindow * win) @@ -2246,9 +2247,9 @@ TrgStateSelector *trg_main_window_get_state_selector(TrgMainWindow * win) } static gboolean trg_main_window_config_event(GtkWidget * widget, - GdkEvent * event, - gpointer user_data - G_GNUC_UNUSED) + GdkEvent * event, + gpointer user_data + G_GNUC_UNUSED) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(widget); priv->width = event->configure.width; @@ -2257,8 +2258,8 @@ static gboolean trg_main_window_config_event(GtkWidget * widget, } static void trg_client_session_updated_cb(TrgClient * tc, - JsonObject * session, - gpointer data) + JsonObject * session, + gpointer data) { TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data); gboolean queuesEnabled; @@ -2266,18 +2267,18 @@ static void trg_client_session_updated_cb(TrgClient * tc, trg_status_bar_session_update(priv->statusBar, session); if (json_object_has_member(session, SGET_DOWNLOAD_QUEUE_ENABLED)) { - queuesEnabled = json_object_get_boolean_member(session, - SGET_DOWNLOAD_QUEUE_ENABLED) - || json_object_get_boolean_member(session, - SGET_SEED_QUEUE_ENABLED); + queuesEnabled = json_object_get_boolean_member(session, + SGET_DOWNLOAD_QUEUE_ENABLED) + || json_object_get_boolean_member(session, + SGET_SEED_QUEUE_ENABLED); } else { - queuesEnabled = FALSE; + queuesEnabled = FALSE; } if (priv->queuesEnabled != queuesEnabled) { - trg_menu_bar_set_supports_queues(priv->menuBar, queuesEnabled); - trg_state_selector_set_queues_enabled(priv->stateSelector, - queuesEnabled); + trg_menu_bar_set_supports_queues(priv->menuBar, queuesEnabled); + trg_state_selector_set_queues_enabled(priv->stateSelector, + queuesEnabled); } priv->queuesEnabled = queuesEnabled; @@ -2292,38 +2293,38 @@ static GtkTargetEntry target_list[] = { static guint n_targets = G_N_ELEMENTS(target_list); static void on_dropped_file(GtkWidget * widget, GdkDragContext * context, - gint x, gint y, GtkSelectionData * data, - guint info, guint time, gpointer user_data) + gint x, gint y, GtkSelectionData * data, + guint info, guint time, gpointer user_data) { TrgMainWindow *win = user_data; if ((gtk_selection_data_get_length(data) >= 0) - && (gtk_selection_data_get_format(data) == 8)) { - if (gdk_drag_context_get_actions(context) == GDK_ACTION_MOVE) { - g_debug("GDK_ACTION_MOVE"); - gchar **uri_list = gtk_selection_data_get_uris(data); - guint num_files = g_strv_length(uri_list); - gchar **file_list = g_new0(gchar *, num_files + 1); - int i; - for (i = 0; i < num_files; i++) { - file_list[i] = - g_filename_from_uri(uri_list[i], NULL, NULL); - g_debug("to be added: %s", file_list[i]); - } - g_strfreev(uri_list); - gtk_drag_finish(context, TRUE, FALSE, time); - trg_add_from_filename(win, file_list); - return; - } + && (gtk_selection_data_get_format(data) == 8)) { + if (gdk_drag_context_get_actions(context) == GDK_ACTION_MOVE) { + g_debug("GDK_ACTION_MOVE"); + gchar **uri_list = gtk_selection_data_get_uris(data); + guint num_files = g_strv_length(uri_list); + gchar **file_list = g_new0(gchar *, num_files + 1); + int i; + for (i = 0; i < num_files; i++) { + file_list[i] = + g_filename_from_uri(uri_list[i], NULL, NULL); + g_debug("to be added: %s", file_list[i]); + } + g_strfreev(uri_list); + gtk_drag_finish(context, TRUE, FALSE, time); + trg_add_from_filename(win, file_list); + return; + } } gtk_drag_finish(context, FALSE, FALSE, time); } static GObject *trg_main_window_constructor(GType type, - guint n_construct_properties, - GObjectConstructParam * - construct_params) + guint n_construct_properties, + GObjectConstructParam * + construct_params) { TrgMainWindow *self; TrgMainWindowPrivate *priv; @@ -2336,9 +2337,9 @@ static GObject *trg_main_window_constructor(GType type, TrgPrefs *prefs; self = TRG_MAIN_WINDOW(G_OBJECT_CLASS - (trg_main_window_parent_class)->constructor - (type, n_construct_properties, - construct_params)); + (trg_main_window_parent_class)->constructor + (type, n_construct_properties, + construct_params)); priv = TRG_MAIN_WINDOW_GET_PRIVATE(self); priv->queuesEnabled = TRUE; @@ -2347,87 +2348,88 @@ static GObject *trg_main_window_constructor(GType type, theme = gtk_icon_theme_get_default(); priv->icon = gtk_icon_theme_load_icon(theme, PACKAGE_NAME, 48, - GTK_ICON_LOOKUP_USE_BUILTIN, - NULL); + GTK_ICON_LOOKUP_USE_BUILTIN, + NULL); #ifdef HAVE_LIBNOTIFY notify_init(PACKAGE_NAME); #endif if (priv->icon) - gtk_window_set_default_icon(priv->icon); + gtk_window_set_default_icon(priv->icon); gtk_window_set_title(GTK_WINDOW(self), _("Transmission Remote")); gtk_window_set_default_size(GTK_WINDOW(self), 1000, 600); g_signal_connect(G_OBJECT(self), "delete-event", - G_CALLBACK(delete_event), NULL); + G_CALLBACK(delete_event), NULL); g_signal_connect(G_OBJECT(self), "destroy", G_CALLBACK(destroy_window), - NULL); + NULL); g_signal_connect(G_OBJECT(self), "window-state-event", - G_CALLBACK(window_state_event), NULL); + G_CALLBACK(window_state_event), NULL); g_signal_connect(G_OBJECT(self), "configure-event", - G_CALLBACK(trg_main_window_config_event), NULL); + G_CALLBACK(trg_main_window_config_event), NULL); priv->torrentModel = trg_torrent_model_new(); trg_client_set_torrent_table(priv->client, - get_torrent_table(priv->torrentModel)); + get_torrent_table(priv->torrentModel)); g_signal_connect(priv->torrentModel, "torrent-completed", - G_CALLBACK(on_torrent_completed), self); + G_CALLBACK(on_torrent_completed), self); g_signal_connect(priv->torrentModel, "torrent-added", - G_CALLBACK(on_torrent_added), self); + G_CALLBACK(on_torrent_added), self); g_signal_connect(priv->torrentModel, "update-filters", - G_CALLBACK(on_update_filters), self); + G_CALLBACK(on_update_filters), self); priv->sortedTorrentModel = - gtk_tree_model_sort_new_with_model(GTK_TREE_MODEL - (priv->torrentModel)); + gtk_tree_model_sort_new_with_model(GTK_TREE_MODEL + (priv->torrentModel)); priv->filteredTorrentModel = - trg_sortable_filtered_model_new(GTK_TREE_SORTABLE - (priv->sortedTorrentModel), NULL); + trg_sortable_filtered_model_new(GTK_TREE_SORTABLE + (priv->sortedTorrentModel), NULL); gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER - (priv->filteredTorrentModel), - trg_torrent_tree_view_visible_func, - self, NULL); + (priv->filteredTorrentModel), + trg_torrent_tree_view_visible_func, + self, NULL); priv->torrentTreeView = trg_main_window_torrent_tree_view_new(self, - priv->filteredTorrentModel); + priv-> + filteredTorrentModel); g_signal_connect(priv->torrentTreeView, "key-press-event", - G_CALLBACK(torrent_tv_key_press_event), self); + G_CALLBACK(torrent_tv_key_press_event), self); g_signal_connect(priv->torrentTreeView, "popup-menu", - G_CALLBACK(torrent_tv_popup_menu_cb), self); + G_CALLBACK(torrent_tv_popup_menu_cb), self); g_signal_connect(priv->torrentTreeView, "button-press-event", - G_CALLBACK(torrent_tv_button_pressed_cb), self); + G_CALLBACK(torrent_tv_button_pressed_cb), self); g_signal_connect(priv->torrentTreeView, "row-activated", - G_CALLBACK(torrent_tv_onRowActivated), self); + G_CALLBACK(torrent_tv_onRowActivated), self); outerVbox = gtk_vbox_new(FALSE, 0); gtk_container_add(GTK_CONTAINER(self), outerVbox); priv->menuBar = trg_main_window_menu_bar_new(self); gtk_box_pack_start(GTK_BOX(outerVbox), GTK_WIDGET(priv->menuBar), - FALSE, FALSE, 0); + FALSE, FALSE, 0); toolbarHbox = gtk_hbox_new(FALSE, 0); priv->toolBar = trg_main_window_toolbar_new(self); gtk_box_pack_start(GTK_BOX(toolbarHbox), GTK_WIDGET(priv->toolBar), - TRUE, TRUE, 0); + TRUE, TRUE, 0); w = gtk_entry_new(); gtk_entry_set_icon_from_stock(GTK_ENTRY(w), GTK_ENTRY_ICON_SECONDARY, - GTK_STOCK_CLEAR); + GTK_STOCK_CLEAR); g_signal_connect(w, "icon-release", - G_CALLBACK(clear_filter_entry_cb), NULL); + G_CALLBACK(clear_filter_entry_cb), NULL); gtk_box_pack_start(GTK_BOX(toolbarHbox), w, FALSE, FALSE, 0); g_object_set(w, "secondary-icon-sensitive", FALSE, NULL); priv->filterEntry = w; g_signal_connect(G_OBJECT(priv->filterEntry), "changed", - G_CALLBACK(entry_filter_changed_cb), self); + G_CALLBACK(entry_filter_changed_cb), self); gtk_box_pack_start(GTK_BOX(outerVbox), GTK_WIDGET(toolbarHbox), FALSE, - FALSE, 0); + FALSE, 0); priv->vpaned = gtk_vpaned_new(); priv->hpaned = gtk_hpaned_new(); @@ -2436,81 +2438,82 @@ static GObject *trg_main_window_constructor(GType type, priv->stateSelector = trg_state_selector_new(priv->client); priv->stateSelectorScroller = - my_scrolledwin_new(GTK_WIDGET(priv->stateSelector)); + my_scrolledwin_new(GTK_WIDGET(priv->stateSelector)); gtk_paned_pack1(GTK_PANED(priv->hpaned), priv->stateSelectorScroller, - FALSE, FALSE); + FALSE, FALSE); gtk_paned_pack2(GTK_PANED(priv->hpaned), my_scrolledwin_new(GTK_WIDGET - (priv->torrentTreeView)), - TRUE, TRUE); + (priv-> + torrentTreeView)), + TRUE, TRUE); g_signal_connect(G_OBJECT(priv->stateSelector), - "torrent-state-changed", - G_CALLBACK(torrent_state_selection_changed), - priv->filteredTorrentModel); + "torrent-state-changed", + G_CALLBACK(torrent_state_selection_changed), + priv->filteredTorrentModel); priv->notebook = trg_main_window_notebook_new(self); gtk_paned_pack2(GTK_PANED(priv->vpaned), priv->notebook, FALSE, FALSE); tray = trg_prefs_get_bool(prefs, TRG_PREFS_KEY_SYSTEM_TRAY, - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); if (tray) - trg_main_window_add_status_icon(self); + trg_main_window_add_status_icon(self); else - trg_main_window_remove_status_icon(self); + trg_main_window_remove_status_icon(self); priv->statusBar = trg_status_bar_new(); g_signal_connect(priv->client, "session-updated", - G_CALLBACK(trg_client_session_updated_cb), self); + G_CALLBACK(trg_client_session_updated_cb), self); gtk_box_pack_start(GTK_BOX(outerVbox), GTK_WIDGET(priv->statusBar), - FALSE, FALSE, 2); + FALSE, FALSE, 2); width = trg_prefs_get_int(prefs, TRG_PREFS_KEY_WINDOW_WIDTH, - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); height = trg_prefs_get_int(prefs, TRG_PREFS_KEY_WINDOW_HEIGHT, - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); if (width > 0 && height > 0) - gtk_window_set_default_size(GTK_WINDOW(self), width, height); + gtk_window_set_default_size(GTK_WINDOW(self), width, height); gtk_widget_show_all(GTK_WIDGET(self)); trg_widget_set_visible(priv->stateSelectorScroller, - trg_prefs_get_bool(prefs, - TRG_PREFS_KEY_SHOW_STATE_SELECTOR, - TRG_PREFS_GLOBAL)); + trg_prefs_get_bool(prefs, + TRG_PREFS_KEY_SHOW_STATE_SELECTOR, + TRG_PREFS_GLOBAL)); trg_widget_set_visible(priv->notebook, - trg_prefs_get_bool(prefs, - TRG_PREFS_KEY_SHOW_NOTEBOOK, - TRG_PREFS_GLOBAL)); + trg_prefs_get_bool(prefs, + TRG_PREFS_KEY_SHOW_NOTEBOOK, + TRG_PREFS_GLOBAL)); pos = - trg_prefs_get_int(prefs, TRG_PREFS_KEY_NOTEBOOK_PANED_POS, - TRG_PREFS_GLOBAL); + trg_prefs_get_int(prefs, TRG_PREFS_KEY_NOTEBOOK_PANED_POS, + TRG_PREFS_GLOBAL); if (pos > 0) - gtk_paned_set_position(GTK_PANED(priv->vpaned), pos); + gtk_paned_set_position(GTK_PANED(priv->vpaned), pos); pos = - trg_prefs_get_int(prefs, TRG_PREFS_KEY_STATES_PANED_POS, - TRG_PREFS_GLOBAL); + trg_prefs_get_int(prefs, TRG_PREFS_KEY_STATES_PANED_POS, + TRG_PREFS_GLOBAL); if (pos > 0) - gtk_paned_set_position(GTK_PANED(priv->hpaned), pos); + gtk_paned_set_position(GTK_PANED(priv->hpaned), pos); if (tray && priv->min_on_start) - gtk_widget_hide(GTK_WIDGET(self)); + gtk_widget_hide(GTK_WIDGET(self)); /* Drag and Drop */ - gtk_drag_dest_set(GTK_WIDGET(self), // widget that will accept a drop - GTK_DEST_DEFAULT_ALL, // default actions for dest on DnD - target_list, // lists of target to support - n_targets, // size of list - GDK_ACTION_MOVE // what to do with data after dropped - // | GDK_ACTION_COPY ... seems that file managers only need ACTION_MOVE, not ACTION_COPY - ); + gtk_drag_dest_set(GTK_WIDGET(self), // widget that will accept a drop + GTK_DEST_DEFAULT_ALL, // default actions for dest on DnD + target_list, // lists of target to support + n_targets, // size of list + GDK_ACTION_MOVE // what to do with data after dropped + // | GDK_ACTION_COPY ... seems that file managers only need ACTION_MOVE, not ACTION_COPY + ); //g_signal_connect (priv->torrentTreeView, "drag-motion",G_CALLBACK (drag_motion_handl), NULL); g_signal_connect(self, "drag-data-received", - G_CALLBACK(on_dropped_file), self); + G_CALLBACK(on_dropped_file), self); return G_OBJECT(self); } @@ -2526,35 +2529,35 @@ static void trg_main_window_class_init(TrgMainWindowClass * klass) object_class->set_property = trg_main_window_set_property; g_object_class_install_property(object_class, - PROP_CLIENT, - g_param_spec_pointer("trg-client", - "TClient", - "Client", - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_CLIENT, + g_param_spec_pointer("trg-client", + "TClient", + "Client", + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_MINIMISE_ON_START, - g_param_spec_boolean("min-on-start", - "Min On Start", - "Min On Start", - FALSE, - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_MINIMISE_ON_START, + g_param_spec_boolean("min-on-start", + "Min On Start", + "Min On Start", + FALSE, + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); } void auto_connect_if_required(TrgMainWindow * win, gchar ** args) @@ -2562,26 +2565,26 @@ void auto_connect_if_required(TrgMainWindow * win, gchar ** args) TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win); TrgPrefs *prefs = trg_client_get_prefs(priv->client); gchar *host = trg_prefs_get_string(prefs, TRG_PREFS_KEY_HOSTNAME, - TRG_PREFS_PROFILE); + TRG_PREFS_PROFILE); if (host) { - gint len = strlen(host); - g_free(host); - if (len > 0 - && trg_prefs_get_bool(prefs, TRG_PREFS_KEY_AUTO_CONNECT, - TRG_PREFS_PROFILE)) { - priv->args = args; - connect_cb(NULL, win); - return; - } + gint len = strlen(host); + g_free(host); + if (len > 0 + && trg_prefs_get_bool(prefs, TRG_PREFS_KEY_AUTO_CONNECT, + TRG_PREFS_PROFILE)) { + priv->args = args; + connect_cb(NULL, win); + return; + } } if (args) - g_strfreev(args); + g_strfreev(args); } TrgMainWindow *trg_main_window_new(TrgClient * tc, gboolean minonstart) { return g_object_new(TRG_TYPE_MAIN_WINDOW, "trg-client", tc, - "min-on-start", minonstart, NULL); + "min-on-start", minonstart, NULL); } diff --git a/src/trg-main-window.h b/src/trg-main-window.h index 9374c15..9a60ea3 100644 --- a/src/trg-main-window.h +++ b/src/trg-main-window.h @@ -70,7 +70,7 @@ TrgStateSelector *trg_main_window_get_state_selector(TrgMainWindow * win); gint trg_mw_get_selected_torrent_id(TrgMainWindow * win); GtkTreeModel *trg_main_window_get_torrent_model(TrgMainWindow * win); void trg_main_window_notebook_set_visible(TrgMainWindow * win, - gboolean visible); + gboolean visible); void connect_cb(GtkWidget * w, gpointer data); void trg_main_window_reload_dir_aliases(TrgMainWindow * win); @@ -79,4 +79,4 @@ void trg_main_window_reload_dir_aliases(TrgMainWindow * win); #endif G_END_DECLS -#endif /* MAIN_WINDOW_H_ */ +#endif /* MAIN_WINDOW_H_ */ diff --git a/src/trg-menu-bar.c b/src/trg-menu-bar.c index bc1118f..b3d7e18 100644 --- a/src/trg-menu-bar.c +++ b/src/trg-menu-bar.c @@ -101,7 +101,7 @@ struct _TrgMenuBarPrivate { }; void trg_menu_bar_set_supports_queues(TrgMenuBar * mb, - gboolean supportsQueues) + gboolean supportsQueues) { TrgMenuBarPrivate *priv = TRG_MENU_BAR_GET_PRIVATE(mb); @@ -128,7 +128,7 @@ void trg_menu_bar_connected_change(TrgMenuBar * mb, gboolean connected) } void trg_menu_bar_torrent_actions_sensitive(TrgMenuBar * mb, - gboolean sensitive) + gboolean sensitive) { TrgMenuBarPrivate *priv = TRG_MENU_BAR_GET_PRIVATE(mb); @@ -148,148 +148,148 @@ void trg_menu_bar_torrent_actions_sensitive(TrgMenuBar * mb, } static void trg_menu_bar_set_property(GObject * object, - guint prop_id, const GValue * value, - GParamSpec * pspec G_GNUC_UNUSED) + guint prop_id, const GValue * value, + GParamSpec * pspec G_GNUC_UNUSED) { TrgMenuBarPrivate *priv = TRG_MENU_BAR_GET_PRIVATE(object); switch (prop_id) { case PROP_PREFS: - priv->prefs = g_value_get_object(value); - break; + priv->prefs = g_value_get_object(value); + break; case PROP_MAIN_WINDOW: - priv->main_window = g_value_get_object(value); - break; + priv->main_window = g_value_get_object(value); + break; } } static void trg_menu_bar_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { TrgMenuBarPrivate *priv = TRG_MENU_BAR_GET_PRIVATE(object); switch (property_id) { case PROP_CONNECT_BUTTON: - g_value_set_object(value, priv->mb_connect); - break; + g_value_set_object(value, priv->mb_connect); + break; case PROP_DISCONNECT_BUTTON: - g_value_set_object(value, priv->mb_disconnect); - break; + g_value_set_object(value, priv->mb_disconnect); + break; case PROP_ADD_BUTTON: - g_value_set_object(value, priv->mb_add); - break; + g_value_set_object(value, priv->mb_add); + break; case PROP_ADD_URL_BUTTON: - g_value_set_object(value, priv->mb_add_url); - break; + g_value_set_object(value, priv->mb_add_url); + break; case PROP_REMOVE_BUTTON: - g_value_set_object(value, priv->mb_remove); - break; + g_value_set_object(value, priv->mb_remove); + break; case PROP_DELETE_BUTTON: - g_value_set_object(value, priv->mb_delete); - break; + g_value_set_object(value, priv->mb_delete); + break; case PROP_MOVE_UP_QUEUE: - g_value_set_object(value, priv->mb_up_queue); - break; + g_value_set_object(value, priv->mb_up_queue); + break; case PROP_MOVE_DOWN_QUEUE: - g_value_set_object(value, priv->mb_down_queue); - break; + g_value_set_object(value, priv->mb_down_queue); + break; case PROP_MOVE_TOP_QUEUE: - g_value_set_object(value, priv->mb_top_queue); - break; + g_value_set_object(value, priv->mb_top_queue); + break; case PROP_MOVE_BOTTOM_QUEUE: - g_value_set_object(value, priv->mb_bottom_queue); - break; + g_value_set_object(value, priv->mb_bottom_queue); + break; case PROP_START_NOW: - g_value_set_object(value, priv->mb_start_now); - break; + g_value_set_object(value, priv->mb_start_now); + break; case PROP_MOVE_BUTTON: - g_value_set_object(value, priv->mb_move); - break; + g_value_set_object(value, priv->mb_move); + break; case PROP_RESUME_BUTTON: - g_value_set_object(value, priv->mb_resume); - break; + g_value_set_object(value, priv->mb_resume); + break; case PROP_RESUME_ALL_BUTTON: - g_value_set_object(value, priv->mb_resume_all); - break; + g_value_set_object(value, priv->mb_resume_all); + break; case PROP_PAUSE_BUTTON: - g_value_set_object(value, priv->mb_pause); - break; + g_value_set_object(value, priv->mb_pause); + break; case PROP_PAUSE_ALL_BUTTON: - g_value_set_object(value, priv->mb_pause_all); - break; + g_value_set_object(value, priv->mb_pause_all); + break; case PROP_VERIFY_BUTTON: - g_value_set_object(value, priv->mb_verify); - break; + g_value_set_object(value, priv->mb_verify); + break; case PROP_REANNOUNCE_BUTTON: - g_value_set_object(value, priv->mb_reannounce); - break; + g_value_set_object(value, priv->mb_reannounce); + break; case PROP_PROPS_BUTTON: - g_value_set_object(value, priv->mb_props); - break; + g_value_set_object(value, priv->mb_props); + break; case PROP_REMOTE_PREFS_BUTTON: - g_value_set_object(value, priv->mb_remote_prefs); - break; + g_value_set_object(value, priv->mb_remote_prefs); + break; case PROP_LOCAL_PREFS_BUTTON: - g_value_set_object(value, priv->mb_local_prefs); - break; + g_value_set_object(value, priv->mb_local_prefs); + break; case PROP_ABOUT_BUTTON: - g_value_set_object(value, priv->mb_about); - break; + g_value_set_object(value, priv->mb_about); + break; case PROP_VIEW_SHOW_GRAPH: - g_value_set_object(value, priv->mb_view_graph); - break; + g_value_set_object(value, priv->mb_view_graph); + break; case PROP_VIEW_STATES_BUTTON: - g_value_set_object(value, priv->mb_view_states); - break; + g_value_set_object(value, priv->mb_view_states); + break; case PROP_VIEW_NOTEBOOK_BUTTON: - g_value_set_object(value, priv->mb_view_notebook); - break; + g_value_set_object(value, priv->mb_view_notebook); + break; case PROP_VIEW_STATS_BUTTON: - g_value_set_object(value, priv->mb_view_stats); - break; + g_value_set_object(value, priv->mb_view_stats); + break; case PROP_QUIT: - g_value_set_object(value, priv->mb_quit); - break; + g_value_set_object(value, priv->mb_quit); + break; case PROP_DIR_FILTERS: - g_value_set_object(value, priv->mb_directory_filters); - break; + g_value_set_object(value, priv->mb_directory_filters); + break; case PROP_TRACKER_FILTERS: - g_value_set_object(value, priv->mb_tracker_filters); - break; + g_value_set_object(value, priv->mb_tracker_filters); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_menu_bar_install_widget_prop(GObjectClass * class, guint propId, - const gchar * name, const gchar * nick) + const gchar * name, const gchar * nick) { g_object_class_install_property(class, - propId, - g_param_spec_object(name, - nick, - nick, - GTK_TYPE_WIDGET, - G_PARAM_READABLE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + propId, + g_param_spec_object(name, + nick, + nick, + GTK_TYPE_WIDGET, + G_PARAM_READABLE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); } GtkWidget *trg_menu_bar_item_new(GtkMenuShell * shell, const gchar * text, - const gchar * stock_id, - gboolean sensitive) + const gchar * stock_id, + gboolean sensitive) { GtkWidget *item = gtk_image_menu_item_new_with_label(stock_id); gtk_image_menu_item_set_use_stock(GTK_IMAGE_MENU_ITEM(item), TRUE); gtk_image_menu_item_set_always_show_image(GTK_IMAGE_MENU_ITEM - (item), TRUE); + (item), TRUE); gtk_menu_item_set_use_underline(GTK_MENU_ITEM(item), TRUE); gtk_menu_item_set_label(GTK_MENU_ITEM(item), text); gtk_widget_set_sensitive(item, sensitive); @@ -303,55 +303,55 @@ static void view_menu_item_toggled_cb(GtkCheckMenuItem * w, gpointer data) { TrgPrefs *p = TRG_PREFS(data); gchar *key = - (gchar *) g_object_get_data(G_OBJECT(w), G_DATAKEY_CONF_KEY); + (gchar *) g_object_get_data(G_OBJECT(w), G_DATAKEY_CONF_KEY); trg_prefs_set_bool(p, key, gtk_check_menu_item_get_active(w), - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); } static void view_menu_bar_toggled_dependency_cb(GtkCheckMenuItem * w, - gpointer data) + gpointer data) { gtk_widget_set_sensitive(GTK_WIDGET(data), - gtk_check_menu_item_get_active - (GTK_CHECK_MENU_ITEM(w))); + gtk_check_menu_item_get_active + (GTK_CHECK_MENU_ITEM(w))); } static void trg_menu_bar_view_item_update(TrgPrefs * p, gchar * updatedKey, - gpointer data) + gpointer data) { gchar *key = - (gchar *) g_object_get_data(G_OBJECT(data), G_DATAKEY_CONF_KEY); + (gchar *) g_object_get_data(G_OBJECT(data), G_DATAKEY_CONF_KEY); if (!g_strcmp0(updatedKey, key)) - gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(data), - trg_prefs_get_bool(p, key, - TRG_PREFS_GLOBAL)); + gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(data), + trg_prefs_get_bool(p, key, + TRG_PREFS_GLOBAL)); } static GtkWidget *trg_menu_bar_view_item_new(TrgPrefs * prefs, gchar * key, - gchar * label, - GtkWidget * dependency) + gchar * label, + GtkWidget * dependency) { GtkWidget *w = gtk_check_menu_item_new_with_label(label); g_object_set_data_full(G_OBJECT(w), G_DATAKEY_CONF_KEY, g_strdup(key), - g_free); + g_free); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(w), - trg_prefs_get_bool(prefs, key, - TRG_PREFS_GLOBAL)); + trg_prefs_get_bool(prefs, key, + TRG_PREFS_GLOBAL)); if (dependency) { - gtk_widget_set_sensitive(w, - gtk_check_menu_item_get_active - (GTK_CHECK_MENU_ITEM(dependency))); - g_signal_connect(dependency, "toggled", - G_CALLBACK(view_menu_bar_toggled_dependency_cb), - w); + gtk_widget_set_sensitive(w, + gtk_check_menu_item_get_active + (GTK_CHECK_MENU_ITEM(dependency))); + g_signal_connect(dependency, "toggled", + G_CALLBACK(view_menu_bar_toggled_dependency_cb), + w); } g_signal_connect(w, "toggled", - G_CALLBACK(view_menu_item_toggled_cb), prefs); + G_CALLBACK(view_menu_item_toggled_cb), prefs); g_signal_connect(prefs, "pref-changed", - G_CALLBACK(trg_menu_bar_view_item_update), w); + G_CALLBACK(trg_menu_bar_view_item_update), w); return w; } @@ -365,40 +365,40 @@ static GtkWidget *trg_menu_bar_view_menu_new(TrgMenuBar * mb) gtk_menu_item_set_submenu(GTK_MENU_ITEM(view), viewMenu); priv->mb_view_states = - trg_menu_bar_view_item_new(priv->prefs, - TRG_PREFS_KEY_SHOW_STATE_SELECTOR, - _("State selector"), NULL); + trg_menu_bar_view_item_new(priv->prefs, + TRG_PREFS_KEY_SHOW_STATE_SELECTOR, + _("State selector"), NULL); gtk_menu_shell_append(GTK_MENU_SHELL(viewMenu), priv->mb_view_states); priv->mb_directory_filters = - trg_menu_bar_view_item_new(priv->prefs, TRG_PREFS_KEY_FILTER_DIRS, - _("Directory filters"), - priv->mb_view_states); + trg_menu_bar_view_item_new(priv->prefs, TRG_PREFS_KEY_FILTER_DIRS, + _("Directory filters"), + priv->mb_view_states); gtk_menu_shell_append(GTK_MENU_SHELL(viewMenu), - priv->mb_directory_filters); + priv->mb_directory_filters); priv->mb_tracker_filters = - trg_menu_bar_view_item_new(priv->prefs, - TRG_PREFS_KEY_FILTER_TRACKERS, - _("Tracker filters"), - priv->mb_view_states); + trg_menu_bar_view_item_new(priv->prefs, + TRG_PREFS_KEY_FILTER_TRACKERS, + _("Tracker filters"), + priv->mb_view_states); gtk_menu_shell_append(GTK_MENU_SHELL(viewMenu), - priv->mb_tracker_filters); + priv->mb_tracker_filters); priv->mb_view_notebook = - trg_menu_bar_view_item_new(priv->prefs, - TRG_PREFS_KEY_SHOW_NOTEBOOK, - _("Torrent Details"), NULL); + trg_menu_bar_view_item_new(priv->prefs, + TRG_PREFS_KEY_SHOW_NOTEBOOK, + _("Torrent Details"), NULL); gtk_menu_shell_append(GTK_MENU_SHELL(viewMenu), - priv->mb_view_notebook); + priv->mb_view_notebook); priv->mb_view_graph = - trg_menu_bar_view_item_new(priv->prefs, TRG_PREFS_KEY_SHOW_GRAPH, - _("Graph"), priv->mb_view_notebook); + trg_menu_bar_view_item_new(priv->prefs, TRG_PREFS_KEY_SHOW_GRAPH, + _("Graph"), priv->mb_view_notebook); gtk_menu_shell_append(GTK_MENU_SHELL(viewMenu), priv->mb_view_graph); priv->mb_view_stats = - gtk_menu_item_new_with_mnemonic(_("_Statistics")); + gtk_menu_item_new_with_mnemonic(_("_Statistics")); gtk_widget_set_sensitive(priv->mb_view_stats, FALSE); gtk_menu_shell_append(GTK_MENU_SHELL(viewMenu), priv->mb_view_stats); @@ -413,34 +413,34 @@ GtkWidget *trg_menu_bar_options_menu_new(TrgMenuBarPrivate * priv) gtk_menu_item_set_submenu(GTK_MENU_ITEM(opts), optsMenu); priv->mb_local_prefs = - trg_menu_bar_item_new(GTK_MENU_SHELL(optsMenu), - _("_Local Preferences"), - GTK_STOCK_PREFERENCES, TRUE); + trg_menu_bar_item_new(GTK_MENU_SHELL(optsMenu), + _("_Local Preferences"), + GTK_STOCK_PREFERENCES, TRUE); priv->mb_remote_prefs = - trg_menu_bar_item_new(GTK_MENU_SHELL(optsMenu), - _("_Remote Preferences"), - GTK_STOCK_NETWORK, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(optsMenu), + _("_Remote Preferences"), + GTK_STOCK_NETWORK, FALSE); return opts; } static void trg_menu_bar_file_connect_item_new(TrgMainWindow * win, - GtkMenuShell * shell, - const gchar * text, - gboolean checked, - JsonObject * profile) + GtkMenuShell * shell, + const gchar * text, + gboolean checked, + JsonObject * profile) { GtkWidget *item = gtk_check_menu_item_new_with_label(text); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(item), checked); g_object_set_data(G_OBJECT(item), "profile", profile); g_signal_connect(G_OBJECT(item), "activate", G_CALLBACK(connect_cb), - win); + win); gtk_menu_shell_append(shell, item); } GtkWidget *trg_menu_bar_file_connect_menu_new(TrgMainWindow * win, - TrgPrefs * p) + TrgPrefs * p) { GtkWidget *menu = gtk_menu_new(); GList *profiles = json_array_get_elements(trg_prefs_get_profiles(p)); @@ -448,20 +448,20 @@ GtkWidget *trg_menu_bar_file_connect_menu_new(TrgMainWindow * win, GList *li; for (li = profiles; li; li = g_list_next(li)) { - JsonObject *profile = json_node_get_object((JsonNode *) li->data); - const gchar *name_value; - - if (json_object_has_member(profile, TRG_PREFS_KEY_PROFILE_NAME)) { - name_value = json_object_get_string_member(profile, - TRG_PREFS_KEY_PROFILE_NAME); - } else { - name_value = _(TRG_PROFILE_NAME_DEFAULT); - } - - trg_menu_bar_file_connect_item_new(win, GTK_MENU_SHELL(menu), - name_value, - profile == currentProfile, - profile); + JsonObject *profile = json_node_get_object((JsonNode *) li->data); + const gchar *name_value; + + if (json_object_has_member(profile, TRG_PREFS_KEY_PROFILE_NAME)) { + name_value = json_object_get_string_member(profile, + TRG_PREFS_KEY_PROFILE_NAME); + } else { + name_value = _(TRG_PROFILE_NAME_DEFAULT); + } + + trg_menu_bar_file_connect_item_new(win, GTK_MENU_SHELL(menu), + name_value, + profile == currentProfile, + profile); } g_list_free(profiles); @@ -476,27 +476,27 @@ GtkWidget *trg_menu_bar_file_file_menu_new(TrgMenuBarPrivate * priv) GtkWidget *fileMenu = gtk_menu_new(); GtkWidget *connectMenu = - trg_menu_bar_file_connect_menu_new(priv->main_window, priv->prefs); + trg_menu_bar_file_connect_menu_new(priv->main_window, priv->prefs); priv->mb_connect = - trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("Connect"), - GTK_STOCK_CONNECT, TRUE); + trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("Connect"), + GTK_STOCK_CONNECT, TRUE); gtk_menu_item_set_submenu(GTK_MENU_ITEM(priv->mb_connect), - connectMenu); + connectMenu); priv->mb_disconnect = - trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("_Disconnect"), - GTK_STOCK_DISCONNECT, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("_Disconnect"), + GTK_STOCK_DISCONNECT, FALSE); priv->mb_add = - trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("_Add"), - GTK_STOCK_ADD, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("_Add"), + GTK_STOCK_ADD, FALSE); priv->mb_add_url = - trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("Add from _URL"), - GTK_STOCK_ADD, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("Add from _URL"), + GTK_STOCK_ADD, FALSE); priv->mb_quit = - trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("_Quit"), - GTK_STOCK_QUIT, TRUE); + trg_menu_bar_item_new(GTK_MENU_SHELL(fileMenu), _("_Quit"), + GTK_STOCK_QUIT, TRUE); gtk_menu_item_set_submenu(GTK_MENU_ITEM(file), fileMenu); @@ -511,69 +511,69 @@ GtkWidget *trg_menu_bar_torrent_menu_new(TrgMenuBarPrivate * priv) gtk_menu_item_set_submenu(GTK_MENU_ITEM(torrent), torrentMenu); priv->mb_props = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("Properties"), GTK_STOCK_PROPERTIES, - FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), + _("Properties"), GTK_STOCK_PROPERTIES, + FALSE); priv->mb_resume = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Resume"), - GTK_STOCK_MEDIA_PLAY, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Resume"), + GTK_STOCK_MEDIA_PLAY, FALSE); priv->mb_pause = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Pause"), - GTK_STOCK_MEDIA_PAUSE, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Pause"), + GTK_STOCK_MEDIA_PAUSE, FALSE); priv->mb_verify = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Verify"), - GTK_STOCK_REFRESH, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Verify"), + GTK_STOCK_REFRESH, FALSE); priv->mb_reannounce = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("Re-_announce"), GTK_STOCK_REFRESH, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), + _("Re-_announce"), GTK_STOCK_REFRESH, FALSE); priv->mb_move = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Move"), - GTK_STOCK_HARDDISK, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Move"), + GTK_STOCK_HARDDISK, FALSE); priv->mb_remove = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("Remove"), - GTK_STOCK_REMOVE, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("Remove"), + GTK_STOCK_REMOVE, FALSE); priv->mb_delete = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("Remove and Delete"), GTK_STOCK_CLEAR, - FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), + _("Remove and Delete"), GTK_STOCK_CLEAR, + FALSE); priv->mb_queues_seperator = gtk_separator_menu_item_new(); gtk_menu_shell_append(GTK_MENU_SHELL(torrentMenu), - priv->mb_queues_seperator); + priv->mb_queues_seperator); priv->mb_start_now = trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("Start Now"), - GTK_STOCK_MEDIA_PLAY, - FALSE); + _("Start Now"), + GTK_STOCK_MEDIA_PLAY, + FALSE); priv->mb_up_queue = trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("Move Up Queue"), - GTK_STOCK_GO_UP, FALSE); + _("Move Up Queue"), + GTK_STOCK_GO_UP, FALSE); priv->mb_down_queue = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("Move Down Queue"), GTK_STOCK_GO_DOWN, - FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), + _("Move Down Queue"), GTK_STOCK_GO_DOWN, + FALSE); priv->mb_bottom_queue = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("Bottom Of Queue"), GTK_STOCK_GOTO_BOTTOM, - FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), + _("Bottom Of Queue"), GTK_STOCK_GOTO_BOTTOM, + FALSE); priv->mb_top_queue = trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("Top Of Queue"), - GTK_STOCK_GOTO_TOP, FALSE); + _("Top Of Queue"), + GTK_STOCK_GOTO_TOP, FALSE); gtk_menu_shell_append(GTK_MENU_SHELL(torrentMenu), - gtk_separator_menu_item_new()); + gtk_separator_menu_item_new()); priv->mb_resume_all = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), - _("_Resume All"), GTK_STOCK_MEDIA_PLAY, - FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), + _("_Resume All"), GTK_STOCK_MEDIA_PLAY, + FALSE); priv->mb_pause_all = - trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Pause All"), - GTK_STOCK_MEDIA_PAUSE, FALSE); + trg_menu_bar_item_new(GTK_MENU_SHELL(torrentMenu), _("_Pause All"), + GTK_STOCK_MEDIA_PAUSE, FALSE); return torrent; } @@ -589,8 +589,8 @@ GtkWidget *trg_menu_bar_help_menu_new(TrgMenuBar * menuBar) gtk_menu_shell_append(GTK_MENU_SHELL(menuBar), help); priv->mb_about = - trg_menu_bar_item_new(GTK_MENU_SHELL(helpMenu), _("_About"), - GTK_STOCK_ABOUT, TRUE); + trg_menu_bar_item_new(GTK_MENU_SHELL(helpMenu), _("_About"), + GTK_STOCK_ABOUT, TRUE); return helpMenu; } @@ -599,9 +599,9 @@ static void menu_bar_refresh_menu(GtkWidget * w, gpointer data) { TrgMenuBarPrivate *priv = TRG_MENU_BAR_GET_PRIVATE(data); GtkWidget *old = - gtk_menu_item_get_submenu(GTK_MENU_ITEM(priv->mb_connect)); + gtk_menu_item_get_submenu(GTK_MENU_ITEM(priv->mb_connect)); GtkWidget *new = - trg_menu_bar_file_connect_menu_new(priv->main_window, priv->prefs); + trg_menu_bar_file_connect_menu_new(priv->main_window, priv->prefs); gtk_widget_destroy(old); gtk_menu_item_set_submenu(GTK_MENU_ITEM(priv->mb_connect), new); @@ -609,32 +609,32 @@ static void menu_bar_refresh_menu(GtkWidget * w, gpointer data) } static GObject *trg_menu_bar_constructor(GType type, - guint n_construct_properties, - GObjectConstructParam * - construct_params) + guint n_construct_properties, + GObjectConstructParam * + construct_params) { GObject *object; TrgMenuBarPrivate *priv; object = G_OBJECT_CLASS - (trg_menu_bar_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_menu_bar_parent_class)->constructor(type, + n_construct_properties, + construct_params); priv = TRG_MENU_BAR_GET_PRIVATE(object); gtk_menu_shell_append(GTK_MENU_SHELL(object), - trg_menu_bar_file_file_menu_new(priv)); + trg_menu_bar_file_file_menu_new(priv)); gtk_menu_shell_append(GTK_MENU_SHELL(object), - trg_menu_bar_torrent_menu_new(priv)); + trg_menu_bar_torrent_menu_new(priv)); gtk_menu_shell_append(GTK_MENU_SHELL(object), - trg_menu_bar_options_menu_new(priv)); + trg_menu_bar_options_menu_new(priv)); gtk_menu_shell_append(GTK_MENU_SHELL(object), - trg_menu_bar_view_menu_new(TRG_MENU_BAR - (object))); + trg_menu_bar_view_menu_new(TRG_MENU_BAR + (object))); trg_menu_bar_help_menu_new(TRG_MENU_BAR(object)); g_signal_connect(G_OBJECT(priv->prefs), "pref-profile-changed", - G_CALLBACK(menu_bar_refresh_menu), object); + G_CALLBACK(menu_bar_refresh_menu), object); return object; } @@ -649,105 +649,105 @@ static void trg_menu_bar_class_init(TrgMenuBarClass * klass) g_type_class_add_private(klass, sizeof(TrgMenuBarPrivate)); trg_menu_bar_install_widget_prop(object_class, PROP_CONNECT_BUTTON, - "connect-button", "Connect Button"); + "connect-button", "Connect Button"); trg_menu_bar_install_widget_prop(object_class, - PROP_DISCONNECT_BUTTON, - "disconnect-button", - "Disconnect Button"); + PROP_DISCONNECT_BUTTON, + "disconnect-button", + "Disconnect Button"); trg_menu_bar_install_widget_prop(object_class, PROP_ADD_BUTTON, - "add-button", "Add Button"); + "add-button", "Add Button"); trg_menu_bar_install_widget_prop(object_class, PROP_ADD_URL_BUTTON, - "add-url-button", "Add URL Button"); + "add-url-button", "Add URL Button"); trg_menu_bar_install_widget_prop(object_class, PROP_REMOVE_BUTTON, - "remove-button", "Remove Button"); + "remove-button", "Remove Button"); trg_menu_bar_install_widget_prop(object_class, PROP_MOVE_BUTTON, - "move-button", "Move Button"); + "move-button", "Move Button"); trg_menu_bar_install_widget_prop(object_class, PROP_DELETE_BUTTON, - "delete-button", "Delete Button"); + "delete-button", "Delete Button"); trg_menu_bar_install_widget_prop(object_class, PROP_RESUME_BUTTON, - "resume-button", "Resume Button"); + "resume-button", "Resume Button"); trg_menu_bar_install_widget_prop(object_class, PROP_RESUME_ALL_BUTTON, - "resume-all-button", - "Resume All Button"); + "resume-all-button", + "Resume All Button"); trg_menu_bar_install_widget_prop(object_class, PROP_VERIFY_BUTTON, - "verify-button", "Verify Button"); + "verify-button", "Verify Button"); trg_menu_bar_install_widget_prop(object_class, PROP_REANNOUNCE_BUTTON, - "reannounce-button", - "Re-announce Button"); + "reannounce-button", + "Re-announce Button"); trg_menu_bar_install_widget_prop(object_class, PROP_PAUSE_ALL_BUTTON, - "pause-all-button", - "Pause All Button"); + "pause-all-button", + "Pause All Button"); trg_menu_bar_install_widget_prop(object_class, PROP_PAUSE_BUTTON, - "pause-button", "Pause Button"); + "pause-button", "Pause Button"); trg_menu_bar_install_widget_prop(object_class, PROP_PROPS_BUTTON, - "props-button", "Props Button"); + "props-button", "Props Button"); trg_menu_bar_install_widget_prop(object_class, PROP_ABOUT_BUTTON, - "about-button", "About Button"); + "about-button", "About Button"); trg_menu_bar_install_widget_prop(object_class, PROP_VIEW_STATS_BUTTON, - "view-stats-button", - "View stats button"); + "view-stats-button", + "View stats button"); trg_menu_bar_install_widget_prop(object_class, PROP_VIEW_STATES_BUTTON, - "view-states-button", - "View states Button"); + "view-states-button", + "View states Button"); trg_menu_bar_install_widget_prop(object_class, - PROP_VIEW_NOTEBOOK_BUTTON, - "view-notebook-button", - "View notebook Button"); + PROP_VIEW_NOTEBOOK_BUTTON, + "view-notebook-button", + "View notebook Button"); trg_menu_bar_install_widget_prop(object_class, - PROP_REMOTE_PREFS_BUTTON, - "remote-prefs-button", - "Remote Prefs Button"); + PROP_REMOTE_PREFS_BUTTON, + "remote-prefs-button", + "Remote Prefs Button"); trg_menu_bar_install_widget_prop(object_class, PROP_LOCAL_PREFS_BUTTON, - "local-prefs-button", - "Local Prefs Button"); + "local-prefs-button", + "Local Prefs Button"); trg_menu_bar_install_widget_prop(object_class, PROP_QUIT, - "quit-button", "Quit Button"); + "quit-button", "Quit Button"); trg_menu_bar_install_widget_prop(object_class, PROP_DIR_FILTERS, - "dir-filters", "Dir Filters"); + "dir-filters", "Dir Filters"); trg_menu_bar_install_widget_prop(object_class, PROP_TRACKER_FILTERS, - "tracker-filters", "Tracker Filters"); + "tracker-filters", "Tracker Filters"); trg_menu_bar_install_widget_prop(object_class, PROP_VIEW_SHOW_GRAPH, - "show-graph", "Show Graph"); + "show-graph", "Show Graph"); trg_menu_bar_install_widget_prop(object_class, PROP_MOVE_DOWN_QUEUE, - "down-queue", "Down Queue"); + "down-queue", "Down Queue"); trg_menu_bar_install_widget_prop(object_class, PROP_MOVE_UP_QUEUE, - "up-queue", "Up Queue"); + "up-queue", "Up Queue"); trg_menu_bar_install_widget_prop(object_class, PROP_MOVE_BOTTOM_QUEUE, - "bottom-queue", "Bottom Queue"); + "bottom-queue", "Bottom Queue"); trg_menu_bar_install_widget_prop(object_class, PROP_MOVE_TOP_QUEUE, - "top-queue", "Top Queue"); + "top-queue", "Top Queue"); trg_menu_bar_install_widget_prop(object_class, PROP_START_NOW, - "start-now", "Start Now"); + "start-now", "Start Now"); g_object_class_install_property(object_class, - PROP_PREFS, - g_param_spec_object("prefs", - "prefs", - "Prefs", - TRG_TYPE_PREFS, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_PREFS, + g_param_spec_object("prefs", + "prefs", + "Prefs", + TRG_TYPE_PREFS, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_MAIN_WINDOW, - g_param_spec_object("mainwin", - "mainwin", - "mainwin", - TRG_TYPE_MAIN_WINDOW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_MAIN_WINDOW, + g_param_spec_object("mainwin", + "mainwin", + "mainwin", + TRG_TYPE_MAIN_WINDOW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); } @@ -758,5 +758,5 @@ static void trg_menu_bar_init(TrgMenuBar * self) TrgMenuBar *trg_menu_bar_new(TrgMainWindow * win, TrgPrefs * prefs) { return g_object_new(TRG_TYPE_MENU_BAR, - "prefs", prefs, "mainwin", win, NULL); + "prefs", prefs, "mainwin", win, NULL); } diff --git a/src/trg-menu-bar.h b/src/trg-menu-bar.h index d8b73f0..d9538ce 100644 --- a/src/trg-menu-bar.h +++ b/src/trg-menu-bar.h @@ -50,16 +50,16 @@ GType trg_menu_bar_get_type(void); TrgMenuBar *trg_menu_bar_new(TrgMainWindow * win, TrgPrefs * prefs); GtkWidget *trg_menu_bar_item_new(GtkMenuShell * shell, const gchar * text, - const gchar * stock_id, - gboolean sensitive); + const gchar * stock_id, + gboolean sensitive); G_END_DECLS void trg_menu_bar_torrent_actions_sensitive(TrgMenuBar * mb, - gboolean sensitive); + gboolean sensitive); void trg_menu_bar_connected_change(TrgMenuBar * mb, gboolean connected); void trg_menu_bar_set_supports_queues(TrgMenuBar * mb, - gboolean supportsQueues); + gboolean supportsQueues); GtkWidget *trg_menu_bar_file_connect_menu_new(TrgMainWindow * win, - TrgPrefs * p); + TrgPrefs * p); -#endif /* TRG_MENU_BAR_H_ */ +#endif /* TRG_MENU_BAR_H_ */ diff --git a/src/trg-model.c b/src/trg-model.c index 75c7016..e10c974 100644 --- a/src/trg-model.c +++ b/src/trg-model.c @@ -34,23 +34,23 @@ struct trg_model_remove_removed_foreachfunc_args { gboolean trg_model_remove_removed_foreachfunc(GtkTreeModel * model, - GtkTreePath * path G_GNUC_UNUSED, - GtkTreeIter * iter, gpointer data) + GtkTreePath * path G_GNUC_UNUSED, + GtkTreeIter * iter, gpointer data) { struct trg_model_remove_removed_foreachfunc_args *args = - (struct trg_model_remove_removed_foreachfunc_args *) data; + (struct trg_model_remove_removed_foreachfunc_args *) data; gint64 rowSerial; gtk_tree_model_get(model, iter, args->serial_column, &rowSerial, -1); if (rowSerial != args->currentSerial) - args->toRemove = - g_list_append(args->toRemove, gtk_tree_iter_copy(iter)); + args->toRemove = + g_list_append(args->toRemove, gtk_tree_iter_copy(iter)); return FALSE; } guint trg_model_remove_removed(GtkListStore * model, gint serial_column, - gint64 currentSerial) + gint64 currentSerial) { struct trg_model_remove_removed_foreachfunc_args args; GList *li; @@ -60,15 +60,15 @@ trg_model_remove_removed(GtkListStore * model, gint serial_column, args.currentSerial = currentSerial; args.serial_column = serial_column; gtk_tree_model_foreach(GTK_TREE_MODEL(model), - trg_model_remove_removed_foreachfunc, &args); + trg_model_remove_removed_foreachfunc, &args); if (args.toRemove != NULL) { - for (li = g_list_last(args.toRemove); li != NULL; - li = g_list_previous(li)) { - gtk_list_store_remove(model, (GtkTreeIter *) li->data); - gtk_tree_iter_free((GtkTreeIter *) li->data); - removed++; - } - g_list_free(args.toRemove); + for (li = g_list_last(args.toRemove); li != NULL; + li = g_list_previous(li)) { + gtk_list_store_remove(model, (GtkTreeIter *) li->data); + gtk_tree_iter_free((GtkTreeIter *) li->data); + removed++; + } + g_list_free(args.toRemove); } return removed; @@ -83,17 +83,17 @@ struct find_existing_item_foreach_args { static gboolean find_existing_item_foreachfunc(GtkTreeModel * model, - GtkTreePath * path G_GNUC_UNUSED, - GtkTreeIter * iter, gpointer data) + GtkTreePath * path G_GNUC_UNUSED, + GtkTreeIter * iter, gpointer data) { struct find_existing_item_foreach_args *args = - (struct find_existing_item_foreach_args *) data; + (struct find_existing_item_foreach_args *) data; gint64 currentId; gtk_tree_model_get(model, iter, args->search_column, ¤tId, -1); if (currentId == args->id) { - args->iter = iter; - return args->found = TRUE; + args->iter = iter; + return args->found = TRUE; } return FALSE; @@ -101,7 +101,7 @@ find_existing_item_foreachfunc(GtkTreeModel * model, gboolean find_existing_model_item(GtkTreeModel * model, gint search_column, - gint64 id, GtkTreeIter * iter) + gint64 id, GtkTreeIter * iter) { struct find_existing_item_foreach_args args; args.id = id; @@ -109,6 +109,6 @@ find_existing_model_item(GtkTreeModel * model, gint search_column, args.search_column = search_column; gtk_tree_model_foreach(model, find_existing_item_foreachfunc, &args); if (args.found == TRUE) - *iter = *(args.iter); + *iter = *(args.iter); return args.found; } diff --git a/src/trg-model.h b/src/trg-model.h index da92c2a..9059303 100644 --- a/src/trg-model.h +++ b/src/trg-model.h @@ -23,10 +23,10 @@ #include <gtk/gtk.h> guint trg_model_remove_removed(GtkListStore * model, gint serial_column, - gint64 currentSerial); + gint64 currentSerial); gboolean find_existing_model_item(GtkTreeModel * model, gint search_column, - gint64 id, GtkTreeIter * iter); + gint64 id, GtkTreeIter * iter); -#endif /* TRG_MODEL_H_ */ +#endif /* TRG_MODEL_H_ */ diff --git a/src/trg-peers-model.c b/src/trg-peers-model.c index e97eb8b..507d4f9 100644 --- a/src/trg-peers-model.c +++ b/src/trg-peers-model.c @@ -50,7 +50,7 @@ struct _TrgPeersModelPrivate { #endif static void trg_peers_model_class_init(TrgPeersModelClass * - klass G_GNUC_UNUSED) + klass G_GNUC_UNUSED) { #ifdef HAVE_GEOIP g_type_class_add_private(klass, sizeof(TrgPeersModelPrivate)); @@ -58,41 +58,41 @@ static void trg_peers_model_class_init(TrgPeersModelClass * } gboolean find_existing_peer_item_foreachfunc(GtkTreeModel * model, - GtkTreePath * - path G_GNUC_UNUSED, - GtkTreeIter * iter, - gpointer data) + GtkTreePath * + path G_GNUC_UNUSED, + GtkTreeIter * iter, + gpointer data) { struct peerAndIter *pi = (struct peerAndIter *) data; gchar *ip; gtk_tree_model_get(model, iter, PEERSCOL_IP, &ip, -1); if (g_strcmp0(ip, pi->ip) == 0) { - pi->iter = *iter; - pi->found = TRUE; + pi->iter = *iter; + pi->found = TRUE; } g_free(ip); return pi->found; } gboolean find_existing_peer_item(TrgPeersModel * model, JsonObject * p, - GtkTreeIter * iter) + GtkTreeIter * iter) { struct peerAndIter pi; pi.ip = peer_get_address(p); pi.found = FALSE; gtk_tree_model_foreach(GTK_TREE_MODEL(model), - find_existing_peer_item_foreachfunc, &pi); + find_existing_peer_item_foreachfunc, &pi); if (pi.found == TRUE) - *iter = pi.iter; + *iter = pi.iter; return pi.found; } static void resolved_dns_cb(GObject * source_object, GAsyncResult * res, - gpointer data) + gpointer data) { GtkTreeRowReference *treeRef; GtkTreeModel *model; @@ -103,36 +103,36 @@ static void resolved_dns_cb(GObject * source_object, GAsyncResult * res, path = gtk_tree_row_reference_get_path(treeRef); if (path != NULL) { - gchar *rdns = - g_resolver_lookup_by_address_finish(G_RESOLVER(source_object), - res, NULL); - if (rdns != NULL) { - GtkTreeIter iter; - if (gtk_tree_model_get_iter(model, &iter, path) == TRUE) { - gdk_threads_enter(); - gtk_list_store_set(GTK_LIST_STORE(model), &iter, - PEERSCOL_HOST, rdns, -1); - gdk_threads_leave(); - } - g_free(rdns); - } - gtk_tree_path_free(path); + gchar *rdns = + g_resolver_lookup_by_address_finish(G_RESOLVER(source_object), + res, NULL); + if (rdns != NULL) { + GtkTreeIter iter; + if (gtk_tree_model_get_iter(model, &iter, path) == TRUE) { + gdk_threads_enter(); + gtk_list_store_set(GTK_LIST_STORE(model), &iter, + PEERSCOL_HOST, rdns, -1); + gdk_threads_leave(); + } + g_free(rdns); + } + gtk_tree_path_free(path); } gtk_tree_row_reference_free(treeRef); } void trg_peers_model_update(TrgPeersModel * model, TrgTreeView * tv, - gint64 updateSerial, JsonObject * t, gint mode) + gint64 updateSerial, JsonObject * t, gint mode) { #ifdef HAVE_GEOIP TrgPeersModelPrivate *priv = TRG_PEERS_MODEL_GET_PRIVATE(model); gboolean doGeoLookup = - trg_tree_view_is_column_showing(tv, PEERSCOL_COUNTRY); + trg_tree_view_is_column_showing(tv, PEERSCOL_COUNTRY); #endif gboolean doHostLookup = - trg_tree_view_is_column_showing(tv, PEERSCOL_HOST); + trg_tree_view_is_column_showing(tv, PEERSCOL_HOST); JsonArray *peers; GtkTreeIter peerIter; GList *li, *peersList; @@ -141,79 +141,79 @@ void trg_peers_model_update(TrgPeersModel * model, TrgTreeView * tv, peers = torrent_get_peers(t); if (mode == TORRENT_GET_MODE_FIRST) - gtk_list_store_clear(GTK_LIST_STORE(model)); + gtk_list_store_clear(GTK_LIST_STORE(model)); peersList = json_array_get_elements(peers); for (li = peersList; li; li = g_list_next(li)) { - JsonObject *peer = json_node_get_object((JsonNode *) li->data); - const gchar *address = NULL, *flagStr; + JsonObject *peer = json_node_get_object((JsonNode *) li->data); + const gchar *address = NULL, *flagStr; #ifdef HAVE_GEOIP - const gchar *country = NULL; + const gchar *country = NULL; #endif - if (mode == TORRENT_GET_MODE_FIRST - || find_existing_peer_item(model, peer, &peerIter) == FALSE) { - gtk_list_store_append(GTK_LIST_STORE(model), &peerIter); + if (mode == TORRENT_GET_MODE_FIRST + || find_existing_peer_item(model, peer, &peerIter) == FALSE) { + gtk_list_store_append(GTK_LIST_STORE(model), &peerIter); - address = peer_get_address(peer); + address = peer_get_address(peer); #ifdef HAVE_GEOIP - if (address && doGeoLookup) { // just in case address wasn't set - if (strchr(address, ':') && priv->geoipv6) - country = - GeoIP_country_name_by_addr_v6(priv->geoipv6, - address); - else if (priv->geoip) - country = - GeoIP_country_name_by_addr(priv->geoip, address); - } + if (address && doGeoLookup) { // just in case address wasn't set + if (strchr(address, ':') && priv->geoipv6) + country = + GeoIP_country_name_by_addr_v6(priv->geoipv6, + address); + else if (priv->geoip) + country = + GeoIP_country_name_by_addr(priv->geoip, address); + } #endif - gtk_list_store_set(GTK_LIST_STORE(model), &peerIter, - PEERSCOL_ICON, GTK_STOCK_NETWORK, - PEERSCOL_IP, address, + gtk_list_store_set(GTK_LIST_STORE(model), &peerIter, + PEERSCOL_ICON, GTK_STOCK_NETWORK, + PEERSCOL_IP, address, #ifdef HAVE_GEOIP - PEERSCOL_COUNTRY, country ? country : "", + PEERSCOL_COUNTRY, country ? country : "", #endif - PEERSCOL_CLIENT, peer_get_client_name(peer), - -1); - - isNew = TRUE; - } else { - isNew = FALSE; - } - - flagStr = peer_get_flagstr(peer); - gtk_list_store_set(GTK_LIST_STORE(model), &peerIter, - PEERSCOL_FLAGS, flagStr, PEERSCOL_PROGRESS, - peer_get_progress(peer), PEERSCOL_DOWNSPEED, - peer_get_rate_to_client(peer), PEERSCOL_UPSPEED, - peer_get_rate_to_peer(peer), - PEERSCOL_UPDATESERIAL, updateSerial, -1); - - if (doHostLookup && isNew == TRUE) { - GtkTreePath *path = - gtk_tree_model_get_path(GTK_TREE_MODEL(model), - &peerIter); - GtkTreeRowReference *treeRef = - gtk_tree_row_reference_new(GTK_TREE_MODEL(model), path); - GInetAddress *inetAddr; - GResolver *resolver; - - gtk_tree_path_free(path); - - inetAddr = g_inet_address_new_from_string(address); - resolver = g_resolver_get_default(); - g_resolver_lookup_by_address_async(resolver, inetAddr, NULL, - resolved_dns_cb, treeRef); - g_object_unref(resolver); - g_object_unref(inetAddr); - } + PEERSCOL_CLIENT, peer_get_client_name(peer), + -1); + + isNew = TRUE; + } else { + isNew = FALSE; + } + + flagStr = peer_get_flagstr(peer); + gtk_list_store_set(GTK_LIST_STORE(model), &peerIter, + PEERSCOL_FLAGS, flagStr, PEERSCOL_PROGRESS, + peer_get_progress(peer), PEERSCOL_DOWNSPEED, + peer_get_rate_to_client(peer), PEERSCOL_UPSPEED, + peer_get_rate_to_peer(peer), + PEERSCOL_UPDATESERIAL, updateSerial, -1); + + if (doHostLookup && isNew == TRUE) { + GtkTreePath *path = + gtk_tree_model_get_path(GTK_TREE_MODEL(model), + &peerIter); + GtkTreeRowReference *treeRef = + gtk_tree_row_reference_new(GTK_TREE_MODEL(model), path); + GInetAddress *inetAddr; + GResolver *resolver; + + gtk_tree_path_free(path); + + inetAddr = g_inet_address_new_from_string(address); + resolver = g_resolver_get_default(); + g_resolver_lookup_by_address_async(resolver, inetAddr, NULL, + resolved_dns_cb, treeRef); + g_object_unref(resolver); + g_object_unref(inetAddr); + } } g_list_free(peersList); if (mode != TORRENT_GET_MODE_FIRST) - trg_model_remove_removed(GTK_LIST_STORE(model), - PEERSCOL_UPDATESERIAL, updateSerial); + trg_model_remove_removed(GTK_LIST_STORE(model), + PEERSCOL_UPDATESERIAL, updateSerial); } static void trg_peers_model_init(TrgPeersModel * self) @@ -238,15 +238,15 @@ static void trg_peers_model_init(TrgPeersModel * self) column_types[PEERSCOL_UPDATESERIAL] = G_TYPE_INT64; gtk_list_store_set_column_types(GTK_LIST_STORE(self), PEERSCOL_COLUMNS, - column_types); + column_types); #ifdef HAVE_GEOIP if (g_file_test(TRG_GEOIP_DATABASE, G_FILE_TEST_EXISTS) == TRUE) - priv->geoip = GeoIP_open(TRG_GEOIP_DATABASE, - GEOIP_STANDARD | GEOIP_CHECK_CACHE); + priv->geoip = GeoIP_open(TRG_GEOIP_DATABASE, + GEOIP_STANDARD | GEOIP_CHECK_CACHE); if (g_file_test(TRG_GEOIPV6_DATABASE, G_FILE_TEST_EXISTS) == TRUE) - priv->geoipv6 = GeoIP_open(TRG_GEOIPV6_DATABASE, - GEOIP_STANDARD | GEOIP_CHECK_CACHE); + priv->geoipv6 = GeoIP_open(TRG_GEOIPV6_DATABASE, + GEOIP_STANDARD | GEOIP_CHECK_CACHE); #endif } diff --git a/src/trg-peers-model.h b/src/trg-peers-model.h index 59e9476..d9cf885 100644 --- a/src/trg-peers-model.h +++ b/src/trg-peers-model.h @@ -81,10 +81,10 @@ enum { }; void trg_peers_model_update(TrgPeersModel * model, TrgTreeView * tv, - gint64 updateSerial, JsonObject * t, - gboolean first); + gint64 updateSerial, JsonObject * t, + gboolean first); -#endif /* TRG_PEERS_MODEL_H_ */ +#endif /* TRG_PEERS_MODEL_H_ */ #define TRG_GEOIP_DATABASE "/usr/share/GeoIP/GeoIP.dat" #define TRG_GEOIPV6_DATABASE "/usr/share/GeoIP/GeoIPv6.dat" diff --git a/src/trg-peers-tree-view.c b/src/trg-peers-tree-view.c index 9d8381b..ab86d69 100644 --- a/src/trg-peers-tree-view.c +++ b/src/trg-peers-tree-view.c @@ -47,33 +47,33 @@ static void trg_peers_tree_view_init(TrgPeersTreeView * self) trg_column_description *desc; desc = - trg_tree_view_reg_column(ttv, TRG_COLTYPE_STOCKICONTEXT, - PEERSCOL_IP, _("IP"), "ip", 0); + trg_tree_view_reg_column(ttv, TRG_COLTYPE_STOCKICONTEXT, + PEERSCOL_IP, _("IP"), "ip", 0); desc->model_column_icon = PEERSCOL_ICON; trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, PEERSCOL_HOST, - _("Host"), "host", 0); + _("Host"), "host", 0); #ifdef HAVE_GEOIP trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, PEERSCOL_COUNTRY, - _("Country"), "country", 0); + _("Country"), "country", 0); #endif trg_tree_view_reg_column(ttv, TRG_COLTYPE_SPEED, PEERSCOL_DOWNSPEED, - _("Down Speed"), "down-speed", 0); + _("Down Speed"), "down-speed", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_SPEED, PEERSCOL_UPSPEED, - _("Up Speed"), "up-speed", 0); + _("Up Speed"), "up-speed", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_PROG, PEERSCOL_PROGRESS, - _("Progress"), "progress", 0); + _("Progress"), "progress", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, PEERSCOL_FLAGS, - _("Flags"), "flags", 0); + _("Flags"), "flags", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, PEERSCOL_CLIENT, - _("Client"), "client", 0); + _("Client"), "client", 0); gtk_tree_view_set_search_column(GTK_TREE_VIEW(self), PEERSCOL_HOST); } TrgPeersTreeView *trg_peers_tree_view_new(TrgPrefs * prefs, - TrgPeersModel * model) + TrgPeersModel * model) { GObject *obj = g_object_new(TRG_TYPE_PEERS_TREE_VIEW, NULL); trg_tree_view_set_prefs(TRG_TREE_VIEW(obj), prefs); diff --git a/src/trg-peers-tree-view.h b/src/trg-peers-tree-view.h index 72d4261..989d172 100644 --- a/src/trg-peers-tree-view.h +++ b/src/trg-peers-tree-view.h @@ -50,7 +50,7 @@ typedef struct { GType trg_peers_tree_view_get_type(void); TrgPeersTreeView *trg_peers_tree_view_new(TrgPrefs * prefs, - TrgPeersModel * model); + TrgPeersModel * model); G_END_DECLS -#endif /* TRG_PEERS_TREE_VIEW_H_ */ +#endif /* TRG_PEERS_TREE_VIEW_H_ */ diff --git a/src/trg-persistent-tree-view.c b/src/trg-persistent-tree-view.c index dad8b37..9943fc3 100644 --- a/src/trg-persistent-tree-view.c +++ b/src/trg-persistent-tree-view.c @@ -30,7 +30,7 @@ */ G_DEFINE_TYPE(TrgPersistentTreeView, trg_persistent_tree_view, - GTK_TYPE_VBOX) + GTK_TYPE_VBOX) #define GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_PERSISTENT_TREE_VIEW, TrgPersistentTreeViewPrivate)) typedef struct _TrgPersistentTreeViewPrivate TrgPersistentTreeViewPrivate; @@ -56,24 +56,24 @@ static void selection_changed(GtkTreeSelection * selection, gpointer data) TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(data); if (gtk_tree_selection_get_selected(selection, NULL, NULL)) - gtk_widget_set_sensitive(priv->delButton, TRUE); + gtk_widget_set_sensitive(priv->delButton, TRUE); else - gtk_widget_set_sensitive(priv->delButton, FALSE); + gtk_widget_set_sensitive(priv->delButton, FALSE); } static void trg_persistent_tree_view_edit(GtkCellRendererText * renderer, - gchar * path, gchar * new_text, - gpointer user_data) + gchar * path, gchar * new_text, + gpointer user_data) { trg_persistent_tree_view_column *cd = - (trg_persistent_tree_view_column *) user_data; + (trg_persistent_tree_view_column *) user_data; TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(cd->tv); GtkTreeModel *model = gtk_tree_view_get_model(priv->tv); GtkTreeIter iter; gtk_tree_model_get_iter_from_string(model, &iter, path); gtk_list_store_set(GTK_LIST_STORE(model), &iter, cd->index, new_text, - -1); + -1); } static void trg_persistent_tree_view_refresh(TrgPrefs * prefs, void *wdp) @@ -81,7 +81,7 @@ static void trg_persistent_tree_view_refresh(TrgPrefs * prefs, void *wdp) trg_pref_widget_desc *wd = (trg_pref_widget_desc *) wdp; TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(wd->widget); GtkListStore *model = - GTK_LIST_STORE(gtk_tree_view_get_model(priv->tv)); + GTK_LIST_STORE(gtk_tree_view_get_model(priv->tv)); GtkTreeIter iter; JsonArray *ja; GList *ja_list, *li; @@ -92,33 +92,33 @@ static void trg_persistent_tree_view_refresh(TrgPrefs * prefs, void *wdp) gtk_list_store_clear(model); if (!ja) - return; + return; ja_list = json_array_get_elements(ja); for (li = ja_list; li; li = g_list_next(li)) { - JsonNode *ja_node = (JsonNode *) li->data; - JsonObject *jobj = json_node_get_object(ja_node); - gtk_list_store_append(model, &iter); - for (sli = priv->columns; sli; sli = g_slist_next(sli)) { - trg_persistent_tree_view_column *cd = - (trg_persistent_tree_view_column *) sli->data; - gtk_list_store_set(model, &iter, cd->index, - json_object_get_string_member(jobj, - cd->key), -1); - } + JsonNode *ja_node = (JsonNode *) li->data; + JsonObject *jobj = json_node_get_object(ja_node); + gtk_list_store_append(model, &iter); + for (sli = priv->columns; sli; sli = g_slist_next(sli)) { + trg_persistent_tree_view_column *cd = + (trg_persistent_tree_view_column *) sli->data; + gtk_list_store_set(model, &iter, cd->index, + json_object_get_string_member(jobj, + cd->key), -1); + } } g_list_free(ja_list); } static gboolean trg_persistent_tree_view_save_foreachfunc(GtkTreeModel * - model, - GtkTreePath * - path, - GtkTreeIter * - iter, - gpointer data) + model, + GtkTreePath * + path, + GtkTreeIter * + iter, + gpointer data) { TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(data); JsonObject *new = json_object_new(); @@ -126,11 +126,11 @@ static gboolean trg_persistent_tree_view_save_foreachfunc(GtkTreeModel * GSList *li; for (li = priv->columns; li; li = g_slist_next(li)) { - trg_persistent_tree_view_column *cd = - (trg_persistent_tree_view_column *) li->data; - gtk_tree_model_get(model, iter, cd->index, &value, -1); - json_object_set_string_member(new, cd->key, value); - g_free(value); + trg_persistent_tree_view_column *cd = + (trg_persistent_tree_view_column *) li->data; + gtk_tree_model_get(model, iter, cd->index, &value, -1); + json_object_set_string_member(new, cd->key, value); + g_free(value); } json_array_add_object_element(priv->ja, new); @@ -145,27 +145,27 @@ static void trg_persistent_tree_view_save(TrgPrefs * prefs, void *wdp) GtkTreeModel *model = gtk_tree_view_get_model(priv->tv); JsonNode *node = trg_prefs_get_value(prefs, wd->key, JSON_NODE_ARRAY, - wd-> - flags | TRG_PREFS_REPLACENODE); + wd->flags | + TRG_PREFS_REPLACENODE); priv->ja = json_array_new(); gtk_tree_model_foreach(model, - trg_persistent_tree_view_save_foreachfunc, - wd->widget); + trg_persistent_tree_view_save_foreachfunc, + wd->widget); json_node_take_array(node, priv->ja); trg_prefs_changed_emit_signal(prefs, wd->key); } trg_persistent_tree_view_column - *trg_persistent_tree_view_add_column(TrgPersistentTreeView * ptv, - gint index, const gchar * key, - const gchar * label) + * trg_persistent_tree_view_add_column(TrgPersistentTreeView * ptv, + gint index, const gchar * key, + const gchar * label) { TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(ptv); trg_persistent_tree_view_column *cd = - g_new0(trg_persistent_tree_view_column, 1); + g_new0(trg_persistent_tree_view_column, 1); GtkCellRenderer *renderer; cd->key = g_strdup(key); @@ -176,10 +176,10 @@ trg_persistent_tree_view_column renderer = gtk_cell_renderer_text_new(); g_object_set(G_OBJECT(renderer), "editable", TRUE, NULL); g_signal_connect(renderer, "edited", - G_CALLBACK(trg_persistent_tree_view_edit), cd); + G_CALLBACK(trg_persistent_tree_view_edit), cd); cd->column = gtk_tree_view_column_new_with_attributes(cd->label, - renderer, "text", - cd->index, NULL); + renderer, "text", + cd->index, NULL); gtk_tree_view_column_set_resizable(cd->column, TRUE); gtk_tree_view_append_column(GTK_TREE_VIEW(priv->tv), cd->column); @@ -189,8 +189,8 @@ trg_persistent_tree_view_column } static GtkTreeView - *trg_persistent_tree_view_tree_view_new(TrgPersistentTreeView * ptv, - GtkTreeModel * model) + * trg_persistent_tree_view_tree_view_new(TrgPersistentTreeView * ptv, + GtkTreeModel * model) { GtkTreeView *tv = GTK_TREE_VIEW(gtk_tree_view_new_with_model(model)); GtkTreeSelection *selection; @@ -202,7 +202,7 @@ static GtkTreeView selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(tv)); g_signal_connect(G_OBJECT(selection), "changed", - G_CALLBACK(selection_changed), ptv); + G_CALLBACK(selection_changed), ptv); return tv; } @@ -218,8 +218,8 @@ static void trg_persistent_tree_view_add_cb(GtkWidget * w, gpointer data) path = gtk_tree_model_get_path(model, &iter); if (priv->addSelect) - gtk_tree_view_set_cursor(priv->tv, path, priv->addSelect->column, - TRUE); + gtk_tree_view_set_cursor(priv->tv, path, priv->addSelect->column, + TRUE); gtk_tree_path_free(path); } @@ -232,40 +232,40 @@ static void trg_persistent_tree_view_del_cb(GtkWidget * w, gpointer data) GtkTreeIter iter; if (gtk_tree_selection_get_selected(selection, &model, &iter)) - gtk_list_store_remove(GTK_LIST_STORE(model), &iter); + gtk_list_store_remove(GTK_LIST_STORE(model), &iter); } static void trg_persistent_tree_view_get_property(GObject * object, - guint property_id, - GValue * value, - GParamSpec * pspec) + guint property_id, + GValue * value, + GParamSpec * pspec) { switch (property_id) { default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_persistent_tree_view_set_property(GObject * object, - guint property_id, - const GValue * value, - GParamSpec * pspec) + guint property_id, + const GValue * value, + GParamSpec * pspec) { TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(object); switch (property_id) { case PROP_PREFS: - priv->prefs = g_value_get_object(value); - break; + priv->prefs = g_value_get_object(value); + break; case PROP_KEY: - priv->key = g_value_get_pointer(value); - break; + priv->key = g_value_get_pointer(value); + break; case PROP_MODEL: - priv->model = g_value_get_object(value); - break; + priv->model = g_value_get_object(value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } @@ -274,72 +274,72 @@ static void trg_persistent_tree_view_finalize(GObject * object) TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(object); GSList *li; for (li = priv->columns; li; li = g_slist_next(li)) { - trg_persistent_tree_view_column *cd = - (trg_persistent_tree_view_column *) li->data; - g_free(cd->key); - g_free(cd->label); - g_free(cd); + trg_persistent_tree_view_column *cd = + (trg_persistent_tree_view_column *) li->data; + g_free(cd->key); + g_free(cd->label); + g_free(cd); } g_slist_free(priv->columns); g_free(priv->key); - G_OBJECT_CLASS(trg_persistent_tree_view_parent_class)-> - finalize(object); + G_OBJECT_CLASS(trg_persistent_tree_view_parent_class)->finalize + (object); } trg_pref_widget_desc - *trg_persistent_tree_view_get_widget_desc(TrgPersistentTreeView * ptv) + * trg_persistent_tree_view_get_widget_desc(TrgPersistentTreeView * ptv) { TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(ptv); return priv->wd; } void trg_persistent_tree_view_set_add_select(TrgPersistentTreeView * ptv, - trg_persistent_tree_view_column - * cd) + trg_persistent_tree_view_column + * cd) { TrgPersistentTreeViewPrivate *priv = GET_PRIVATE(ptv); priv->addSelect = cd; } static GObject *trg_persistent_tree_view_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam - * construct_params) + guint + n_construct_properties, + GObjectConstructParam + * construct_params) { GObject *object; TrgPersistentTreeViewPrivate *priv; GtkWidget *hbox, *w; object = G_OBJECT_CLASS - (trg_persistent_tree_view_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_persistent_tree_view_parent_class)->constructor(type, + n_construct_properties, + construct_params); priv = GET_PRIVATE(object); hbox = gtk_hbox_new(FALSE, 0); w = gtk_button_new_from_stock(GTK_STOCK_ADD); g_signal_connect(w, "clicked", - G_CALLBACK(trg_persistent_tree_view_add_cb), object); + G_CALLBACK(trg_persistent_tree_view_add_cb), object); gtk_box_pack_start(GTK_BOX(hbox), w, FALSE, FALSE, 4); w = priv->delButton = gtk_button_new_from_stock(GTK_STOCK_DELETE); gtk_widget_set_sensitive(w, FALSE); g_signal_connect(w, "clicked", - G_CALLBACK(trg_persistent_tree_view_del_cb), object); + G_CALLBACK(trg_persistent_tree_view_del_cb), object); gtk_box_pack_start(GTK_BOX(hbox), w, FALSE, FALSE, 4); priv->tv = - trg_persistent_tree_view_tree_view_new(TRG_PERSISTENT_TREE_VIEW - (object), priv->model); + trg_persistent_tree_view_tree_view_new(TRG_PERSISTENT_TREE_VIEW + (object), priv->model); gtk_box_pack_start(GTK_BOX(object), - my_scrolledwin_new(GTK_WIDGET(priv->tv)), TRUE, - TRUE, 4); + my_scrolledwin_new(GTK_WIDGET(priv->tv)), TRUE, + TRUE, 4); gtk_box_pack_start(GTK_BOX(object), hbox, FALSE, FALSE, 4); priv->wd = trg_pref_widget_desc_new(GTK_WIDGET(priv->tv), priv->key, - TRG_PREFS_PROFILE); + TRG_PREFS_PROFILE); priv->wd->widget = GTK_WIDGET(object); priv->wd->saveFunc = &trg_persistent_tree_view_save; priv->wd->refreshFunc = &trg_persistent_tree_view_refresh; @@ -348,7 +348,7 @@ static GObject *trg_persistent_tree_view_constructor(GType type, } static void trg_persistent_tree_view_class_init(TrgPersistentTreeViewClass - * klass) + * klass) { GObjectClass *object_class = G_OBJECT_CLASS(klass); @@ -360,49 +360,49 @@ static void trg_persistent_tree_view_class_init(TrgPersistentTreeViewClass object_class->constructor = trg_persistent_tree_view_constructor; g_object_class_install_property(object_class, - PROP_KEY, - g_param_spec_pointer("conf-key", - "Conf Key", - "Conf Key", - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_KEY, + g_param_spec_pointer("conf-key", + "Conf Key", + "Conf Key", + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_PREFS, - g_param_spec_object("prefs", - "Prefs", - "Prefs", - TRG_TYPE_PREFS, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_PREFS, + g_param_spec_object("prefs", + "Prefs", + "Prefs", + TRG_TYPE_PREFS, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_MODEL, - g_param_spec_object("persistent-model", - "Persistent Model", - "Persistent Model", - GTK_TYPE_LIST_STORE, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_MODEL, + g_param_spec_object("persistent-model", + "Persistent Model", + "Persistent Model", + GTK_TYPE_LIST_STORE, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); } static void trg_persistent_tree_view_init(TrgPersistentTreeView * self) @@ -410,13 +410,13 @@ static void trg_persistent_tree_view_init(TrgPersistentTreeView * self) } TrgPersistentTreeView *trg_persistent_tree_view_new(TrgPrefs * prefs, - GtkListStore * model, - const gchar * key) + GtkListStore * model, + const gchar * key) { GObject *obj = - g_object_new(TRG_TYPE_PERSISTENT_TREE_VIEW, "prefs", prefs, - "conf-key", g_strdup(key), "persistent-model", model, - NULL); + g_object_new(TRG_TYPE_PERSISTENT_TREE_VIEW, "prefs", prefs, + "conf-key", g_strdup(key), "persistent-model", model, + NULL); return TRG_PERSISTENT_TREE_VIEW(obj); } diff --git a/src/trg-persistent-tree-view.h b/src/trg-persistent-tree-view.h index 71d80c5..d56f502 100644 --- a/src/trg-persistent-tree-view.h +++ b/src/trg-persistent-tree-view.h @@ -56,20 +56,21 @@ typedef struct { } trg_persistent_tree_view_column; TrgPersistentTreeView *trg_persistent_tree_view_new(TrgPrefs * prefs, - GtkListStore * model, - const gchar * key); + GtkListStore * model, + const gchar * key); trg_pref_widget_desc - *trg_persistent_tree_view_get_widget_desc(TrgPersistentTreeView * ptv); + * trg_persistent_tree_view_get_widget_desc(TrgPersistentTreeView * + ptv); void trg_persistent_tree_view_set_add_select(TrgPersistentTreeView * ptv, - trg_persistent_tree_view_column - * cd); + trg_persistent_tree_view_column + * cd); trg_persistent_tree_view_column - *trg_persistent_tree_view_add_column(TrgPersistentTreeView * ptv, - gint index, const gchar * key, - const gchar * label); + * trg_persistent_tree_view_add_column(TrgPersistentTreeView * ptv, + gint index, const gchar * key, + const gchar * label); G_END_DECLS -#endif /* _TRG_PERSISTENT_TREE_VIEW */ +#endif /* _TRG_PERSISTENT_TREE_VIEW */ diff --git a/src/trg-preferences-dialog.c b/src/trg-preferences-dialog.c index d9d79ed..50ceaaa 100644 --- a/src/trg-preferences-dialog.c +++ b/src/trg-preferences-dialog.c @@ -46,7 +46,7 @@ (G_TYPE_INSTANCE_GET_PRIVATE ((object), TRG_TYPE_PREFERENCES_DIALOG, TrgPreferencesDialogPrivate)) G_DEFINE_TYPE(TrgPreferencesDialog, trg_preferences_dialog, - GTK_TYPE_DIALOG) + GTK_TYPE_DIALOG) enum { PROP_0, PROP_TRG_CLIENT, PROP_MAIN_WINDOW @@ -72,7 +72,7 @@ static void trg_pref_widget_desc_free(trg_pref_widget_desc * wd) } trg_pref_widget_desc *trg_pref_widget_desc_new(GtkWidget * w, gchar * key, - int flags) + int flags) { trg_pref_widget_desc *desc = g_new0(trg_pref_widget_desc, 1); desc->widget = w; @@ -82,10 +82,10 @@ trg_pref_widget_desc *trg_pref_widget_desc_new(GtkWidget * w, gchar * key, } static void trg_pref_widget_refresh(TrgPreferencesDialog * dlg, - trg_pref_widget_desc * wd) + trg_pref_widget_desc * wd) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); wd->refreshFunc(priv->prefs, wd); } @@ -93,18 +93,18 @@ static void trg_pref_widget_refresh(TrgPreferencesDialog * dlg, static void trg_pref_widget_refresh_all(TrgPreferencesDialog * dlg) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); GList *li; for (li = priv->widgets; li; li = g_list_next(li)) - trg_pref_widget_refresh(dlg, (trg_pref_widget_desc *) li->data); + trg_pref_widget_refresh(dlg, (trg_pref_widget_desc *) li->data); } static void trg_pref_widget_save(TrgPreferencesDialog * dlg, - trg_pref_widget_desc * wd) + trg_pref_widget_desc * wd) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); wd->saveFunc(priv->prefs, wd); } @@ -112,56 +112,56 @@ static void trg_pref_widget_save(TrgPreferencesDialog * dlg, static void trg_pref_widget_save_all(TrgPreferencesDialog * dlg) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); GList *li; if (trg_prefs_get_profile(priv->prefs) == NULL) - return; + return; trg_client_configlock(priv->client); for (li = priv->widgets; li; li = g_list_next(li)) { - trg_pref_widget_desc *wd = (trg_pref_widget_desc *) li->data; - trg_pref_widget_save(dlg, wd); + trg_pref_widget_desc *wd = (trg_pref_widget_desc *) li->data; + trg_pref_widget_save(dlg, wd); } trg_client_configunlock(priv->client); } static void trg_preferences_dialog_set_property(GObject * object, - guint prop_id, - const GValue * value, - GParamSpec * - pspec G_GNUC_UNUSED) + guint prop_id, + const GValue * value, + GParamSpec * + pspec G_GNUC_UNUSED) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(object); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(object); switch (prop_id) { case PROP_MAIN_WINDOW: - priv->win = g_value_get_object(value); - break; + priv->win = g_value_get_object(value); + break; case PROP_TRG_CLIENT: - priv->client = g_value_get_pointer(value); - priv->prefs = trg_client_get_prefs(priv->client); - break; + priv->client = g_value_get_pointer(value); + priv->prefs = trg_client_get_prefs(priv->client); + break; } } static void trg_preferences_response_cb(GtkDialog * dlg, gint res_id, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); if (res_id == GTK_RESPONSE_OK) { - trg_pref_widget_save_all(TRG_PREFERENCES_DIALOG(dlg)); - trg_prefs_save(priv->prefs); + trg_pref_widget_save_all(TRG_PREFERENCES_DIALOG(dlg)); + trg_prefs_save(priv->prefs); } trg_main_window_reload_dir_aliases(priv->win); GList *li; for (li = priv->widgets; li; li = g_list_next(li)) - trg_pref_widget_desc_free((trg_pref_widget_desc *) li->data); + trg_pref_widget_desc_free((trg_pref_widget_desc *) li->data); g_list_free(priv->widgets); gtk_widget_destroy(GTK_WIDGET(dlg)); @@ -169,21 +169,21 @@ static void trg_preferences_response_cb(GtkDialog * dlg, gint res_id, } static void trg_preferences_dialog_get_property(GObject * object, - guint prop_id, - GValue * value, - GParamSpec * - pspec G_GNUC_UNUSED) + guint prop_id, + GValue * value, + GParamSpec * + pspec G_GNUC_UNUSED) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(object); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(object); switch (prop_id) { case PROP_MAIN_WINDOW: - g_value_set_object(value, priv->win); - break; + g_value_set_object(value, priv->win); + break; case PROP_TRG_CLIENT: - g_value_set_pointer(value, priv->client); - break; + g_value_set_pointer(value, priv->client); + break; } } @@ -192,10 +192,10 @@ static void entry_refresh(TrgPrefs * prefs, void *wdp) trg_pref_widget_desc *wd = (trg_pref_widget_desc *) wdp; gchar *value = trg_prefs_get_string(prefs, wd->key, wd->flags); if (value) { - gtk_entry_set_text(GTK_ENTRY(wd->widget), value); - g_free(value); + gtk_entry_set_text(GTK_ENTRY(wd->widget), value); + g_free(value); } else { - gtk_entry_set_text(GTK_ENTRY(wd->widget), ""); + gtk_entry_set_text(GTK_ENTRY(wd->widget), ""); } } @@ -203,15 +203,15 @@ static void entry_save(TrgPrefs * prefs, void *wdp) { trg_pref_widget_desc *wd = (trg_pref_widget_desc *) wdp; trg_prefs_set_string(prefs, wd->key, - gtk_entry_get_text(GTK_ENTRY(wd->widget)), - wd->flags); + gtk_entry_get_text(GTK_ENTRY(wd->widget)), + wd->flags); } static GtkWidget *trgp_entry_new(TrgPreferencesDialog * dlg, gchar * key, - int flags) + int flags) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); GtkWidget *w; w = gtk_entry_new(); @@ -238,23 +238,23 @@ static void check_save(TrgPrefs * prefs, void *wdp) { trg_pref_widget_desc *wd = (trg_pref_widget_desc *) wdp; trg_prefs_set_bool(prefs, wd->key, - gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON - (wd->widget)), - wd->flags); + gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON + (wd->widget)), + wd->flags); } static void trgp_toggle_dependent(GtkToggleButton * b, gpointer data) { gtk_widget_set_sensitive(GTK_WIDGET(data), - gtk_toggle_button_get_active(b)); + gtk_toggle_button_get_active(b)); } static GtkWidget *trgp_check_new(TrgPreferencesDialog * dlg, - const char *mnemonic, gchar * key, - int flags, GtkToggleButton * dependency) + const char *mnemonic, gchar * key, + int flags, GtkToggleButton * dependency) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); GtkWidget *w = gtk_check_button_new_with_mnemonic(mnemonic); @@ -264,10 +264,10 @@ static GtkWidget *trgp_check_new(TrgPreferencesDialog * dlg, check_refresh(priv->prefs, wd); if (dependency) { - g_signal_connect(dependency, "toggled", - G_CALLBACK(trgp_toggle_dependent), w); - gtk_widget_set_sensitive(w, - gtk_toggle_button_get_active(dependency)); + g_signal_connect(dependency, "toggled", + G_CALLBACK(trgp_toggle_dependent), w); + gtk_widget_set_sensitive(w, + gtk_toggle_button_get_active(dependency)); } priv->widgets = g_list_append(priv->widgets, wd); @@ -288,17 +288,17 @@ static void spin_save(TrgPrefs * prefs, void *wdp) { trg_pref_widget_desc *wd = (trg_pref_widget_desc *) wdp; trg_prefs_set_int(prefs, wd->key, - gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON - (wd->widget)), - wd->flags); + gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON + (wd->widget)), + wd->flags); } static GtkWidget *trgp_spin_new(TrgPreferencesDialog * dlg, gchar * key, - int low, int high, int step, int flags, - GtkToggleButton * dependency) + int low, int high, int step, int flags, + GtkToggleButton * dependency) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); GtkWidget *w; w = gtk_spin_button_new_with_range(low, high, step); @@ -310,10 +310,10 @@ static GtkWidget *trgp_spin_new(TrgPreferencesDialog * dlg, gchar * key, wd->refreshFunc = &spin_refresh; if (dependency) { - g_signal_connect(dependency, "toggled", - G_CALLBACK(trgp_toggle_dependent), w); - gtk_widget_set_sensitive(w, - gtk_toggle_button_get_active(dependency)); + g_signal_connect(dependency, "toggled", + G_CALLBACK(trgp_toggle_dependent), w); + gtk_widget_set_sensitive(w, + gtk_toggle_button_get_active(dependency)); } spin_refresh(priv->prefs, wd); @@ -325,56 +325,56 @@ static GtkWidget *trgp_spin_new(TrgPreferencesDialog * dlg, gchar * key, static void toggle_filter_trackers(GtkToggleButton * w, gpointer win) { TrgStateSelector *selector = - trg_main_window_get_state_selector(TRG_MAIN_WINDOW(win)); + trg_main_window_get_state_selector(TRG_MAIN_WINDOW(win)); trg_state_selector_set_show_trackers(selector, - gtk_toggle_button_get_active(w)); + gtk_toggle_button_get_active(w)); } #ifndef TRG_NO_GRAPH static void toggle_graph(GtkToggleButton * w, gpointer win) { if (gtk_toggle_button_get_active(w)) - trg_main_window_add_graph(TRG_MAIN_WINDOW(win), TRUE); + trg_main_window_add_graph(TRG_MAIN_WINDOW(win), TRUE); else - trg_main_window_remove_graph(TRG_MAIN_WINDOW(win)); + trg_main_window_remove_graph(TRG_MAIN_WINDOW(win)); } #endif static void toggle_tray_icon(GtkToggleButton * w, gpointer win) { if (gtk_toggle_button_get_active(w)) - trg_main_window_add_status_icon(TRG_MAIN_WINDOW(win)); + trg_main_window_add_status_icon(TRG_MAIN_WINDOW(win)); else - trg_main_window_remove_status_icon(TRG_MAIN_WINDOW(win)); + trg_main_window_remove_status_icon(TRG_MAIN_WINDOW(win)); } static void menu_bar_toggle_filter_dirs(GtkToggleButton * w, gpointer win) { TrgStateSelector *selector = - trg_main_window_get_state_selector(TRG_MAIN_WINDOW(win)); + trg_main_window_get_state_selector(TRG_MAIN_WINDOW(win)); trg_state_selector_set_show_dirs(selector, - gtk_toggle_button_get_active(w)); + gtk_toggle_button_get_active(w)); } static void view_states_toggled_cb(GtkToggleButton * w, gpointer data) { GtkWidget *scroll = - gtk_widget_get_parent(GTK_WIDGET - (trg_main_window_get_state_selector - (TRG_MAIN_WINDOW(data)))); + gtk_widget_get_parent(GTK_WIDGET + (trg_main_window_get_state_selector + (TRG_MAIN_WINDOW(data)))); trg_widget_set_visible(scroll, gtk_toggle_button_get_active(w)); } static void notebook_toggled_cb(GtkToggleButton * b, gpointer data) { trg_main_window_notebook_set_visible(TRG_MAIN_WINDOW(data), - gtk_toggle_button_get_active(b)); + gtk_toggle_button_get_active(b)); } static GtkWidget *trg_prefs_desktopPage(TrgPreferencesDialog * dlg) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); GtkWidget *tray, *w, *dep, *t; gint row = 0; @@ -384,68 +384,68 @@ static GtkWidget *trg_prefs_desktopPage(TrgPreferencesDialog * dlg) hig_workarea_add_section_title(t, &row, _("Features")); dep = w = trgp_check_new(dlg, _("State selector"), - TRG_PREFS_KEY_SHOW_STATE_SELECTOR, - TRG_PREFS_GLOBAL, NULL); + TRG_PREFS_KEY_SHOW_STATE_SELECTOR, + TRG_PREFS_GLOBAL, NULL); g_signal_connect(G_OBJECT(w), "toggled", - G_CALLBACK(view_states_toggled_cb), priv->win); + G_CALLBACK(view_states_toggled_cb), priv->win); hig_workarea_add_wide_control(t, &row, w); w = trgp_check_new(dlg, _("Directory filters"), - TRG_PREFS_KEY_FILTER_DIRS, TRG_PREFS_GLOBAL, - GTK_TOGGLE_BUTTON(dep)); + TRG_PREFS_KEY_FILTER_DIRS, TRG_PREFS_GLOBAL, + GTK_TOGGLE_BUTTON(dep)); g_signal_connect(G_OBJECT(w), "toggled", - G_CALLBACK(menu_bar_toggle_filter_dirs), priv->win); + G_CALLBACK(menu_bar_toggle_filter_dirs), priv->win); hig_workarea_add_wide_control(t, &row, w); w = trgp_check_new(dlg, _("Tracker filters"), - TRG_PREFS_KEY_FILTER_TRACKERS, TRG_PREFS_GLOBAL, - GTK_TOGGLE_BUTTON(dep)); + TRG_PREFS_KEY_FILTER_TRACKERS, TRG_PREFS_GLOBAL, + GTK_TOGGLE_BUTTON(dep)); g_signal_connect(G_OBJECT(w), "toggled", - G_CALLBACK(toggle_filter_trackers), priv->win); + G_CALLBACK(toggle_filter_trackers), priv->win); hig_workarea_add_wide_control(t, &row, w); w = trgp_check_new(dlg, _("Torrent Details"), - TRG_PREFS_KEY_SHOW_NOTEBOOK, TRG_PREFS_GLOBAL, - NULL); + TRG_PREFS_KEY_SHOW_NOTEBOOK, TRG_PREFS_GLOBAL, + NULL); g_signal_connect(G_OBJECT(w), "toggled", - G_CALLBACK(notebook_toggled_cb), priv->win); + G_CALLBACK(notebook_toggled_cb), priv->win); hig_workarea_add_wide_control(t, &row, w); #ifndef TRG_NO_GRAPH w = trgp_check_new(dlg, _("Show graph"), TRG_PREFS_KEY_SHOW_GRAPH, - TRG_PREFS_GLOBAL, GTK_TOGGLE_BUTTON(w)); + TRG_PREFS_GLOBAL, GTK_TOGGLE_BUTTON(w)); g_signal_connect(G_OBJECT(w), "toggled", G_CALLBACK(toggle_graph), - priv->win); + priv->win); hig_workarea_add_wide_control(t, &row, w); #endif #ifdef HAVE_LIBNOTIFY w = trgp_check_new(dlg, _("Torrent added notifications"), - TRG_PREFS_KEY_ADD_NOTIFY, TRG_PREFS_GLOBAL, NULL); + TRG_PREFS_KEY_ADD_NOTIFY, TRG_PREFS_GLOBAL, NULL); hig_workarea_add_wide_control(t, &row, w); w = trgp_check_new(dlg, _("Torrent complete notifications"), - TRG_PREFS_KEY_COMPLETE_NOTIFY, TRG_PREFS_GLOBAL, - NULL); + TRG_PREFS_KEY_COMPLETE_NOTIFY, TRG_PREFS_GLOBAL, + NULL); hig_workarea_add_wide_control(t, &row, w); #endif tray = trgp_check_new(dlg, _("Show in system tray"), - TRG_PREFS_KEY_SYSTEM_TRAY, TRG_PREFS_GLOBAL, - NULL); + TRG_PREFS_KEY_SYSTEM_TRAY, TRG_PREFS_GLOBAL, + NULL); g_signal_connect(G_OBJECT(tray), "toggled", - G_CALLBACK(toggle_tray_icon), priv->win); + G_CALLBACK(toggle_tray_icon), priv->win); hig_workarea_add_wide_control(t, &row, tray); #ifndef HAVE_LIBAPPINDICATOR w = trgp_check_new(dlg, _("Minimise to system tray"), - TRG_PREFS_KEY_SYSTEM_TRAY_MINIMISE, - TRG_PREFS_GLOBAL, NULL); + TRG_PREFS_KEY_SYSTEM_TRAY_MINIMISE, + TRG_PREFS_GLOBAL, NULL); gtk_widget_set_sensitive(w, - gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON - (tray))); + gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON + (tray))); g_signal_connect(G_OBJECT(tray), "toggled", - G_CALLBACK(toggle_active_arg_is_sensitive), w); + G_CALLBACK(toggle_active_arg_is_sensitive), w); hig_workarea_add_wide_control(t, &row, w); #endif @@ -462,17 +462,17 @@ static GtkWidget *trg_prefs_behaviorPage(TrgPreferencesDialog * dlg) hig_workarea_add_section_title(t, &row, _("Torrents")); w = trgp_check_new(dlg, _("Start paused"), TRG_PREFS_KEY_START_PAUSED, - TRG_PREFS_GLOBAL, NULL); + TRG_PREFS_GLOBAL, NULL); hig_workarea_add_wide_control(t, &row, w); w = trgp_check_new(dlg, _("Options dialog on add"), - TRG_PREFS_KEY_ADD_OPTIONS_DIALOG, TRG_PREFS_GLOBAL, - NULL); + TRG_PREFS_KEY_ADD_OPTIONS_DIALOG, TRG_PREFS_GLOBAL, + NULL); hig_workarea_add_wide_control(t, &row, w); w = trgp_check_new(dlg, _("Delete local .torrent file after adding"), - TRG_PREFS_KEY_DELETE_LOCAL_TORRENT, - TRG_PREFS_GLOBAL, NULL); + TRG_PREFS_KEY_DELETE_LOCAL_TORRENT, + TRG_PREFS_GLOBAL, NULL); hig_workarea_add_wide_control(t, &row, w); return t; @@ -482,7 +482,7 @@ static void profile_changed_cb(GtkWidget * w, gpointer data) { GtkTreeModel *model = gtk_combo_box_get_model(GTK_COMBO_BOX(w)); TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(data); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(data); GtkTreeIter iter; JsonObject *profile; @@ -491,53 +491,53 @@ static void profile_changed_cb(GtkWidget * w, gpointer data) gint n_children = gtk_tree_model_iter_n_children(model, NULL); if (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(w), &iter)) { - gtk_tree_model_get(model, &iter, 0, &profile, -1); - trg_prefs_set_profile(priv->prefs, profile); - trg_pref_widget_refresh_all(TRG_PREFERENCES_DIALOG(data)); - gtk_widget_set_sensitive(priv->profileDelButton, n_children > 1); + gtk_tree_model_get(model, &iter, 0, &profile, -1); + trg_prefs_set_profile(priv->prefs, profile); + trg_pref_widget_refresh_all(TRG_PREFERENCES_DIALOG(data)); + gtk_widget_set_sensitive(priv->profileDelButton, n_children > 1); } else { - gtk_widget_set_sensitive(priv->profileDelButton, FALSE); - gtk_combo_box_set_active(GTK_COMBO_BOX(w), 0); + gtk_widget_set_sensitive(priv->profileDelButton, FALSE); + gtk_combo_box_set_active(GTK_COMBO_BOX(w), 0); } } static void trg_prefs_profile_combo_populate(TrgPreferencesDialog * dialog, - GtkComboBox * combo, - TrgPrefs * prefs) + GtkComboBox * combo, + TrgPrefs * prefs) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dialog); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dialog); gint profile_id = trg_prefs_get_int(prefs, TRG_PREFS_KEY_PROFILE_ID, - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); GtkListStore *store = GTK_LIST_STORE(gtk_combo_box_get_model(combo)); GList *profiles = - json_array_get_elements(trg_prefs_get_profiles(prefs)); + json_array_get_elements(trg_prefs_get_profiles(prefs)); GList *li; int i = 0; for (li = profiles; li; li = g_list_next(li)) { - JsonObject *profile = json_node_get_object((JsonNode *) li->data); - const gchar *name_value; - GtkTreeIter iter; - - if (json_object_has_member(profile, TRG_PREFS_KEY_PROFILE_NAME)) { - name_value = json_object_get_string_member(profile, - TRG_PREFS_KEY_PROFILE_NAME); - } else { - name_value = _(TRG_PROFILE_NAME_DEFAULT); - } - - gtk_list_store_insert_with_values(store, &iter, INT_MAX, 0, - profile, 1, name_value, -1); - if (i == profile_id) - gtk_combo_box_set_active_iter(combo, &iter); - - i++; + JsonObject *profile = json_node_get_object((JsonNode *) li->data); + const gchar *name_value; + GtkTreeIter iter; + + if (json_object_has_member(profile, TRG_PREFS_KEY_PROFILE_NAME)) { + name_value = json_object_get_string_member(profile, + TRG_PREFS_KEY_PROFILE_NAME); + } else { + name_value = _(TRG_PROFILE_NAME_DEFAULT); + } + + gtk_list_store_insert_with_values(store, &iter, INT_MAX, 0, + profile, 1, name_value, -1); + if (i == profile_id) + gtk_combo_box_set_active_iter(combo, &iter); + + i++; } gtk_widget_set_sensitive(priv->profileDelButton, - g_list_length(profiles) > 1); + g_list_length(profiles) > 1); g_list_free(profiles); } @@ -547,7 +547,7 @@ static GtkWidget *trg_prefs_profile_combo_new(TrgClient * tc) GtkWidget *w; GtkCellRenderer *r; GtkListStore *store = - gtk_list_store_new(2, G_TYPE_POINTER, G_TYPE_STRING); + gtk_list_store_new(2, G_TYPE_POINTER, G_TYPE_STRING); w = gtk_combo_box_new_with_model(GTK_TREE_MODEL(store)); r = gtk_cell_renderer_text_new(); @@ -560,7 +560,7 @@ static GtkWidget *trg_prefs_profile_combo_new(TrgClient * tc) static void name_changed_cb(GtkWidget * w, gpointer data) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(data); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(data); GtkTreeIter iter; GtkTreeModel *model; GtkComboBox *combo; @@ -569,8 +569,8 @@ static void name_changed_cb(GtkWidget * w, gpointer data) model = gtk_combo_box_get_model(combo); if (gtk_combo_box_get_active_iter(combo, &iter)) { - gtk_list_store_set(GTK_LIST_STORE(model), &iter, 1, - gtk_entry_get_text(GTK_ENTRY(w)), -1); + gtk_list_store_set(GTK_LIST_STORE(model), &iter, 1, + gtk_entry_get_text(GTK_ENTRY(w)), -1); } } @@ -578,7 +578,7 @@ static void del_profile_cb(GtkWidget * w, gpointer data) { GtkWidget *win = gtk_widget_get_toplevel(w); TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(win); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(win); TrgPrefs *prefs = priv->prefs; GtkComboBox *combo = GTK_COMBO_BOX(data); GtkTreeModel *profileModel = gtk_combo_box_get_model(combo); @@ -586,11 +586,11 @@ static void del_profile_cb(GtkWidget * w, gpointer data) JsonObject *profile; if (gtk_combo_box_get_active_iter(combo, &iter)) { - gtk_tree_model_get(profileModel, &iter, 0, &profile, -1); - trg_prefs_del_profile(prefs, profile); - trg_prefs_set_profile(prefs, NULL); - gtk_list_store_remove(GTK_LIST_STORE(profileModel), &iter); - gtk_combo_box_set_active(combo, 0); + gtk_tree_model_get(profileModel, &iter, 0, &profile, -1); + trg_prefs_del_profile(prefs, profile); + trg_prefs_set_profile(prefs, NULL); + gtk_list_store_remove(GTK_LIST_STORE(profileModel), &iter); + gtk_combo_box_set_active(combo, 0); } } @@ -598,39 +598,39 @@ static void add_profile_cb(GtkWidget * w, gpointer data) { GtkWidget *win = gtk_widget_get_toplevel(w); TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(win); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(win); GtkComboBox *combo = GTK_COMBO_BOX(data); GtkTreeModel *profileModel = gtk_combo_box_get_model(combo); GtkTreeIter iter; JsonObject *profile = trg_prefs_new_profile(priv->prefs); gtk_list_store_insert_with_values(GTK_LIST_STORE(profileModel), &iter, - INT_MAX, 0, profile, 1, - _(TRG_PROFILE_NAME_DEFAULT), -1); + INT_MAX, 0, profile, 1, + _(TRG_PROFILE_NAME_DEFAULT), -1); gtk_combo_box_set_active_iter(combo, &iter); } static void trgp_double_special_dependent(GtkWidget * widget, - gpointer data) + gpointer data) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(gtk_widget_get_toplevel - (widget)); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(gtk_widget_get_toplevel + (widget)); gtk_widget_set_sensitive(GTK_WIDGET(data), - gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON - (widget)) - && gtk_widget_get_sensitive(priv-> - fullUpdateCheck) - && - gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON - (priv-> - fullUpdateCheck))); + gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON + (widget)) + && + gtk_widget_get_sensitive + (priv->fullUpdateCheck) + && + gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON + (priv->fullUpdateCheck))); } static GtkWidget *trg_prefs_openExecPage(TrgPreferencesDialog * dlg) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); GtkWidget *t; TrgPersistentTreeView *ptv; GtkListStore *model; @@ -644,22 +644,22 @@ static GtkWidget *trg_prefs_openExecPage(TrgPreferencesDialog * dlg) model = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING); ptv = trg_persistent_tree_view_new(priv->prefs, model, - TRG_PREFS_KEY_EXEC_COMMANDS); + TRG_PREFS_KEY_EXEC_COMMANDS); trg_persistent_tree_view_set_add_select(ptv, - trg_persistent_tree_view_add_column - (ptv, 0, - TRG_PREFS_SUBKEY_LABEL, - _("Label"))); + trg_persistent_tree_view_add_column + (ptv, 0, + TRG_PREFS_SUBKEY_LABEL, + _("Label"))); trg_persistent_tree_view_add_column(ptv, 1, - TRG_PREFS_KEY_EXEC_COMMANDS_SUBKEY_CMD, - _("Command")); + TRG_PREFS_KEY_EXEC_COMMANDS_SUBKEY_CMD, + _("Command")); wd = trg_persistent_tree_view_get_widget_desc(ptv); trg_pref_widget_refresh(dlg, wd); priv->widgets = g_list_append(priv->widgets, wd); gtk_table_attach(GTK_TABLE(t), GTK_WIDGET(ptv), 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 0); + GTK_EXPAND | GTK_SHRINK | GTK_FILL, + GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 0); return t; } @@ -667,7 +667,7 @@ static GtkWidget *trg_prefs_openExecPage(TrgPreferencesDialog * dlg) static GtkWidget *trg_prefs_dirsPage(TrgPreferencesDialog * dlg) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); GtkWidget *t; TrgPersistentTreeView *ptv; GtkListStore *model; @@ -677,27 +677,27 @@ static GtkWidget *trg_prefs_dirsPage(TrgPreferencesDialog * dlg) t = hig_workarea_create(); hig_workarea_add_section_title(t, &row, - _("Remote Download Directories")); + _("Remote Download Directories")); model = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING); ptv = trg_persistent_tree_view_new(priv->prefs, model, - TRG_PREFS_KEY_DESTINATIONS); + TRG_PREFS_KEY_DESTINATIONS); trg_persistent_tree_view_set_add_select(ptv, - trg_persistent_tree_view_add_column - (ptv, 0, - TRG_PREFS_SUBKEY_LABEL, - _("Label"))); + trg_persistent_tree_view_add_column + (ptv, 0, + TRG_PREFS_SUBKEY_LABEL, + _("Label"))); trg_persistent_tree_view_add_column(ptv, 1, - TRG_PREFS_KEY_DESTINATIONS_SUBKEY_DIR, - _("Directory")); + TRG_PREFS_KEY_DESTINATIONS_SUBKEY_DIR, + _("Directory")); wd = trg_persistent_tree_view_get_widget_desc(ptv); trg_pref_widget_refresh(dlg, wd); priv->widgets = g_list_append(priv->widgets, wd); gtk_table_attach(GTK_TABLE(t), GTK_WIDGET(ptv), 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 0); + GTK_EXPAND | GTK_SHRINK | GTK_FILL, + GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 0); return t; } @@ -705,7 +705,7 @@ static GtkWidget *trg_prefs_dirsPage(TrgPreferencesDialog * dlg) static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) { TrgPreferencesDialogPrivate *priv = - TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); + TRG_PREFERENCES_DIALOG_GET_PRIVATE(dlg); TrgPrefs *prefs = priv->prefs; GtkWidget *w, *t, *frame, *frameHbox, *profileLabel, *activeOnly; @@ -719,7 +719,7 @@ static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) hig_workarea_add_section_title(t, &row, _("Profile")); priv->profileNameEntry = - trgp_entry_new(dlg, TRG_PREFS_KEY_PROFILE_NAME, TRG_PREFS_PROFILE); + trgp_entry_new(dlg, TRG_PREFS_KEY_PROFILE_NAME, TRG_PREFS_PROFILE); w = priv->profileComboBox = trg_prefs_profile_combo_new(priv->client); profileLabel = gtk_label_new(_("Profile: ")); @@ -727,32 +727,32 @@ static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) profileButtonsHbox = gtk_hbox_new(FALSE, 0); w = gtk_button_new_from_stock(GTK_STOCK_ADD); g_signal_connect(w, "clicked", G_CALLBACK(add_profile_cb), - priv->profileComboBox); + priv->profileComboBox); gtk_box_pack_start(GTK_BOX(profileButtonsHbox), w, FALSE, FALSE, 4); w = priv->profileDelButton = - gtk_button_new_from_stock(GTK_STOCK_DELETE); + gtk_button_new_from_stock(GTK_STOCK_DELETE); g_signal_connect(w, "clicked", G_CALLBACK(del_profile_cb), - priv->profileComboBox); + priv->profileComboBox); gtk_widget_set_sensitive(w, FALSE); gtk_box_pack_start(GTK_BOX(profileButtonsHbox), w, FALSE, FALSE, 4); trg_prefs_profile_combo_populate(dlg, - GTK_COMBO_BOX(priv->profileComboBox), - prefs); + GTK_COMBO_BOX(priv->profileComboBox), + prefs); g_signal_connect(G_OBJECT(priv->profileComboBox), "changed", - G_CALLBACK(profile_changed_cb), dlg); + G_CALLBACK(profile_changed_cb), dlg); /* Name */ g_signal_connect(priv->profileNameEntry, "changed", - G_CALLBACK(name_changed_cb), dlg); + G_CALLBACK(name_changed_cb), dlg); hig_workarea_add_row(t, &row, _("Name:"), priv->profileNameEntry, - NULL); + NULL); gtk_table_attach(GTK_TABLE(t), profileButtonsHbox, 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK, 0, 0, 0); + GTK_EXPAND | GTK_SHRINK, 0, 0, 0); row++; @@ -762,7 +762,7 @@ static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) hig_workarea_add_row(t, &row, _("Host:"), w, NULL); w = trgp_spin_new(dlg, TRG_PREFS_KEY_PORT, 1, 65535, 1, - TRG_PREFS_PROFILE, NULL); + TRG_PREFS_PROFILE, NULL); hig_workarea_add_row(t, &row, _("Port:"), w, NULL); w = trgp_entry_new(dlg, TRG_PREFS_KEY_USERNAME, TRG_PREFS_PROFILE); @@ -773,41 +773,41 @@ static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) hig_workarea_add_row(t, &row, _("Password:"), w, NULL); w = trgp_spin_new(dlg, TRG_PREFS_KEY_UPDATE_INTERVAL, 1, INT_MAX, 1, - TRG_PREFS_PROFILE, NULL); + TRG_PREFS_PROFILE, NULL); hig_workarea_add_row(t, &row, _("Update interval:"), w, NULL); w = trgp_spin_new(dlg, TRG_PREFS_KEY_MINUPDATE_INTERVAL, 1, INT_MAX, 1, - TRG_PREFS_PROFILE, NULL); + TRG_PREFS_PROFILE, NULL); hig_workarea_add_row(t, &row, _("Minimised update interval:"), w, - NULL); + NULL); w = trgp_check_new(dlg, _("Automatically connect"), - TRG_PREFS_KEY_AUTO_CONNECT, TRG_PREFS_PROFILE, - NULL); + TRG_PREFS_KEY_AUTO_CONNECT, TRG_PREFS_PROFILE, + NULL); hig_workarea_add_wide_control(t, &row, w); #ifndef CURL_NO_SSL w = trgp_check_new(dlg, _("SSL"), TRG_PREFS_KEY_SSL, TRG_PREFS_PROFILE, - NULL); + NULL); hig_workarea_add_wide_control(t, &row, w); #endif activeOnly = w = trgp_check_new(dlg, _("Update active torrents only"), - TRG_PREFS_KEY_UPDATE_ACTIVE_ONLY, - TRG_PREFS_PROFILE, NULL); + TRG_PREFS_KEY_UPDATE_ACTIVE_ONLY, + TRG_PREFS_PROFILE, NULL); hig_workarea_add_wide_control(t, &row, w); priv->fullUpdateCheck = trgp_check_new(dlg, - _ - ("Full update every (?) updates"), - TRG_PREFS_ACTIVEONLY_FULLSYNC_ENABLED, - TRG_PREFS_PROFILE, - GTK_TOGGLE_BUTTON(activeOnly)); + _ + ("Full update every (?) updates"), + TRG_PREFS_ACTIVEONLY_FULLSYNC_ENABLED, + TRG_PREFS_PROFILE, + GTK_TOGGLE_BUTTON(activeOnly)); w = trgp_spin_new(dlg, TRG_PREFS_ACTIVEONLY_FULLSYNC_EVERY, 2, INT_MAX, - 1, TRG_PREFS_PROFILE, - GTK_TOGGLE_BUTTON(priv->fullUpdateCheck)); + 1, TRG_PREFS_PROFILE, + GTK_TOGGLE_BUTTON(priv->fullUpdateCheck)); g_signal_connect(activeOnly, "toggled", - G_CALLBACK(trgp_double_special_dependent), w); + G_CALLBACK(trgp_double_special_dependent), w); hig_workarea_add_row_w(t, &row, priv->fullUpdateCheck, w, NULL); @@ -817,7 +817,7 @@ static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) frameHbox = gtk_hbox_new(FALSE, 2); gtk_box_pack_start(GTK_BOX(frameHbox), profileLabel, FALSE, FALSE, 2); gtk_box_pack_start(GTK_BOX(frameHbox), priv->profileComboBox, FALSE, - FALSE, 4); + FALSE, 4); gtk_frame_set_label_widget(GTK_FRAME(frame), frameHbox); gtk_container_add(GTK_CONTAINER(frame), t); @@ -825,30 +825,30 @@ static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) } static GObject *trg_preferences_dialog_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam * - construct_params) + guint + n_construct_properties, + GObjectConstructParam * + construct_params) { GObject *object; TrgPreferencesDialogPrivate *priv; GtkWidget *notebook, *contentvbox; object = G_OBJECT_CLASS - (trg_preferences_dialog_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_preferences_dialog_parent_class)->constructor(type, + n_construct_properties, + construct_params); priv = TRG_PREFERENCES_DIALOG_GET_PRIVATE(object); contentvbox = gtk_dialog_get_content_area(GTK_DIALOG(object)); gtk_window_set_transient_for(GTK_WINDOW(object), - GTK_WINDOW(priv->win)); + GTK_WINDOW(priv->win)); gtk_window_set_destroy_with_parent(GTK_WINDOW(object), TRUE); gtk_dialog_add_button(GTK_DIALOG(object), GTK_STOCK_CLOSE, - GTK_RESPONSE_CLOSE); + GTK_RESPONSE_CLOSE); gtk_dialog_add_button(GTK_DIALOG(object), GTK_STOCK_OK, - GTK_RESPONSE_OK); + GTK_RESPONSE_OK); gtk_dialog_set_default_response(GTK_DIALOG(object), GTK_RESPONSE_OK); @@ -856,34 +856,34 @@ static GObject *trg_preferences_dialog_constructor(GType type, gtk_container_set_border_width(GTK_CONTAINER(object), GUI_PAD); g_signal_connect(G_OBJECT(object), "response", - G_CALLBACK(trg_preferences_response_cb), NULL); + G_CALLBACK(trg_preferences_response_cb), NULL); notebook = gtk_notebook_new(); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_prefs_serverPage(TRG_PREFERENCES_DIALOG - (object)), - gtk_label_new(_("Connection"))); + trg_prefs_serverPage(TRG_PREFERENCES_DIALOG + (object)), + gtk_label_new(_("Connection"))); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_prefs_openExecPage(TRG_PREFERENCES_DIALOG - (object)), - gtk_label_new(_("Actions"))); + trg_prefs_openExecPage(TRG_PREFERENCES_DIALOG + (object)), + gtk_label_new(_("Actions"))); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_prefs_dirsPage(TRG_PREFERENCES_DIALOG - (object)), - gtk_label_new(_("Directories"))); + trg_prefs_dirsPage(TRG_PREFERENCES_DIALOG + (object)), + gtk_label_new(_("Directories"))); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_prefs_desktopPage(TRG_PREFERENCES_DIALOG - (object)), - gtk_label_new(_("Desktop"))); + trg_prefs_desktopPage(TRG_PREFERENCES_DIALOG + (object)), + gtk_label_new(_("Desktop"))); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_prefs_behaviorPage(TRG_PREFERENCES_DIALOG - (object)), - gtk_label_new(_("Behavior"))); + trg_prefs_behaviorPage(TRG_PREFERENCES_DIALOG + (object)), + gtk_label_new(_("Behavior"))); gtk_container_set_border_width(GTK_CONTAINER(notebook), GUI_PAD); @@ -897,7 +897,7 @@ static void trg_preferences_dialog_init(TrgPreferencesDialog * pref_dlg) } static void trg_preferences_dialog_class_init(TrgPreferencesDialogClass * - class) + class) { GObjectClass *g_object_class = (GObjectClass *) class; @@ -906,46 +906,46 @@ static void trg_preferences_dialog_class_init(TrgPreferencesDialogClass * g_object_class->get_property = trg_preferences_dialog_get_property; g_object_class_install_property(g_object_class, - PROP_TRG_CLIENT, - g_param_spec_pointer("trg-client", - "TClient", - "Client", - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_TRG_CLIENT, + g_param_spec_pointer("trg-client", + "TClient", + "Client", + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(g_object_class, - PROP_MAIN_WINDOW, - g_param_spec_object("main-window", - "Main Window", - "Main Window", - TRG_TYPE_MAIN_WINDOW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_MAIN_WINDOW, + g_param_spec_object("main-window", + "Main Window", + "Main Window", + TRG_TYPE_MAIN_WINDOW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(g_object_class, - sizeof(TrgPreferencesDialogPrivate)); + sizeof(TrgPreferencesDialogPrivate)); } GtkWidget *trg_preferences_dialog_get_instance(TrgMainWindow * win, - TrgClient * client) + TrgClient * client) { if (!instance) - instance = - g_object_new(TRG_TYPE_PREFERENCES_DIALOG, "main-window", win, - "trg-client", client, NULL); + instance = + g_object_new(TRG_TYPE_PREFERENCES_DIALOG, "main-window", win, + "trg-client", client, NULL); return GTK_WIDGET(instance); } diff --git a/src/trg-preferences-dialog.h b/src/trg-preferences-dialog.h index 55760ef..8860ff6 100644 --- a/src/trg-preferences-dialog.h +++ b/src/trg-preferences-dialog.h @@ -57,9 +57,9 @@ struct _TrgPreferencesDialogClass { GType trg_preferences_dialog_get_type(void); GtkWidget *trg_preferences_dialog_get_instance(TrgMainWindow * win, - TrgClient * client); + TrgClient * client); trg_pref_widget_desc *trg_pref_widget_desc_new(GtkWidget * w, gchar * key, - int flags); + int flags); G_END_DECLS -#endif /* TRG_PREFERENCES_WINDOW_H_ */ +#endif /* TRG_PREFERENCES_WINDOW_H_ */ diff --git a/src/trg-prefs.c b/src/trg-prefs.c index 08e425c..68376f8 100644 --- a/src/trg-prefs.c +++ b/src/trg-prefs.c @@ -69,23 +69,23 @@ void trg_prefs_changed_emit_signal(TrgPrefs * p, const gchar * key) } static void trg_prefs_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { switch (property_id) { default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_prefs_set_property(GObject * object, guint property_id, - const GValue * value, - GParamSpec * pspec) + const GValue * value, + GParamSpec * pspec) { switch (property_id) { default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } @@ -100,12 +100,12 @@ static void trg_prefs_create_defaults(TrgPrefs * p) priv->defaultsObj = json_object_new(); trg_prefs_add_default_string(p, TRG_PREFS_KEY_PROFILE_NAME, - _(TRG_PROFILE_NAME_DEFAULT)); + _(TRG_PROFILE_NAME_DEFAULT)); trg_prefs_add_default_int(p, TRG_PREFS_KEY_PORT, 9091); trg_prefs_add_default_int(p, TRG_PREFS_KEY_UPDATE_INTERVAL, - TRG_INTERVAL_DEFAULT); + TRG_INTERVAL_DEFAULT); trg_prefs_add_default_int(p, TRG_PREFS_KEY_MINUPDATE_INTERVAL, - TRG_INTERVAL_DEFAULT); + TRG_INTERVAL_DEFAULT); trg_prefs_add_default_int(p, TRG_PREFS_ACTIVEONLY_FULLSYNC_EVERY, 2); trg_prefs_add_default_int(p, TRG_PREFS_KEY_STATES_PANED_POS, 120); @@ -118,23 +118,23 @@ static void trg_prefs_create_defaults(TrgPrefs * p) } static GObject *trg_prefs_constructor(GType type, - guint n_construct_properties, - GObjectConstructParam * - construct_params) + guint n_construct_properties, + GObjectConstructParam * + construct_params) { GObject *object; TrgPrefsPrivate *priv; object = G_OBJECT_CLASS - (trg_prefs_parent_class)->constructor(type, n_construct_properties, - construct_params); + (trg_prefs_parent_class)->constructor(type, n_construct_properties, + construct_params); priv = GET_PRIVATE(object); trg_prefs_create_defaults(TRG_PREFS(object)); priv->file = g_build_filename(g_get_user_config_dir(), - g_get_application_name(), - TRG_PREFS_FILENAME, NULL); + g_get_application_name(), + TRG_PREFS_FILENAME, NULL); return object; } @@ -151,21 +151,21 @@ static void trg_prefs_class_init(TrgPrefsClass * klass) object_class->constructor = trg_prefs_constructor; signals[PREF_CHANGE] = - g_signal_new("pref-changed", - G_TYPE_FROM_CLASS(object_class), - G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, - G_STRUCT_OFFSET(TrgPrefsClass, - pref_changed), NULL, - NULL, g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); + g_signal_new("pref-changed", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, + G_STRUCT_OFFSET(TrgPrefsClass, + pref_changed), NULL, + NULL, g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, G_TYPE_POINTER); signals[PREF_PROFILE_CHANGE] = - g_signal_new("pref-profile-changed", - G_TYPE_FROM_CLASS(object_class), - G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, - G_STRUCT_OFFSET(TrgPrefsClass, - pref_changed), NULL, - NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); + g_signal_new("pref-profile-changed", + G_TYPE_FROM_CLASS(object_class), + G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, + G_STRUCT_OFFSET(TrgPrefsClass, + pref_changed), NULL, + NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0); } static void trg_prefs_init(TrgPrefs * self) @@ -190,14 +190,14 @@ void trg_prefs_add_default_int(TrgPrefs * p, const gchar * key, int value) } void trg_prefs_add_default_string(TrgPrefs * p, const gchar * key, - gchar * value) + gchar * value) { TrgPrefsPrivate *priv = GET_PRIVATE(p); json_object_set_string_member(priv->defaultsObj, key, value); } void trg_prefs_add_default_double(TrgPrefs * p, const gchar * key, - double value) + double value) { TrgPrefsPrivate *priv = GET_PRIVATE(p); json_object_set_double_member(priv->defaultsObj, key, value); @@ -214,53 +214,53 @@ gint trg_prefs_get_profile_id(TrgPrefs * p) { TrgPrefsPrivate *priv = GET_PRIVATE(p); return (gint) json_object_get_int_member(priv->userObj, - TRG_PREFS_KEY_PROFILE_ID); + TRG_PREFS_KEY_PROFILE_ID); } static JsonNode *trg_prefs_get_value_inner(JsonObject * obj, - const gchar * key, int type, - int flags) + const gchar * key, int type, + int flags) { if (json_object_has_member(obj, key)) { - if ((flags & TRG_PREFS_REPLACENODE)) - json_object_remove_member(obj, key); - else - return json_object_get_member(obj, key); + if ((flags & TRG_PREFS_REPLACENODE)) + json_object_remove_member(obj, key); + else + return json_object_get_member(obj, key); } if ((flags & TRG_PREFS_NEWNODE) || (flags & TRG_PREFS_REPLACENODE)) { - JsonNode *newNode = json_node_new(type); - json_object_set_member(obj, key, newNode); - return newNode; + JsonNode *newNode = json_node_new(type); + json_object_set_member(obj, key, newNode); + return newNode; } return NULL; } JsonNode *trg_prefs_get_value(TrgPrefs * p, const gchar * key, int type, - int flags) + int flags) { TrgPrefsPrivate *priv = GET_PRIVATE(p); JsonNode *res; if (priv->profile && (flags & TRG_PREFS_PROFILE)) { - if ((res = - trg_prefs_get_value_inner(priv->profile, key, type, flags))) - return res; + if ((res = + trg_prefs_get_value_inner(priv->profile, key, type, flags))) + return res; } else if (priv->connectionObj && (flags & TRG_PREFS_CONNECTION)) { - if ((res = - trg_prefs_get_value_inner(priv->connectionObj, key, type, - flags))) - return res; + if ((res = + trg_prefs_get_value_inner(priv->connectionObj, key, type, + flags))) + return res; } else { - if ((res = - trg_prefs_get_value_inner(priv->userObj, key, type, flags))) - return res; + if ((res = + trg_prefs_get_value_inner(priv->userObj, key, type, flags))) + return res; } if (priv->defaultsObj - && json_object_has_member(priv->defaultsObj, key)) - return json_object_get_member(priv->defaultsObj, key); + && json_object_has_member(priv->defaultsObj, key)) + return json_object_get_member(priv->defaultsObj, key); return NULL; } @@ -270,10 +270,10 @@ void trg_prefs_set_connection(TrgPrefs * p, JsonObject * profile) TrgPrefsPrivate *priv = GET_PRIVATE(p); if (priv->connectionObj) - json_object_unref(priv->connectionObj); + json_object_unref(priv->connectionObj); if (profile) - json_object_ref(profile); + json_object_ref(profile); priv->connectionObj = profile; } @@ -282,63 +282,61 @@ gchar *trg_prefs_get_string(TrgPrefs * p, const gchar * key, int flags) { JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_VALUE, flags); if (node) - return g_strdup(json_node_get_string(node)); + return g_strdup(json_node_get_string(node)); else - return NULL; + return NULL; } JsonArray *trg_prefs_get_array(TrgPrefs * p, const gchar * key, int flags) { JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_ARRAY, flags); if (node) - return json_node_get_array(node); + return json_node_get_array(node); else - return NULL; + return NULL; } gint64 trg_prefs_get_int(TrgPrefs * p, const gchar * key, int flags) { JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_VALUE, flags); if (node) - return json_node_get_int(node); + return json_node_get_int(node); else - return 0; + return 0; } gdouble trg_prefs_get_double(TrgPrefs * p, const gchar * key, int flags) { JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_VALUE, flags); if (node) - return json_node_get_double(node); + return json_node_get_double(node); else - return 0.0; + return 0.0; } gboolean trg_prefs_get_bool(TrgPrefs * p, const gchar * key, int flags) { JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_VALUE, flags); if (node) - return json_node_get_boolean(node); + return json_node_get_boolean(node); else - return FALSE; + return FALSE; } void trg_prefs_set_int(TrgPrefs * p, const gchar * key, int value, - int flags) + int flags) { - JsonNode *node = - trg_prefs_get_value(p, key, JSON_NODE_VALUE, - flags | TRG_PREFS_NEWNODE); + JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_VALUE, + flags | TRG_PREFS_NEWNODE); json_node_set_int(node, (gint64) value); trg_prefs_changed_emit_signal(p, key); } void trg_prefs_set_string(TrgPrefs * p, const gchar * key, - const gchar * value, int flags) + const gchar * value, int flags) { - JsonNode *node = - trg_prefs_get_value(p, key, JSON_NODE_VALUE, - flags | TRG_PREFS_NEWNODE); + JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_VALUE, + flags | TRG_PREFS_NEWNODE); json_node_set_string(node, value); trg_prefs_changed_emit_signal(p, key); } @@ -353,12 +351,12 @@ void trg_prefs_set_profile(TrgPrefs * p, JsonObject * profile) gint i = 0; for (li = profiles; li; li = g_list_next(li)) { - if (json_node_get_object((JsonNode *) li->data) == profile) { - trg_prefs_set_int(p, TRG_PREFS_KEY_PROFILE_ID, i, - TRG_PREFS_GLOBAL); - break; - } - i++; + if (json_node_get_object((JsonNode *) li->data) == profile) { + trg_prefs_set_int(p, TRG_PREFS_KEY_PROFILE_ID, i, + TRG_PREFS_GLOBAL); + break; + } + i++; } g_list_free(profiles); @@ -385,12 +383,12 @@ void trg_prefs_del_profile(TrgPrefs * p, JsonObject * profile) int i = 0; for (li = profilesList; li; li = g_list_next(li)) { - node = (JsonNode *) li->data; - if (profile == (gpointer) json_node_get_object(node)) { - json_array_remove_element(profiles, i); - break; - } - i++; + node = (JsonNode *) li->data; + if (profile == (gpointer) json_node_get_object(node)) { + json_array_remove_element(profiles, i); + break; + } + i++; } g_list_free(profilesList); @@ -414,25 +412,23 @@ JsonArray *trg_prefs_get_profiles(TrgPrefs * p) { TrgPrefsPrivate *priv = GET_PRIVATE(p); return json_object_get_array_member(priv->userObj, - TRG_PREFS_KEY_PROFILES); + TRG_PREFS_KEY_PROFILES); } void trg_prefs_set_double(TrgPrefs * p, const gchar * key, gdouble value, - int flags) + int flags) { - JsonNode *node = - trg_prefs_get_value(p, key, JSON_NODE_VALUE, - flags | TRG_PREFS_NEWNODE); + JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_VALUE, + flags | TRG_PREFS_NEWNODE); json_node_set_double(node, value); trg_prefs_changed_emit_signal(p, key); } void trg_prefs_set_bool(TrgPrefs * p, const gchar * key, gboolean value, - int flags) + int flags) { - JsonNode *node = - trg_prefs_get_value(p, key, JSON_NODE_VALUE, - flags | TRG_PREFS_NEWNODE); + JsonNode *node = trg_prefs_get_value(p, key, JSON_NODE_VALUE, + flags | TRG_PREFS_NEWNODE); json_node_set_boolean(node, value); trg_prefs_changed_emit_signal(p, key); } @@ -447,18 +443,18 @@ gboolean trg_prefs_save(TrgPrefs * p) dirName = g_path_get_dirname(priv->file); if (!g_file_test(dirName, G_FILE_TEST_IS_DIR)) { - success = g_mkdir_with_parents(dirName, TRG_PREFS_DEFAULT_DIR_MODE) - == 0; + success = g_mkdir_with_parents(dirName, TRG_PREFS_DEFAULT_DIR_MODE) + == 0; } else if (g_file_test(priv->file, G_FILE_TEST_IS_REGULAR)) { - isNew = FALSE; + isNew = FALSE; } g_free(dirName); if (!success) { - g_error - ("Problem creating parent directory (permissions?) for: %s\n", - priv->file); - return success; + g_error + ("Problem creating parent directory (permissions?) for: %s\n", + priv->file); + return success; } g_object_set(G_OBJECT(gen), "pretty", TRUE, NULL); @@ -467,10 +463,10 @@ gboolean trg_prefs_save(TrgPrefs * p) success = json_generator_to_file(gen, priv->file, NULL); if (!success) - g_error("Problem writing configuration file (permissions?) to: %s", - priv->file); + g_error("Problem writing configuration file (permissions?) to: %s", + priv->file); else if (isNew) - g_chmod(priv->file, 384); + g_chmod(priv->file, 384); g_object_unref(gen); @@ -495,7 +491,7 @@ void trg_prefs_empty_init(TrgPrefs * p) JsonArray *profiles = json_array_new(); json_array_add_object_element(profiles, priv->profile); json_object_set_array_member(priv->userObj, TRG_PREFS_KEY_PROFILES, - profiles); + profiles); json_object_set_int_member(priv->userObj, TRG_PREFS_KEY_PROFILE_ID, 0); } @@ -511,49 +507,49 @@ void trg_prefs_load(TrgPrefs * p) gboolean parsed = json_parser_load_from_file(parser, priv->file, NULL); if (!parsed) { - trg_prefs_empty_init(p); - g_object_unref(parser); - return; + trg_prefs_empty_init(p); + g_object_unref(parser); + return; } root = json_parser_get_root(parser); if (root) { - priv->user = json_node_copy(root); - priv->userObj = json_node_get_object(priv->user); + priv->user = json_node_copy(root); + priv->userObj = json_node_get_object(priv->user); } g_object_unref(parser); if (!root) { - trg_prefs_empty_init(p); - return; + trg_prefs_empty_init(p); + return; } if (!json_object_has_member(priv->userObj, TRG_PREFS_KEY_PROFILES)) { - profiles = json_array_new(); - json_object_set_array_member(priv->userObj, TRG_PREFS_KEY_PROFILES, - profiles); + profiles = json_array_new(); + json_object_set_array_member(priv->userObj, TRG_PREFS_KEY_PROFILES, + profiles); } else { - profiles = json_object_get_array_member(priv->userObj, - TRG_PREFS_KEY_PROFILES); + profiles = json_object_get_array_member(priv->userObj, + TRG_PREFS_KEY_PROFILES); } n_profiles = json_array_get_length(profiles); if (n_profiles < 1) { - priv->profile = trg_prefs_new_profile_object(); - json_array_add_object_element(profiles, priv->profile); - trg_prefs_set_int(p, TRG_PREFS_KEY_PROFILE_ID, 0, - TRG_PREFS_GLOBAL); + priv->profile = trg_prefs_new_profile_object(); + json_array_add_object_element(profiles, priv->profile); + trg_prefs_set_int(p, TRG_PREFS_KEY_PROFILE_ID, 0, + TRG_PREFS_GLOBAL); } else { - gint profile_id = trg_prefs_get_int(p, TRG_PREFS_KEY_PROFILE_ID, - TRG_PREFS_GLOBAL); - if (profile_id >= n_profiles) - trg_prefs_set_int(p, TRG_PREFS_KEY_PROFILE_ID, profile_id = 0, - TRG_PREFS_GLOBAL); - - priv->profile = - json_array_get_object_element(profiles, profile_id); + gint profile_id = trg_prefs_get_int(p, TRG_PREFS_KEY_PROFILE_ID, + TRG_PREFS_GLOBAL); + if (profile_id >= n_profiles) + trg_prefs_set_int(p, TRG_PREFS_KEY_PROFILE_ID, profile_id = 0, + TRG_PREFS_GLOBAL); + + priv->profile = + json_array_get_object_element(profiles, profile_id); } } @@ -562,12 +558,12 @@ guint trg_prefs_get_add_flags(TrgPrefs * p) guint flags = 0x00; if (trg_prefs_get_bool - (p, TRG_PREFS_KEY_START_PAUSED, TRG_PREFS_GLOBAL)) - flags |= TORRENT_ADD_FLAG_PAUSED; + (p, TRG_PREFS_KEY_START_PAUSED, TRG_PREFS_GLOBAL)) + flags |= TORRENT_ADD_FLAG_PAUSED; if (trg_prefs_get_bool - (p, TRG_PREFS_KEY_DELETE_LOCAL_TORRENT, TRG_PREFS_GLOBAL)) - flags |= TORRENT_ADD_FLAG_DELETE; + (p, TRG_PREFS_KEY_DELETE_LOCAL_TORRENT, TRG_PREFS_GLOBAL)) + flags |= TORRENT_ADD_FLAG_DELETE; return flags; } diff --git a/src/trg-prefs.h b/src/trg-prefs.h index bb86264..1377e95 100644 --- a/src/trg-prefs.h +++ b/src/trg-prefs.h @@ -76,12 +76,12 @@ #define TRG_PREFS_KEY_DESTINATIONS_SUBKEY_DIR "dir" -#define TRG_PREFS_NOFLAGS (1 << 0) /* 0x00 */ -#define TRG_PREFS_GLOBAL (1 << 1) /* 0x01 */ -#define TRG_PREFS_PROFILE (1 << 2) /* 0x02 */ -#define TRG_PREFS_CONNECTION (1 << 3) /* 0x04 */ -#define TRG_PREFS_NEWNODE (1 << 4) /* 0x08 */ -#define TRG_PREFS_REPLACENODE (1 << 5) /* 0x16 */ +#define TRG_PREFS_NOFLAGS (1 << 0) /* 0x00 */ +#define TRG_PREFS_GLOBAL (1 << 1) /* 0x01 */ +#define TRG_PREFS_PROFILE (1 << 2) /* 0x02 */ +#define TRG_PREFS_CONNECTION (1 << 3) /* 0x04 */ +#define TRG_PREFS_NEWNODE (1 << 4) /* 0x08 */ +#define TRG_PREFS_REPLACENODE (1 << 5) /* 0x16 */ G_BEGIN_DECLS #define TRG_TYPE_PREFS trg_prefs_get_type() @@ -110,13 +110,13 @@ TrgPrefs *trg_prefs_new(void); void trg_prefs_add_default_int(TrgPrefs * p, const gchar * key, int value); void trg_prefs_add_default_string(TrgPrefs * p, const gchar * key, - gchar * value); + gchar * value); void trg_prefs_add_default_double(TrgPrefs * p, const gchar * key, - double value); + double value); void trg_prefs_add_default_bool_true(TrgPrefs * p, const gchar * key); JsonNode *trg_prefs_get_value(TrgPrefs * p, const gchar * key, int type, - int flags); + int flags); gchar *trg_prefs_get_string(TrgPrefs * p, const gchar * key, int flags); gint64 trg_prefs_get_int(TrgPrefs * p, const gchar * key, int flags); gdouble trg_prefs_get_double(TrgPrefs * p, const gchar * key, int flags); @@ -134,13 +134,13 @@ JsonObject *trg_prefs_get_root(TrgPrefs * p); JsonArray *trg_prefs_get_array(TrgPrefs * p, const gchar * key, int flags); void trg_prefs_set_int(TrgPrefs * p, const gchar * key, int value, - int flags); + int flags); void trg_prefs_set_string(TrgPrefs * p, const gchar * key, - const gchar * value, int flags); + const gchar * value, int flags); void trg_prefs_set_double(TrgPrefs * p, const gchar * key, double value, - int flags); + int flags); void trg_prefs_set_bool(TrgPrefs * p, const gchar * key, gboolean value, - int flags); + int flags); gboolean trg_prefs_save(TrgPrefs * p); void trg_prefs_load(TrgPrefs * p); @@ -149,4 +149,4 @@ void trg_prefs_profile_change_emit_signal(TrgPrefs * p); guint trg_prefs_get_add_flags(TrgPrefs * p); G_END_DECLS -#endif /* _TRG_PREFS_H_ */ +#endif /* _TRG_PREFS_H_ */ diff --git a/src/trg-remote-prefs-dialog.c b/src/trg-remote-prefs-dialog.c index 6169706..cfaa2d0 100644 --- a/src/trg-remote-prefs-dialog.c +++ b/src/trg-remote-prefs-dialog.c @@ -41,7 +41,7 @@ */ G_DEFINE_TYPE(TrgRemotePrefsDialog, trg_remote_prefs_dialog, - GTK_TYPE_DIALOG) + GTK_TYPE_DIALOG) #define TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_REMOTE_PREFS_DIALOG, TrgRemotePrefsDialogPrivate)) enum { @@ -65,7 +65,7 @@ static GObject *instance = NULL; static void update_session(GtkDialog * dlg) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(dlg); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(dlg); JsonNode *request = session_set(); JsonObject *args = node_get_arguments(request); @@ -74,16 +74,16 @@ static void update_session(GtkDialog * dlg) /* Connection */ switch (gtk_combo_box_get_active - (GTK_COMBO_BOX(priv->encryption_combo))) { + (GTK_COMBO_BOX(priv->encryption_combo))) { case 0: - encryption = "required"; - break; + encryption = "required"; + break; case 2: - encryption = "tolerated"; - break; + encryption = "tolerated"; + break; default: - encryption = "preferred"; - break; + encryption = "preferred"; + break; } json_object_set_string_member(args, SGET_ENCRYPTION, encryption); @@ -94,13 +94,13 @@ static void update_session(GtkDialog * dlg) } static void trg_remote_prefs_response_cb(GtkDialog * dlg, gint res_id, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(dlg); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(dlg); if (res_id == GTK_RESPONSE_OK) - update_session(dlg); + update_session(dlg); trg_json_widget_desc_list_free(priv->widgets); @@ -109,50 +109,50 @@ static void trg_remote_prefs_response_cb(GtkDialog * dlg, gint res_id, } static void trg_remote_prefs_dialog_get_property(GObject * object, - guint property_id, - GValue * value, - GParamSpec * pspec) + guint property_id, + GValue * value, + GParamSpec * pspec) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(object); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(object); switch (property_id) { case PROP_PARENT: - g_value_set_object(value, priv->parent); - break; + g_value_set_object(value, priv->parent); + break; case PROP_CLIENT: - g_value_set_pointer(value, priv->client); - break; + g_value_set_pointer(value, priv->client); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_remote_prefs_dialog_set_property(GObject * object, - guint property_id, - const GValue * value, - GParamSpec * pspec) + guint property_id, + const GValue * value, + GParamSpec * pspec) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(object); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(object); switch (property_id) { case PROP_PARENT: - priv->parent = g_value_get_object(value); - break; + priv->parent = g_value_get_object(value); + break; case PROP_CLIENT: - priv->client = g_value_get_pointer(value); - break; + priv->client = g_value_get_pointer(value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static GtkWidget *trg_rprefs_limitsPage(TrgRemotePrefsDialog * win, - JsonObject * json) + JsonObject * json) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(win); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(win); GtkWidget *w, *tb, *t; gint row = 0; @@ -161,70 +161,70 @@ static GtkWidget *trg_rprefs_limitsPage(TrgRemotePrefsDialog * win, hig_workarea_add_section_title(t, &row, _("Bandwidth")); tb = trg_json_widget_check_new(&priv->widgets, json, - SGET_SPEED_LIMIT_DOWN_ENABLED, - _("Limit download speed (KB/s)"), NULL); + SGET_SPEED_LIMIT_DOWN_ENABLED, + _("Limit download speed (KB/s)"), NULL); w = trg_json_widget_spin_new_int(&priv->widgets, json, - SGET_SPEED_LIMIT_DOWN, tb, 0, INT_MAX, - 1); + SGET_SPEED_LIMIT_DOWN, tb, 0, INT_MAX, + 1); hig_workarea_add_row_w(t, &row, tb, w, NULL); tb = trg_json_widget_check_new(&priv->widgets, json, - SGET_SPEED_LIMIT_UP_ENABLED, - _("Limit upload speed (KB/s)"), NULL); + SGET_SPEED_LIMIT_UP_ENABLED, + _("Limit upload speed (KB/s)"), NULL); w = trg_json_widget_spin_new_int(&priv->widgets, json, - SGET_SPEED_LIMIT_UP, tb, 0, INT_MAX, - 1); + SGET_SPEED_LIMIT_UP, tb, 0, INT_MAX, + 1); hig_workarea_add_row_w(t, &row, tb, w, NULL); hig_workarea_add_section_title(t, &row, _("Seeding")); tb = trg_json_widget_check_new(&priv->widgets, json, - SGET_SEED_RATIO_LIMITED, - _("Seed ratio limit"), NULL); + SGET_SEED_RATIO_LIMITED, + _("Seed ratio limit"), NULL); w = trg_json_widget_spin_new_double(&priv->widgets, json, - SGET_SEED_RATIO_LIMIT, tb, 0, - INT_MAX, 0.1); + SGET_SEED_RATIO_LIMIT, tb, 0, + INT_MAX, 0.1); hig_workarea_add_row_w(t, &row, tb, w, NULL); if (json_object_has_member(json, SGET_DOWNLOAD_QUEUE_ENABLED)) { - hig_workarea_add_section_title(t, &row, _("Queues")); - - tb = trg_json_widget_check_new(&priv->widgets, json, - SGET_DOWNLOAD_QUEUE_ENABLED, - _("Download queue size"), NULL); - w = trg_json_widget_spin_new_int(&priv->widgets, json, - SGET_DOWNLOAD_QUEUE_SIZE, tb, 0, - INT_MAX, 1); - hig_workarea_add_row_w(t, &row, tb, w, NULL); - - tb = trg_json_widget_check_new(&priv->widgets, json, - SGET_SEED_QUEUE_ENABLED, - _("Seed queue size"), NULL); - w = trg_json_widget_spin_new_int(&priv->widgets, json, - SGET_SEED_QUEUE_SIZE, tb, 0, - INT_MAX, 1); - hig_workarea_add_row_w(t, &row, tb, w, NULL); - - tb = trg_json_widget_check_new(&priv->widgets, json, - SGET_QUEUE_STALLED_ENABLED, - _("Ignore stalled (minutes)"), - NULL); - w = trg_json_widget_spin_new_int(&priv->widgets, json, - SGET_QUEUE_STALLED_MINUTES, tb, 0, - INT_MAX, 1); - hig_workarea_add_row_w(t, &row, tb, w, NULL); + hig_workarea_add_section_title(t, &row, _("Queues")); + + tb = trg_json_widget_check_new(&priv->widgets, json, + SGET_DOWNLOAD_QUEUE_ENABLED, + _("Download queue size"), NULL); + w = trg_json_widget_spin_new_int(&priv->widgets, json, + SGET_DOWNLOAD_QUEUE_SIZE, tb, 0, + INT_MAX, 1); + hig_workarea_add_row_w(t, &row, tb, w, NULL); + + tb = trg_json_widget_check_new(&priv->widgets, json, + SGET_SEED_QUEUE_ENABLED, + _("Seed queue size"), NULL); + w = trg_json_widget_spin_new_int(&priv->widgets, json, + SGET_SEED_QUEUE_SIZE, tb, 0, + INT_MAX, 1); + hig_workarea_add_row_w(t, &row, tb, w, NULL); + + tb = trg_json_widget_check_new(&priv->widgets, json, + SGET_QUEUE_STALLED_ENABLED, + _("Ignore stalled (minutes)"), + NULL); + w = trg_json_widget_spin_new_int(&priv->widgets, json, + SGET_QUEUE_STALLED_MINUTES, tb, 0, + INT_MAX, 1); + hig_workarea_add_row_w(t, &row, tb, w, NULL); } hig_workarea_add_section_title(t, &row, _("Peers")); w = trg_json_widget_spin_new_int(&priv->widgets, json, - SGET_PEER_LIMIT_GLOBAL, NULL, 0, - INT_MAX, 5); + SGET_PEER_LIMIT_GLOBAL, NULL, 0, + INT_MAX, 5); hig_workarea_add_row(t, &row, _("Global peer limit"), w, w); w = trg_json_widget_spin_new_int(&priv->widgets, json, - SGET_PEER_LIMIT_PER_TORRENT, NULL, 0, - INT_MAX, 5); + SGET_PEER_LIMIT_PER_TORRENT, NULL, 0, + INT_MAX, 5); hig_workarea_add_row(t, &row, _("Per torrent peer limit"), w, w); return t; @@ -234,29 +234,29 @@ static gboolean on_port_tested(gpointer data) { trg_response *response = (trg_response *) data; if (TRG_IS_REMOTE_PREFS_DIALOG(response->cb_data)) { - TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(response->cb_data); - - gtk_button_set_label(GTK_BUTTON(priv->port_test_button), - _("Retest")); - gtk_widget_set_sensitive(priv->port_test_button, TRUE); - - if (response->status == CURLE_OK) { - gboolean isOpen = - json_object_get_boolean_member(get_arguments - (response->obj), - "port-is-open"); - if (isOpen) - gtk_label_set_markup(GTK_LABEL(priv->port_test_label), - _ - ("Port is <span font_weight=\"bold\" fgcolor=\"darkgreen\">open</span>")); - else - gtk_label_set_markup(GTK_LABEL(priv->port_test_label), - _ - ("Port is <span font_weight=\"bold\" fgcolor=\"red\">closed</span>")); - } else { - trg_error_dialog(GTK_WINDOW(data), response); - } + TrgRemotePrefsDialogPrivate *priv = + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(response->cb_data); + + gtk_button_set_label(GTK_BUTTON(priv->port_test_button), + _("Retest")); + gtk_widget_set_sensitive(priv->port_test_button, TRUE); + + if (response->status == CURLE_OK) { + gboolean isOpen = + json_object_get_boolean_member(get_arguments + (response->obj), + "port-is-open"); + if (isOpen) + gtk_label_set_markup(GTK_LABEL(priv->port_test_label), + _ + ("Port is <span font_weight=\"bold\" fgcolor=\"darkgreen\">open</span>")); + else + gtk_label_set_markup(GTK_LABEL(priv->port_test_label), + _ + ("Port is <span font_weight=\"bold\" fgcolor=\"red\">closed</span>")); + } else { + trg_error_dialog(GTK_WINDOW(data), response); + } } trg_response_free(response); @@ -266,7 +266,7 @@ static gboolean on_port_tested(gpointer data) static void port_test_cb(GtkButton * b, gpointer data) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(data); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(data); JsonNode *req = port_test(); gtk_label_set_text(GTK_LABEL(priv->port_test_label), _("Port test")); @@ -280,25 +280,25 @@ static gboolean on_blocklist_updated(gpointer data) { trg_response *response = (trg_response *) data; if (TRG_IS_REMOTE_PREFS_DIALOG(response->cb_data)) { - TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(response->cb_data); - - gtk_widget_set_sensitive(priv->blocklist_update_button, TRUE); - gtk_button_set_label(GTK_BUTTON(priv->blocklist_update_button), - _("Update")); - - if (response->status == CURLE_OK) { - JsonObject *args = get_arguments(response->obj); - gchar *labelText = - g_strdup_printf(_("Blocklist (%ld entries)"), - json_object_get_int_member(args, - SGET_BLOCKLIST_SIZE)); - gtk_button_set_label(GTK_BUTTON(priv->blocklist_check), - labelText); - g_free(labelText); - } else { - trg_error_dialog(GTK_WINDOW(response->cb_data), response); - } + TrgRemotePrefsDialogPrivate *priv = + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(response->cb_data); + + gtk_widget_set_sensitive(priv->blocklist_update_button, TRUE); + gtk_button_set_label(GTK_BUTTON(priv->blocklist_update_button), + _("Update")); + + if (response->status == CURLE_OK) { + JsonObject *args = get_arguments(response->obj); + gchar *labelText = + g_strdup_printf(_("Blocklist (%ld entries)"), + json_object_get_int_member(args, + SGET_BLOCKLIST_SIZE)); + gtk_button_set_label(GTK_BUTTON(priv->blocklist_check), + labelText); + g_free(labelText); + } else { + trg_error_dialog(GTK_WINDOW(response->cb_data), response); + } } trg_response_free(response); @@ -309,7 +309,7 @@ static gboolean on_blocklist_updated(gpointer data) static gboolean update_blocklist_cb(GtkButton * b, gpointer data) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(data); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(data); JsonNode *req = blocklist_update(); gtk_widget_set_sensitive(GTK_WIDGET(b), FALSE); @@ -321,10 +321,10 @@ static gboolean update_blocklist_cb(GtkButton * b, gpointer data) } static GtkWidget *trg_rprefs_connPage(TrgRemotePrefsDialog * win, - JsonObject * s) + JsonObject * s) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(win); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(win); GtkWidget *w, *tb, *t; const gchar *stringValue; @@ -333,21 +333,21 @@ static GtkWidget *trg_rprefs_connPage(TrgRemotePrefsDialog * win, t = hig_workarea_create(); w = priv->encryption_combo = gtr_combo_box_new_enum(_("Required"), 0, - _("Preferred"), 1, - _("Tolerated"), 2, - NULL); + _("Preferred"), 1, + _("Tolerated"), 2, + NULL); stringValue = session_get_encryption(s); if (g_strcmp0(stringValue, "required") == 0) { - gtk_combo_box_set_active(GTK_COMBO_BOX(w), 0); + gtk_combo_box_set_active(GTK_COMBO_BOX(w), 0); } else if (g_strcmp0(stringValue, "tolerated") == 0) { - gtk_combo_box_set_active(GTK_COMBO_BOX(w), 2); + gtk_combo_box_set_active(GTK_COMBO_BOX(w), 2); } else { - gtk_combo_box_set_active(GTK_COMBO_BOX(w), 1); + gtk_combo_box_set_active(GTK_COMBO_BOX(w), 1); } hig_workarea_add_row(t, &row, _("Encryption"), w, NULL); w = trg_json_widget_spin_new_int(&priv->widgets, s, SGET_PEER_PORT, - NULL, 0, 65535, 1); + NULL, 0, 65535, 1); hig_workarea_add_row(t, &row, _("Peer port"), w, w); w = priv->port_test_label = gtk_label_new(_("Port test")); @@ -356,57 +356,57 @@ static GtkWidget *trg_rprefs_connPage(TrgRemotePrefsDialog * win, hig_workarea_add_row_w(t, &row, priv->port_test_label, w, NULL); w = trg_json_widget_check_new(&priv->widgets, s, - SGET_PEER_PORT_RANDOM_ON_START, - _("Random peer port on start"), NULL); + SGET_PEER_PORT_RANDOM_ON_START, + _("Random peer port on start"), NULL); hig_workarea_add_wide_control(t, &row, w); w = trg_json_widget_check_new(&priv->widgets, s, - SGET_PORT_FORWARDING_ENABLED, - _("Peer port forwarding"), NULL); + SGET_PORT_FORWARDING_ENABLED, + _("Peer port forwarding"), NULL); hig_workarea_add_wide_control(t, &row, w); w = trg_json_widget_check_new(&priv->widgets, s, SGET_PEX_ENABLED, - _("Peer exchange (PEX)"), NULL); + _("Peer exchange (PEX)"), NULL); hig_workarea_add_wide_control(t, &row, w); w = trg_json_widget_check_new(&priv->widgets, s, SGET_DHT_ENABLED, - _("Distributed Hash Table (DHT)"), NULL); + _("Distributed Hash Table (DHT)"), NULL); hig_workarea_add_wide_control(t, &row, w); w = trg_json_widget_check_new(&priv->widgets, s, SGET_LPD_ENABLED, - _("Local peer discovery"), NULL); + _("Local peer discovery"), NULL); hig_workarea_add_wide_control(t, &row, w); stringValue = g_strdup_printf(_("Blocklist (%ld entries)"), - session_get_blocklist_size(s)); + session_get_blocklist_size(s)); tb = priv->blocklist_check = - trg_json_widget_check_new(&priv->widgets, s, - SGET_BLOCKLIST_ENABLED, stringValue, - NULL); + trg_json_widget_check_new(&priv->widgets, s, + SGET_BLOCKLIST_ENABLED, stringValue, + NULL); g_free((gchar *) stringValue); w = priv->blocklist_update_button = - gtk_button_new_with_label(_("Update")); + gtk_button_new_with_label(_("Update")); g_signal_connect(G_OBJECT(w), "clicked", - G_CALLBACK(update_blocklist_cb), win); + G_CALLBACK(update_blocklist_cb), win); hig_workarea_add_row_w(t, &row, tb, w, NULL); //GtkWidget *trg_json_widget_entry_new(GList **wl, JsonObject *obj, gchar *key, GtkWidget *toggleDep); stringValue = session_get_blocklist_url(s); if (stringValue) { - w = trg_json_widget_entry_new(&priv->widgets, s, - SGET_BLOCKLIST_URL, NULL); - hig_workarea_add_row(t, &row, _("Blocklist URL:"), w, NULL); + w = trg_json_widget_entry_new(&priv->widgets, s, + SGET_BLOCKLIST_URL, NULL); + hig_workarea_add_row(t, &row, _("Blocklist URL:"), w, NULL); } return t; } static GtkWidget *trg_rprefs_generalPage(TrgRemotePrefsDialog * win, - JsonObject * s) + JsonObject * s) { TrgRemotePrefsDialogPrivate *priv = - TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(win); + TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(win); GtkWidget *w, *tb, *t; gint row = 0; @@ -415,54 +415,54 @@ static GtkWidget *trg_rprefs_generalPage(TrgRemotePrefsDialog * win, t = hig_workarea_create(); w = trg_json_widget_entry_new(&priv->widgets, s, SGET_DOWNLOAD_DIR, - NULL); + NULL); hig_workarea_add_row(t, &row, _("Download directory"), w, NULL); tb = trg_json_widget_check_new(&priv->widgets, s, - SGET_INCOMPLETE_DIR_ENABLED, - _("Incomplete download dir"), NULL); + SGET_INCOMPLETE_DIR_ENABLED, + _("Incomplete download dir"), NULL); w = trg_json_widget_entry_new(&priv->widgets, s, SGET_INCOMPLETE_DIR, - tb); + tb); hig_workarea_add_row_w(t, &row, tb, w, NULL); tb = trg_json_widget_check_new(&priv->widgets, s, - SGET_SCRIPT_TORRENT_DONE_ENABLED, - _("Torrent done script"), NULL); + SGET_SCRIPT_TORRENT_DONE_ENABLED, + _("Torrent done script"), NULL); w = trg_json_widget_entry_new(&priv->widgets, s, - SGET_SCRIPT_TORRENT_DONE_FILENAME, tb); + SGET_SCRIPT_TORRENT_DONE_FILENAME, tb); hig_workarea_add_row_w(t, &row, tb, w, NULL); cache_size_mb = session_get_cache_size_mb(s); if (cache_size_mb >= 0) { - w = trg_json_widget_spin_new_int(&priv->widgets, s, - SGET_CACHE_SIZE_MB, NULL, 0, - INT_MAX, 1); - hig_workarea_add_row(t, &row, _("Cache size (MB)"), w, w); + w = trg_json_widget_spin_new_int(&priv->widgets, s, + SGET_CACHE_SIZE_MB, NULL, 0, + INT_MAX, 1); + hig_workarea_add_row(t, &row, _("Cache size (MB)"), w, w); } w = trg_json_widget_check_new(&priv->widgets, s, - SGET_RENAME_PARTIAL_FILES, - _("Rename partial files"), NULL); + SGET_RENAME_PARTIAL_FILES, + _("Rename partial files"), NULL); hig_workarea_add_wide_control(t, &row, w); w = trg_json_widget_check_new(&priv->widgets, s, - SGET_TRASH_ORIGINAL_TORRENT_FILES, _ - ("Trash original torrent files"), NULL); + SGET_TRASH_ORIGINAL_TORRENT_FILES, _ + ("Trash original torrent files"), NULL); hig_workarea_add_wide_control(t, &row, w); w = trg_json_widget_check_new(&priv->widgets, s, - SGET_START_ADDED_TORRENTS, - _("Start added torrents"), NULL); + SGET_START_ADDED_TORRENTS, + _("Start added torrents"), NULL); hig_workarea_add_wide_control(t, &row, w); return t; } static GObject *trg_remote_prefs_dialog_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam * - construct_params) + guint + n_construct_properties, + GObjectConstructParam * + construct_params) { GObject *object; TrgRemotePrefsDialogPrivate *priv; @@ -470,9 +470,9 @@ static GObject *trg_remote_prefs_dialog_constructor(GType type, GtkWidget *notebook, *contentvbox; object = G_OBJECT_CLASS - (trg_remote_prefs_dialog_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_remote_prefs_dialog_parent_class)->constructor(type, + n_construct_properties, + construct_params); priv = TRG_REMOTE_PREFS_DIALOG_GET_PRIVATE(object); session = trg_client_get_session(priv->client); @@ -480,38 +480,38 @@ static GObject *trg_remote_prefs_dialog_constructor(GType type, gtk_window_set_title(GTK_WINDOW(object), _("Remote Preferences")); gtk_window_set_transient_for(GTK_WINDOW(object), - GTK_WINDOW(priv->parent)); + GTK_WINDOW(priv->parent)); gtk_window_set_destroy_with_parent(GTK_WINDOW(object), TRUE); gtk_dialog_add_button(GTK_DIALOG(object), GTK_STOCK_CLOSE, - GTK_RESPONSE_CLOSE); + GTK_RESPONSE_CLOSE); gtk_dialog_add_button(GTK_DIALOG(object), GTK_STOCK_OK, - GTK_RESPONSE_OK); + GTK_RESPONSE_OK); gtk_container_set_border_width(GTK_CONTAINER(object), GUI_PAD); gtk_dialog_set_default_response(GTK_DIALOG(object), GTK_RESPONSE_OK); g_signal_connect(G_OBJECT(object), - "response", - G_CALLBACK(trg_remote_prefs_response_cb), NULL); + "response", + G_CALLBACK(trg_remote_prefs_response_cb), NULL); notebook = gtk_notebook_new(); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_rprefs_generalPage(TRG_REMOTE_PREFS_DIALOG - (object), session), - gtk_label_new(_("General"))); + trg_rprefs_generalPage(TRG_REMOTE_PREFS_DIALOG + (object), session), + gtk_label_new(_("General"))); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_rprefs_connPage(TRG_REMOTE_PREFS_DIALOG - (object), session), - gtk_label_new(_("Connections"))); + trg_rprefs_connPage(TRG_REMOTE_PREFS_DIALOG + (object), session), + gtk_label_new(_("Connections"))); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_rprefs_limitsPage(TRG_REMOTE_PREFS_DIALOG - (object), session), - gtk_label_new(_("Limits"))); + trg_rprefs_limitsPage(TRG_REMOTE_PREFS_DIALOG + (object), session), + gtk_label_new(_("Limits"))); gtk_container_set_border_width(GTK_CONTAINER(notebook), GUI_PAD); @@ -521,7 +521,7 @@ static GObject *trg_remote_prefs_dialog_constructor(GType type, } static void trg_remote_prefs_dialog_class_init(TrgRemotePrefsDialogClass * - klass) + klass) { GObjectClass *object_class = G_OBJECT_CLASS(klass); @@ -532,50 +532,50 @@ static void trg_remote_prefs_dialog_class_init(TrgRemotePrefsDialogClass * object_class->set_property = trg_remote_prefs_dialog_set_property; g_object_class_install_property(object_class, - PROP_CLIENT, - g_param_spec_pointer("trg-client", - "TClient", - "Client", - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_CLIENT, + g_param_spec_pointer("trg-client", + "TClient", + "Client", + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_PARENT, - g_param_spec_object("parent-window", - "Parent window", - "Parent window", - TRG_TYPE_MAIN_WINDOW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_PARENT, + g_param_spec_object("parent-window", + "Parent window", + "Parent window", + TRG_TYPE_MAIN_WINDOW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); } static void trg_remote_prefs_dialog_init(TrgRemotePrefsDialog * - self G_GNUC_UNUSED) + self G_GNUC_UNUSED) { } TrgRemotePrefsDialog *trg_remote_prefs_dialog_get_instance(TrgMainWindow * - parent, - TrgClient * - client) + parent, + TrgClient * + client) { if (instance == NULL) { - instance = - g_object_new(TRG_TYPE_REMOTE_PREFS_DIALOG, "parent-window", - parent, "trg-client", client, NULL); + instance = + g_object_new(TRG_TYPE_REMOTE_PREFS_DIALOG, "parent-window", + parent, "trg-client", client, NULL); } return TRG_REMOTE_PREFS_DIALOG(instance); diff --git a/src/trg-remote-prefs-dialog.h b/src/trg-remote-prefs-dialog.h index 412f3af..0c340a1 100644 --- a/src/trg-remote-prefs-dialog.h +++ b/src/trg-remote-prefs-dialog.h @@ -48,9 +48,9 @@ typedef struct { GType trg_remote_prefs_dialog_get_type(void); TrgRemotePrefsDialog *trg_remote_prefs_dialog_get_instance(TrgMainWindow * - parent, - TrgClient * - client); + parent, + TrgClient * + client); G_END_DECLS -#endif /* TRG_REMOTE_PREFS_DIALOG_H_ */ +#endif /* TRG_REMOTE_PREFS_DIALOG_H_ */ diff --git a/src/trg-sortable-filtered-model.c b/src/trg-sortable-filtered-model.c index 649d999..ed24f8a 100644 --- a/src/trg-sortable-filtered-model.c +++ b/src/trg-sortable-filtered-model.c @@ -29,177 +29,177 @@ static void trg_sortable_filtered_model_tree_sortable_init(GtkTreeSortableIface * - iface); + iface); /* TreeSortable interface */ static GtkTreeSortable - *trg_sortable_filtered_model_get_real_sortable(GtkTreeSortable * - sortable); + * trg_sortable_filtered_model_get_real_sortable(GtkTreeSortable * + sortable); static gboolean trg_sortable_filtered_model_sort_get_sort_column_id(GtkTreeSortable * - sortable, - gint * sort_column_id, - GtkSortType * order); + sortable, + gint * sort_column_id, + GtkSortType * order); static void trg_sortable_filtered_model_sort_set_sort_column_id(GtkTreeSortable * - sortable, - gint sort_column_id, - GtkSortType order); + sortable, + gint sort_column_id, + GtkSortType order); static void trg_sortable_filtered_model_sort_set_sort_func(GtkTreeSortable - * sortable, - gint - sort_column_id, - GtkTreeIterCompareFunc - func, - gpointer data, - GDestroyNotify - destroy); + * sortable, + gint + sort_column_id, + GtkTreeIterCompareFunc + func, + gpointer data, + GDestroyNotify + destroy); static void trg_sortable_filtered_model_sort_set_default_sort_func(GtkTreeSortable * - sortable, - GtkTreeIterCompareFunc - func, gpointer data, - GDestroyNotify - destroy); + sortable, + GtkTreeIterCompareFunc + func, gpointer data, + GDestroyNotify + destroy); static gboolean trg_sortable_filtered_model_sort_has_default_sort_func(GtkTreeSortable * - sortable); + sortable); static void trg_sortable_filtered_model_sort_column_changed(GtkTreeSortable - * realSortable, - GtkTreeSortable - * - fakeSortable); + * realSortable, + GtkTreeSortable + * + fakeSortable); G_DEFINE_TYPE_WITH_CODE(TrgSortableFilteredModel, - trg_sortable_filtered_model, - GTK_TYPE_TREE_MODEL_FILTER, - G_IMPLEMENT_INTERFACE(GTK_TYPE_TREE_SORTABLE, - trg_sortable_filtered_model_tree_sortable_init)) + trg_sortable_filtered_model, + GTK_TYPE_TREE_MODEL_FILTER, + G_IMPLEMENT_INTERFACE(GTK_TYPE_TREE_SORTABLE, + trg_sortable_filtered_model_tree_sortable_init)) static void trg_sortable_filtered_model_class_init(TrgSortableFilteredModelClass * - klass) + klass) { } static void trg_sortable_filtered_model_init(TrgSortableFilteredModel * - self) + self) { } static void trg_sortable_filtered_model_tree_sortable_init(GtkTreeSortableIface * - iface) + iface) { iface->get_sort_column_id = - trg_sortable_filtered_model_sort_get_sort_column_id; + trg_sortable_filtered_model_sort_get_sort_column_id; iface->set_sort_column_id = - trg_sortable_filtered_model_sort_set_sort_column_id; + trg_sortable_filtered_model_sort_set_sort_column_id; iface->set_sort_func = trg_sortable_filtered_model_sort_set_sort_func; iface->set_default_sort_func = - trg_sortable_filtered_model_sort_set_default_sort_func; + trg_sortable_filtered_model_sort_set_default_sort_func; iface->has_default_sort_func = - trg_sortable_filtered_model_sort_has_default_sort_func; + trg_sortable_filtered_model_sort_has_default_sort_func; } static void trg_sortable_filtered_model_sort_column_changed(GtkTreeSortable - * - realSortable - G_GNUC_UNUSED, - GtkTreeSortable - * fakeSortable) + * + realSortable + G_GNUC_UNUSED, + GtkTreeSortable + * fakeSortable) { g_signal_emit_by_name(fakeSortable, "sort-column-changed"); } GtkTreeModel *trg_sortable_filtered_model_new(GtkTreeSortable * - child_model, - GtkTreePath * root) + child_model, + GtkTreePath * root) { g_return_val_if_fail(GTK_IS_TREE_MODEL(child_model), NULL); g_return_val_if_fail(GTK_IS_TREE_SORTABLE(child_model), NULL); GObject *obj = g_object_new(TRG_TYPE_SORTABLE_FILTERED_MODEL, - "child-model", GTK_TREE_MODEL(child_model), - "virtual-root", root, - NULL); + "child-model", GTK_TREE_MODEL(child_model), + "virtual-root", root, + NULL); g_signal_connect(child_model, "sort-column-changed", - G_CALLBACK - (trg_sortable_filtered_model_sort_column_changed), - obj); + G_CALLBACK + (trg_sortable_filtered_model_sort_column_changed), + obj); return GTK_TREE_MODEL(obj); } static GtkTreeSortable - *trg_sortable_filtered_model_get_real_sortable(GtkTreeSortable * - sortable) + * trg_sortable_filtered_model_get_real_sortable(GtkTreeSortable * + sortable) { return - GTK_TREE_SORTABLE(gtk_tree_model_filter_get_model - (GTK_TREE_MODEL_FILTER(sortable))); + GTK_TREE_SORTABLE(gtk_tree_model_filter_get_model + (GTK_TREE_MODEL_FILTER(sortable))); } static gboolean trg_sortable_filtered_model_sort_get_sort_column_id(GtkTreeSortable * - sortable, - gint * sort_column_id, - GtkSortType * order) + sortable, + gint * sort_column_id, + GtkSortType * order) { GtkTreeSortable *realSortable = - trg_sortable_filtered_model_get_real_sortable(sortable); + trg_sortable_filtered_model_get_real_sortable(sortable); return gtk_tree_sortable_get_sort_column_id(realSortable, - sort_column_id, order); + sort_column_id, order); } static void trg_sortable_filtered_model_sort_set_sort_column_id(GtkTreeSortable * - sortable, - gint sort_column_id, - GtkSortType order) + sortable, + gint sort_column_id, + GtkSortType order) { GtkTreeSortable *realSortable = - trg_sortable_filtered_model_get_real_sortable(sortable); + trg_sortable_filtered_model_get_real_sortable(sortable); gtk_tree_sortable_set_sort_column_id(realSortable, sort_column_id, - order); + order); } static void trg_sortable_filtered_model_sort_set_sort_func(GtkTreeSortable - * sortable, - gint - sort_column_id, - GtkTreeIterCompareFunc - func, - gpointer data, - GDestroyNotify - destroy) + * sortable, + gint + sort_column_id, + GtkTreeIterCompareFunc + func, + gpointer data, + GDestroyNotify + destroy) { GtkTreeSortable *realSortable = - trg_sortable_filtered_model_get_real_sortable(sortable); + trg_sortable_filtered_model_get_real_sortable(sortable); gtk_tree_sortable_set_sort_func(realSortable, sort_column_id, func, - data, destroy); + data, destroy); } static void trg_sortable_filtered_model_sort_set_default_sort_func(GtkTreeSortable * - sortable, - GtkTreeIterCompareFunc - func, gpointer data, - GDestroyNotify - destroy) + sortable, + GtkTreeIterCompareFunc + func, gpointer data, + GDestroyNotify + destroy) { GtkTreeSortable *realSortable = - trg_sortable_filtered_model_get_real_sortable(sortable); + trg_sortable_filtered_model_get_real_sortable(sortable); gtk_tree_sortable_set_default_sort_func(realSortable, func, data, - destroy); + destroy); } static gboolean trg_sortable_filtered_model_sort_has_default_sort_func(GtkTreeSortable * - sortable) + sortable) { GtkTreeSortable *realSortable = - trg_sortable_filtered_model_get_real_sortable(sortable); + trg_sortable_filtered_model_get_real_sortable(sortable); return gtk_tree_sortable_has_default_sort_func(realSortable); } diff --git a/src/trg-sortable-filtered-model.h b/src/trg-sortable-filtered-model.h index 9abc456..325b787 100644 --- a/src/trg-sortable-filtered-model.h +++ b/src/trg-sortable-filtered-model.h @@ -46,9 +46,9 @@ typedef struct { GType trg_sortable_filtered_model_get_type(void); GtkTreeModel *trg_sortable_filtered_model_new(GtkTreeSortable * - child_model, - GtkTreePath * root); + child_model, + GtkTreePath * root); G_END_DECLS -#endif /* _TRG_SORTABLE_FILTERED_MODEL */ +#endif /* _TRG_SORTABLE_FILTERED_MODEL */ diff --git a/src/trg-state-selector.c b/src/trg-state-selector.c index eded9f4..ee7cd75 100644 --- a/src/trg-state-selector.c +++ b/src/trg-state-selector.c @@ -73,7 +73,7 @@ guint32 trg_state_selector_get_flag(TrgStateSelector * s) } static void state_selection_changed(GtkTreeSelection * selection, - gpointer data) + gpointer data) { TrgStateSelectorPrivate *priv; GtkTreeIter iter; @@ -83,20 +83,20 @@ static void state_selection_changed(GtkTreeSelection * selection, priv = TRG_STATE_SELECTOR_GET_PRIVATE(data); if (gtk_tree_selection_get_selected(selection, &stateModel, &iter)) - gtk_tree_model_get(stateModel, &iter, STATE_SELECTOR_BIT, - &priv->flag, STATE_SELECTOR_INDEX, &index, -1); + gtk_tree_model_get(stateModel, &iter, STATE_SELECTOR_BIT, + &priv->flag, STATE_SELECTOR_INDEX, &index, -1); else - priv->flag = 0; + priv->flag = 0; trg_prefs_set_int(priv->prefs, TRG_PREFS_STATE_SELECTOR_LAST, index, - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); g_signal_emit(TRG_STATE_SELECTOR(data), - signals[SELECTOR_STATE_CHANGED], 0, priv->flag); + signals[SELECTOR_STATE_CHANGED], 0, priv->flag); } static GtkTreeRowReference *quick_tree_ref_new(GtkTreeModel * model, - GtkTreeIter * iter) + GtkTreeIter * iter) { GtkTreePath *path = gtk_tree_model_get_path(model, iter); GtkTreeRowReference *rr = gtk_tree_row_reference_new(model, path); @@ -110,8 +110,8 @@ struct cruft_remove_args { }; static gboolean trg_state_selector_remove_cruft(gpointer key, - gpointer value, - gpointer data) + gpointer value, + gpointer data) { struct cruft_remove_args *args = (struct cruft_remove_args *) data; GtkTreeRowReference *rr = (GtkTreeRowReference *) value; @@ -124,7 +124,7 @@ static gboolean trg_state_selector_remove_cruft(gpointer key, gtk_tree_model_get_iter(model, &iter, path); gtk_tree_model_get(model, &iter, STATE_SELECTOR_SERIAL, ¤tSerial, - -1); + -1); remove = (args->serial != currentSerial); @@ -141,20 +141,20 @@ gchar *trg_state_selector_get_selected_text(TrgStateSelector * s) gchar *name = NULL; if (gtk_tree_selection_get_selected(sel, &model, &iter)) - gtk_tree_model_get(model, &iter, STATE_SELECTOR_NAME, &name, -1); + gtk_tree_model_get(model, &iter, STATE_SELECTOR_NAME, &name, -1); return name; } static void trg_state_selector_update_serial(GtkTreeModel * model, - GtkTreeRowReference * rr, - gint64 serial) + GtkTreeRowReference * rr, + gint64 serial) { GtkTreeIter iter; GtkTreePath *path = gtk_tree_row_reference_get_path(rr); gtk_tree_model_get_iter(model, &iter, path); gtk_list_store_set(GTK_LIST_STORE(model), &iter, STATE_SELECTOR_SERIAL, - serial, -1); + serial, -1); gtk_tree_path_free(path); } @@ -164,7 +164,7 @@ static void refresh_statelist_cb(GtkWidget * w, gpointer data) } static void view_popup_menu(GtkWidget * treeview, GdkEventButton * event, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { GtkWidget *menu, *item; @@ -173,16 +173,16 @@ static void view_popup_menu(GtkWidget * treeview, GdkEventButton * event, item = gtk_image_menu_item_new_with_label(GTK_STOCK_REFRESH); gtk_image_menu_item_set_use_stock(GTK_IMAGE_MENU_ITEM(item), TRUE); gtk_image_menu_item_set_always_show_image(GTK_IMAGE_MENU_ITEM - (item), TRUE); + (item), TRUE); g_signal_connect(item, "activate", G_CALLBACK(refresh_statelist_cb), - treeview); + treeview); gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); gtk_widget_show_all(menu); gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, - (event != NULL) ? event->button : 0, - gdk_event_get_time((GdkEvent *) event)); + (event != NULL) ? event->button : 0, + gdk_event_get_time((GdkEvent *) event)); } static gboolean view_onPopupMenu(GtkWidget * treeview, gpointer userdata) @@ -192,12 +192,12 @@ static gboolean view_onPopupMenu(GtkWidget * treeview, gpointer userdata) } static gboolean view_onButtonPressed(GtkWidget * treeview, - GdkEventButton * event, - gpointer userdata) + GdkEventButton * event, + gpointer userdata) { if (event->type == GDK_BUTTON_PRESS && event->button == 3) { - view_popup_menu(treeview, event, userdata); - return TRUE; + view_popup_menu(treeview, event, userdata); + return TRUE; } return FALSE; @@ -211,20 +211,20 @@ struct state_find_pos { }; static gboolean trg_state_selector_find_pos_foreach(GtkTreeModel * model, - GtkTreePath * path, - GtkTreeIter * iter, - gpointer data) + GtkTreePath * path, + GtkTreeIter * iter, + gpointer data) { struct state_find_pos *args = (struct state_find_pos *) data; gchar *name; gboolean res; if (args->pos < args->offset) { - args->pos++; - return FALSE; + args->pos++; + return FALSE; } else if (args->range >= 0 - && args->pos > args->offset + args->range - 1) { - return TRUE; + && args->pos > args->offset + args->range - 1) { + return TRUE; } gtk_tree_model_get(model, iter, STATE_SELECTOR_NAME, &name, -1); @@ -232,14 +232,14 @@ static gboolean trg_state_selector_find_pos_foreach(GtkTreeModel * model, g_free(name); if (!res) - args->pos++; + args->pos++; return res; } static void trg_state_selector_insert(TrgStateSelector * s, int offset, - gint range, const gchar * name, - GtkTreeIter * iter) + gint range, const gchar * name, + GtkTreeIter * iter) { GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(s)); @@ -250,7 +250,7 @@ static void trg_state_selector_insert(TrgStateSelector * s, int offset, args.name = name; gtk_tree_model_foreach(model, trg_state_selector_find_pos_foreach, - &args); + &args); gtk_list_store_insert(GTK_LIST_STORE(model), iter, args.pos); } @@ -270,102 +270,101 @@ void trg_state_selector_update(TrgStateSelector * s) struct cruft_remove_args cruft; if (!trg_client_is_connected(client)) - return; + return; torrentItemRefs = - g_hash_table_get_values(trg_client_get_torrent_table(client)); + g_hash_table_get_values(trg_client_get_torrent_table(client)); for (li = torrentItemRefs; li; li = g_list_next(li)) { - JsonObject *t = NULL; - rr = (GtkTreeRowReference *) li->data; - path = gtk_tree_row_reference_get_path(rr); - torrentModel = gtk_tree_row_reference_get_model(rr); - - if (path) { - if (gtk_tree_model_get_iter(torrentModel, &torrentIter, path)) { - gtk_tree_model_get(torrentModel, &torrentIter, - TORRENT_COLUMN_JSON, &t, -1); - } - gtk_tree_path_free(path); - } - - if (!t) - continue; - - if (priv->showTrackers) { - trackersList - = json_array_get_elements(torrent_get_tracker_stats(t)); - for (trackerItem = trackersList; trackerItem; trackerItem - = g_list_next(trackerItem)) { - JsonObject *tracker = json_node_get_object((JsonNode *) - trackerItem-> - data); - const gchar *announceUrl = - tracker_stats_get_announce(tracker); - gchar *announceHost = - trg_gregex_get_first(priv->urlHostRegex, - announceUrl); - - if (!announceHost) - continue; - - result = g_hash_table_lookup(priv->trackers, announceHost); - - if (result) { - trg_state_selector_update_serial(model, - (GtkTreeRowReference - *) result, - updateSerial); - g_free(announceHost); - } else { - trg_state_selector_insert(s, priv->n_categories, - g_hash_table_size(priv-> - trackers), - announceHost, &iter); - gtk_list_store_set(GTK_LIST_STORE(model), &iter, - STATE_SELECTOR_ICON, - GTK_STOCK_NETWORK, - STATE_SELECTOR_NAME, announceHost, - STATE_SELECTOR_SERIAL, updateSerial, - STATE_SELECTOR_BIT, - FILTER_FLAG_TRACKER, - STATE_SELECTOR_INDEX, 0, -1); - g_hash_table_insert(priv->trackers, announceHost, - quick_tree_ref_new(model, &iter)); - } - } - g_list_free(trackersList); - } - - if (priv->showDirs) { - gchar *dir; - gtk_tree_model_get(torrentModel, &torrentIter, - TORRENT_COLUMN_DOWNLOADDIR_SHORT, &dir, -1); - - result = g_hash_table_lookup(priv->directories, dir); - if (result) { - trg_state_selector_update_serial(model, - (GtkTreeRowReference *) - result, updateSerial); - } else { - trg_state_selector_insert(s, - priv->n_categories + - g_hash_table_size(priv-> - trackers), -1, - dir, &iter); - gtk_list_store_set(GTK_LIST_STORE(model), &iter, - STATE_SELECTOR_ICON, - GTK_STOCK_DIRECTORY, - STATE_SELECTOR_NAME, dir, - STATE_SELECTOR_SERIAL, updateSerial, - STATE_SELECTOR_BIT, FILTER_FLAG_DIR, - STATE_SELECTOR_INDEX, 0, -1); - g_hash_table_insert(priv->directories, g_strdup(dir), - quick_tree_ref_new(model, &iter)); - } - - g_free(dir); - } + JsonObject *t = NULL; + rr = (GtkTreeRowReference *) li->data; + path = gtk_tree_row_reference_get_path(rr); + torrentModel = gtk_tree_row_reference_get_model(rr); + + if (path) { + if (gtk_tree_model_get_iter(torrentModel, &torrentIter, path)) { + gtk_tree_model_get(torrentModel, &torrentIter, + TORRENT_COLUMN_JSON, &t, -1); + } + gtk_tree_path_free(path); + } + + if (!t) + continue; + + if (priv->showTrackers) { + trackersList + = json_array_get_elements(torrent_get_tracker_stats(t)); + for (trackerItem = trackersList; trackerItem; trackerItem + = g_list_next(trackerItem)) { + JsonObject *tracker = json_node_get_object((JsonNode *) + trackerItem->data); + const gchar *announceUrl = + tracker_stats_get_announce(tracker); + gchar *announceHost = + trg_gregex_get_first(priv->urlHostRegex, + announceUrl); + + if (!announceHost) + continue; + + result = g_hash_table_lookup(priv->trackers, announceHost); + + if (result) { + trg_state_selector_update_serial(model, + (GtkTreeRowReference + *) result, + updateSerial); + g_free(announceHost); + } else { + trg_state_selector_insert(s, priv->n_categories, + g_hash_table_size + (priv->trackers), + announceHost, &iter); + gtk_list_store_set(GTK_LIST_STORE(model), &iter, + STATE_SELECTOR_ICON, + GTK_STOCK_NETWORK, + STATE_SELECTOR_NAME, announceHost, + STATE_SELECTOR_SERIAL, updateSerial, + STATE_SELECTOR_BIT, + FILTER_FLAG_TRACKER, + STATE_SELECTOR_INDEX, 0, -1); + g_hash_table_insert(priv->trackers, announceHost, + quick_tree_ref_new(model, &iter)); + } + } + g_list_free(trackersList); + } + + if (priv->showDirs) { + gchar *dir; + gtk_tree_model_get(torrentModel, &torrentIter, + TORRENT_COLUMN_DOWNLOADDIR_SHORT, &dir, -1); + + result = g_hash_table_lookup(priv->directories, dir); + if (result) { + trg_state_selector_update_serial(model, + (GtkTreeRowReference *) + result, updateSerial); + } else { + trg_state_selector_insert(s, + priv->n_categories + + g_hash_table_size + (priv->trackers), -1, dir, + &iter); + gtk_list_store_set(GTK_LIST_STORE(model), &iter, + STATE_SELECTOR_ICON, + GTK_STOCK_DIRECTORY, + STATE_SELECTOR_NAME, dir, + STATE_SELECTOR_SERIAL, updateSerial, + STATE_SELECTOR_BIT, FILTER_FLAG_DIR, + STATE_SELECTOR_INDEX, 0, -1); + g_hash_table_insert(priv->directories, g_strdup(dir), + quick_tree_ref_new(model, &iter)); + } + + g_free(dir); + } } g_list_free(torrentItemRefs); @@ -373,17 +372,17 @@ void trg_state_selector_update(TrgStateSelector * s) cruft.serial = trg_client_get_serial(client); if (priv->showTrackers) { - cruft.table = priv->trackers; - g_hash_table_foreach_remove(priv->trackers, - trg_state_selector_remove_cruft, - &cruft); + cruft.table = priv->trackers; + g_hash_table_foreach_remove(priv->trackers, + trg_state_selector_remove_cruft, + &cruft); } if (priv->showDirs) { - cruft.table = priv->directories; - g_hash_table_foreach_remove(priv->directories, - trg_state_selector_remove_cruft, - &cruft); + cruft.table = priv->directories; + g_hash_table_foreach_remove(priv->directories, + trg_state_selector_remove_cruft, + &cruft); } } @@ -392,43 +391,43 @@ void trg_state_selector_set_show_dirs(TrgStateSelector * s, gboolean show) TrgStateSelectorPrivate *priv = TRG_STATE_SELECTOR_GET_PRIVATE(s); priv->showDirs = show; if (!show) - g_hash_table_remove_all(priv->directories); + g_hash_table_remove_all(priv->directories); else - trg_state_selector_update(s); + trg_state_selector_update(s); } void trg_state_selector_set_show_trackers(TrgStateSelector * s, - gboolean show) + gboolean show) { TrgStateSelectorPrivate *priv = TRG_STATE_SELECTOR_GET_PRIVATE(s); priv->showTrackers = show; if (!show) - g_hash_table_remove_all(priv->trackers); + g_hash_table_remove_all(priv->trackers); else - trg_state_selector_update(s); + trg_state_selector_update(s); } static void trg_state_selector_add_state(TrgStateSelector * selector, - GtkTreeIter * iter, gint pos, - gchar * icon, gchar * name, - guint32 flag) + GtkTreeIter * iter, gint pos, + gchar * icon, gchar * name, + guint32 flag) { TrgStateSelectorPrivate *priv = - TRG_STATE_SELECTOR_GET_PRIVATE(selector); + TRG_STATE_SELECTOR_GET_PRIVATE(selector); GtkListStore *model = - GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(selector))); + GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(selector))); if (pos < 0) - gtk_list_store_append(priv->store, iter); + gtk_list_store_append(priv->store, iter); else - gtk_list_store_insert(priv->store, iter, pos); + gtk_list_store_insert(priv->store, iter, pos); gtk_list_store_set(model, iter, STATE_SELECTOR_ICON, icon, - STATE_SELECTOR_NAME, name, STATE_SELECTOR_BIT, flag, - STATE_SELECTOR_INDEX, - gtk_tree_model_iter_n_children(GTK_TREE_MODEL - (model), NULL) - 1, - -1); + STATE_SELECTOR_NAME, name, STATE_SELECTOR_BIT, flag, + STATE_SELECTOR_INDEX, + gtk_tree_model_iter_n_children(GTK_TREE_MODEL + (model), NULL) - 1, + -1); priv->n_categories++; } @@ -446,21 +445,21 @@ static void remove_row_ref_and_free(GtkTreeRowReference * rr) } void trg_state_selector_stats_update(TrgStateSelector * s, - trg_torrent_model_update_stats * - stats) + trg_torrent_model_update_stats * + stats) { TrgStateSelectorPrivate *priv = TRG_STATE_SELECTOR_GET_PRIVATE(s); GtkTreeIter iter; if (stats->error > 0 && !priv->error_rr) { - trg_state_selector_add_state(s, &iter, priv->n_categories - 1, - GTK_STOCK_DIALOG_WARNING, _("Error"), - TORRENT_FLAG_ERROR); - priv->error_rr = - quick_tree_ref_new(GTK_TREE_MODEL(priv->store), &iter); + trg_state_selector_add_state(s, &iter, priv->n_categories - 1, + GTK_STOCK_DIALOG_WARNING, _("Error"), + TORRENT_FLAG_ERROR); + priv->error_rr = + quick_tree_ref_new(GTK_TREE_MODEL(priv->store), &iter); } else if (stats->error < 1 && priv->error_rr) { - remove_row_ref_and_free(priv->error_rr); - priv->error_rr = NULL; - priv->n_categories--; + remove_row_ref_and_free(priv->error_rr); + priv->error_rr = NULL; + priv->n_categories--; } } @@ -469,9 +468,9 @@ void trg_state_selector_disconnect(TrgStateSelector * s) TrgStateSelectorPrivate *priv = TRG_STATE_SELECTOR_GET_PRIVATE(s); if (priv->error_rr) { - remove_row_ref_and_free(priv->error_rr); - priv->error_rr = NULL; - priv->n_categories--; + remove_row_ref_and_free(priv->error_rr); + priv->error_rr = NULL; + priv->n_categories--; } g_hash_table_remove_all(priv->trackers); @@ -488,10 +487,10 @@ TrgStateSelector *trg_state_selector_new(TrgClient * client) } static GObject *trg_state_selector_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam * - construct_params) + guint + n_construct_properties, + GObjectConstructParam * + construct_params) { GObject *object; TrgStateSelector *selector; @@ -504,20 +503,20 @@ static GObject *trg_state_selector_constructor(GType type, GtkTreeSelection *selection; object = G_OBJECT_CLASS - (trg_state_selector_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_state_selector_parent_class)->constructor(type, + n_construct_properties, + construct_params); selector = TRG_STATE_SELECTOR(object); priv = TRG_STATE_SELECTOR_GET_PRIVATE(object); priv->urlHostRegex = trg_uri_host_regex_new(); priv->trackers = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, - (GDestroyNotify) - remove_row_ref_and_free); + (GDestroyNotify) + remove_row_ref_and_free); priv->directories = - g_hash_table_new_full(g_str_hash, g_str_equal, g_free, - (GDestroyNotify) remove_row_ref_and_free); + g_hash_table_new_full(g_str_hash, g_str_equal, g_free, + (GDestroyNotify) remove_row_ref_and_free); gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(object), FALSE); @@ -527,7 +526,7 @@ static GObject *trg_state_selector_constructor(GType type, gtk_tree_view_column_pack_start(column, renderer, FALSE); g_object_set(renderer, "stock-size", 4, NULL); gtk_tree_view_column_set_attributes(column, renderer, "stock-id", 0, - NULL); + NULL); renderer = gtk_cell_renderer_text_new(); gtk_tree_view_column_pack_start(column, renderer, TRUE); @@ -536,35 +535,35 @@ static GObject *trg_state_selector_constructor(GType type, gtk_tree_view_append_column(GTK_TREE_VIEW(object), column); store = priv->store = - gtk_list_store_new(STATE_SELECTOR_COLUMNS, G_TYPE_STRING, - G_TYPE_STRING, G_TYPE_UINT, G_TYPE_INT64, - G_TYPE_UINT); + gtk_list_store_new(STATE_SELECTOR_COLUMNS, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_UINT, G_TYPE_INT64, + G_TYPE_UINT); gtk_tree_view_set_model(GTK_TREE_VIEW(object), GTK_TREE_MODEL(store)); trg_state_selector_add_state(selector, &iter, -1, GTK_STOCK_ABOUT, - _("All"), 0); + _("All"), 0); trg_state_selector_add_state(selector, &iter, -1, GTK_STOCK_GO_DOWN, - _("Downloading"), - TORRENT_FLAG_DOWNLOADING); + _("Downloading"), + TORRENT_FLAG_DOWNLOADING); trg_state_selector_add_state(selector, &iter, -1, - GTK_STOCK_MEDIA_REWIND, _("Queue Down"), - TORRENT_FLAG_DOWNLOADING_WAIT); + GTK_STOCK_MEDIA_REWIND, _("Queue Down"), + TORRENT_FLAG_DOWNLOADING_WAIT); trg_state_selector_add_state(selector, &iter, -1, GTK_STOCK_GO_UP, - _("Seeding"), TORRENT_FLAG_SEEDING); + _("Seeding"), TORRENT_FLAG_SEEDING); trg_state_selector_add_state(selector, &iter, -1, - GTK_STOCK_MEDIA_FORWARD, _("Queue Up"), - TORRENT_FLAG_SEEDING_WAIT); + GTK_STOCK_MEDIA_FORWARD, _("Queue Up"), + TORRENT_FLAG_SEEDING_WAIT); trg_state_selector_add_state(selector, &iter, -1, - GTK_STOCK_MEDIA_PAUSE, _("Paused"), - TORRENT_FLAG_PAUSED); + GTK_STOCK_MEDIA_PAUSE, _("Paused"), + TORRENT_FLAG_PAUSED); trg_state_selector_add_state(selector, &iter, -1, GTK_STOCK_APPLY, - _("Complete"), TORRENT_FLAG_COMPLETE); + _("Complete"), TORRENT_FLAG_COMPLETE); trg_state_selector_add_state(selector, &iter, -1, GTK_STOCK_SELECT_ALL, - _("Incomplete"), TORRENT_FLAG_INCOMPLETE); + _("Incomplete"), TORRENT_FLAG_INCOMPLETE); trg_state_selector_add_state(selector, &iter, -1, GTK_STOCK_NETWORK, - _("Active"), TORRENT_FLAG_ACTIVE); + _("Active"), TORRENT_FLAG_ACTIVE); trg_state_selector_add_state(selector, &iter, -1, GTK_STOCK_REFRESH, - _("Checking"), TORRENT_FLAG_CHECKING_ANY); + _("Checking"), TORRENT_FLAG_CHECKING_ANY); trg_state_selector_add_state(selector, &iter, -1, NULL, NULL, 0); gtk_tree_view_set_rubber_banding(GTK_TREE_VIEW(object), TRUE); @@ -572,88 +571,88 @@ static GObject *trg_state_selector_constructor(GType type, selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(object)); g_signal_connect(G_OBJECT(selection), "changed", - G_CALLBACK(state_selection_changed), object); + G_CALLBACK(state_selection_changed), object); g_signal_connect(object, "button-press-event", - G_CALLBACK(view_onButtonPressed), NULL); + G_CALLBACK(view_onButtonPressed), NULL); g_signal_connect(object, "popup-menu", G_CALLBACK(view_onPopupMenu), - NULL); + NULL); gtk_tree_view_set_search_column(GTK_TREE_VIEW(object), - STATE_SELECTOR_NAME); + STATE_SELECTOR_NAME); index = trg_prefs_get_int(priv->prefs, TRG_PREFS_STATE_SELECTOR_LAST, - TRG_PREFS_GLOBAL); + TRG_PREFS_GLOBAL); if (index > 0 && gtk_tree_model_iter_nth_child(GTK_TREE_MODEL(store), - &iter, NULL, index)) { - GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(object)); - gtk_tree_selection_select_iter(selection, &iter); + &iter, NULL, index)) { + GtkTreeSelection *selection = + gtk_tree_view_get_selection(GTK_TREE_VIEW(object)); + gtk_tree_selection_select_iter(selection, &iter); } priv->showDirs = - trg_prefs_get_bool(priv->prefs, TRG_PREFS_KEY_FILTER_DIRS, - TRG_PREFS_GLOBAL); + trg_prefs_get_bool(priv->prefs, TRG_PREFS_KEY_FILTER_DIRS, + TRG_PREFS_GLOBAL); priv->showTrackers = - trg_prefs_get_bool(priv->prefs, TRG_PREFS_KEY_FILTER_TRACKERS, - TRG_PREFS_GLOBAL); + trg_prefs_get_bool(priv->prefs, TRG_PREFS_KEY_FILTER_TRACKERS, + TRG_PREFS_GLOBAL); return object; } void trg_state_selector_set_queues_enabled(TrgStateSelector * s, - gboolean enabled) + gboolean enabled) { TrgStateSelectorPrivate *priv = TRG_STATE_SELECTOR_GET_PRIVATE(s); GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(s)); GtkTreeIter iter; if (enabled) { - trg_state_selector_add_state(s, &iter, 2, GTK_STOCK_MEDIA_REWIND, - _("Queue Down"), - TORRENT_FLAG_DOWNLOADING_WAIT); - trg_state_selector_add_state(s, &iter, 4, GTK_STOCK_MEDIA_FORWARD, - _("Queue Up"), - TORRENT_FLAG_SEEDING_WAIT); + trg_state_selector_add_state(s, &iter, 2, GTK_STOCK_MEDIA_REWIND, + _("Queue Down"), + TORRENT_FLAG_DOWNLOADING_WAIT); + trg_state_selector_add_state(s, &iter, 4, GTK_STOCK_MEDIA_FORWARD, + _("Queue Up"), + TORRENT_FLAG_SEEDING_WAIT); } else { - gtk_tree_model_iter_nth_child(model, &iter, NULL, 4); - gtk_list_store_remove(GTK_LIST_STORE(model), &iter); + gtk_tree_model_iter_nth_child(model, &iter, NULL, 4); + gtk_list_store_remove(GTK_LIST_STORE(model), &iter); - gtk_tree_model_iter_nth_child(model, &iter, NULL, 2); - gtk_list_store_remove(GTK_LIST_STORE(model), &iter); + gtk_tree_model_iter_nth_child(model, &iter, NULL, 2); + gtk_list_store_remove(GTK_LIST_STORE(model), &iter); - priv->n_categories -= 2; + priv->n_categories -= 2; } } static void trg_state_selector_get_property(GObject * object, - guint property_id, - GValue * value, - GParamSpec * pspec) + guint property_id, + GValue * value, + GParamSpec * pspec) { TrgStateSelectorPrivate *priv = TRG_STATE_SELECTOR_GET_PRIVATE(object); switch (property_id) { case PROP_CLIENT: - g_value_set_object(value, priv->client); - break; + g_value_set_object(value, priv->client); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_state_selector_set_property(GObject * object, - guint prop_id, - const GValue * value, - GParamSpec * - pspec G_GNUC_UNUSED) + guint prop_id, + const GValue * value, + GParamSpec * + pspec G_GNUC_UNUSED) { TrgStateSelectorPrivate *priv = TRG_STATE_SELECTOR_GET_PRIVATE(object); switch (prop_id) { case PROP_CLIENT: - priv->client = g_value_get_object(value); - priv->prefs = trg_client_get_prefs(priv->client); - break; + priv->client = g_value_get_object(value); + priv->prefs = trg_client_get_prefs(priv->client); + break; } } @@ -665,32 +664,32 @@ static void trg_state_selector_class_init(TrgStateSelectorClass * klass) object_class->get_property = trg_state_selector_get_property; signals[SELECTOR_STATE_CHANGED] = g_signal_new("torrent-state-changed", - G_TYPE_FROM_CLASS - (object_class), - G_SIGNAL_RUN_LAST | - G_SIGNAL_ACTION, - G_STRUCT_OFFSET - (TrgStateSelectorClass, - torrent_state_changed), - NULL, NULL, - g_cclosure_marshal_VOID__UINT, - G_TYPE_NONE, 1, - G_TYPE_UINT); + G_TYPE_FROM_CLASS + (object_class), + G_SIGNAL_RUN_LAST | + G_SIGNAL_ACTION, + G_STRUCT_OFFSET + (TrgStateSelectorClass, + torrent_state_changed), + NULL, NULL, + g_cclosure_marshal_VOID__UINT, + G_TYPE_NONE, 1, + G_TYPE_UINT); g_object_class_install_property(object_class, - PROP_CLIENT, - g_param_spec_object("client", - "Client", - "Client", - TRG_TYPE_CLIENT, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_CLIENT, + g_param_spec_object("client", + "Client", + "Client", + TRG_TYPE_CLIENT, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_type_class_add_private(klass, sizeof(TrgStateSelectorPrivate)); } diff --git a/src/trg-state-selector.h b/src/trg-state-selector.h index 37d2f3a..d7a494e 100644 --- a/src/trg-state-selector.h +++ b/src/trg-state-selector.h @@ -55,7 +55,7 @@ typedef struct { GtkTreeViewClass parent_class; void (*torrent_state_changed) (TrgStateSelector * selector, - guint flag, gpointer data); + guint flag, gpointer data); } TrgStateSelectorClass; @@ -68,12 +68,12 @@ gchar *trg_state_selector_get_selected_text(TrgStateSelector * s); GRegex *trg_state_selector_get_url_host_regex(TrgStateSelector * s); void trg_state_selector_disconnect(TrgStateSelector * s); void trg_state_selector_set_show_trackers(TrgStateSelector * s, - gboolean show); + gboolean show); void trg_state_selector_set_show_dirs(TrgStateSelector * s, gboolean show); void trg_state_selector_set_queues_enabled(TrgStateSelector * s, - gboolean enabled); + gboolean enabled); void trg_state_selector_stats_update(TrgStateSelector * s, - trg_torrent_model_update_stats * - stats); + trg_torrent_model_update_stats * + stats); -#endif /* TRG_STATE_LIST_H_ */ +#endif /* TRG_STATE_LIST_H_ */ diff --git a/src/trg-stats-dialog.c b/src/trg-stats-dialog.c index 87aaf5d..8bad6c1 100644 --- a/src/trg-stats-dialog.c +++ b/src/trg-stats-dialog.c @@ -57,7 +57,7 @@ struct _TrgStatsDialogPrivate { GtkWidget *tv; GtkListStore *model; GtkTreeRowReference *rr_up, *rr_down, *rr_files_added, - *rr_session_count, *rr_active, *rr_version; + *rr_session_count, *rr_active, *rr_version; }; static GObject *instance = NULL; @@ -66,39 +66,39 @@ static gboolean on_stats_reply(gpointer data); static void trg_stats_dialog_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } static void trg_stats_dialog_set_property(GObject * object, guint property_id, - const GValue * value, GParamSpec * pspec) + const GValue * value, GParamSpec * pspec) { TrgStatsDialogPrivate *priv = TRG_STATS_DIALOG_GET_PRIVATE(object); switch (property_id) { case PROP_CLIENT: - priv->client = g_value_get_pointer(value); - break; + priv->client = g_value_get_pointer(value); + break; case PROP_PARENT: - priv->parent = g_value_get_object(value); - break; + priv->parent = g_value_get_object(value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_stats_response_cb(GtkDialog * dlg, gint res_id, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { gtk_widget_destroy(GTK_WIDGET(dlg)); instance = NULL; } static GtkTreeRowReference *stats_dialog_add_statistic(GtkListStore * - model, gchar * name) + model, gchar * name) { GtkTreeIter iter; GtkTreePath *path; @@ -115,7 +115,7 @@ static GtkTreeRowReference *stats_dialog_add_statistic(GtkListStore * } static void update_statistic(GtkTreeRowReference * rr, gchar * session, - gchar * cumulat) + gchar * cumulat) { GtkTreePath *path = gtk_tree_row_reference_get_path(rr); GtkTreeModel *model = gtk_tree_row_reference_get_model(rr); @@ -124,7 +124,7 @@ static void update_statistic(GtkTreeRowReference * rr, gchar * session, gtk_tree_model_get_iter(model, &iter, path); gtk_list_store_set(GTK_LIST_STORE(model), &iter, STATCOL_SESSION, - session, STATCOL_CUMULAT, cumulat, -1); + session, STATCOL_CUMULAT, cumulat, -1); gtk_tree_path_free(path); } @@ -140,49 +140,49 @@ static JsonObject *get_cumulat_arg(JsonObject * args) } static void update_int_stat(JsonObject * args, GtkTreeRowReference * rr, - gchar * jsonKey) + gchar * jsonKey) { gchar session_val[32]; gchar cumulat_val[32]; g_snprintf(session_val, sizeof(session_val), "%" G_GINT64_FORMAT, - json_object_get_int_member(get_session_arg(args), jsonKey)); + json_object_get_int_member(get_session_arg(args), jsonKey)); g_snprintf(cumulat_val, sizeof(cumulat_val), "%" G_GINT64_FORMAT, - json_object_get_int_member(get_cumulat_arg(args), jsonKey)); + json_object_get_int_member(get_cumulat_arg(args), jsonKey)); update_statistic(rr, session_val, cumulat_val); } static void update_size_stat(JsonObject * args, GtkTreeRowReference * rr, - gchar * jsonKey) + gchar * jsonKey) { gchar session_val[32]; gchar cumulat_val[32]; trg_strlsize(cumulat_val, - json_object_get_int_member(get_cumulat_arg(args), - jsonKey)); + json_object_get_int_member(get_cumulat_arg(args), + jsonKey)); trg_strlsize(session_val, - json_object_get_int_member(get_session_arg(args), - jsonKey)); + json_object_get_int_member(get_session_arg(args), + jsonKey)); update_statistic(rr, session_val, cumulat_val); } static void update_time_stat(JsonObject * args, GtkTreeRowReference * rr, - gchar * jsonKey) + gchar * jsonKey) { gchar session_val[32]; gchar cumulat_val[32]; tr_strltime_long(session_val, - json_object_get_int_member(get_session_arg(args), - jsonKey), - sizeof(session_val)); + json_object_get_int_member(get_session_arg(args), + jsonKey), + sizeof(session_val)); tr_strltime_long(cumulat_val, - json_object_get_int_member(get_cumulat_arg(args), - jsonKey), - sizeof(cumulat_val)); + json_object_get_int_member(get_cumulat_arg(args), + jsonKey), + sizeof(cumulat_val)); update_statistic(rr, session_val, cumulat_val); } @@ -194,32 +194,32 @@ static gboolean on_stats_reply(gpointer data) JsonObject *args; if (!TRG_IS_STATS_DIALOG(response->cb_data)) { - trg_response_free(response); - return FALSE; + trg_response_free(response); + return FALSE; } priv = TRG_STATS_DIALOG_GET_PRIVATE(response->cb_data); if (response->status == CURLE_OK) { - args = get_arguments(response->obj); - - char versionStr[32]; - g_snprintf(versionStr, sizeof(versionStr), "Transmission %s", - trg_client_get_version_string(priv->client)); - update_statistic(priv->rr_version, versionStr, ""); - - update_size_stat(args, priv->rr_up, "uploadedBytes"); - update_size_stat(args, priv->rr_down, "downloadedBytes"); - update_int_stat(args, priv->rr_files_added, "filesAdded"); - update_int_stat(args, priv->rr_session_count, "sessionCount"); - update_time_stat(args, priv->rr_active, "secondsActive"); - - if (trg_client_is_connected(priv->client)) - g_timeout_add_seconds(STATS_UPDATE_INTERVAL, - trg_update_stats_timerfunc, - response->cb_data); + args = get_arguments(response->obj); + + char versionStr[32]; + g_snprintf(versionStr, sizeof(versionStr), "Transmission %s", + trg_client_get_version_string(priv->client)); + update_statistic(priv->rr_version, versionStr, ""); + + update_size_stat(args, priv->rr_up, "uploadedBytes"); + update_size_stat(args, priv->rr_down, "downloadedBytes"); + update_int_stat(args, priv->rr_files_added, "filesAdded"); + update_int_stat(args, priv->rr_session_count, "sessionCount"); + update_time_stat(args, priv->rr_active, "secondsActive"); + + if (trg_client_is_connected(priv->client)) + g_timeout_add_seconds(STATS_UPDATE_INTERVAL, + trg_update_stats_timerfunc, + response->cb_data); } else { - trg_error_dialog(GTK_WINDOW(data), response); + trg_error_dialog(GTK_WINDOW(data), response); } trg_response_free(response); @@ -231,21 +231,21 @@ static gboolean trg_update_stats_timerfunc(gpointer data) TrgStatsDialogPrivate *priv; if (TRG_IS_STATS_DIALOG(data)) { - priv = TRG_STATS_DIALOG_GET_PRIVATE(data); - dispatch_async(priv->client, session_stats(), on_stats_reply, - data); + priv = TRG_STATS_DIALOG_GET_PRIVATE(data); + dispatch_async(priv->client, session_stats(), on_stats_reply, + data); } return FALSE; } static void trg_stats_add_column(GtkTreeView * tv, gint index, - gchar * title, gint width) + gchar * title, gint width) { GtkCellRenderer *renderer = gtk_cell_renderer_text_new(); GtkTreeViewColumn *column = - gtk_tree_view_column_new_with_attributes(title, renderer, - "text", index, NULL); + gtk_tree_view_column_new_with_attributes(title, renderer, + "text", index, NULL); gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_FIXED); gtk_tree_view_column_set_fixed_width(column, width); @@ -253,66 +253,66 @@ static void trg_stats_add_column(GtkTreeView * tv, gint index, } static GObject *trg_stats_dialog_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam - * construct_params) + guint + n_construct_properties, + GObjectConstructParam + * construct_params) { GtkWidget *tv; GObject *obj = G_OBJECT_CLASS - (trg_stats_dialog_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_stats_dialog_parent_class)->constructor(type, + n_construct_properties, + construct_params); TrgStatsDialogPrivate *priv = TRG_STATS_DIALOG_GET_PRIVATE(obj); gtk_window_set_title(GTK_WINDOW(obj), _("Statistics")); gtk_window_set_transient_for(GTK_WINDOW(obj), - GTK_WINDOW(priv->parent)); + GTK_WINDOW(priv->parent)); gtk_window_set_destroy_with_parent(GTK_WINDOW(obj), TRUE); gtk_dialog_add_button(GTK_DIALOG(obj), GTK_STOCK_CLOSE, - GTK_RESPONSE_CLOSE); + GTK_RESPONSE_CLOSE); gtk_container_set_border_width(GTK_CONTAINER(obj), GUI_PAD); gtk_dialog_set_default_response(GTK_DIALOG(obj), GTK_RESPONSE_CLOSE); g_signal_connect(G_OBJECT(obj), - "response", G_CALLBACK(trg_stats_response_cb), NULL); + "response", G_CALLBACK(trg_stats_response_cb), NULL); priv->model = - gtk_list_store_new(STATCOL_COLUMNS, G_TYPE_STRING, G_TYPE_STRING, - G_TYPE_STRING); + gtk_list_store_new(STATCOL_COLUMNS, G_TYPE_STRING, G_TYPE_STRING, + G_TYPE_STRING); priv->rr_version = - stats_dialog_add_statistic(priv->model, _("Version")); + stats_dialog_add_statistic(priv->model, _("Version")); priv->rr_down = - stats_dialog_add_statistic(priv->model, _("Download Total")); + stats_dialog_add_statistic(priv->model, _("Download Total")); priv->rr_up = - stats_dialog_add_statistic(priv->model, _("Upload Total")); + stats_dialog_add_statistic(priv->model, _("Upload Total")); priv->rr_files_added = - stats_dialog_add_statistic(priv->model, _("Files Added")); + stats_dialog_add_statistic(priv->model, _("Files Added")); priv->rr_session_count = - stats_dialog_add_statistic(priv->model, _("Session Count")); + stats_dialog_add_statistic(priv->model, _("Session Count")); priv->rr_active = - stats_dialog_add_statistic(priv->model, _("Time Active")); + stats_dialog_add_statistic(priv->model, _("Time Active")); tv = priv->tv = trg_tree_view_new(); gtk_widget_set_sensitive(tv, TRUE); trg_stats_add_column(GTK_TREE_VIEW(tv), STATCOL_STAT, _("Statistic"), - 200); + 200); trg_stats_add_column(GTK_TREE_VIEW(tv), STATCOL_SESSION, _("Session"), - 200); + 200); trg_stats_add_column(GTK_TREE_VIEW(tv), STATCOL_CUMULAT, - _("Cumulative"), 200); + _("Cumulative"), 200); gtk_tree_view_set_model(GTK_TREE_VIEW(tv), - GTK_TREE_MODEL(priv->model)); + GTK_TREE_MODEL(priv->model)); gtk_container_set_border_width(GTK_CONTAINER(tv), GUI_PAD); gtk_box_pack_start(GTK_BOX(gtk_bin_get_child(GTK_BIN(obj))), tv, TRUE, - TRUE, 0); + TRUE, 0); dispatch_async(priv->client, session_stats(), on_stats_reply, obj); @@ -330,27 +330,27 @@ static void trg_stats_dialog_class_init(TrgStatsDialogClass * klass) object_class->constructor = trg_stats_dialog_constructor; g_object_class_install_property(object_class, - PROP_PARENT, - g_param_spec_object - ("parent-window", "Parent window", - "Parent window", - TRG_TYPE_MAIN_WINDOW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_PARENT, + g_param_spec_object + ("parent-window", "Parent window", + "Parent window", + TRG_TYPE_MAIN_WINDOW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_CLIENT, - g_param_spec_pointer - ("trg-client", "TClient", - "Client", - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_CLIENT, + g_param_spec_pointer + ("trg-client", "TClient", + "Client", + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); } static void trg_stats_dialog_init(TrgStatsDialog * self) @@ -358,12 +358,12 @@ static void trg_stats_dialog_init(TrgStatsDialog * self) } TrgStatsDialog *trg_stats_dialog_get_instance(TrgMainWindow * parent, - TrgClient * client) + TrgClient * client) { if (instance == NULL) { - instance = g_object_new(TRG_TYPE_STATS_DIALOG, - "trg-client", client, - "parent-window", parent, NULL); + instance = g_object_new(TRG_TYPE_STATS_DIALOG, + "trg-client", client, + "parent-window", parent, NULL); } return TRG_STATS_DIALOG(instance); diff --git a/src/trg-stats-dialog.h b/src/trg-stats-dialog.h index 06da1e7..ee0656e 100644 --- a/src/trg-stats-dialog.h +++ b/src/trg-stats-dialog.h @@ -50,7 +50,7 @@ typedef struct { GType trg_stats_dialog_get_type(void); TrgStatsDialog *trg_stats_dialog_get_instance(TrgMainWindow * parent, - TrgClient * client); + TrgClient * client); G_END_DECLS -#endif /* TRG_STATS_DIALOG_H_ */ +#endif /* TRG_STATS_DIALOG_H_ */ diff --git a/src/trg-status-bar.c b/src/trg-status-bar.c index a6524ed..eb16267 100644 --- a/src/trg-status-bar.c +++ b/src/trg-status-bar.c @@ -83,7 +83,7 @@ static void trg_status_bar_init(TrgStatusBar * self) } void trg_status_bar_push_connection_msg(TrgStatusBar * sb, - const gchar * msg) + const gchar * msg) { TrgStatusBarPrivate *priv = TRG_STATUS_BAR_GET_PRIVATE(sb); @@ -97,8 +97,8 @@ void trg_status_bar_connect(TrgStatusBar * sb, JsonObject * session) session_get_version(session, &version); statusMsg = - g_strdup_printf - (_("Connected to Transmission %g, getting torrents..."), version); + g_strdup_printf + (_("Connected to Transmission %g, getting torrents..."), version); g_message("%s", statusMsg); trg_status_bar_push_connection_msg(sb, statusMsg); g_free(statusMsg); @@ -111,19 +111,19 @@ void trg_status_bar_session_update(TrgStatusBar * sb, JsonObject * session) gchar freeSpace[64]; if (free >= 0) { - gchar *freeSpaceString; - trg_strlsize(freeSpace, free); - freeSpaceString = g_strdup_printf(_("Free space: %s"), freeSpace); - gtk_label_set_text(GTK_LABEL(priv->free_lbl), freeSpaceString); - g_free(freeSpaceString); + gchar *freeSpaceString; + trg_strlsize(freeSpace, free); + freeSpaceString = g_strdup_printf(_("Free space: %s"), freeSpace); + gtk_label_set_text(GTK_LABEL(priv->free_lbl), freeSpaceString); + g_free(freeSpaceString); } else { - gtk_label_set_text(GTK_LABEL(priv->free_lbl), ""); + gtk_label_set_text(GTK_LABEL(priv->free_lbl), ""); } } void trg_status_bar_update(TrgStatusBar * sb, - trg_torrent_model_update_stats * stats, - TrgClient * client) + trg_torrent_model_update_stats * stats, + TrgClient * client) { TrgStatusBarPrivate *priv; JsonObject *session; @@ -137,45 +137,45 @@ void trg_status_bar_update(TrgStatusBar * sb, // The session should always exist otherwise this function wouldn't be called downlimitraw = - json_object_get_boolean_member(session, - SGET_SPEED_LIMIT_DOWN_ENABLED) ? - json_object_get_int_member(session, SGET_SPEED_LIMIT_DOWN) : -1; + json_object_get_boolean_member(session, + SGET_SPEED_LIMIT_DOWN_ENABLED) ? + json_object_get_int_member(session, SGET_SPEED_LIMIT_DOWN) : -1; uplimitraw = - json_object_get_boolean_member(session, - SGET_SPEED_LIMIT_UP_ENABLED) ? - json_object_get_int_member(session, SGET_SPEED_LIMIT_UP) : -1; + json_object_get_boolean_member(session, + SGET_SPEED_LIMIT_UP_ENABLED) ? + json_object_get_int_member(session, SGET_SPEED_LIMIT_UP) : -1; trg_strlspeed(downRateTotalString, - stats->downRateTotal / KILOBYTE_FACTOR); + stats->downRateTotal / KILOBYTE_FACTOR); trg_strlspeed(upRateTotalString, stats->upRateTotal / KILOBYTE_FACTOR); if (uplimitraw >= 0) { - gchar uplimitstring[32]; - trg_strlspeed(uplimitstring, uplimitraw); - g_snprintf(uplimit, sizeof(uplimit), _(" (Limit: %s)"), - uplimitstring); + gchar uplimitstring[32]; + trg_strlspeed(uplimitstring, uplimitraw); + g_snprintf(uplimit, sizeof(uplimit), _(" (Limit: %s)"), + uplimitstring); } if (downlimitraw >= 0) { - gchar downlimitstring[32]; - trg_strlspeed(downlimitstring, downlimitraw); - g_snprintf(downlimit, sizeof(downlimit), _(" (Limit: %s)"), - downlimitstring); + gchar downlimitstring[32]; + trg_strlspeed(downlimitstring, downlimitraw); + g_snprintf(downlimit, sizeof(downlimit), _(" (Limit: %s)"), + downlimitstring); } speedText = - g_strdup_printf(_("Down: %s%s, Up: %s%s"), downRateTotalString, - downlimitraw >= 0 ? downlimit : "", - upRateTotalString, uplimitraw >= 0 ? uplimit : ""); + g_strdup_printf(_("Down: %s%s, Up: %s%s"), downRateTotalString, + downlimitraw >= 0 ? downlimit : "", + upRateTotalString, uplimitraw >= 0 ? uplimit : ""); infoText = - g_strdup_printf - (ngettext - ("%d torrent: %d seeding, %d downloading, %d paused", - "%d torrents: %d seeding, %d downloading, %d paused", - stats->count), stats->count, stats->seeding, stats->down, - stats->paused); + g_strdup_printf + (ngettext + ("%d torrent: %d seeding, %d downloading, %d paused", + "%d torrents: %d seeding, %d downloading, %d paused", + stats->count), stats->count, stats->seeding, stats->down, + stats->paused); gtk_label_set_text(GTK_LABEL(priv->info_lbl), infoText); gtk_label_set_text(GTK_LABEL(priv->speed_lbl), speedText); diff --git a/src/trg-status-bar.h b/src/trg-status-bar.h index fad907b..68ea425 100644 --- a/src/trg-status-bar.h +++ b/src/trg-status-bar.h @@ -51,15 +51,15 @@ TrgStatusBar *trg_status_bar_new(); G_END_DECLS void trg_status_bar_update(TrgStatusBar * sb, - trg_torrent_model_update_stats * stats, - TrgClient * client); + trg_torrent_model_update_stats * stats, + TrgClient * client); void trg_status_bar_session_update(TrgStatusBar * sb, - JsonObject * session); + JsonObject * session); void trg_status_bar_connect(TrgStatusBar * sb, JsonObject * session); void trg_status_bar_push_connection_msg(TrgStatusBar * sb, - const gchar * msg); + const gchar * msg); void trg_status_bar_reset(TrgStatusBar * sb); void trg_status_bar_clear_indicators(TrgStatusBar * sb); const gchar *trg_status_bar_get_speed_text(TrgStatusBar * s); -#endif /* TRG_STATUS_BAR_H_ */ +#endif /* TRG_STATUS_BAR_H_ */ diff --git a/src/trg-toolbar.c b/src/trg-toolbar.c index 1c28c74..8adfc0e 100644 --- a/src/trg-toolbar.c +++ b/src/trg-toolbar.c @@ -67,94 +67,94 @@ struct _TrgToolbarPrivate { static void trg_toolbar_set_property(GObject * object, - guint prop_id, - const GValue * value, - GParamSpec * pspec G_GNUC_UNUSED) + guint prop_id, + const GValue * value, + GParamSpec * pspec G_GNUC_UNUSED) { TrgToolbarPrivate *priv = TRG_TOOLBAR_GET_PRIVATE(object); switch (prop_id) { case PROP_PREFS: - priv->prefs = g_value_get_pointer(value); - break; + priv->prefs = g_value_get_pointer(value); + break; case PROP_MAIN_WINDOW: - priv->main_window = g_value_get_object(value); - break; + priv->main_window = g_value_get_object(value); + break; } } static void trg_toolbar_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { TrgToolbarPrivate *priv = TRG_TOOLBAR_GET_PRIVATE(object); switch (property_id) { case PROP_CONNECT_BUTTON: - g_value_set_object(value, priv->tb_connect); - break; + g_value_set_object(value, priv->tb_connect); + break; case PROP_DISCONNECT_BUTTON: - g_value_set_object(value, priv->tb_disconnect); - break; + g_value_set_object(value, priv->tb_disconnect); + break; case PROP_ADD_BUTTON: - g_value_set_object(value, priv->tb_add); - break; + g_value_set_object(value, priv->tb_add); + break; /* case PROP_ADD_URL_BUTTON: g_value_set_object(value, priv->tb_add_url); break;*/ case PROP_REMOVE_BUTTON: - g_value_set_object(value, priv->tb_remove); - break; + g_value_set_object(value, priv->tb_remove); + break; case PROP_DELETE_BUTTON: - g_value_set_object(value, priv->tb_delete); - break; + g_value_set_object(value, priv->tb_delete); + break; case PROP_RESUME_BUTTON: - g_value_set_object(value, priv->tb_resume); - break; + g_value_set_object(value, priv->tb_resume); + break; case PROP_PAUSE_BUTTON: - g_value_set_object(value, priv->tb_pause); - break; - /*case PROP_VERIFY_BUTTON: - g_value_set_object(value, priv->tb_verify); - break; */ + g_value_set_object(value, priv->tb_pause); + break; + /*case PROP_VERIFY_BUTTON: + g_value_set_object(value, priv->tb_verify); + break; */ case PROP_PROPS_BUTTON: - g_value_set_object(value, priv->tb_props); - break; + g_value_set_object(value, priv->tb_props); + break; case PROP_REMOTE_PREFS_BUTTON: - g_value_set_object(value, priv->tb_remote_prefs); - break; + g_value_set_object(value, priv->tb_remote_prefs); + break; case PROP_LOCAL_PREFS_BUTTON: - g_value_set_object(value, priv->tb_local_prefs); - break; + g_value_set_object(value, priv->tb_local_prefs); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_toolbar_install_widget_prop(GObjectClass * class, guint propId, - const gchar * name, const gchar * nick) + const gchar * name, const gchar * nick) { g_object_class_install_property(class, - propId, - g_param_spec_object(name, - nick, - nick, - GTK_TYPE_WIDGET, - G_PARAM_READABLE - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + propId, + g_param_spec_object(name, + nick, + nick, + GTK_TYPE_WIDGET, + G_PARAM_READABLE + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); } GtkWidget *trg_toolbar_item_new(TrgToolbar * toolbar, - gchar * text, - int *index, gchar * icon, - gboolean sensitive) + gchar * text, + int *index, gchar * icon, + gboolean sensitive) { GtkToolItem *w = gtk_tool_button_new_from_stock(icon); gtk_widget_set_sensitive(GTK_WIDGET(w), sensitive); @@ -167,27 +167,27 @@ static void trg_toolbar_refresh_menu(GtkWidget * w, gpointer data) { TrgToolbarPrivate *priv = TRG_TOOLBAR_GET_PRIVATE(data); GtkWidget *old = - gtk_menu_tool_button_get_menu(GTK_MENU_TOOL_BUTTON - (priv->tb_connect)); + gtk_menu_tool_button_get_menu(GTK_MENU_TOOL_BUTTON + (priv->tb_connect)); GtkWidget *new = - trg_menu_bar_file_connect_menu_new(priv->main_window, priv->prefs); + trg_menu_bar_file_connect_menu_new(priv->main_window, priv->prefs); gtk_widget_destroy(old); gtk_menu_tool_button_set_menu(GTK_MENU_TOOL_BUTTON(priv->tb_connect), - new); + new); gtk_widget_show_all(new); } static GObject *trg_toolbar_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam - * construct_params) + guint + n_construct_properties, + GObjectConstructParam + * construct_params) { GObject *obj = G_OBJECT_CLASS - (trg_toolbar_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_toolbar_parent_class)->constructor(type, + n_construct_properties, + construct_params); TrgToolbarPrivate *priv = TRG_TOOLBAR_GET_PRIVATE(obj); GtkToolItem *separator; @@ -195,7 +195,7 @@ static GObject *trg_toolbar_constructor(GType type, int position = 0; gtk_toolbar_set_icon_size(GTK_TOOLBAR(obj), - GTK_ICON_SIZE_LARGE_TOOLBAR); + GTK_ICON_SIZE_LARGE_TOOLBAR); gtk_toolbar_set_style(GTK_TOOLBAR(obj), GTK_TOOLBAR_ICONS); //priv->tb_connect = @@ -203,23 +203,23 @@ static GObject *trg_toolbar_constructor(GType type, GTK_STOCK_CONNECT, TRUE); */ priv->tb_connect = - GTK_WIDGET(gtk_menu_tool_button_new_from_stock(GTK_STOCK_CONNECT)); + GTK_WIDGET(gtk_menu_tool_button_new_from_stock(GTK_STOCK_CONNECT)); gtk_tool_item_set_tooltip_text(GTK_TOOL_ITEM(priv->tb_connect), - _("Connect")); + _("Connect")); menu = - trg_menu_bar_file_connect_menu_new(priv->main_window, priv->prefs); + trg_menu_bar_file_connect_menu_new(priv->main_window, priv->prefs); gtk_menu_tool_button_set_menu(GTK_MENU_TOOL_BUTTON(priv->tb_connect), - menu); + menu); gtk_toolbar_insert(GTK_TOOLBAR(obj), GTK_TOOL_ITEM(priv->tb_connect), - position++); + position++); gtk_widget_show_all(menu); priv->tb_disconnect = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Disconnect"), &position, - GTK_STOCK_DISCONNECT, FALSE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Disconnect"), &position, + GTK_STOCK_DISCONNECT, FALSE); priv->tb_add = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Add"), &position, - GTK_STOCK_ADD, FALSE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Add"), &position, + GTK_STOCK_ADD, FALSE); /*priv->tb_add_url = trg_toolbar_item_new(self, "Add URL", 3, GTK_STOCK_ADD, FALSE); */ @@ -228,23 +228,23 @@ static GObject *trg_toolbar_constructor(GType type, gtk_toolbar_insert(GTK_TOOLBAR(obj), separator, position++); priv->tb_resume = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Resume"), &position, - GTK_STOCK_MEDIA_PLAY, FALSE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Resume"), &position, + GTK_STOCK_MEDIA_PLAY, FALSE); priv->tb_pause = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Pause"), &position, - GTK_STOCK_MEDIA_PAUSE, FALSE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Pause"), &position, + GTK_STOCK_MEDIA_PAUSE, FALSE); priv->tb_props = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Properties"), &position, - GTK_STOCK_PROPERTIES, FALSE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Properties"), &position, + GTK_STOCK_PROPERTIES, FALSE); priv->tb_remove = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Remove"), &position, - GTK_STOCK_REMOVE, FALSE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Remove"), &position, + GTK_STOCK_REMOVE, FALSE); priv->tb_delete = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Remove with data"), - &position, GTK_STOCK_CLEAR, FALSE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Remove with data"), + &position, GTK_STOCK_CLEAR, FALSE); /*priv->tb_verify = trg_toolbar_item_new(self, "Verify", 11, @@ -254,17 +254,17 @@ static GObject *trg_toolbar_constructor(GType type, gtk_toolbar_insert(GTK_TOOLBAR(obj), separator, position++); priv->tb_local_prefs = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Local Preferences"), - &position, GTK_STOCK_PREFERENCES, TRUE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Local Preferences"), + &position, GTK_STOCK_PREFERENCES, TRUE); priv->tb_remote_prefs = - trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Remote Preferences"), - &position, GTK_STOCK_NETWORK, FALSE); + trg_toolbar_item_new(TRG_TOOLBAR(obj), _("Remote Preferences"), + &position, GTK_STOCK_NETWORK, FALSE); gtk_toolbar_set_tooltips(GTK_TOOLBAR(obj), TRUE); g_signal_connect(G_OBJECT(priv->prefs), "pref-profile-changed", - G_CALLBACK(trg_toolbar_refresh_menu), obj); + G_CALLBACK(trg_toolbar_refresh_menu), obj); return obj; } @@ -277,65 +277,65 @@ static void trg_toolbar_class_init(TrgToolbarClass * klass) object_class->constructor = trg_toolbar_constructor; g_object_class_install_property(object_class, - PROP_PREFS, - g_param_spec_pointer("prefs", - "Prefs", - "Prefs", - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_PREFS, + g_param_spec_pointer("prefs", + "Prefs", + "Prefs", + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_MAIN_WINDOW, - g_param_spec_object("mainwindow", - "mainwindow", - "mainwindow", - TRG_TYPE_MAIN_WINDOW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_MAIN_WINDOW, + g_param_spec_object("mainwindow", + "mainwindow", + "mainwindow", + TRG_TYPE_MAIN_WINDOW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); trg_toolbar_install_widget_prop(object_class, PROP_CONNECT_BUTTON, - "connect-button", "Connect Button"); + "connect-button", "Connect Button"); trg_toolbar_install_widget_prop(object_class, - PROP_DISCONNECT_BUTTON, - "disconnect-button", - "Disconnect Button"); + PROP_DISCONNECT_BUTTON, + "disconnect-button", + "Disconnect Button"); trg_toolbar_install_widget_prop(object_class, PROP_ADD_BUTTON, - "add-button", "Add Button"); + "add-button", "Add Button"); trg_toolbar_install_widget_prop(object_class, PROP_ADD_URL_BUTTON, - "add-url-button", "Add URL Button"); + "add-url-button", "Add URL Button"); trg_toolbar_install_widget_prop(object_class, PROP_REMOVE_BUTTON, - "remove-button", "Remove Button"); + "remove-button", "Remove Button"); trg_toolbar_install_widget_prop(object_class, PROP_DELETE_BUTTON, - "delete-button", "Delete Button"); + "delete-button", "Delete Button"); trg_toolbar_install_widget_prop(object_class, PROP_RESUME_BUTTON, - "resume-button", "Resume Button"); + "resume-button", "Resume Button"); trg_toolbar_install_widget_prop(object_class, PROP_PAUSE_BUTTON, - "pause-button", "Pause Button"); + "pause-button", "Pause Button"); /*trg_toolbar_install_widget_prop(object_class, PROP_VERIFY_BUTTON, "verify-button", "Verify Button"); */ trg_toolbar_install_widget_prop(object_class, PROP_PROPS_BUTTON, - "props-button", "Props Button"); + "props-button", "Props Button"); trg_toolbar_install_widget_prop(object_class, - PROP_REMOTE_PREFS_BUTTON, - "remote-prefs-button", - "Remote Prefs Button"); + PROP_REMOTE_PREFS_BUTTON, + "remote-prefs-button", + "Remote Prefs Button"); trg_toolbar_install_widget_prop(object_class, - PROP_LOCAL_PREFS_BUTTON, - "local-prefs-button", - "Local Prefs Button"); + PROP_LOCAL_PREFS_BUTTON, + "local-prefs-button", + "Local Prefs Button"); g_type_class_add_private(klass, sizeof(TrgToolbarPrivate)); } @@ -352,7 +352,7 @@ void trg_toolbar_connected_change(TrgToolbar * tb, gboolean connected) } void trg_toolbar_torrent_actions_sensitive(TrgToolbar * tb, - gboolean sensitive) + gboolean sensitive) { TrgToolbarPrivate *priv = TRG_TOOLBAR_GET_PRIVATE(tb); @@ -372,5 +372,5 @@ static void trg_toolbar_init(TrgToolbar * self) TrgToolbar *trg_toolbar_new(TrgMainWindow * win, TrgPrefs * prefs) { return g_object_new(TRG_TYPE_TOOLBAR, - "prefs", prefs, "mainwindow", win, NULL); + "prefs", prefs, "mainwindow", win, NULL); } diff --git a/src/trg-toolbar.h b/src/trg-toolbar.h index cdbc199..8bea8ac 100644 --- a/src/trg-toolbar.h +++ b/src/trg-toolbar.h @@ -53,7 +53,7 @@ TrgToolbar *trg_toolbar_new(TrgMainWindow * win, TrgPrefs * prefs); G_END_DECLS void trg_toolbar_torrent_actions_sensitive(TrgToolbar * mb, - gboolean sensitive); + gboolean sensitive); void trg_toolbar_connected_change(TrgToolbar * tb, gboolean connected); -#endif /* TRG_TOOLBAR_H_ */ +#endif /* TRG_TOOLBAR_H_ */ diff --git a/src/trg-torrent-add-dialog.c b/src/trg-torrent-add-dialog.c index a405556..ffa35e2 100644 --- a/src/trg-torrent-add-dialog.c +++ b/src/trg-torrent-add-dialog.c @@ -86,85 +86,85 @@ struct _TrgTorrentAddDialogPrivate { static void trg_torrent_add_dialog_set_property(GObject * object, - guint prop_id, - const GValue * value, - GParamSpec * pspec G_GNUC_UNUSED) + guint prop_id, + const GValue * value, + GParamSpec * pspec G_GNUC_UNUSED) { TrgTorrentAddDialogPrivate *priv = - TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(object); + TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(object); switch (prop_id) { case PROP_FILENAME: - priv->filenames = g_value_get_pointer(value); - break; + priv->filenames = g_value_get_pointer(value); + break; case PROP_PARENT: - priv->parent = g_value_get_object(value); - break; + priv->parent = g_value_get_object(value); + break; case PROP_CLIENT: - priv->client = g_value_get_pointer(value); - break; + priv->client = g_value_get_pointer(value); + break; } } static void trg_torrent_add_dialog_get_property(GObject * object, - guint prop_id, - GValue * value, - GParamSpec * pspec G_GNUC_UNUSED) + guint prop_id, + GValue * value, + GParamSpec * pspec G_GNUC_UNUSED) { TrgTorrentAddDialogPrivate *priv = - TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(object); + TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(object); switch (prop_id) { case PROP_FILENAME: - g_value_set_pointer(value, priv->filenames); - break; + g_value_set_pointer(value, priv->filenames); + break; case PROP_PARENT: - g_value_set_object(value, priv->parent); - break; + g_value_set_object(value, priv->parent); + break; } } static void add_set_common_args(JsonObject * args, gint priority, - gchar * dir) + gchar * dir) { json_object_set_string_member(args, FIELD_FILE_DOWNLOAD_DIR, dir); json_object_set_int_member(args, FIELD_BANDWIDTH_PRIORITY, - (gint64) priority); + (gint64) priority); } static gpointer add_files_threadfunc(gpointer data) { struct add_torrent_threadfunc_args *files_thread_data = - (struct add_torrent_threadfunc_args *) data; + (struct add_torrent_threadfunc_args *) data; GSList *li; for (li = files_thread_data->list; li; li = g_slist_next(li)) { - gchar *fileName = (gchar *) li->data; - JsonNode *request = - torrent_add(fileName, files_thread_data->flags); - JsonObject *args; - trg_response *response; + gchar *fileName = (gchar *) li->data; + JsonNode *request = + torrent_add(fileName, files_thread_data->flags); + JsonObject *args; + trg_response *response; - if (!request) - continue; + if (!request) + continue; - args = node_get_arguments(request); + args = node_get_arguments(request); - if (files_thread_data->extraArgs) - add_set_common_args(args, files_thread_data->priority, - files_thread_data->dir); + if (files_thread_data->extraArgs) + add_set_common_args(args, files_thread_data->priority, + files_thread_data->dir); - response = dispatch(files_thread_data->client, request); - response->cb_data = files_thread_data->cb_data; - g_idle_add(on_generic_interactive_action, response); + response = dispatch(files_thread_data->client, request); + response->cb_data = files_thread_data->cb_data; + g_idle_add(on_generic_interactive_action, response); } g_str_slist_free(files_thread_data->list); if (files_thread_data->extraArgs) - g_free(files_thread_data->dir); + g_free(files_thread_data->dir); g_free(files_thread_data); @@ -177,39 +177,39 @@ void launch_add_thread(struct add_torrent_threadfunc_args *args) g_thread_create(add_files_threadfunc, args, FALSE, &error); if (error) { - g_error("thread creation error: %s", error->message); - g_error_free(error); - g_str_slist_free(args->list); - g_free(args); + g_error("thread creation error: %s", error->message); + g_error_free(error); + g_str_slist_free(args->list); + g_free(args); } } static gboolean add_file_indexes_foreachfunc(GtkTreeModel * model, - GtkTreePath * - path G_GNUC_UNUSED, - GtkTreeIter * iter, - gpointer data) + GtkTreePath * + path G_GNUC_UNUSED, + GtkTreeIter * iter, + gpointer data) { JsonObject *args = (JsonObject *) data; gint priority, index, wanted; gtk_tree_model_get(model, iter, FC_PRIORITY, &priority, - FC_ENABLED, &wanted, FC_INDEX, &index, -1); + FC_ENABLED, &wanted, FC_INDEX, &index, -1); if (gtk_tree_model_iter_has_child(model, iter)) - return FALSE; + return FALSE; if (wanted) - add_file_id_to_array(args, FIELD_FILES_WANTED, index); + add_file_id_to_array(args, FIELD_FILES_WANTED, index); else - add_file_id_to_array(args, FIELD_FILES_UNWANTED, index); + add_file_id_to_array(args, FIELD_FILES_UNWANTED, index); if (priority == TR_PRI_LOW) - add_file_id_to_array(args, FIELD_FILES_PRIORITY_LOW, index); + add_file_id_to_array(args, FIELD_FILES_PRIORITY_LOW, index); else if (priority == TR_PRI_HIGH) - add_file_id_to_array(args, FIELD_FILES_PRIORITY_HIGH, index); + add_file_id_to_array(args, FIELD_FILES_PRIORITY_HIGH, index); else - add_file_id_to_array(args, FIELD_FILES_PRIORITY_NORMAL, index); + add_file_id_to_array(args, FIELD_FILES_PRIORITY_NORMAL, index); return FALSE; } @@ -218,54 +218,54 @@ static void trg_torrent_add_response_cb(GtkDialog * dlg, gint res_id, gpointer data) { TrgTorrentAddDialogPrivate *priv = - TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(dlg); + TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(dlg); guint flags = 0x00; if (gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON(priv->paused_check))) - flags |= TORRENT_ADD_FLAG_PAUSED; + (GTK_TOGGLE_BUTTON(priv->paused_check))) + flags |= TORRENT_ADD_FLAG_PAUSED; if (gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON(priv->delete_check))) - flags |= TORRENT_ADD_FLAG_DELETE; + (GTK_TOGGLE_BUTTON(priv->delete_check))) + flags |= TORRENT_ADD_FLAG_DELETE; if (res_id == GTK_RESPONSE_ACCEPT) { - gint priority = - gtk_combo_box_get_active(GTK_COMBO_BOX(priv->priority_combo)) - - 1; - gchar *dir = - trg_destination_combo_get_dir(TRG_DESTINATION_COMBO - (priv->dest_combo)); - - if (g_slist_length(priv->filenames) == 1) { - JsonNode *req = - torrent_add((gchar *) priv->filenames->data, flags); - if (req) { - JsonObject *args = node_get_arguments(req); - gtk_tree_model_foreach(GTK_TREE_MODEL(priv->store), - add_file_indexes_foreachfunc, args); - add_set_common_args(args, priority, dir); - dispatch_async(priv->client, req, - on_generic_interactive_action, - priv->parent); - } - g_str_slist_free(priv->filenames); - } else { - struct add_torrent_threadfunc_args *args = - g_new(struct add_torrent_threadfunc_args, 1); - args->list = priv->filenames; - args->cb_data = priv->parent; - args->client = priv->client; - args->dir = g_strdup(dir); - args->priority = priority; - args->flags = flags; - args->extraArgs = TRUE; - - launch_add_thread(args); - } - - g_free(dir); + gint priority = + gtk_combo_box_get_active(GTK_COMBO_BOX(priv->priority_combo)) - + 1; + gchar *dir = + trg_destination_combo_get_dir(TRG_DESTINATION_COMBO + (priv->dest_combo)); + + if (g_slist_length(priv->filenames) == 1) { + JsonNode *req = + torrent_add((gchar *) priv->filenames->data, flags); + if (req) { + JsonObject *args = node_get_arguments(req); + gtk_tree_model_foreach(GTK_TREE_MODEL(priv->store), + add_file_indexes_foreachfunc, args); + add_set_common_args(args, priority, dir); + dispatch_async(priv->client, req, + on_generic_interactive_action, + priv->parent); + } + g_str_slist_free(priv->filenames); + } else { + struct add_torrent_threadfunc_args *args = + g_new(struct add_torrent_threadfunc_args, 1); + args->list = priv->filenames; + args->cb_data = priv->parent; + args->client = priv->client; + args->dir = g_strdup(dir); + args->priority = priority; + args->flags = flags; + args->extraArgs = TRUE; + + launch_add_thread(args); + } + + g_free(dir); } else { - g_str_slist_free(priv->filenames); + g_str_slist_free(priv->filenames); } gtk_widget_destroy(GTK_WIDGET(dlg)); @@ -273,40 +273,40 @@ trg_torrent_add_response_cb(GtkDialog * dlg, gint res_id, gpointer data) static void renderPriority(GtkTreeViewColumn * column G_GNUC_UNUSED, - GtkCellRenderer * renderer, - GtkTreeModel * model, - GtkTreeIter * iter, gpointer data G_GNUC_UNUSED) + GtkCellRenderer * renderer, + GtkTreeModel * model, + GtkTreeIter * iter, gpointer data G_GNUC_UNUSED) { int priority; const char *text; gtk_tree_model_get(model, iter, FC_PRIORITY, &priority, -1); switch (priority) { case TR_PRI_HIGH: - text = _("High"); - break; + text = _("High"); + break; case TR_PRI_NORMAL: - text = _("Normal"); - break; + text = _("Normal"); + break; case TR_PRI_LOW: - text = _("Low"); - break; + text = _("Low"); + break; default: - text = _("Mixed"); - break; + text = _("Mixed"); + break; } g_object_set(renderer, "text", text, NULL); } static void renderDownload(GtkTreeViewColumn * column G_GNUC_UNUSED, - GtkCellRenderer * renderer, - GtkTreeModel * model, - GtkTreeIter * iter, gpointer data G_GNUC_UNUSED) + GtkCellRenderer * renderer, + GtkTreeModel * model, + GtkTreeIter * iter, gpointer data G_GNUC_UNUSED) { gint enabled; gtk_tree_model_get(model, iter, FC_ENABLED, &enabled, -1); g_object_set(renderer, "inconsistent", (enabled == MIXED), - "active", (enabled == TRUE), NULL); + "active", (enabled == TRUE), NULL); } struct SubtreeForeachData { @@ -317,116 +317,116 @@ struct SubtreeForeachData { static gboolean setSubtreeForeach(GtkTreeModel * model, - GtkTreePath * path, GtkTreeIter * iter, gpointer gdata) + GtkTreePath * path, GtkTreeIter * iter, gpointer gdata) { struct SubtreeForeachData *data = gdata; if (!gtk_tree_path_compare(path, data->path) - || gtk_tree_path_is_descendant(path, data->path)) { - gtk_tree_store_set(GTK_TREE_STORE(model), iter, data->column, - data->new_value, -1); + || gtk_tree_path_is_descendant(path, data->path)) { + gtk_tree_store_set(GTK_TREE_STORE(model), iter, data->column, + data->new_value, -1); } - return FALSE; /* keep walking */ + return FALSE; /* keep walking */ } static void setSubtree(GtkTreeModel * model, GtkTreePath * path, GtkTreeIter * iter, - gint column, gint new_value) + gint column, gint new_value) { gint result = new_value; GtkTreeIter back_iter = *iter; if (gtk_tree_model_iter_has_child(model, iter)) { - struct SubtreeForeachData tmp; - GtkTreeIter parent; + struct SubtreeForeachData tmp; + GtkTreeIter parent; - tmp.column = column; - tmp.new_value = new_value; - tmp.path = path; - gtk_tree_model_foreach(model, setSubtreeForeach, &tmp); + tmp.column = column; + tmp.new_value = new_value; + tmp.path = path; + gtk_tree_model_foreach(model, setSubtreeForeach, &tmp); - gtk_tree_model_iter_parent(model, &parent, iter); + gtk_tree_model_iter_parent(model, &parent, iter); } else { - gtk_tree_store_set(GTK_TREE_STORE(model), &back_iter, column, - new_value, -1); + gtk_tree_store_set(GTK_TREE_STORE(model), &back_iter, column, + new_value, -1); } while (1) { - GtkTreeIter tmp_iter; - gint n_children, i; + GtkTreeIter tmp_iter; + gint n_children, i; - if (!gtk_tree_model_iter_parent(model, &tmp_iter, &back_iter)) - break; + if (!gtk_tree_model_iter_parent(model, &tmp_iter, &back_iter)) + break; - n_children = gtk_tree_model_iter_n_children(model, &tmp_iter); + n_children = gtk_tree_model_iter_n_children(model, &tmp_iter); - for (i = 0; i < n_children; i++) { - GtkTreeIter child; - gint current_value; + for (i = 0; i < n_children; i++) { + GtkTreeIter child; + gint current_value; - if (!gtk_tree_model_iter_nth_child - (model, &child, &tmp_iter, i)) - continue; + if (!gtk_tree_model_iter_nth_child + (model, &child, &tmp_iter, i)) + continue; - gtk_tree_model_get(model, &child, column, ¤t_value, -1); - if (current_value != new_value) { - result = MIXED; - break; - } - } + gtk_tree_model_get(model, &child, column, ¤t_value, -1); + if (current_value != new_value) { + result = MIXED; + break; + } + } - gtk_tree_store_set(GTK_TREE_STORE(model), &tmp_iter, column, - result, -1); + gtk_tree_store_set(GTK_TREE_STORE(model), &tmp_iter, column, + result, -1); - back_iter = tmp_iter; + back_iter = tmp_iter; } } static gboolean onViewPathToggled(GtkTreeView * view, - GtkTreeViewColumn * col, - GtkTreePath * path, gpointer data) + GtkTreeViewColumn * col, + GtkTreePath * path, gpointer data) { int cid; gboolean handled = FALSE; if (!col || !path) - return FALSE; + return FALSE; cid = - GPOINTER_TO_INT(g_object_get_data - (G_OBJECT(col), TR_COLUMN_ID_KEY)); + GPOINTER_TO_INT(g_object_get_data + (G_OBJECT(col), TR_COLUMN_ID_KEY)); if ((cid == FC_PRIORITY) || (cid == FC_ENABLED)) { - GtkTreeIter iter; - GtkTreeModel *model = gtk_tree_view_get_model(view); - - gtk_tree_model_get_iter(model, &iter, path); - - if (cid == FC_PRIORITY) { - int priority; - gtk_tree_model_get(model, &iter, FC_PRIORITY, &priority, -1); - switch (priority) { - case TR_PRI_NORMAL: - priority = TR_PRI_HIGH; - break; - case TR_PRI_HIGH: - priority = TR_PRI_LOW; - break; - default: - priority = TR_PRI_NORMAL; - break; - } - setSubtree(model, path, &iter, FC_PRIORITY, priority); - } else { - int enabled; - gtk_tree_model_get(model, &iter, FC_ENABLED, &enabled, -1); - enabled = !enabled; - - setSubtree(model, path, &iter, FC_ENABLED, enabled); - } - - handled = TRUE; + GtkTreeIter iter; + GtkTreeModel *model = gtk_tree_view_get_model(view); + + gtk_tree_model_get_iter(model, &iter, path); + + if (cid == FC_PRIORITY) { + int priority; + gtk_tree_model_get(model, &iter, FC_PRIORITY, &priority, -1); + switch (priority) { + case TR_PRI_NORMAL: + priority = TR_PRI_HIGH; + break; + case TR_PRI_HIGH: + priority = TR_PRI_LOW; + break; + default: + priority = TR_PRI_NORMAL; + break; + } + setSubtree(model, path, &iter, FC_PRIORITY, priority); + } else { + int enabled; + gtk_tree_model_get(model, &iter, FC_ENABLED, &enabled, -1); + enabled = !enabled; + + setSubtree(model, path, &iter, FC_ENABLED, enabled); + } + + handled = TRUE; } return handled; @@ -434,20 +434,20 @@ onViewPathToggled(GtkTreeView * view, static gboolean getAndSelectEventPath(GtkTreeView * treeview, - GdkEventButton * event, - GtkTreeViewColumn ** col, GtkTreePath ** path) + GdkEventButton * event, + GtkTreeViewColumn ** col, GtkTreePath ** path) { GtkTreeSelection *sel; if (gtk_tree_view_get_path_at_pos(treeview, - event->x, event->y, - path, col, NULL, NULL)) { - sel = gtk_tree_view_get_selection(treeview); - if (!gtk_tree_selection_path_is_selected(sel, *path)) { - gtk_tree_selection_unselect_all(sel); - gtk_tree_selection_select_path(sel, *path); - } - return TRUE; + event->x, event->y, + path, col, NULL, NULL)) { + sel = gtk_tree_view_get_selection(treeview); + if (!gtk_tree_selection_path_is_selected(sel, *path)) { + gtk_tree_selection_unselect_all(sel); + gtk_tree_selection_select_path(sel, *path); + } + return TRUE; } return FALSE; @@ -462,9 +462,9 @@ onViewButtonPressed(GtkWidget * w, GdkEventButton * event, gpointer gdata) GtkTreeView *treeview = GTK_TREE_VIEW(w); if (event->type == GDK_BUTTON_PRESS && event->button == 1 - && !(event->state & (GDK_SHIFT_MASK | GDK_CONTROL_MASK)) - && getAndSelectEventPath(treeview, event, &col, &path)) { - handled = onViewPathToggled(treeview, col, path, NULL); + && !(event->state & (GDK_SHIFT_MASK | GDK_CONTROL_MASK)) + && getAndSelectEventPath(treeview, event, &col, &path)) { + handled = onViewPathToggled(treeview, col, path, NULL); } gtk_tree_path_free(path); @@ -492,12 +492,12 @@ GtkWidget *gtr_file_list_new(GtkTreeStore ** store) gtk_tree_view_set_rules_hint(tree_view, TRUE); gtk_container_set_border_width(GTK_CONTAINER(view), GUI_PAD_BIG); g_signal_connect(view, "button-press-event", - G_CALLBACK(onViewButtonPressed), view); + G_CALLBACK(onViewButtonPressed), view); pango_context = gtk_widget_create_pango_context(view); pango_font_description = - pango_font_description_copy(pango_context_get_font_description - (pango_context)); + pango_font_description_copy(pango_context_get_font_description + (pango_context)); size = pango_font_description_get_size(pango_font_description); pango_font_description_set_size(pango_font_description, size * 0.8); g_object_unref(G_OBJECT(pango_context)); @@ -510,8 +510,8 @@ GtkWidget *gtr_file_list_new(GtkTreeStore ** store) /* add file column */ col = GTK_TREE_VIEW_COLUMN(g_object_new(GTK_TYPE_TREE_VIEW_COLUMN, - "expand", TRUE, - "title", _("Name"), NULL)); + "expand", TRUE, + "title", _("Name"), NULL)); gtk_tree_view_column_set_resizable(col, TRUE); rend = gtk_cell_renderer_pixbuf_new(); gtk_tree_view_column_pack_start(col, rend, FALSE); @@ -520,7 +520,7 @@ GtkWidget *gtr_file_list_new(GtkTreeStore ** store) /* add text renderer */ rend = gtk_cell_renderer_text_new(); g_object_set(rend, "ellipsize", PANGO_ELLIPSIZE_END, "font-desc", - pango_font_description, NULL); + pango_font_description, NULL); gtk_tree_view_column_pack_start(col, rend, TRUE); gtk_tree_view_column_set_attributes(col, rend, "text", FC_LABEL, NULL); gtk_tree_view_column_set_sort_column_id(col, FC_LABEL); @@ -531,29 +531,29 @@ GtkWidget *gtr_file_list_new(GtkTreeStore ** store) title = _("Size"); rend = trg_cell_renderer_size_new(); g_object_set(rend, "alignment", PANGO_ALIGN_RIGHT, - "font-desc", pango_font_description, - "xpad", GUI_PAD, "xalign", 1.0f, "yalign", 0.5f, NULL); + "font-desc", pango_font_description, + "xpad", GUI_PAD, "xalign", 1.0f, "yalign", 0.5f, NULL); col = gtk_tree_view_column_new_with_attributes(title, rend, NULL); gtk_tree_view_column_set_sizing(col, GTK_TREE_VIEW_COLUMN_GROW_ONLY); gtk_tree_view_column_set_sort_column_id(col, FC_SIZE); gtk_tree_view_column_set_attributes(col, rend, "size-value", FC_SIZE, - NULL); + NULL); gtk_tree_view_append_column(tree_view, col); /* add "enabled" column */ title = _("Download"); pango_layout = gtk_widget_create_pango_layout(view, title); pango_layout_get_pixel_size(pango_layout, &width, NULL); - width += 30; /* room for the sort indicator */ + width += 30; /* room for the sort indicator */ g_object_unref(G_OBJECT(pango_layout)); rend = gtk_cell_renderer_toggle_new(); col = gtk_tree_view_column_new_with_attributes(title, rend, NULL); g_object_set_data(G_OBJECT(col), TR_COLUMN_ID_KEY, - GINT_TO_POINTER(FC_ENABLED)); + GINT_TO_POINTER(FC_ENABLED)); gtk_tree_view_column_set_fixed_width(col, width); gtk_tree_view_column_set_sizing(col, GTK_TREE_VIEW_COLUMN_FIXED); gtk_tree_view_column_set_cell_data_func(col, rend, renderDownload, - NULL, NULL); + NULL, NULL); gtk_tree_view_column_set_sort_column_id(col, FC_ENABLED); gtk_tree_view_append_column(tree_view, col); @@ -561,27 +561,27 @@ GtkWidget *gtr_file_list_new(GtkTreeStore ** store) title = _("Priority"); pango_layout = gtk_widget_create_pango_layout(view, title); pango_layout_get_pixel_size(pango_layout, &width, NULL); - width += 30; /* room for the sort indicator */ + width += 30; /* room for the sort indicator */ g_object_unref(G_OBJECT(pango_layout)); rend = gtk_cell_renderer_text_new(); g_object_set(rend, "xalign", (gfloat) 0.5, "yalign", (gfloat) 0.5, - NULL); + NULL); col = gtk_tree_view_column_new_with_attributes(title, rend, NULL); g_object_set_data(G_OBJECT(col), TR_COLUMN_ID_KEY, - GINT_TO_POINTER(FC_PRIORITY)); + GINT_TO_POINTER(FC_PRIORITY)); gtk_tree_view_column_set_fixed_width(col, width); gtk_tree_view_column_set_sizing(col, GTK_TREE_VIEW_COLUMN_FIXED); gtk_tree_view_column_set_sort_column_id(col, FC_PRIORITY); gtk_tree_view_column_set_cell_data_func(col, rend, renderPriority, - NULL, NULL); + NULL, NULL); gtk_tree_view_append_column(tree_view, col); - *store = gtk_tree_store_new(N_FILE_COLS, G_TYPE_STRING, /* icon */ - G_TYPE_UINT, /* index */ - G_TYPE_STRING, /* label */ - G_TYPE_INT64, /* size */ - G_TYPE_INT, /* priority */ - G_TYPE_INT); /* dl enabled */ + *store = gtk_tree_store_new(N_FILE_COLS, G_TYPE_STRING, /* icon */ + G_TYPE_UINT, /* index */ + G_TYPE_STRING, /* label */ + G_TYPE_INT64, /* size */ + G_TYPE_INT, /* priority */ + G_TYPE_INT); /* dl enabled */ gtk_tree_view_set_model(tree_view, GTK_TREE_MODEL(*store)); g_object_unref(G_OBJECT(*store)); @@ -589,10 +589,10 @@ GtkWidget *gtr_file_list_new(GtkTreeStore ** store) /* create the scrolled window and stick the view in it */ scroll = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll), - GTK_POLICY_AUTOMATIC, - GTK_POLICY_AUTOMATIC); + GTK_POLICY_AUTOMATIC, + GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scroll), - GTK_SHADOW_IN); + GTK_SHADOW_IN); gtk_container_add(GTK_CONTAINER(scroll), view); gtk_widget_set_size_request(scroll, -1, 200); @@ -619,8 +619,8 @@ static void gtr_dialog_set_content(GtkDialog * dialog, GtkWidget * content) GtkWidget *gtr_priority_combo_new(void) { return gtr_combo_box_new_enum(_("Low"), TR_PRI_LOW, - _("Normal"), TR_PRI_NORMAL, - _("High"), TR_PRI_HIGH, NULL); + _("Normal"), TR_PRI_NORMAL, + _("High"), TR_PRI_HIGH, NULL); } static void addTorrentFilters(GtkFileChooser * chooser) @@ -639,37 +639,37 @@ static void addTorrentFilters(GtkFileChooser * chooser) } static void store_add_node(GtkTreeStore * store, GtkTreeIter * parent, - trg_torrent_file_node * node) + trg_torrent_file_node * node) { GtkTreeIter child; GList *li; if (node->name) { - gtk_tree_store_append(store, &child, parent); - gtk_tree_store_set(store, &child, FC_LABEL, node->name, -1); - gtk_tree_store_set(store, &child, FC_ICON, - node->children ? GTK_STOCK_DIRECTORY : - GTK_STOCK_FILE, -1); - gtk_tree_store_set(store, &child, FC_ENABLED, 1, -1); - if (!node->children) { - gtk_tree_store_set(store, &child, FC_INDEX, node->index, -1); - gtk_tree_store_set(store, &child, FC_SIZE, node->length, -1); - gtk_tree_store_set(store, &child, FC_PRIORITY, 0, -1); - } + gtk_tree_store_append(store, &child, parent); + gtk_tree_store_set(store, &child, FC_LABEL, node->name, -1); + gtk_tree_store_set(store, &child, FC_ICON, + node->children ? GTK_STOCK_DIRECTORY : + GTK_STOCK_FILE, -1); + gtk_tree_store_set(store, &child, FC_ENABLED, 1, -1); + if (!node->children) { + gtk_tree_store_set(store, &child, FC_INDEX, node->index, -1); + gtk_tree_store_set(store, &child, FC_SIZE, node->length, -1); + gtk_tree_store_set(store, &child, FC_PRIORITY, 0, -1); + } } for (li = node->children; li; li = g_list_next(li)) - store_add_node(store, node->name ? &child : NULL, - (trg_torrent_file_node *) li->data); + store_add_node(store, node->name ? &child : NULL, + (trg_torrent_file_node *) li->data); } static void torrent_not_parsed_warning(GtkWindow * parent) { GtkWidget *dialog = - gtk_message_dialog_new(parent, GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_WARNING, GTK_BUTTONS_OK, - _ - ("Unable to parse torrent file. File preferences unavailable, but you can still try uploading it.")); + gtk_message_dialog_new(parent, GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_WARNING, GTK_BUTTONS_OK, + _ + ("Unable to parse torrent file. File preferences unavailable, but you can still try uploading it.")); gtk_window_set_transient_for(GTK_WINDOW(dialog), parent); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); @@ -678,145 +678,145 @@ static void torrent_not_parsed_warning(GtkWindow * parent) static void torrent_not_found_error(GtkWindow * parent, gchar * file) { GtkWidget *dialog = - gtk_message_dialog_new(parent, GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, - _("Unable to open torrent file: %s"), file); + gtk_message_dialog_new(parent, GTK_DIALOG_DESTROY_WITH_PARENT, + GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, + _("Unable to open torrent file: %s"), file); gtk_window_set_transient_for(GTK_WINDOW(dialog), parent); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); } static void trg_torrent_add_dialog_set_filenames(TrgTorrentAddDialog * d, - GSList * filenames) + GSList * filenames) { TrgTorrentAddDialogPrivate *priv = - TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(d); + TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(d); GtkButton *chooser = GTK_BUTTON(priv->source_chooser); gint nfiles = filenames ? g_slist_length(filenames) : 0; gtk_tree_store_clear(priv->store); if (nfiles == 1) { - gchar *file_name = (gchar *) filenames->data; - if (is_url(file_name) || is_magnet(file_name)) { - gtk_button_set_label(chooser, file_name); - gtk_widget_set_sensitive(priv->file_list, FALSE); - gtk_widget_set_sensitive(priv->delete_check, FALSE); - } else { - gchar *file_name_base; - trg_torrent_file *tor_data = NULL; - - file_name_base = g_path_get_basename(file_name); - - if (file_name_base) { - gtk_button_set_label(chooser, file_name_base); - g_free(file_name_base); - } else { - gtk_button_set_label(chooser, file_name); - } - - if (g_file_test(file_name, G_FILE_TEST_IS_REGULAR)) { - tor_data = trg_parse_torrent_file(file_name); - if (!tor_data) { - torrent_not_parsed_warning(GTK_WINDOW(priv->parent)); - } else { - store_add_node(priv->store, NULL, tor_data->top_node); - trg_torrent_file_free(tor_data); - } - } else { - torrent_not_found_error(GTK_WINDOW(priv->parent), - file_name); - } - - gtk_widget_set_sensitive(priv->file_list, tor_data != NULL); - } + gchar *file_name = (gchar *) filenames->data; + if (is_url(file_name) || is_magnet(file_name)) { + gtk_button_set_label(chooser, file_name); + gtk_widget_set_sensitive(priv->file_list, FALSE); + gtk_widget_set_sensitive(priv->delete_check, FALSE); + } else { + gchar *file_name_base; + trg_torrent_file *tor_data = NULL; + + file_name_base = g_path_get_basename(file_name); + + if (file_name_base) { + gtk_button_set_label(chooser, file_name_base); + g_free(file_name_base); + } else { + gtk_button_set_label(chooser, file_name); + } + + if (g_file_test(file_name, G_FILE_TEST_IS_REGULAR)) { + tor_data = trg_parse_torrent_file(file_name); + if (!tor_data) { + torrent_not_parsed_warning(GTK_WINDOW(priv->parent)); + } else { + store_add_node(priv->store, NULL, tor_data->top_node); + trg_torrent_file_free(tor_data); + } + } else { + torrent_not_found_error(GTK_WINDOW(priv->parent), + file_name); + } + + gtk_widget_set_sensitive(priv->file_list, tor_data != NULL); + } } else { - gtk_widget_set_sensitive(priv->file_list, FALSE); - if (nfiles < 1) { - gtk_button_set_label(chooser, _("(None)")); - } else { - gtk_button_set_label(chooser, _("(Multiple)")); - } + gtk_widget_set_sensitive(priv->file_list, FALSE); + if (nfiles < 1) { + gtk_button_set_label(chooser, _("(None)")); + } else { + gtk_button_set_label(chooser, _("(Multiple)")); + } } priv->filenames = filenames; } static void trg_torrent_add_dialog_generic_save_dir(GtkFileChooser * c, - TrgPrefs * prefs) + TrgPrefs * prefs) { gchar *cwd = gtk_file_chooser_get_current_folder(c); if (cwd) { - trg_prefs_set_string(prefs, TRG_PREFS_KEY_LAST_TORRENT_DIR, cwd, - TRG_PREFS_GLOBAL); - g_free(cwd); + trg_prefs_set_string(prefs, TRG_PREFS_KEY_LAST_TORRENT_DIR, cwd, + TRG_PREFS_GLOBAL); + g_free(cwd); } } static GtkWidget *trg_torrent_add_dialog_generic(GtkWindow * parent, - TrgPrefs * prefs) + TrgPrefs * prefs) { GtkWidget *w = gtk_file_chooser_dialog_new(_("Add a Torrent"), parent, - GTK_FILE_CHOOSER_ACTION_OPEN, - GTK_STOCK_CANCEL, - GTK_RESPONSE_CANCEL, - GTK_STOCK_ADD, - GTK_RESPONSE_ACCEPT, - NULL); + GTK_FILE_CHOOSER_ACTION_OPEN, + GTK_STOCK_CANCEL, + GTK_RESPONSE_CANCEL, + GTK_STOCK_ADD, + GTK_RESPONSE_ACCEPT, + NULL); gchar *dir = - trg_prefs_get_string(prefs, TRG_PREFS_KEY_LAST_TORRENT_DIR, - TRG_PREFS_GLOBAL); + trg_prefs_get_string(prefs, TRG_PREFS_KEY_LAST_TORRENT_DIR, + TRG_PREFS_GLOBAL); if (dir) { - gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(w), dir); - g_free(dir); + gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(w), dir); + g_free(dir); } addTorrentFilters(GTK_FILE_CHOOSER(w)); gtk_dialog_set_alternative_button_order(GTK_DIALOG(w), - GTK_RESPONSE_ACCEPT, - GTK_RESPONSE_CANCEL, -1); + GTK_RESPONSE_ACCEPT, + GTK_RESPONSE_CANCEL, -1); gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(w), TRUE); return w; } static void trg_torrent_add_dialog_source_click_cb(GtkWidget * w, - gpointer data) + gpointer data) { TrgTorrentAddDialogPrivate *priv = - TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(data); + TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(data); GtkWidget *d = trg_torrent_add_dialog_generic(GTK_WINDOW(data), - trg_client_get_prefs - (priv->client)); + trg_client_get_prefs + (priv->client)); if (gtk_dialog_run(GTK_DIALOG(d)) == GTK_RESPONSE_ACCEPT) { - if (priv->filenames) - g_str_slist_free(priv->filenames); + if (priv->filenames) + g_str_slist_free(priv->filenames); - priv->filenames = - gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(d)); + priv->filenames = + gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(d)); - trg_torrent_add_dialog_generic_save_dir(GTK_FILE_CHOOSER(d), - trg_client_get_prefs(priv-> - client)); - trg_torrent_add_dialog_set_filenames(TRG_TORRENT_ADD_DIALOG(data), - priv->filenames); + trg_torrent_add_dialog_generic_save_dir(GTK_FILE_CHOOSER(d), + trg_client_get_prefs + (priv->client)); + trg_torrent_add_dialog_set_filenames(TRG_TORRENT_ADD_DIALOG(data), + priv->filenames); } gtk_widget_destroy(GTK_WIDGET(d)); } static GObject *trg_torrent_add_dialog_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam - * construct_params) + guint + n_construct_properties, + GObjectConstructParam + * construct_params) { GObject *obj = G_OBJECT_CLASS - (trg_torrent_add_dialog_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_torrent_add_dialog_parent_class)->constructor(type, + n_construct_properties, + construct_params); TrgTorrentAddDialogPrivate *priv = - TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(obj); + TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(obj); TrgPrefs *prefs = trg_client_get_prefs(priv->client); GtkWidget *t, *l; @@ -826,17 +826,17 @@ static GObject *trg_torrent_add_dialog_constructor(GType type, /* window */ gtk_window_set_title(GTK_WINDOW(obj), _("Add Torrent")); gtk_window_set_transient_for(GTK_WINDOW(obj), - GTK_WINDOW(priv->parent)); + GTK_WINDOW(priv->parent)); gtk_window_set_destroy_with_parent(GTK_WINDOW(obj), TRUE); /* buttons */ gtk_dialog_add_button(GTK_DIALOG(obj), GTK_STOCK_CANCEL, - GTK_RESPONSE_CANCEL); + GTK_RESPONSE_CANCEL); gtk_dialog_add_button(GTK_DIALOG(obj), GTK_STOCK_OPEN, - GTK_RESPONSE_ACCEPT); + GTK_RESPONSE_ACCEPT); gtk_dialog_set_alternative_button_order(GTK_DIALOG(obj), - GTK_RESPONSE_ACCEPT, - GTK_RESPONSE_CANCEL, -1); + GTK_RESPONSE_ACCEPT, + GTK_RESPONSE_CANCEL, -1); gtk_dialog_set_default_response(GTK_DIALOG(obj), GTK_RESPONSE_ACCEPT); /* workspace */ @@ -849,19 +849,19 @@ static GObject *trg_torrent_add_dialog_constructor(GType type, gtk_widget_set_sensitive(priv->file_list, FALSE); priv->paused_check = - gtk_check_button_new_with_mnemonic(_("Start _paused")); + gtk_check_button_new_with_mnemonic(_("Start _paused")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->paused_check), - trg_prefs_get_bool(prefs, - TRG_PREFS_KEY_START_PAUSED, - TRG_PREFS_GLOBAL)); + trg_prefs_get_bool(prefs, + TRG_PREFS_KEY_START_PAUSED, + TRG_PREFS_GLOBAL)); priv->delete_check = - gtk_check_button_new_with_mnemonic(_ - ("Delete local .torrent file after adding")); + gtk_check_button_new_with_mnemonic(_ + ("Delete local .torrent file after adding")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv->delete_check), - trg_prefs_get_bool(prefs, - TRG_PREFS_KEY_DELETE_LOCAL_TORRENT, - TRG_PREFS_GLOBAL)); + trg_prefs_get_bool(prefs, + TRG_PREFS_KEY_DELETE_LOCAL_TORRENT, + TRG_PREFS_GLOBAL)); priv->priority_combo = gtr_priority_combo_new(); gtk_combo_box_set_active(GTK_COMBO_BOX(priv->priority_combo), 1); @@ -869,68 +869,68 @@ static GObject *trg_torrent_add_dialog_constructor(GType type, l = gtk_label_new_with_mnemonic(_("_Torrent file:")); gtk_misc_set_alignment(GTK_MISC(l), 0.0f, 0.5f); gtk_table_attach(GTK_TABLE(t), l, col, col + 1, row, row + 1, GTK_FILL, - 0, 0, 0); + 0, 0, 0); ++col; priv->source_chooser = gtk_button_new(); gtk_button_set_alignment(GTK_BUTTON(priv->source_chooser), 0.0f, 0.5f); trg_torrent_add_dialog_set_filenames(TRG_TORRENT_ADD_DIALOG(obj), - priv->filenames); + priv->filenames); gtk_table_attach(GTK_TABLE(t), priv->source_chooser, col, col + 1, row, - row + 1, ~0, 0, 0, 0); + row + 1, ~0, 0, 0, 0); gtk_label_set_mnemonic_widget(GTK_LABEL(l), priv->source_chooser); g_signal_connect(priv->source_chooser, "clicked", - G_CALLBACK(trg_torrent_add_dialog_source_click_cb), - obj); + G_CALLBACK(trg_torrent_add_dialog_source_click_cb), + obj); ++row; col = 0; l = gtk_label_new_with_mnemonic(_("_Destination folder:")); gtk_misc_set_alignment(GTK_MISC(l), 0.0f, 0.5f); gtk_table_attach(GTK_TABLE(t), l, col, col + 1, row, row + 1, GTK_FILL, - 0, 0, 0); + 0, 0, 0); ++col; priv->dest_combo = trg_destination_combo_new(priv->client, NULL); gtk_combo_box_set_active(GTK_COMBO_BOX(priv->dest_combo), 0); gtk_table_attach(GTK_TABLE(t), priv->dest_combo, col, col + 1, row, - row + 1, ~0, 0, 0, 0); + row + 1, ~0, 0, 0, 0); gtk_label_set_mnemonic_widget(GTK_LABEL(l), priv->dest_combo); ++row; col = 0; gtk_widget_set_size_request(priv->file_list, 466u, 300u); gtk_table_attach_defaults(GTK_TABLE(t), priv->file_list, col, col + 2, - row, row + 1); + row, row + 1); ++row; col = 0; l = gtk_label_new_with_mnemonic(_("Torrent _priority:")); gtk_misc_set_alignment(GTK_MISC(l), 0.0f, 0.5f); gtk_table_attach(GTK_TABLE(t), l, col, col + 1, row, row + 1, ~0, 0, 0, - 0); + 0); ++col; gtk_table_attach(GTK_TABLE(t), priv->priority_combo, col, col + 1, row, - row + 1, ~0, 0, 0, 0); + row + 1, ~0, 0, 0, 0); gtk_label_set_mnemonic_widget(GTK_LABEL(l), priv->priority_combo); ++row; col = 0; gtk_table_attach(GTK_TABLE(t), priv->paused_check, col, col + 2, row, - row + 1, GTK_FILL, 0, 0, 0); + row + 1, GTK_FILL, 0, 0, 0); ++row; col = 0; gtk_table_attach(GTK_TABLE(t), priv->delete_check, col, col + 2, row, - row + 1, GTK_FILL, 0, 0, 0); + row + 1, GTK_FILL, 0, 0, 0); gtr_dialog_set_content(GTK_DIALOG(obj), t); g_signal_connect(G_OBJECT(obj), - "response", - G_CALLBACK(trg_torrent_add_response_cb), - priv->parent); + "response", + G_CALLBACK(trg_torrent_add_response_cb), + priv->parent); return obj; } @@ -947,48 +947,48 @@ trg_torrent_add_dialog_class_init(TrgTorrentAddDialogClass * klass) object_class->constructor = trg_torrent_add_dialog_constructor; g_object_class_install_property(object_class, - PROP_FILENAME, - g_param_spec_pointer("filenames", - "filenames", - "filenames", - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_FILENAME, + g_param_spec_pointer("filenames", + "filenames", + "filenames", + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_CLIENT, - g_param_spec_pointer("client", - "client", - "client", - G_PARAM_READWRITE - | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_CLIENT, + g_param_spec_pointer("client", + "client", + "client", + G_PARAM_READWRITE + | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_PARENT, - g_param_spec_object("parent", "parent", - "parent", - TRG_TYPE_MAIN_WINDOW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_PARENT, + g_param_spec_object("parent", "parent", + "parent", + TRG_TYPE_MAIN_WINDOW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); } static void trg_torrent_add_dialog_init(TrgTorrentAddDialog * self) @@ -996,12 +996,12 @@ static void trg_torrent_add_dialog_init(TrgTorrentAddDialog * self) } TrgTorrentAddDialog *trg_torrent_add_dialog_new(TrgMainWindow * parent, - TrgClient * client, - GSList * filenames) + TrgClient * client, + GSList * filenames) { return g_object_new(TRG_TYPE_TORRENT_ADD_DIALOG, - "filenames", filenames, - "parent", parent, "client", client, NULL); + "filenames", filenames, + "parent", parent, "client", client, NULL); } void trg_torrent_add_dialog(TrgMainWindow * win, TrgClient * client) @@ -1014,38 +1014,38 @@ void trg_torrent_add_dialog(TrgMainWindow * win, TrgClient * client) c = gtk_check_button_new_with_mnemonic(_("Show _options dialog")); gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(c), - trg_prefs_get_bool(prefs, - TRG_PREFS_KEY_ADD_OPTIONS_DIALOG, - TRG_PREFS_GLOBAL)); + trg_prefs_get_bool(prefs, + TRG_PREFS_KEY_ADD_OPTIONS_DIALOG, + TRG_PREFS_GLOBAL)); gtk_file_chooser_set_extra_widget(GTK_FILE_CHOOSER(w), c); if (gtk_dialog_run(GTK_DIALOG(w)) == GTK_RESPONSE_ACCEPT) { - GtkFileChooser *chooser = GTK_FILE_CHOOSER(w); - GtkToggleButton *tb = - GTK_TOGGLE_BUTTON(gtk_file_chooser_get_extra_widget(chooser)); - gboolean showOptions = gtk_toggle_button_get_active(tb); - GSList *l = gtk_file_chooser_get_filenames(chooser); - - trg_torrent_add_dialog_generic_save_dir(GTK_FILE_CHOOSER(w), - prefs); - - if (showOptions) { - TrgTorrentAddDialog *dialog = - trg_torrent_add_dialog_new(win, client, l); - - gtk_widget_show_all(GTK_WIDGET(dialog)); - } else { - struct add_torrent_threadfunc_args *args = - g_new0(struct add_torrent_threadfunc_args, 1); - - args->list = l; - args->cb_data = win; - args->client = client; - args->extraArgs = FALSE; - args->flags = trg_prefs_get_add_flags(prefs); - - launch_add_thread(args); - } + GtkFileChooser *chooser = GTK_FILE_CHOOSER(w); + GtkToggleButton *tb = + GTK_TOGGLE_BUTTON(gtk_file_chooser_get_extra_widget(chooser)); + gboolean showOptions = gtk_toggle_button_get_active(tb); + GSList *l = gtk_file_chooser_get_filenames(chooser); + + trg_torrent_add_dialog_generic_save_dir(GTK_FILE_CHOOSER(w), + prefs); + + if (showOptions) { + TrgTorrentAddDialog *dialog = + trg_torrent_add_dialog_new(win, client, l); + + gtk_widget_show_all(GTK_WIDGET(dialog)); + } else { + struct add_torrent_threadfunc_args *args = + g_new0(struct add_torrent_threadfunc_args, 1); + + args->list = l; + args->cb_data = win; + args->client = client; + args->extraArgs = FALSE; + args->flags = trg_prefs_get_add_flags(prefs); + + launch_add_thread(args); + } } gtk_widget_destroy(GTK_WIDGET(w)); diff --git a/src/trg-torrent-add-dialog.h b/src/trg-torrent-add-dialog.h index be355f6..0d95103 100644 --- a/src/trg-torrent-add-dialog.h +++ b/src/trg-torrent-add-dialog.h @@ -64,10 +64,10 @@ struct add_torrent_threadfunc_args { GType trg_torrent_add_dialog_get_type(void); TrgTorrentAddDialog *trg_torrent_add_dialog_new(TrgMainWindow * win, - TrgClient * client, - GSList * filenames); + TrgClient * client, + GSList * filenames); void trg_torrent_add_dialog(TrgMainWindow * win, TrgClient * client); void launch_add_thread(struct add_torrent_threadfunc_args *args); G_END_DECLS -#endif /* TRG_TORRENT_ADD_DIALOG_H_ */ +#endif /* TRG_TORRENT_ADD_DIALOG_H_ */ diff --git a/src/trg-torrent-add-url-dialog.c b/src/trg-torrent-add-url-dialog.c index 67f87c0..aa178ee 100644 --- a/src/trg-torrent-add-url-dialog.c +++ b/src/trg-torrent-add-url-dialog.c @@ -28,7 +28,7 @@ #include "requests.h" G_DEFINE_TYPE(TrgTorrentAddUrlDialog, trg_torrent_add_url_dialog, - GTK_TYPE_DIALOG) + GTK_TYPE_DIALOG) #define TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_TORRENT_ADD_URL_DIALOG, TrgTorrentAddUrlDialogPrivate)) typedef struct _TrgTorrentAddUrlDialogPrivate @@ -49,7 +49,7 @@ trg_torrent_add_url_dialog_class_init(TrgTorrentAddUrlDialogClass * klass) static gboolean has_dht_support(TrgTorrentAddUrlDialog * dlg) { TrgTorrentAddUrlDialogPrivate *priv = - TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(dlg); + TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(dlg); JsonObject *session = trg_client_get_session(priv->client); return session_get_dht_enabled(session); } @@ -57,13 +57,13 @@ static gboolean has_dht_support(TrgTorrentAddUrlDialog * dlg) static void show_dht_not_enabled_warning(TrgTorrentAddUrlDialog * dlg) { gchar *msg = - _ - ("You are trying to add a magnet torrent, but DHT is disabled. Distributed Hash Table (DHT) should be enabled in remote settings."); + _ + ("You are trying to add a magnet torrent, but DHT is disabled. Distributed Hash Table (DHT) should be enabled in remote settings."); GtkWidget *dialog = gtk_message_dialog_new(GTK_WINDOW(dlg), - GTK_DIALOG_MODAL, - GTK_MESSAGE_WARNING, - GTK_BUTTONS_OK, - "%s", msg); + GTK_DIALOG_MODAL, + GTK_MESSAGE_WARNING, + GTK_BUTTONS_OK, + "%s", msg); gtk_window_set_title(GTK_WINDOW(dialog), _("Error")); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); @@ -71,26 +71,26 @@ static void show_dht_not_enabled_warning(TrgTorrentAddUrlDialog * dlg) static void trg_torrent_add_url_response_cb(TrgTorrentAddUrlDialog * dlg, gint res_id, - gpointer data) + gpointer data) { TrgTorrentAddUrlDialogPrivate *priv = - TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(dlg); + TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(dlg); if (res_id == GTK_RESPONSE_ACCEPT) { - JsonNode *request; - const gchar *entryText = - gtk_entry_get_text(GTK_ENTRY(priv->urlEntry)); - - if (g_str_has_prefix(entryText, "magnet:") - && !has_dht_support(dlg)) - show_dht_not_enabled_warning(dlg); - - request = - torrent_add_url(entryText, - gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON(priv->startCheck))); - dispatch_async(priv->client, request, - on_generic_interactive_action, data); + JsonNode *request; + const gchar *entryText = + gtk_entry_get_text(GTK_ENTRY(priv->urlEntry)); + + if (g_str_has_prefix(entryText, "magnet:") + && !has_dht_support(dlg)) + show_dht_not_enabled_warning(dlg); + + request = + torrent_add_url(entryText, + gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON(priv->startCheck))); + dispatch_async(priv->client, request, + on_generic_interactive_action, data); } gtk_widget_destroy(GTK_WIDGET(dlg)); @@ -99,15 +99,15 @@ trg_torrent_add_url_response_cb(TrgTorrentAddUrlDialog * dlg, gint res_id, static void url_entry_changed(GtkWidget * w, gpointer data) { TrgTorrentAddUrlDialogPrivate *priv = - TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(data); + TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(data); gtk_widget_set_sensitive(priv->addButton, - gtk_entry_get_text_length(GTK_ENTRY(w)) > 0); + gtk_entry_get_text_length(GTK_ENTRY(w)) > 0); } static void trg_torrent_add_url_dialog_init(TrgTorrentAddUrlDialog * self) { TrgTorrentAddUrlDialogPrivate *priv = - TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(self); + TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(self); GtkWidget *w, *t, *contentvbox; gint row = 0; @@ -120,17 +120,17 @@ static void trg_torrent_add_url_dialog_init(TrgTorrentAddUrlDialog * self) hig_workarea_add_row(t, &row, _("URL:"), w, NULL); priv->startCheck = - hig_workarea_add_wide_checkbutton(t, &row, _("Start Paused"), - FALSE); + hig_workarea_add_wide_checkbutton(t, &row, _("Start Paused"), + FALSE); gtk_window_set_title(GTK_WINDOW(self), _("Add torrent from URL")); gtk_window_set_destroy_with_parent(GTK_WINDOW(self), TRUE); gtk_dialog_add_button(GTK_DIALOG(self), GTK_STOCK_CLOSE, - GTK_RESPONSE_CANCEL); + GTK_RESPONSE_CANCEL); priv->addButton = - gtk_dialog_add_button(GTK_DIALOG(self), GTK_STOCK_ADD, - GTK_RESPONSE_ACCEPT); + gtk_dialog_add_button(GTK_DIALOG(self), GTK_STOCK_ADD, + GTK_RESPONSE_ACCEPT); gtk_widget_set_sensitive(priv->addButton, FALSE); gtk_container_set_border_width(GTK_CONTAINER(self), GUI_PAD); @@ -138,8 +138,8 @@ static void trg_torrent_add_url_dialog_init(TrgTorrentAddUrlDialog * self) gtk_dialog_set_default_response(GTK_DIALOG(self), GTK_RESPONSE_ACCEPT); gtk_dialog_set_alternative_button_order(GTK_DIALOG(self), - GTK_RESPONSE_ACCEPT, - GTK_RESPONSE_CANCEL, -1); + GTK_RESPONSE_ACCEPT, + GTK_RESPONSE_CANCEL, -1); gtk_container_set_border_width(GTK_CONTAINER(t), GUI_PAD); @@ -147,19 +147,19 @@ static void trg_torrent_add_url_dialog_init(TrgTorrentAddUrlDialog * self) } TrgTorrentAddUrlDialog *trg_torrent_add_url_dialog_new(TrgMainWindow * win, - TrgClient * client) + TrgClient * client) { GObject *obj = g_object_new(TRG_TYPE_TORRENT_ADD_URL_DIALOG, NULL); TrgTorrentAddUrlDialogPrivate *priv = - TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(obj); + TRG_TORRENT_ADD_URL_DIALOG_GET_PRIVATE(obj); priv->client = client; priv->win = win; gtk_window_set_transient_for(GTK_WINDOW(obj), GTK_WINDOW(win)); g_signal_connect(G_OBJECT(obj), - "response", - G_CALLBACK(trg_torrent_add_url_response_cb), win); + "response", + G_CALLBACK(trg_torrent_add_url_response_cb), win); return TRG_TORRENT_ADD_URL_DIALOG(obj); } diff --git a/src/trg-torrent-add-url-dialog.h b/src/trg-torrent-add-url-dialog.h index 4742837..be89fd4 100644 --- a/src/trg-torrent-add-url-dialog.h +++ b/src/trg-torrent-add-url-dialog.h @@ -49,7 +49,7 @@ typedef struct { GType trg_torrent_add_url_dialog_get_type(void); TrgTorrentAddUrlDialog *trg_torrent_add_url_dialog_new(TrgMainWindow * win, - TrgClient * client); + TrgClient * client); G_END_DECLS -#endif /* TRG_TORRENT_ADD_URL_DIALOG_H_ */ +#endif /* TRG_TORRENT_ADD_URL_DIALOG_H_ */ diff --git a/src/trg-torrent-graph.c b/src/trg-torrent-graph.c index 26e5fd4..99c5dad 100644 --- a/src/trg-torrent-graph.c +++ b/src/trg-torrent-graph.c @@ -90,23 +90,23 @@ static int trg_torrent_graph_update(gpointer user_data); static void trg_torrent_graph_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { switch (property_id) { default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_torrent_graph_set_property(GObject * object, guint property_id, - const GValue * value, GParamSpec * pspec) + const GValue * value, GParamSpec * pspec) { switch (property_id) { default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } @@ -127,18 +127,18 @@ void trg_torrent_graph_draw_background(TrgTorrentGraph * g) priv = TRG_TORRENT_GRAPH_GET_PRIVATE(g); num_bars = trg_torrent_graph_get_num_bars(g); - priv->graph_dely = (priv->draw_height - 15) / num_bars; /* round to int to avoid AA blur */ + priv->graph_dely = (priv->draw_height - 15) / num_bars; /* round to int to avoid AA blur */ priv->real_draw_height = priv->graph_dely * num_bars; priv->graph_delx = - (priv->draw_width - 2.0 - priv->rmargin - - priv->indent) / (GRAPH_NUM_POINTS - 3); + (priv->draw_width - 2.0 - priv->rmargin - + priv->indent) / (GRAPH_NUM_POINTS - 3); priv->graph_buffer_offset = - (int) (1.5 * priv->graph_delx) + GRAPH_FRAME_WIDTH; + (int) (1.5 * priv->graph_delx) + GRAPH_FRAME_WIDTH; gtk_widget_get_allocation(priv->disp, &allocation); priv->background = - gdk_pixmap_new(GDK_DRAWABLE(gtk_widget_get_window(priv->disp)), - allocation.width, allocation.height, -1); + gdk_pixmap_new(GDK_DRAWABLE(gtk_widget_get_window(priv->disp)), + allocation.width, allocation.height, -1); cr = gdk_cairo_create(priv->background); gdk_cairo_set_source_color(cr, &priv->style->bg[GTK_STATE_NORMAL]); @@ -146,8 +146,8 @@ void trg_torrent_graph_draw_background(TrgTorrentGraph * g) cairo_translate(cr, GRAPH_FRAME_WIDTH, GRAPH_FRAME_WIDTH); cairo_set_source_rgb(cr, 1.0, 1.0, 1.0); cairo_rectangle(cr, priv->rmargin + priv->indent, 0, - priv->draw_width - priv->rmargin - priv->indent, - priv->real_draw_height); + priv->draw_width - priv->rmargin - priv->indent, + priv->real_draw_height); cairo_fill(cr); @@ -156,22 +156,22 @@ void trg_torrent_graph_draw_background(TrgTorrentGraph * g) cairo_set_font_size(cr, priv->fontsize); for (i = 0; i <= num_bars; ++i) { - double y; - gchar caption[32]; - - if (i == 0) - y = 0.5 + priv->fontsize / 2.0; - else if (i == num_bars) - y = i * priv->graph_dely + 0.5; - else - y = i * priv->graph_dely + priv->fontsize / 2.0; - - gdk_cairo_set_source_color(cr, &priv->style->fg[GTK_STATE_NORMAL]); - rate = priv->max - (i * priv->max / num_bars); - trg_strlspeed(caption, (gint64) (rate / 1024)); - cairo_text_extents(cr, caption, &extents); - cairo_move_to(cr, priv->indent - extents.width + 20, y); - cairo_show_text(cr, caption); + double y; + gchar caption[32]; + + if (i == 0) + y = 0.5 + priv->fontsize / 2.0; + else if (i == num_bars) + y = i * priv->graph_dely + 0.5; + else + y = i * priv->graph_dely + priv->fontsize / 2.0; + + gdk_cairo_set_source_color(cr, &priv->style->fg[GTK_STATE_NORMAL]); + rate = priv->max - (i * priv->max / num_bars); + trg_strlspeed(caption, (gint64) (rate / 1024)); + cairo_text_extents(cr, caption, &extents); + cairo_move_to(cr, priv->indent - extents.width + 20, y); + cairo_show_text(cr, caption); } cairo_stroke(cr); @@ -181,29 +181,29 @@ void trg_torrent_graph_draw_background(TrgTorrentGraph * g) total_seconds = priv->speed * (GRAPH_NUM_POINTS - 2) / 1000; for (i = 0; i < 7; i++) { - unsigned seconds; - const char *format; - double x = - (i) * (priv->draw_width - priv->rmargin - priv->indent) / 6; - cairo_set_source_rgba(cr, 0, 0, 0, 0.75); - cairo_move_to(cr, (ceil(x) + 0.5) + priv->rmargin + priv->indent, - 0.5); - cairo_line_to(cr, (ceil(x) + 0.5) + priv->rmargin + priv->indent, - priv->real_draw_height + 4.5); - cairo_stroke(cr); - seconds = total_seconds - i * total_seconds / 6; - if (i == 0) - format = "%u seconds"; - else - format = "%u"; - caption = g_strdup_printf(format, seconds); - cairo_text_extents(cr, caption, &extents); - cairo_move_to(cr, - ((ceil(x) + 0.5) + priv->rmargin + priv->indent) - - (extents.width / 2), priv->draw_height); - gdk_cairo_set_source_color(cr, &priv->style->fg[GTK_STATE_NORMAL]); - cairo_show_text(cr, caption); - g_free(caption); + unsigned seconds; + const char *format; + double x = + (i) * (priv->draw_width - priv->rmargin - priv->indent) / 6; + cairo_set_source_rgba(cr, 0, 0, 0, 0.75); + cairo_move_to(cr, (ceil(x) + 0.5) + priv->rmargin + priv->indent, + 0.5); + cairo_line_to(cr, (ceil(x) + 0.5) + priv->rmargin + priv->indent, + priv->real_draw_height + 4.5); + cairo_stroke(cr); + seconds = total_seconds - i * total_seconds / 6; + if (i == 0) + format = "%u seconds"; + else + format = "%u"; + caption = g_strdup_printf(format, seconds); + cairo_text_extents(cr, caption, &extents); + cairo_move_to(cr, + ((ceil(x) + 0.5) + priv->rmargin + priv->indent) - + (extents.width / 2), priv->draw_height); + gdk_cairo_set_source_color(cr, &priv->style->fg[GTK_STATE_NORMAL]); + cairo_show_text(cr, caption); + g_free(caption); } cairo_stroke(cr); @@ -218,7 +218,7 @@ void trg_torrent_graph_set_nothing(TrgTorrentGraph * g) } void trg_torrent_graph_set_speed(TrgTorrentGraph * g, - trg_torrent_model_update_stats * stats) + trg_torrent_model_update_stats * stats) { TrgTorrentGraphPrivate *priv = TRG_TORRENT_GRAPH_GET_PRIVATE(g); @@ -228,7 +228,7 @@ void trg_torrent_graph_set_speed(TrgTorrentGraph * g, static gboolean trg_torrent_graph_configure(GtkWidget * widget, - GdkEventConfigure * event, gpointer data_ptr) + GdkEventConfigure * event, gpointer data_ptr) { GtkAllocation allocation; TrgTorrentGraph *g = TRG_TORRENT_GRAPH(data_ptr); @@ -241,7 +241,7 @@ trg_torrent_graph_configure(GtkWidget * widget, trg_torrent_graph_clear_background(g); if (priv->gc == NULL) - priv->gc = gdk_gc_new(GDK_DRAWABLE(gtk_widget_get_window(widget))); + priv->gc = gdk_gc_new(GDK_DRAWABLE(gtk_widget_get_window(widget))); trg_torrent_graph_draw(g); @@ -250,7 +250,7 @@ trg_torrent_graph_configure(GtkWidget * widget, static gboolean trg_torrent_graph_expose(GtkWidget * widget, - GdkEventExpose * event, gpointer data_ptr) + GdkEventExpose * event, gpointer data_ptr) { TrgTorrentGraph *g = TRG_TORRENT_GRAPH(data_ptr); TrgTorrentGraphPrivate *priv = TRG_TORRENT_GRAPH_GET_PRIVATE(data_ptr); @@ -264,22 +264,22 @@ trg_torrent_graph_expose(GtkWidget * widget, gdouble sample_width, x_offset; if (priv->background == NULL) - trg_torrent_graph_draw_background(g); + trg_torrent_graph_draw_background(g); window = gtk_widget_get_window(priv->disp); gtk_widget_get_allocation(priv->disp, &allocation); gdk_draw_drawable(window, - priv->gc, - priv->background, - 0, 0, 0, 0, allocation.width, allocation.height); + priv->gc, + priv->background, + 0, 0, 0, 0, allocation.width, allocation.height); sample_width = - (float) (priv->draw_width - priv->rmargin - - priv->indent) / (float) GRAPH_NUM_POINTS; + (float) (priv->draw_width - priv->rmargin - + priv->indent) / (float) GRAPH_NUM_POINTS; x_offset = priv->draw_width - priv->rmargin + (sample_width * 2); x_offset += - priv->rmargin - - ((sample_width / priv->frames_per_unit) * priv->render_counter); + priv->rmargin - + ((sample_width / priv->frames_per_unit) * priv->render_counter); cr = gdk_cairo_create(window); @@ -287,39 +287,39 @@ trg_torrent_graph_expose(GtkWidget * widget, cairo_set_line_cap(cr, CAIRO_LINE_CAP_ROUND); cairo_set_line_join(cr, CAIRO_LINE_JOIN_ROUND); cairo_rectangle(cr, - priv->rmargin + priv->indent + GRAPH_FRAME_WIDTH + 1, - GRAPH_FRAME_WIDTH - 1, - priv->draw_width - priv->rmargin - priv->indent - 1, - priv->real_draw_height + GRAPH_FRAME_WIDTH - 1); + priv->rmargin + priv->indent + GRAPH_FRAME_WIDTH + 1, + GRAPH_FRAME_WIDTH - 1, + priv->draw_width - priv->rmargin - priv->indent - 1, + priv->real_draw_height + GRAPH_FRAME_WIDTH - 1); cairo_clip(cr); for (j = 0; j < GRAPH_NUM_LINES; ++j) { - GList *li = priv->points; - fp = (float *) li->data; - cairo_move_to(cr, x_offset, - (1.0f - fp[j]) * priv->real_draw_height); - gdk_cairo_set_source_color(cr, &(priv->colors[j])); - - i = 0; - for (li = g_list_next(li); li != NULL; li = g_list_next(li)) { - GList *lli = g_list_previous(li); - float *lfp = (float *) lli->data; - fp = (float *) li->data; - - i++; - - if (fp[j] == -1.0f) - continue; - - cairo_curve_to(cr, - x_offset - ((i - 0.5f) * priv->graph_delx), - (1.0f - lfp[j]) * priv->real_draw_height + 3.5f, - x_offset - ((i - 0.5f) * priv->graph_delx), - (1.0f - fp[j]) * priv->real_draw_height + 3.5f, - x_offset - (i * priv->graph_delx), - (1.0f - fp[j]) * priv->real_draw_height + 3.5f); - } - cairo_stroke(cr); + GList *li = priv->points; + fp = (float *) li->data; + cairo_move_to(cr, x_offset, + (1.0f - fp[j]) * priv->real_draw_height); + gdk_cairo_set_source_color(cr, &(priv->colors[j])); + + i = 0; + for (li = g_list_next(li); li != NULL; li = g_list_next(li)) { + GList *lli = g_list_previous(li); + float *lfp = (float *) lli->data; + fp = (float *) li->data; + + i++; + + if (fp[j] == -1.0f) + continue; + + cairo_curve_to(cr, + x_offset - ((i - 0.5f) * priv->graph_delx), + (1.0f - lfp[j]) * priv->real_draw_height + 3.5f, + x_offset - ((i - 0.5f) * priv->graph_delx), + (1.0f - fp[j]) * priv->real_draw_height + 3.5f, + x_offset - (i * priv->graph_delx), + (1.0f - fp[j]) * priv->real_draw_height + 3.5f); + } + cairo_stroke(cr); } cairo_destroy(cr); @@ -342,7 +342,7 @@ static void trg_torrent_graph_dispose(GObject * object) trg_torrent_graph_stop(g); if (priv->timer_index) - g_source_remove(priv->timer_index); + g_source_remove(priv->timer_index); trg_torrent_graph_clear_background(g); @@ -354,11 +354,11 @@ void trg_torrent_graph_start(TrgTorrentGraph * g) TrgTorrentGraphPrivate *priv = TRG_TORRENT_GRAPH_GET_PRIVATE(g); if (!priv->timer_index) { - trg_torrent_graph_update(g); + trg_torrent_graph_update(g); - priv->timer_index = - g_timeout_add(priv->speed / priv->frames_per_unit, - trg_torrent_graph_update, g); + priv->timer_index = + g_timeout_add(priv->speed / priv->frames_per_unit, + trg_torrent_graph_update, g); } priv->draw = TRUE; @@ -371,8 +371,8 @@ static unsigned get_max_value_element(TrgTorrentGraph * g) int i; for (i = 0; i < GRAPH_NUM_POINTS; i++) - if (priv->values[i] > r) - r = priv->values[i]; + if (priv->values[i] > r) + r = priv->values[i]; return r; } @@ -382,7 +382,7 @@ static void trg_torrent_graph_update_net(TrgTorrentGraph * g) TrgTorrentGraphPrivate *priv = TRG_TORRENT_GRAPH_GET_PRIVATE(g); unsigned max, new_max, bak_max, pow2, base10, coef10, factor10, - num_bars; + num_bars; float scale; char speed[32]; @@ -402,17 +402,17 @@ static void trg_torrent_graph_update_net(TrgTorrentGraph * g) trg_strlspeed(speed, (gint64) (priv->out / KILOBYTE_FACTOR)); labelMarkup = - g_markup_printf_escaped("<span font_size=\"small\" color=\"" - GRAPH_OUT_COLOR "\">%s: %s</span>", - _("Total Uploading"), speed); + g_markup_printf_escaped("<span font_size=\"small\" color=\"" + GRAPH_OUT_COLOR "\">%s: %s</span>", + _("Total Uploading"), speed); gtk_label_set_markup(GTK_LABEL(priv->label_out), labelMarkup); g_free(labelMarkup); trg_strlspeed(speed, (gint64) (priv->in / 1024)); labelMarkup = - g_markup_printf_escaped("<span font_size=\"small\" color=\"" - GRAPH_IN_COLOR "\">%s: %s</span>", - _("Total Downloading"), speed); + g_markup_printf_escaped("<span font_size=\"small\" color=\"" + GRAPH_IN_COLOR "\">%s: %s</span>", + _("Total Downloading"), speed); gtk_label_set_markup(GTK_LABEL(priv->label_in), labelMarkup); g_free(labelMarkup); @@ -421,9 +421,9 @@ static void trg_torrent_graph_update_net(TrgTorrentGraph * g) priv->cur = (priv->cur + 1) % GRAPH_NUM_POINTS; if (max >= priv->max) - new_max = max; + new_max = max; else - new_max = get_max_value_element(g); + new_max = get_max_value_element(g); bak_max = new_max; new_max = 1.1 * new_max; @@ -437,25 +437,25 @@ static void trg_torrent_graph_update_net(TrgTorrentGraph * g) num_bars = trg_torrent_graph_get_num_bars(g); if (coef10 % num_bars != 0) - coef10 = coef10 + (num_bars - coef10 % num_bars); + coef10 = coef10 + (num_bars - coef10 % num_bars); new_max = coef10 * (1UL << (base10 * 10)); if (bak_max > new_max) { - new_max = bak_max; + new_max = bak_max; } if ((0.8 * priv->max) < new_max && new_max <= priv->max) - return; + return; scale = 1.0f * priv->max / new_max; for (li = priv->points; li != NULL; li = g_list_next(li)) { - float *fp = (float *) li->data; - if (fp[0] >= 0.0f) { - fp[0] *= scale; - fp[1] *= scale; - } + float *fp = (float *) li->data; + if (fp[0] >= 0.0f) { + fp[0] *= scale; + fp[1] *= scale; + } } priv->max = new_max; @@ -464,10 +464,10 @@ static void trg_torrent_graph_update_net(TrgTorrentGraph * g) } static GObject *trg_torrent_graph_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam * - construct_params) + guint + n_construct_properties, + GObjectConstructParam * + construct_params) { GObject *object; TrgTorrentGraphPrivate *priv; @@ -475,10 +475,10 @@ static GObject *trg_torrent_graph_constructor(GType type, int i; object = - G_OBJECT_CLASS - (trg_torrent_graph_parent_class)->constructor(type, - n_construct_properties, - construct_params); + G_OBJECT_CLASS + (trg_torrent_graph_parent_class)->constructor(type, + n_construct_properties, + construct_params); priv = TRG_TORRENT_GRAPH_GET_PRIVATE(object); priv->draw_width = 0; @@ -526,9 +526,9 @@ static GObject *trg_torrent_graph_constructor(GType type, priv->disp = gtk_drawing_area_new(); g_signal_connect(G_OBJECT(priv->disp), "expose_event", - G_CALLBACK(trg_torrent_graph_expose), object); + G_CALLBACK(trg_torrent_graph_expose), object); g_signal_connect(G_OBJECT(priv->disp), "configure_event", - G_CALLBACK(trg_torrent_graph_configure), object); + G_CALLBACK(trg_torrent_graph_configure), object); gtk_widget_set_events(priv->disp, GDK_EXPOSURE_MASK); @@ -536,10 +536,10 @@ static GObject *trg_torrent_graph_constructor(GType type, priv->points = NULL; for (i = 0; i < GRAPH_NUM_DATA_BLOCK_ELEMENTS; i++) { - priv->data_block[i] = -1.0f; - if (i % GRAPH_NUM_LINES == 0) - priv->points = - g_list_append(priv->points, &priv->data_block[i]); + priv->data_block[i] = -1.0f; + if (i % GRAPH_NUM_LINES == 0) + priv->points = + g_list_append(priv->points, &priv->data_block[i]); } return object; @@ -583,8 +583,8 @@ void trg_torrent_graph_clear_background(TrgTorrentGraph * g) TrgTorrentGraphPrivate *priv = TRG_TORRENT_GRAPH_GET_PRIVATE(g); if (priv->background) { - g_object_unref(priv->background); - priv->background = NULL; + g_object_unref(priv->background); + priv->background = NULL; } } @@ -593,18 +593,18 @@ static gboolean trg_torrent_graph_update(gpointer user_data) { TrgTorrentGraph *g = TRG_TORRENT_GRAPH(user_data); TrgTorrentGraphPrivate *priv = - TRG_TORRENT_GRAPH_GET_PRIVATE(user_data); + TRG_TORRENT_GRAPH_GET_PRIVATE(user_data); if (priv->render_counter == priv->frames_per_unit - 1) - trg_torrent_graph_update_net(g); + trg_torrent_graph_update_net(g); if (priv->draw) - trg_torrent_graph_draw(g); + trg_torrent_graph_draw(g); priv->render_counter++; if (priv->render_counter >= priv->frames_per_unit) - priv->render_counter = 0; + priv->render_counter = 0; return TRUE; } @@ -617,18 +617,18 @@ unsigned trg_torrent_graph_get_num_bars(TrgTorrentGraph * g) switch ((int) (priv->draw_height / (priv->fontsize + 14))) { case 0: case 1: - n = 1; - break; + n = 1; + break; case 2: case 3: - n = 2; - break; + n = 2; + break; case 4: - n = 4; - break; + n = 4; + break; default: - n = 5; - break; + n = 5; + break; } return n; diff --git a/src/trg-torrent-graph.h b/src/trg-torrent-graph.h index 7a9e7c9..c71f3b6 100644 --- a/src/trg-torrent-graph.h +++ b/src/trg-torrent-graph.h @@ -45,8 +45,8 @@ void trg_torrent_graph_stop(TrgTorrentGraph * g); void trg_torrent_graph_change_speed(TrgTorrentGraph * g, guint new_speed); void trg_torrent_graph_set_speed(TrgTorrentGraph * g, - trg_torrent_model_update_stats * stats); + trg_torrent_model_update_stats * stats); void trg_torrent_graph_set_nothing(TrgTorrentGraph * g); G_END_DECLS -#endif /* _TRG_TORRENT_GRAPH */ +#endif /* _TRG_TORRENT_GRAPH */ diff --git a/src/trg-torrent-model.c b/src/trg-torrent-model.c index 678f39a..7f9f922 100644 --- a/src/trg-torrent-model.c +++ b/src/trg-torrent-model.c @@ -82,9 +82,9 @@ static void trg_torrent_model_dispose(GObject * object) static void update_torrent_iter(TrgTorrentModel * model, TrgClient * tc, gint64 rpcv, - gint64 serial, GtkTreeIter * iter, JsonObject * t, - trg_torrent_model_update_stats * stats, - gboolean * updateFilters); + gint64 serial, GtkTreeIter * iter, JsonObject * t, + trg_torrent_model_update_stats * stats, + gboolean * updateFilters); static void trg_torrent_model_class_init(TrgTorrentModelClass * klass) { @@ -94,75 +94,75 @@ static void trg_torrent_model_class_init(TrgTorrentModelClass * klass) object_class->dispose = trg_torrent_model_dispose; signals[TMODEL_TORRENT_COMPLETED] = g_signal_new("torrent-completed", - G_TYPE_FROM_CLASS - (object_class), - G_SIGNAL_RUN_LAST | - G_SIGNAL_ACTION, - G_STRUCT_OFFSET - (TrgTorrentModelClass, - torrent_completed), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, - G_TYPE_POINTER); + G_TYPE_FROM_CLASS + (object_class), + G_SIGNAL_RUN_LAST | + G_SIGNAL_ACTION, + G_STRUCT_OFFSET + (TrgTorrentModelClass, + torrent_completed), + NULL, NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); signals[TMODEL_TORRENT_ADDED] = g_signal_new("torrent-added", - G_TYPE_FROM_CLASS - (object_class), - G_SIGNAL_RUN_LAST | - G_SIGNAL_ACTION, - G_STRUCT_OFFSET - (TrgTorrentModelClass, - torrent_added), NULL, - NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, - G_TYPE_POINTER); + G_TYPE_FROM_CLASS + (object_class), + G_SIGNAL_RUN_LAST | + G_SIGNAL_ACTION, + G_STRUCT_OFFSET + (TrgTorrentModelClass, + torrent_added), NULL, + NULL, + g_cclosure_marshal_VOID__POINTER, + G_TYPE_NONE, 1, + G_TYPE_POINTER); signals[TMODEL_UPDATE_FILTERS] = g_signal_new("update-filters", - G_TYPE_FROM_CLASS - (object_class), - G_SIGNAL_RUN_LAST | - G_SIGNAL_ACTION, - G_STRUCT_OFFSET - (TrgTorrentModelClass, - torrent_removed), NULL, - NULL, - g_cclosure_marshal_VOID__VOID, - G_TYPE_NONE, 0); + G_TYPE_FROM_CLASS + (object_class), + G_SIGNAL_RUN_LAST | + G_SIGNAL_ACTION, + G_STRUCT_OFFSET + (TrgTorrentModelClass, + torrent_removed), NULL, + NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); } trg_torrent_model_update_stats *trg_torrent_model_get_stats(TrgTorrentModel - * model) + * model) { TrgTorrentModelPrivate *priv = TRG_TORRENT_MODEL_GET_PRIVATE(model); return &(priv->stats); } static void trg_torrent_model_count_peers(TrgTorrentModel * model, - GtkTreeIter * iter, - JsonObject * t) + GtkTreeIter * iter, + JsonObject * t) { GList *trackersList = - json_array_get_elements(torrent_get_tracker_stats(t)); + json_array_get_elements(torrent_get_tracker_stats(t)); gint seeders = 0; gint leechers = 0; gint downloads = 0; GList *li; for (li = trackersList; li; li = g_list_next(li)) { - JsonObject *tracker = json_node_get_object((JsonNode *) li->data); + JsonObject *tracker = json_node_get_object((JsonNode *) li->data); - seeders += tracker_stats_get_seeder_count(tracker); - leechers += tracker_stats_get_leecher_count(tracker); - downloads += tracker_stats_get_download_count(tracker); + seeders += tracker_stats_get_seeder_count(tracker); + leechers += tracker_stats_get_leecher_count(tracker); + downloads += tracker_stats_get_download_count(tracker); } g_list_free(trackersList); gtk_list_store_set(GTK_LIST_STORE(model), iter, TORRENT_COLUMN_SEEDS, - seeders, TORRENT_COLUMN_LEECHERS, leechers, - TORRENT_COLUMN_DOWNLOADS, downloads, -1); + seeders, TORRENT_COLUMN_LEECHERS, leechers, + TORRENT_COLUMN_DOWNLOADS, downloads, -1); } static void trg_torrent_model_ref_free(gpointer data) @@ -171,20 +171,20 @@ static void trg_torrent_model_ref_free(gpointer data) GtkTreeModel *model = gtk_tree_row_reference_get_model(rr); GtkTreePath *path = gtk_tree_row_reference_get_path(rr); if (path) { - GtkTreeIter iter; - JsonObject *json; - if (gtk_tree_model_get_iter(model, &iter, path)) { - gtk_tree_model_get(model, &iter, TORRENT_COLUMN_JSON, &json, - -1); - json_object_unref(json); - g_object_set_data(G_OBJECT(model), PROP_REMOVE_IN_PROGRESS, - GINT_TO_POINTER(TRUE)); - gtk_list_store_remove(GTK_LIST_STORE(model), &iter); - g_object_set_data(G_OBJECT(model), PROP_REMOVE_IN_PROGRESS, - GINT_TO_POINTER(FALSE)); - } - - gtk_tree_path_free(path); + GtkTreeIter iter; + JsonObject *json; + if (gtk_tree_model_get_iter(model, &iter, path)) { + gtk_tree_model_get(model, &iter, TORRENT_COLUMN_JSON, &json, + -1); + json_object_unref(json); + g_object_set_data(G_OBJECT(model), PROP_REMOVE_IN_PROGRESS, + GINT_TO_POINTER(TRUE)); + gtk_list_store_remove(GTK_LIST_STORE(model), &iter); + g_object_set_data(G_OBJECT(model), PROP_REMOVE_IN_PROGRESS, + GINT_TO_POINTER(FALSE)); + } + + gtk_tree_path_free(path); } gtk_tree_row_reference_free(rr); @@ -234,14 +234,14 @@ static void trg_torrent_model_init(TrgTorrentModel * self) column_types[TORRENT_COLUMN_LASTACTIVE] = G_TYPE_INT64; gtk_list_store_set_column_types(GTK_LIST_STORE(self), - TORRENT_COLUMN_COLUMNS, column_types); + TORRENT_COLUMN_COLUMNS, column_types); priv->ht = g_hash_table_new_full(g_int64_hash, g_int64_equal, - (GDestroyNotify) g_free, - trg_torrent_model_ref_free); + (GDestroyNotify) g_free, + trg_torrent_model_ref_free); g_object_set_data(G_OBJECT(self), PROP_REMOVE_IN_PROGRESS, - GINT_TO_POINTER(FALSE)); + GINT_TO_POINTER(FALSE)); priv->urlHostRegex = trg_uri_host_regex_new(); } @@ -249,28 +249,28 @@ static void trg_torrent_model_init(TrgTorrentModel * self) gboolean trg_torrent_model_is_remove_in_progress(TrgTorrentModel * model) { return (gboolean) GPOINTER_TO_INT(g_object_get_data - (G_OBJECT(model), - PROP_REMOVE_IN_PROGRESS)); + (G_OBJECT(model), + PROP_REMOVE_IN_PROGRESS)); } static gboolean trg_torrent_model_reload_dir_aliases_foreachfunc(GtkTreeModel * model, - GtkTreePath * - path G_GNUC_UNUSED, - GtkTreeIter * iter, - gpointer gdata) + GtkTreePath * + path G_GNUC_UNUSED, + GtkTreeIter * iter, + gpointer gdata) { gchar *downloadDir, *shortDownloadDir; gtk_tree_model_get(model, iter, TORRENT_COLUMN_DOWNLOADDIR, - &downloadDir, -1); + &downloadDir, -1); shortDownloadDir = - shorten_download_dir((TrgClient *) gdata, downloadDir); + shorten_download_dir((TrgClient *) gdata, downloadDir); gtk_list_store_set(GTK_LIST_STORE(model), iter, - TORRENT_COLUMN_DOWNLOADDIR_SHORT, shortDownloadDir, - -1); + TORRENT_COLUMN_DOWNLOADDIR_SHORT, shortDownloadDir, + -1); g_free(downloadDir); g_free(shortDownloadDir); @@ -279,37 +279,37 @@ trg_torrent_model_reload_dir_aliases_foreachfunc(GtkTreeModel * model, } void trg_torrent_model_reload_dir_aliases(TrgClient * tc, - GtkTreeModel * model) + GtkTreeModel * model) { gtk_tree_model_foreach(model, - trg_torrent_model_reload_dir_aliases_foreachfunc, - tc); + trg_torrent_model_reload_dir_aliases_foreachfunc, + tc); } static gboolean trg_torrent_model_stats_scan_foreachfunc(GtkTreeModel * - model, - GtkTreePath * - path - G_GNUC_UNUSED, - GtkTreeIter * - iter, - gpointer gdata) + model, + GtkTreePath * + path + G_GNUC_UNUSED, + GtkTreeIter * + iter, + gpointer gdata) { trg_torrent_model_update_stats *stats = - (trg_torrent_model_update_stats *) gdata; + (trg_torrent_model_update_stats *) gdata; guint flags; gtk_tree_model_get(model, iter, TORRENT_COLUMN_FLAGS, &flags, -1); if (flags & TORRENT_FLAG_SEEDING) - stats->seeding++; + stats->seeding++; else if (flags & TORRENT_FLAG_DOWNLOADING) - stats->down++; + stats->down++; else if (flags & TORRENT_FLAG_PAUSED) - stats->paused++; + stats->paused++; if (flags & TORRENT_FLAG_ERROR) - stats->error++; + stats->error++; stats->count++; @@ -327,59 +327,59 @@ gchar *shorten_download_dir(TrgClient * tc, const gchar * downloadDir) { TrgPrefs *prefs = trg_client_get_prefs(tc); JsonArray *labels = - trg_prefs_get_array(prefs, TRG_PREFS_KEY_DESTINATIONS, - TRG_PREFS_CONNECTION); + trg_prefs_get_array(prefs, TRG_PREFS_KEY_DESTINATIONS, + TRG_PREFS_CONNECTION); JsonObject *session = trg_client_get_session(tc); const gchar *defaultDownloadDir = session_get_download_dir(session); gchar *shortDownloadDir = NULL; if (labels) { - GList *labelsList = json_array_get_elements(labels); - if (labelsList) { - GList *li; - for (li = labelsList; li; li = g_list_next(li)) { - JsonObject *labelObj = json_node_get_object((JsonNode *) - li->data); - const gchar *labelDir = - json_object_get_string_member(labelObj, - TRG_PREFS_KEY_DESTINATIONS_SUBKEY_DIR); - if (!g_strcmp0(downloadDir, labelDir)) { - const gchar *labelLabel = - json_object_get_string_member(labelObj, - TRG_PREFS_SUBKEY_LABEL); - shortDownloadDir = g_strdup(labelLabel); - break; - } - } - g_list_free(labelsList); - } + GList *labelsList = json_array_get_elements(labels); + if (labelsList) { + GList *li; + for (li = labelsList; li; li = g_list_next(li)) { + JsonObject *labelObj = json_node_get_object((JsonNode *) + li->data); + const gchar *labelDir = + json_object_get_string_member(labelObj, + TRG_PREFS_KEY_DESTINATIONS_SUBKEY_DIR); + if (!g_strcmp0(downloadDir, labelDir)) { + const gchar *labelLabel = + json_object_get_string_member(labelObj, + TRG_PREFS_SUBKEY_LABEL); + shortDownloadDir = g_strdup(labelLabel); + break; + } + } + g_list_free(labelsList); + } } if (shortDownloadDir) { - return shortDownloadDir; + return shortDownloadDir; } else { - if (!g_strcmp0(defaultDownloadDir, downloadDir)) - return g_strdup(_("Default")); + if (!g_strcmp0(defaultDownloadDir, downloadDir)) + return g_strdup(_("Default")); - if (g_str_has_prefix(downloadDir, defaultDownloadDir)) { - int offset = strlen(defaultDownloadDir); - if (*(downloadDir + offset) == '/') - offset++; + if (g_str_has_prefix(downloadDir, defaultDownloadDir)) { + int offset = strlen(defaultDownloadDir); + if (*(downloadDir + offset) == '/') + offset++; - if (offset < strlen(downloadDir)) - return g_strdup(downloadDir + offset); - } + if (offset < strlen(downloadDir)) + return g_strdup(downloadDir + offset); + } } return g_strdup(downloadDir); } static inline void update_torrent_iter(TrgTorrentModel * model, - TrgClient * tc, gint64 rpcv, - gint64 serial, GtkTreeIter * iter, - JsonObject * t, - trg_torrent_model_update_stats * - stats, gboolean * updateFilters) + TrgClient * tc, gint64 rpcv, + gint64 serial, GtkTreeIter * iter, + JsonObject * t, + trg_torrent_model_update_stats * + stats, gboolean * updateFilters) { TrgTorrentModelPrivate *priv = TRG_TORRENT_MODEL_GET_PRIVATE(model); GtkListStore *ls = GTK_LIST_STORE(model); @@ -413,172 +413,172 @@ static inline void update_torrent_iter(TrgTorrentModel * model, trackerStats = torrent_get_tracker_stats(t); gtk_tree_model_get(GTK_TREE_MODEL(model), iter, TORRENT_COLUMN_FLAGS, - &lastFlags, TORRENT_COLUMN_JSON, &lastJson, - TORRENT_COLUMN_DOWNLOADDIR, &lastDownloadDir, -1); + &lastFlags, TORRENT_COLUMN_JSON, &lastJson, + TORRENT_COLUMN_DOWNLOADDIR, &lastDownloadDir, -1); json_object_ref(t); if (json_array_get_length(trackerStats) > 0) { - JsonObject *firstTracker = - json_array_get_object_element(trackerStats, - 0); - firstTrackerHost = trg_gregex_get_first(priv->urlHostRegex, - tracker_stats_get_host - (firstTracker)); + JsonObject *firstTracker = + json_array_get_object_element(trackerStats, + 0); + firstTrackerHost = trg_gregex_get_first(priv->urlHostRegex, + tracker_stats_get_host + (firstTracker)); } lpd = peerfrom_get_lpd(pf); if (newFlags & TORRENT_FLAG_ACTIVE) { - if (lpd >= 0) { - peerSources = - g_strdup_printf("%ld / %ld / %ld / %ld / %ld / %ld / %ld", - peerfrom_get_trackers(pf), - peerfrom_get_incoming(pf), - peerfrom_get_ltep(pf), - peerfrom_get_dht(pf), peerfrom_get_pex(pf), - lpd, peerfrom_get_resume(pf)); - } else { - peerSources = - g_strdup_printf("%ld / %ld / %ld / %ld / %ld / N/A / %ld", - peerfrom_get_trackers(pf), - peerfrom_get_incoming(pf), - peerfrom_get_ltep(pf), - peerfrom_get_dht(pf), peerfrom_get_pex(pf), - peerfrom_get_resume(pf)); - } + if (lpd >= 0) { + peerSources = + g_strdup_printf("%ld / %ld / %ld / %ld / %ld / %ld / %ld", + peerfrom_get_trackers(pf), + peerfrom_get_incoming(pf), + peerfrom_get_ltep(pf), + peerfrom_get_dht(pf), peerfrom_get_pex(pf), + lpd, peerfrom_get_resume(pf)); + } else { + peerSources = + g_strdup_printf("%ld / %ld / %ld / %ld / %ld / N/A / %ld", + peerfrom_get_trackers(pf), + peerfrom_get_incoming(pf), + peerfrom_get_ltep(pf), + peerfrom_get_dht(pf), peerfrom_get_pex(pf), + peerfrom_get_resume(pf)); + } } #ifdef DEBUG gtk_list_store_set(ls, iter, TORRENT_COLUMN_ICON, statusIcon, -1); gtk_list_store_set(ls, iter, - TORRENT_COLUMN_NAME, torrent_get_name(t), -1); + TORRENT_COLUMN_NAME, torrent_get_name(t), -1); gtk_list_store_set(ls, iter, - TORRENT_COLUMN_SIZE, torrent_get_size(t), -1); + TORRENT_COLUMN_SIZE, torrent_get_size(t), -1); gtk_list_store_set(ls, iter, - TORRENT_COLUMN_DONE, - (newFlags & TORRENT_FLAG_CHECKING) ? - torrent_get_recheck_progress(t) - : torrent_get_percent_done(t), -1); + TORRENT_COLUMN_DONE, + (newFlags & TORRENT_FLAG_CHECKING) ? + torrent_get_recheck_progress(t) + : torrent_get_percent_done(t), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_STATUS, statusString, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_DOWNSPEED, downRate, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_FLAGS, newFlags, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_UPSPEED, upRate, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_ETA, - torrent_get_eta(t), -1); + torrent_get_eta(t), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_UPLOADED, uploaded, -1); gtk_list_store_set(ls, iter, - TORRENT_COLUMN_DOWNLOADED, downloaded, -1); + TORRENT_COLUMN_DOWNLOADED, downloaded, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_RATIO, - uploaded > 0 - && downloaded > - 0 ? (double) uploaded / (double) downloaded : 0, - -1); + uploaded > 0 + && downloaded > + 0 ? (double) uploaded / (double) downloaded : 0, + -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_ID, id, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_JSON, t, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_UPDATESERIAL, serial, -1); gtk_list_store_set(ls, iter, - TORRENT_COLUMN_ADDED, torrent_get_added_date(t), - -1); + TORRENT_COLUMN_ADDED, torrent_get_added_date(t), + -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_DOWNLOADDIR, - downloadDir, -1); + downloadDir, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_BANDWIDTH_PRIORITY, - torrent_get_bandwidth_priority(t), -1); + torrent_get_bandwidth_priority(t), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_DONE_DATE, - torrent_get_done_date(t), -1); + torrent_get_done_date(t), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_FROMPEX, - peerfrom_get_pex(pf), -1); + peerfrom_get_pex(pf), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_FROMDHT, - peerfrom_get_dht(pf), -1); + peerfrom_get_dht(pf), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_FROMTRACKERS, - peerfrom_get_trackers(pf), -1); + peerfrom_get_trackers(pf), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_FROMLTEP, - peerfrom_get_ltep(pf), -1); + peerfrom_get_ltep(pf), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_FROMRESUME, - peerfrom_get_resume(pf), -1); + peerfrom_get_resume(pf), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_FROMINCOMING, - peerfrom_get_incoming(pf), -1); + peerfrom_get_incoming(pf), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_PEER_SOURCES, - peerSources, -1); + peerSources, -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_PEERS_CONNECTED, - torrent_get_peers_connected(t), -1); + torrent_get_peers_connected(t), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_PEERS_TO_US, - torrent_get_peers_sending_to_us(t), -1); + torrent_get_peers_sending_to_us(t), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_PEERS_FROM_US, - torrent_get_peers_getting_from_us(t), -1); + torrent_get_peers_getting_from_us(t), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_TRACKERHOST, - firstTrackerHost ? firstTrackerHost : "", -1); + firstTrackerHost ? firstTrackerHost : "", -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_QUEUE_POSITION, - torrent_get_queue_position(t), -1); + torrent_get_queue_position(t), -1); gtk_list_store_set(ls, iter, TORRENT_COLUMN_LASTACTIVE, - torrent_get_activity_date(t), -1); + torrent_get_activity_date(t), -1); #else gtk_list_store_set(ls, iter, TORRENT_COLUMN_ICON, statusIcon, - TORRENT_COLUMN_ADDED, torrent_get_added_date(t), - TORRENT_COLUMN_DONE_DATE, torrent_get_done_date(t), - TORRENT_COLUMN_NAME, torrent_get_name(t), - TORRENT_COLUMN_SIZE, torrent_get_size(t), - TORRENT_COLUMN_DONE, - (newFlags & TORRENT_FLAG_CHECKING) ? - torrent_get_recheck_progress(t) - : torrent_get_percent_done(t), - TORRENT_COLUMN_STATUS, statusString, - TORRENT_COLUMN_DOWNSPEED, downRate, - TORRENT_COLUMN_FLAGS, newFlags, - TORRENT_COLUMN_UPSPEED, upRate, TORRENT_COLUMN_ETA, - torrent_get_eta(t), TORRENT_COLUMN_UPLOADED, - uploaded, TORRENT_COLUMN_DOWNLOADED, downloaded, - TORRENT_COLUMN_FROMPEX, peerfrom_get_pex(pf), - TORRENT_COLUMN_FROMDHT, peerfrom_get_dht(pf), - TORRENT_COLUMN_FROMTRACKERS, - peerfrom_get_trackers(pf), TORRENT_COLUMN_FROMLTEP, - peerfrom_get_ltep(pf), TORRENT_COLUMN_FROMRESUME, - peerfrom_get_resume(pf), - TORRENT_COLUMN_FROMINCOMING, - peerfrom_get_incoming(pf), - TORRENT_COLUMN_PEER_SOURCES, peerSources, - TORRENT_COLUMN_PEERS_CONNECTED, - torrent_get_peers_connected(t), - TORRENT_COLUMN_PEERS_TO_US, - torrent_get_peers_sending_to_us(t), - TORRENT_COLUMN_PEERS_FROM_US, - torrent_get_peers_getting_from_us(t), - TORRENT_COLUMN_QUEUE_POSITION, - torrent_get_queue_position(t), - TORRENT_COLUMN_LASTACTIVE, - torrent_get_activity_date(t), TORRENT_COLUMN_RATIO, - uploaded > 0 - && downloaded > - 0 ? (double) uploaded / (double) downloaded : 0, - TORRENT_COLUMN_DOWNLOADDIR, downloadDir, - TORRENT_COLUMN_BANDWIDTH_PRIORITY, - torrent_get_bandwidth_priority(t), - TORRENT_COLUMN_ID, id, TORRENT_COLUMN_JSON, t, - TORRENT_COLUMN_TRACKERHOST, - firstTrackerHost ? firstTrackerHost : "", - TORRENT_COLUMN_UPDATESERIAL, serial, -1); + TORRENT_COLUMN_ADDED, torrent_get_added_date(t), + TORRENT_COLUMN_DONE_DATE, torrent_get_done_date(t), + TORRENT_COLUMN_NAME, torrent_get_name(t), + TORRENT_COLUMN_SIZE, torrent_get_size(t), + TORRENT_COLUMN_DONE, + (newFlags & TORRENT_FLAG_CHECKING) ? + torrent_get_recheck_progress(t) + : torrent_get_percent_done(t), + TORRENT_COLUMN_STATUS, statusString, + TORRENT_COLUMN_DOWNSPEED, downRate, + TORRENT_COLUMN_FLAGS, newFlags, + TORRENT_COLUMN_UPSPEED, upRate, TORRENT_COLUMN_ETA, + torrent_get_eta(t), TORRENT_COLUMN_UPLOADED, + uploaded, TORRENT_COLUMN_DOWNLOADED, downloaded, + TORRENT_COLUMN_FROMPEX, peerfrom_get_pex(pf), + TORRENT_COLUMN_FROMDHT, peerfrom_get_dht(pf), + TORRENT_COLUMN_FROMTRACKERS, + peerfrom_get_trackers(pf), TORRENT_COLUMN_FROMLTEP, + peerfrom_get_ltep(pf), TORRENT_COLUMN_FROMRESUME, + peerfrom_get_resume(pf), + TORRENT_COLUMN_FROMINCOMING, + peerfrom_get_incoming(pf), + TORRENT_COLUMN_PEER_SOURCES, peerSources, + TORRENT_COLUMN_PEERS_CONNECTED, + torrent_get_peers_connected(t), + TORRENT_COLUMN_PEERS_TO_US, + torrent_get_peers_sending_to_us(t), + TORRENT_COLUMN_PEERS_FROM_US, + torrent_get_peers_getting_from_us(t), + TORRENT_COLUMN_QUEUE_POSITION, + torrent_get_queue_position(t), + TORRENT_COLUMN_LASTACTIVE, + torrent_get_activity_date(t), TORRENT_COLUMN_RATIO, + uploaded > 0 + && downloaded > + 0 ? (double) uploaded / (double) downloaded : 0, + TORRENT_COLUMN_DOWNLOADDIR, downloadDir, + TORRENT_COLUMN_BANDWIDTH_PRIORITY, + torrent_get_bandwidth_priority(t), + TORRENT_COLUMN_ID, id, TORRENT_COLUMN_JSON, t, + TORRENT_COLUMN_TRACKERHOST, + firstTrackerHost ? firstTrackerHost : "", + TORRENT_COLUMN_UPDATESERIAL, serial, -1); #endif if (!lastDownloadDir || g_strcmp0(downloadDir, lastDownloadDir)) { - gchar *shortDownloadDir = shorten_download_dir(tc, downloadDir); - gtk_list_store_set(ls, iter, TORRENT_COLUMN_DOWNLOADDIR_SHORT, - shortDownloadDir, -1); - g_free(shortDownloadDir); - *updateFilters = TRUE; + gchar *shortDownloadDir = shorten_download_dir(tc, downloadDir); + gtk_list_store_set(ls, iter, TORRENT_COLUMN_DOWNLOADDIR_SHORT, + shortDownloadDir, -1); + g_free(shortDownloadDir); + *updateFilters = TRUE; } if (lastJson) - json_object_unref(lastJson); + json_object_unref(lastJson); if ((lastFlags & TORRENT_FLAG_DOWNLOADING) - && (newFlags & TORRENT_FLAG_COMPLETE)) - g_signal_emit(model, signals[TMODEL_TORRENT_COMPLETED], 0, iter); + && (newFlags & TORRENT_FLAG_COMPLETE)) + g_signal_emit(model, signals[TMODEL_TORRENT_COMPLETED], 0, iter); trg_torrent_model_count_peers(model, iter, t); if (firstTrackerHost) - g_free(firstTrackerHost); + g_free(firstTrackerHost); if (peerSources) - g_free(peerSources); + g_free(peerSources); g_free(lastDownloadDir); g_free(statusString); @@ -602,71 +602,71 @@ GHashTable *get_torrent_table(TrgTorrentModel * model) } gboolean trg_model_find_removed_foreachfunc(GtkTreeModel * model, - GtkTreePath * - path G_GNUC_UNUSED, - GtkTreeIter * iter, - gpointer gdata) + GtkTreePath * + path G_GNUC_UNUSED, + GtkTreeIter * iter, + gpointer gdata) { struct TrgModelRemoveData *args = (struct TrgModelRemoveData *) gdata; gint64 rowSerial; gtk_tree_model_get(model, iter, TORRENT_COLUMN_UPDATESERIAL, - &rowSerial, -1); + &rowSerial, -1); if (rowSerial != args->currentSerial) { - gint64 *id = g_new(gint64, 1); - gtk_tree_model_get(model, iter, TORRENT_COLUMN_ID, id, -1); - args->toRemove = g_list_append(args->toRemove, id); + gint64 *id = g_new(gint64, 1); + gtk_tree_model_get(model, iter, TORRENT_COLUMN_ID, id, -1); + args->toRemove = g_list_append(args->toRemove, id); } return FALSE; } GList *trg_torrent_model_find_removed(GtkTreeModel * model, - gint64 currentSerial) + gint64 currentSerial) { struct TrgModelRemoveData args; args.toRemove = NULL; args.currentSerial = currentSerial; gtk_tree_model_foreach(GTK_TREE_MODEL(model), - trg_model_find_removed_foreachfunc, &args); + trg_model_find_removed_foreachfunc, &args); return args.toRemove; } gboolean get_torrent_data(GHashTable * table, gint64 id, JsonObject ** t, - GtkTreeIter * out_iter) + GtkTreeIter * out_iter) { gpointer result = g_hash_table_lookup(table, &id); gboolean found = FALSE; if (result) { - GtkTreeRowReference *rr = (GtkTreeRowReference *) result; - GtkTreePath *path = gtk_tree_row_reference_get_path(rr); - GtkTreeIter iter; - if (path) { - GtkTreeModel *model = gtk_tree_row_reference_get_model(rr); - gtk_tree_model_get_iter(model, &iter, path); - if (out_iter) - *out_iter = iter; - if (t) - gtk_tree_model_get(model, &iter, TORRENT_COLUMN_JSON, t, - -1); - found = TRUE; - gtk_tree_path_free(path); - } + GtkTreeRowReference *rr = (GtkTreeRowReference *) result; + GtkTreePath *path = gtk_tree_row_reference_get_path(rr); + GtkTreeIter iter; + if (path) { + GtkTreeModel *model = gtk_tree_row_reference_get_model(rr); + gtk_tree_model_get_iter(model, &iter, path); + if (out_iter) + *out_iter = iter; + if (t) + gtk_tree_model_get(model, &iter, TORRENT_COLUMN_JSON, t, + -1); + found = TRUE; + gtk_tree_path_free(path); + } } return found; } trg_torrent_model_update_stats *trg_torrent_model_update(TrgTorrentModel * - model, - TrgClient * tc, - JsonObject * - response, - gint mode) + model, + TrgClient * tc, + JsonObject * + response, + gint mode) { TrgTorrentModelPrivate *priv = TRG_TORRENT_MODEL_GET_PRIVATE(model); @@ -690,76 +690,76 @@ trg_torrent_model_update_stats *trg_torrent_model_update(TrgTorrentModel * memset(&(priv->stats), 0, sizeof(trg_torrent_model_update_stats)); for (li = torrentList; li; li = g_list_next(li)) { - t = json_node_get_object((JsonNode *) li->data); - id = torrent_get_id(t); - - result = - mode == TORRENT_GET_MODE_FIRST ? NULL : - g_hash_table_lookup(priv->ht, &id); - - if (!result) { - gtk_list_store_append(GTK_LIST_STORE(model), &iter); - - update_torrent_iter(model, tc, rpcv, trg_client_get_serial(tc), - &iter, t, &(priv->stats), &updateFilters); - - path = gtk_tree_model_get_path(GTK_TREE_MODEL(model), &iter); - rr = gtk_tree_row_reference_new(GTK_TREE_MODEL(model), path); - idCopy = g_new(gint64, 1); - *idCopy = id; - g_hash_table_insert(priv->ht, idCopy, rr); - gtk_tree_path_free(path); - if (mode != TORRENT_GET_MODE_FIRST) - g_signal_emit(model, signals[TMODEL_TORRENT_ADDED], 0, - &iter); - } else { - path = gtk_tree_row_reference_get_path((GtkTreeRowReference *) - result); - if (path) { - if (gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, - path)) { - update_torrent_iter(model, tc, rpcv, - trg_client_get_serial(tc), &iter, - t, &(priv->stats), &updateFilters); - } - gtk_tree_path_free(path); - } - } + t = json_node_get_object((JsonNode *) li->data); + id = torrent_get_id(t); + + result = + mode == TORRENT_GET_MODE_FIRST ? NULL : + g_hash_table_lookup(priv->ht, &id); + + if (!result) { + gtk_list_store_append(GTK_LIST_STORE(model), &iter); + + update_torrent_iter(model, tc, rpcv, trg_client_get_serial(tc), + &iter, t, &(priv->stats), &updateFilters); + + path = gtk_tree_model_get_path(GTK_TREE_MODEL(model), &iter); + rr = gtk_tree_row_reference_new(GTK_TREE_MODEL(model), path); + idCopy = g_new(gint64, 1); + *idCopy = id; + g_hash_table_insert(priv->ht, idCopy, rr); + gtk_tree_path_free(path); + if (mode != TORRENT_GET_MODE_FIRST) + g_signal_emit(model, signals[TMODEL_TORRENT_ADDED], 0, + &iter); + } else { + path = gtk_tree_row_reference_get_path((GtkTreeRowReference *) + result); + if (path) { + if (gtk_tree_model_get_iter(GTK_TREE_MODEL(model), &iter, + path)) { + update_torrent_iter(model, tc, rpcv, + trg_client_get_serial(tc), &iter, + t, &(priv->stats), &updateFilters); + } + gtk_tree_path_free(path); + } + } } g_list_free(torrentList); if (mode == TORRENT_GET_MODE_UPDATE) { - GList *hitlist = - trg_torrent_model_find_removed(GTK_TREE_MODEL(model), - trg_client_get_serial(tc)); - if (hitlist) { - for (li = hitlist; li; li = g_list_next(li)) { - g_hash_table_remove(priv->ht, li->data); - g_free(li->data); - } - updateFilters = TRUE; - g_list_free(hitlist); - } + GList *hitlist = + trg_torrent_model_find_removed(GTK_TREE_MODEL(model), + trg_client_get_serial(tc)); + if (hitlist) { + for (li = hitlist; li; li = g_list_next(li)) { + g_hash_table_remove(priv->ht, li->data); + g_free(li->data); + } + updateFilters = TRUE; + g_list_free(hitlist); + } } else if (mode > TORRENT_GET_MODE_FIRST) { - removedTorrents = get_torrents_removed(args); - if (removedTorrents) { - GList *hitlist = json_array_get_elements(removedTorrents); - for (li = hitlist; li; li = g_list_next(li)) { - id = json_node_get_int((JsonNode *) li->data); - g_hash_table_remove(priv->ht, &id); - updateFilters = TRUE; - } - g_list_free(hitlist); - } + removedTorrents = get_torrents_removed(args); + if (removedTorrents) { + GList *hitlist = json_array_get_elements(removedTorrents); + for (li = hitlist; li; li = g_list_next(li)) { + id = json_node_get_int((JsonNode *) li->data); + g_hash_table_remove(priv->ht, &id); + updateFilters = TRUE; + } + g_list_free(hitlist); + } } if (updateFilters) - g_signal_emit(model, signals[TMODEL_UPDATE_FILTERS], 0); + g_signal_emit(model, signals[TMODEL_UPDATE_FILTERS], 0); gtk_tree_model_foreach(GTK_TREE_MODEL(model), - trg_torrent_model_stats_scan_foreachfunc, - &(priv->stats)); + trg_torrent_model_stats_scan_foreachfunc, + &(priv->stats)); return &(priv->stats); } diff --git a/src/trg-torrent-model.h b/src/trg-torrent-model.h index a29c279..38ba1b3 100644 --- a/src/trg-torrent-model.h +++ b/src/trg-torrent-model.h @@ -44,9 +44,9 @@ G_BEGIN_DECLS typedef struct { GtkListStoreClass parent_class; void (*torrent_completed) (TrgTorrentModel * model, - GtkTreeIter * iter, gpointer data); + GtkTreeIter * iter, gpointer data); void (*torrent_added) (TrgTorrentModel * model, - GtkTreeIter * iter, gpointer data); + GtkTreeIter * iter, gpointer data); void (*torrent_removed) (TrgTorrentModel * model, gpointer data); } TrgTorrentModelClass; @@ -68,16 +68,16 @@ TrgTorrentModel *trg_torrent_model_new(); G_END_DECLS gboolean find_existing_peer_item(GtkListStore * model, JsonObject * p, - GtkTreeIter * iter); + GtkTreeIter * iter); trg_torrent_model_update_stats *trg_torrent_model_update(TrgTorrentModel * - model, - TrgClient * tc, - JsonObject * - response, - gint mode); + model, + TrgClient * tc, + JsonObject * + response, + gint mode); trg_torrent_model_update_stats *trg_torrent_model_get_stats(TrgTorrentModel - * model); + * model); GHashTable *get_torrent_table(TrgTorrentModel * model); void trg_torrent_model_remove_all(TrgTorrentModel * model); @@ -85,11 +85,11 @@ void trg_torrent_model_remove_all(TrgTorrentModel * model); gboolean trg_torrent_model_is_remove_in_progress(TrgTorrentModel * model); gboolean get_torrent_data(GHashTable * table, gint64 id, JsonObject ** t, - GtkTreeIter * out_iter); + GtkTreeIter * out_iter); gchar *shorten_download_dir(TrgClient * tc, const gchar * downloadDir); void trg_torrent_model_reload_dir_aliases(TrgClient * tc, - GtkTreeModel * model); + GtkTreeModel * model); enum { TORRENT_COLUMN_ICON, @@ -131,4 +131,4 @@ enum { TORRENT_COLUMN_COLUMNS }; -#endif /* TRG_TORRENT_MODEL_H_ */ +#endif /* TRG_TORRENT_MODEL_H_ */ diff --git a/src/trg-torrent-move-dialog.c b/src/trg-torrent-move-dialog.c index bfd18f2..e6f7b71 100644 --- a/src/trg-torrent-move-dialog.c +++ b/src/trg-torrent-move-dialog.c @@ -31,7 +31,7 @@ #include "requests.h" G_DEFINE_TYPE(TrgTorrentMoveDialog, trg_torrent_move_dialog, - GTK_TYPE_DIALOG) + GTK_TYPE_DIALOG) #define TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_TORRENT_MOVE_DIALOG, TrgTorrentMoveDialogPrivate)) typedef struct _TrgTorrentMoveDialogPrivate @@ -56,24 +56,24 @@ static void trg_torrent_move_response_cb(GtkDialog * dlg, gint res_id, gpointer data) { TrgTorrentMoveDialogPrivate *priv = - TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(dlg); + TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(dlg); if (res_id == GTK_RESPONSE_ACCEPT) { - gchar *location = - trg_destination_combo_get_dir(TRG_DESTINATION_COMBO - (priv->location_combo)); - JsonNode *request = torrent_set_location(priv->ids, location, - gtk_toggle_button_get_active - (GTK_TOGGLE_BUTTON - (priv->move_check))); - g_free(location); - request_set_tag_from_ids(request, priv->ids); - trg_destination_combo_save_selection(TRG_DESTINATION_COMBO - (priv->location_combo)); - dispatch_async(priv->client, request, - on_generic_interactive_action, data); + gchar *location = + trg_destination_combo_get_dir(TRG_DESTINATION_COMBO + (priv->location_combo)); + JsonNode *request = torrent_set_location(priv->ids, location, + gtk_toggle_button_get_active + (GTK_TOGGLE_BUTTON + (priv->move_check))); + g_free(location); + request_set_tag_from_ids(request, priv->ids); + trg_destination_combo_save_selection(TRG_DESTINATION_COMBO + (priv->location_combo)); + dispatch_async(priv->client, request, + on_generic_interactive_action, data); } else { - json_array_unref(priv->ids); + json_array_unref(priv->ids); } gtk_widget_destroy(GTK_WIDGET(dlg)); } @@ -81,25 +81,25 @@ trg_torrent_move_response_cb(GtkDialog * dlg, gint res_id, gpointer data) static void location_changed(GtkWidget * w, gpointer data) { TrgTorrentMoveDialogPrivate *priv = - TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(data); + TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(data); gtk_widget_set_sensitive(priv->move_button, - trg_destination_combo_has_text - (TRG_DESTINATION_COMBO - (priv->location_combo))); + trg_destination_combo_has_text + (TRG_DESTINATION_COMBO + (priv->location_combo))); } static GObject *trg_torrent_move_dialog_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam - * construct_params) + guint + n_construct_properties, + GObjectConstructParam + * construct_params) { GObject *object = G_OBJECT_CLASS - (trg_torrent_move_dialog_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_torrent_move_dialog_parent_class)->constructor(type, + n_construct_properties, + construct_params); TrgTorrentMoveDialogPrivate *priv = - TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(object); + TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(object); gint count; gchar *msg; @@ -110,116 +110,116 @@ static GObject *trg_torrent_move_dialog_constructor(GType type, t = hig_workarea_create(); w = priv->location_combo = - trg_destination_combo_new(priv->client, - TRG_PREFS_KEY_LAST_MOVE_DESTINATION); + trg_destination_combo_new(priv->client, + TRG_PREFS_KEY_LAST_MOVE_DESTINATION); g_signal_connect(trg_destination_combo_get_entry - (TRG_DESTINATION_COMBO(w)), "changed", - G_CALLBACK(location_changed), object); + (TRG_DESTINATION_COMBO(w)), "changed", + G_CALLBACK(location_changed), object); hig_workarea_add_row(t, &row, _("Location:"), w, NULL); priv->move_check = - hig_workarea_add_wide_checkbutton(t, &row, _("Move"), TRUE); + hig_workarea_add_wide_checkbutton(t, &row, _("Move"), TRUE); gtk_window_set_destroy_with_parent(GTK_WINDOW(object), TRUE); gtk_dialog_add_button(GTK_DIALOG(object), GTK_STOCK_CLOSE, - GTK_RESPONSE_CANCEL); + GTK_RESPONSE_CANCEL); priv->move_button = - gtk_dialog_add_button(GTK_DIALOG(object), _("Move"), - GTK_RESPONSE_ACCEPT); + gtk_dialog_add_button(GTK_DIALOG(object), _("Move"), + GTK_RESPONSE_ACCEPT); gtk_widget_set_sensitive(priv->move_button, - trg_destination_combo_has_text - (TRG_DESTINATION_COMBO - (priv->location_combo))); + trg_destination_combo_has_text + (TRG_DESTINATION_COMBO + (priv->location_combo))); gtk_container_set_border_width(GTK_CONTAINER(object), GUI_PAD); gtk_dialog_set_default_response(GTK_DIALOG(object), - GTK_RESPONSE_ACCEPT); + GTK_RESPONSE_ACCEPT); gtk_dialog_set_alternative_button_order(GTK_DIALOG(object), - GTK_RESPONSE_ACCEPT, - GTK_RESPONSE_CANCEL, -1); + GTK_RESPONSE_ACCEPT, + GTK_RESPONSE_CANCEL, -1); gtk_container_set_border_width(GTK_CONTAINER(t), GUI_PAD); gtk_box_pack_start(GTK_BOX - (gtk_dialog_get_content_area(GTK_DIALOG(object))), - t, TRUE, TRUE, 0); + (gtk_dialog_get_content_area(GTK_DIALOG(object))), + t, TRUE, TRUE, 0); count = - gtk_tree_selection_count_selected_rows(gtk_tree_view_get_selection - (GTK_TREE_VIEW - (priv->treeview))); + gtk_tree_selection_count_selected_rows(gtk_tree_view_get_selection + (GTK_TREE_VIEW + (priv->treeview))); priv->ids = build_json_id_array(priv->treeview); if (count == 1) { - JsonObject *json; - const gchar *name; - - get_torrent_data(trg_client_get_torrent_table(priv->client), - trg_mw_get_selected_torrent_id(priv->win), &json, - NULL); - name = torrent_get_name(json); - msg = g_strdup_printf(_("Move %s"), name); + JsonObject *json; + const gchar *name; + + get_torrent_data(trg_client_get_torrent_table(priv->client), + trg_mw_get_selected_torrent_id(priv->win), &json, + NULL); + name = torrent_get_name(json); + msg = g_strdup_printf(_("Move %s"), name); } else { - msg = g_strdup_printf(_("Move %d torrents"), count); + msg = g_strdup_printf(_("Move %d torrents"), count); } gtk_window_set_transient_for(GTK_WINDOW(object), - GTK_WINDOW(priv->win)); + GTK_WINDOW(priv->win)); gtk_window_set_title(GTK_WINDOW(object), msg); g_signal_connect(G_OBJECT(object), - "response", - G_CALLBACK(trg_torrent_move_response_cb), priv->win); + "response", + G_CALLBACK(trg_torrent_move_response_cb), priv->win); return object; } static void trg_torrent_move_dialog_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { TrgTorrentMoveDialogPrivate *priv = - TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(object); + TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(object); switch (property_id) { case PROP_CLIENT: - g_value_set_pointer(value, priv->client); - break; + g_value_set_pointer(value, priv->client); + break; case PROP_PARENT_WINDOW: - g_value_set_object(value, priv->win); - break; + g_value_set_object(value, priv->win); + break; case PROP_TREEVIEW: - g_value_set_object(value, priv->treeview); - break; + g_value_set_object(value, priv->treeview); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static void trg_torrent_move_dialog_set_property(GObject * object, guint property_id, - const GValue * value, - GParamSpec * pspec) + const GValue * value, + GParamSpec * pspec) { TrgTorrentMoveDialogPrivate *priv = - TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(object); + TRG_TORRENT_MOVE_DIALOG_GET_PRIVATE(object); switch (property_id) { case PROP_CLIENT: - priv->client = g_value_get_pointer(value); - break; + priv->client = g_value_get_pointer(value); + break; case PROP_PARENT_WINDOW: - priv->win = g_value_get_object(value); - break; + priv->win = g_value_get_object(value); + break; case PROP_TREEVIEW: - priv->treeview = g_value_get_object(value); - break; + priv->treeview = g_value_get_object(value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } @@ -235,39 +235,39 @@ trg_torrent_move_dialog_class_init(TrgTorrentMoveDialogClass * klass) object_class->constructor = trg_torrent_move_dialog_constructor; g_object_class_install_property(object_class, - PROP_TREEVIEW, - g_param_spec_object - ("torrent-tree-view", - "TrgTorrentTreeView", - "TrgTorrentTreeView", - TRG_TYPE_TORRENT_TREE_VIEW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_TREEVIEW, + g_param_spec_object + ("torrent-tree-view", + "TrgTorrentTreeView", + "TrgTorrentTreeView", + TRG_TYPE_TORRENT_TREE_VIEW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_PARENT_WINDOW, - g_param_spec_object - ("parent-window", "Parent window", - "Parent window", TRG_TYPE_MAIN_WINDOW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_PARENT_WINDOW, + g_param_spec_object + ("parent-window", "Parent window", + "Parent window", TRG_TYPE_MAIN_WINDOW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_CLIENT, - g_param_spec_pointer - ("trg-client", "TClient", - "Client", - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_CLIENT, + g_param_spec_pointer + ("trg-client", "TClient", + "Client", + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); } static void trg_torrent_move_dialog_init(TrgTorrentMoveDialog * self) @@ -275,11 +275,11 @@ static void trg_torrent_move_dialog_init(TrgTorrentMoveDialog * self) } TrgTorrentMoveDialog *trg_torrent_move_dialog_new(TrgMainWindow * win, - TrgClient * client, - TrgTorrentTreeView * ttv) + TrgClient * client, + TrgTorrentTreeView * ttv) { return g_object_new(TRG_TYPE_TORRENT_MOVE_DIALOG, - "trg-client", client, - "torrent-tree-view", ttv, - "parent-window", win, NULL); + "trg-client", client, + "torrent-tree-view", ttv, + "parent-window", win, NULL); } diff --git a/src/trg-torrent-move-dialog.h b/src/trg-torrent-move-dialog.h index 40c38ca..c99f78f 100644 --- a/src/trg-torrent-move-dialog.h +++ b/src/trg-torrent-move-dialog.h @@ -49,9 +49,9 @@ typedef struct { GType trg_torrent_move_dialog_get_type(void); TrgTorrentMoveDialog *trg_torrent_move_dialog_new(TrgMainWindow * win, - TrgClient * client, - TrgTorrentTreeView * - ttv); + TrgClient * client, + TrgTorrentTreeView * + ttv); G_END_DECLS -#endif /* TRG_TORRENT_MOVE_DIALOG_H_ */ +#endif /* TRG_TORRENT_MOVE_DIALOG_H_ */ diff --git a/src/trg-torrent-props-dialog.c b/src/trg-torrent-props-dialog.c index 9486c41..241b518 100644 --- a/src/trg-torrent-props-dialog.c +++ b/src/trg-torrent-props-dialog.c @@ -47,7 +47,7 @@ */ G_DEFINE_TYPE(TrgTorrentPropsDialog, trg_torrent_props_dialog, - GTK_TYPE_DIALOG) + GTK_TYPE_DIALOG) enum { PROP_0, @@ -73,51 +73,51 @@ struct _TrgTorrentPropsDialogPrivate { static void trg_torrent_props_dialog_set_property(GObject * object, - guint prop_id, - const GValue * value, - GParamSpec * pspec G_GNUC_UNUSED) + guint prop_id, + const GValue * value, + GParamSpec * pspec G_GNUC_UNUSED) { TrgTorrentPropsDialogPrivate *priv = - TRG_TORRENT_PROPS_DIALOG_GET_PRIVATE(object); + TRG_TORRENT_PROPS_DIALOG_GET_PRIVATE(object); switch (prop_id) { case PROP_PARENT_WINDOW: - priv->parent = g_value_get_object(value); - break; + priv->parent = g_value_get_object(value); + break; case PROP_TREEVIEW: - priv->tv = g_value_get_object(value); - break; + priv->tv = g_value_get_object(value); + break; case PROP_CLIENT: - priv->client = g_value_get_pointer(value); - break; + priv->client = g_value_get_pointer(value); + break; } } static void trg_torrent_props_dialog_get_property(GObject * object, - guint prop_id, - GValue * value, - GParamSpec * pspec G_GNUC_UNUSED) + guint prop_id, + GValue * value, + GParamSpec * pspec G_GNUC_UNUSED) { TrgTorrentPropsDialogPrivate *priv = - TRG_TORRENT_PROPS_DIALOG_GET_PRIVATE(object); + TRG_TORRENT_PROPS_DIALOG_GET_PRIVATE(object); switch (prop_id) { case PROP_TREEVIEW: - g_value_set_object(value, priv->tv); - break; + g_value_set_object(value, priv->tv); + break; case PROP_PARENT_WINDOW: - g_value_set_object(value, priv->parent); - break; + g_value_set_object(value, priv->parent); + break; case PROP_CLIENT: - g_value_set_pointer(value, priv->client); - break; + g_value_set_pointer(value, priv->client); + break; } } static void trg_torrent_props_response_cb(GtkDialog * dlg, gint res_id, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { TrgTorrentPropsDialogPrivate *priv; JsonNode *request; @@ -126,9 +126,9 @@ trg_torrent_props_response_cb(GtkDialog * dlg, gint res_id, priv = TRG_TORRENT_PROPS_DIALOG_GET_PRIVATE(dlg); if (res_id != GTK_RESPONSE_OK) { - gtk_widget_destroy(GTK_WIDGET(dlg)); - json_array_unref(priv->targetIds); - return; + gtk_widget_destroy(GTK_WIDGET(dlg)); + json_array_unref(priv->targetIds); + return; } request = torrent_set(priv->targetIds); @@ -136,18 +136,20 @@ trg_torrent_props_response_cb(GtkDialog * dlg, gint res_id, args = node_get_arguments(request); json_object_set_int_member(args, FIELD_SEED_RATIO_MODE, - gtk_combo_box_get_active(GTK_COMBO_BOX - (priv->seedRatioMode))); + gtk_combo_box_get_active(GTK_COMBO_BOX + (priv-> + seedRatioMode))); json_object_set_int_member(args, FIELD_BANDWIDTH_PRIORITY, - gtk_combo_box_get_active(GTK_COMBO_BOX - (priv->bandwidthPriorityCombo)) - - 1); + gtk_combo_box_get_active(GTK_COMBO_BOX + (priv-> + bandwidthPriorityCombo)) + - 1); trg_json_widgets_save(priv->widgets, args); trg_json_widget_desc_list_free(priv->widgets); dispatch_async(priv->client, request, - on_generic_interactive_action, priv->parent); + on_generic_interactive_action, priv->parent); gtk_widget_destroy(GTK_WIDGET(dlg)); } @@ -155,15 +157,15 @@ trg_torrent_props_response_cb(GtkDialog * dlg, gint res_id, static void seed_ratio_mode_changed_cb(GtkWidget * w, gpointer data) { gtk_widget_set_sensitive(GTK_WIDGET(data), - gtk_combo_box_get_active(GTK_COMBO_BOX(w)) - == 1 ? TRUE : FALSE); + gtk_combo_box_get_active(GTK_COMBO_BOX(w)) + == 1 ? TRUE : FALSE); } static GtkWidget *trg_props_limitsPage(TrgTorrentPropsDialog * win, - JsonObject * json) + JsonObject * json) { TrgTorrentPropsDialogPrivate *priv = - TRG_TORRENT_PROPS_DIALOG_GET_PRIVATE(win); + TRG_TORRENT_PROPS_DIALOG_GET_PRIVATE(win); GtkWidget *w, *tb, *t; gint row = 0; @@ -172,74 +174,74 @@ static GtkWidget *trg_props_limitsPage(TrgTorrentPropsDialog * win, hig_workarea_add_section_title(t, &row, _("Bandwidth")); w = trg_json_widget_check_new(&priv->widgets, json, - FIELD_HONORS_SESSION_LIMITS, - _("Honor global limits"), NULL); + FIELD_HONORS_SESSION_LIMITS, + _("Honor global limits"), NULL); hig_workarea_add_wide_control(t, &row, w); w = priv->bandwidthPriorityCombo = - gtr_combo_box_new_enum(_("Low"), 0, _("Normal"), 1, _("High"), 2, - NULL); + gtr_combo_box_new_enum(_("Low"), 0, _("Normal"), 1, _("High"), 2, + NULL); gtk_combo_box_set_active(GTK_COMBO_BOX(w), - torrent_get_bandwidth_priority(json) + 1); + torrent_get_bandwidth_priority(json) + 1); hig_workarea_add_row(t, &row, _("Torrent priority:"), w, NULL); if (json_object_has_member(json, FIELD_QUEUE_POSITION)) { - w = trg_json_widget_spin_new_int(&priv->widgets, json, - FIELD_QUEUE_POSITION, NULL, 0, - INT_MAX, 1); - hig_workarea_add_row(t, &row, _("Queue Position:"), w, w); + w = trg_json_widget_spin_new_int(&priv->widgets, json, + FIELD_QUEUE_POSITION, NULL, 0, + INT_MAX, 1); + hig_workarea_add_row(t, &row, _("Queue Position:"), w, w); } tb = trg_json_widget_check_new(&priv->widgets, json, - FIELD_DOWNLOAD_LIMITED, - _("Limit download speed (Kbps)"), NULL); + FIELD_DOWNLOAD_LIMITED, + _("Limit download speed (Kbps)"), NULL); w = trg_json_widget_spin_new_int(&priv->widgets, json, - FIELD_DOWNLOAD_LIMIT, tb, 0, INT_MAX, - 1); + FIELD_DOWNLOAD_LIMIT, tb, 0, INT_MAX, + 1); hig_workarea_add_row_w(t, &row, tb, w, NULL); tb = trg_json_widget_check_new(&priv->widgets, json, - FIELD_UPLOAD_LIMITED, - _("Limit upload speed (Kbps)"), NULL); + FIELD_UPLOAD_LIMITED, + _("Limit upload speed (Kbps)"), NULL); w = trg_json_widget_spin_new_int(&priv->widgets, json, - FIELD_UPLOAD_LIMIT, tb, 0, INT_MAX, - 1); + FIELD_UPLOAD_LIMIT, tb, 0, INT_MAX, + 1); hig_workarea_add_row_w(t, &row, tb, w, NULL); hig_workarea_add_section_title(t, &row, _("Seeding")); w = priv->seedRatioMode = - gtr_combo_box_new_enum(_("Use global settings"), 0, - _("Stop seeding at ratio"), 1, - _("Seed regardless of ratio"), 2, NULL); + gtr_combo_box_new_enum(_("Use global settings"), 0, + _("Stop seeding at ratio"), 1, + _("Seed regardless of ratio"), 2, NULL); gtk_combo_box_set_active(GTK_COMBO_BOX(w), - torrent_get_seed_ratio_mode(json)); + torrent_get_seed_ratio_mode(json)); hig_workarea_add_row(t, &row, _("Seed ratio mode:"), w, NULL); w = trg_json_widget_spin_new_double(&priv->widgets, json, - FIELD_SEED_RATIO_LIMIT, NULL, 0, - INT_MAX, 0.2); + FIELD_SEED_RATIO_LIMIT, NULL, 0, + INT_MAX, 0.2); seed_ratio_mode_changed_cb(priv->seedRatioMode, w); g_signal_connect(G_OBJECT(priv->seedRatioMode), "changed", - G_CALLBACK(seed_ratio_mode_changed_cb), w); + G_CALLBACK(seed_ratio_mode_changed_cb), w); hig_workarea_add_row(t, &row, _("Seed ratio limit:"), w, w); hig_workarea_add_section_title(t, &row, _("Peers")); w = trg_json_widget_spin_new_int(&priv->widgets, json, - FIELD_PEER_LIMIT, NULL, 0, INT_MAX, - 5); + FIELD_PEER_LIMIT, NULL, 0, INT_MAX, + 5); hig_workarea_add_row(t, &row, _("Peer limit:"), w, w); return t; } static GObject *trg_torrent_props_dialog_constructor(GType type, - guint - n_construct_properties, - GObjectConstructParam - * construct_params) + guint + n_construct_properties, + GObjectConstructParam + * construct_params) { GObject *object; TrgTorrentPropsDialogPrivate *priv; @@ -249,52 +251,52 @@ static GObject *trg_torrent_props_dialog_constructor(GType type, GtkWidget *notebook, *contentvbox; object = G_OBJECT_CLASS - (trg_torrent_props_dialog_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_torrent_props_dialog_parent_class)->constructor(type, + n_construct_properties, + construct_params); priv = TRG_TORRENT_PROPS_DIALOG_GET_PRIVATE(object); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->tv)); rowCount = gtk_tree_selection_count_selected_rows(selection); get_torrent_data(trg_client_get_torrent_table(priv->client), - trg_mw_get_selected_torrent_id(priv->parent), &json, - NULL); + trg_mw_get_selected_torrent_id(priv->parent), &json, + NULL); priv->targetIds = build_json_id_array(priv->tv); if (rowCount > 1) { - gchar *windowTitle = - g_strdup_printf(_("Multiple (%d) torrent properties"), - rowCount); - gtk_window_set_title(GTK_WINDOW(object), windowTitle); - g_free(windowTitle); + gchar *windowTitle = + g_strdup_printf(_("Multiple (%d) torrent properties"), + rowCount); + gtk_window_set_title(GTK_WINDOW(object), windowTitle); + g_free(windowTitle); } else if (rowCount == 1) { - gtk_window_set_title(GTK_WINDOW(object), torrent_get_name(json)); + gtk_window_set_title(GTK_WINDOW(object), torrent_get_name(json)); } gtk_window_set_transient_for(GTK_WINDOW(object), - GTK_WINDOW(priv->parent)); + GTK_WINDOW(priv->parent)); gtk_window_set_destroy_with_parent(GTK_WINDOW(object), TRUE); gtk_dialog_add_button(GTK_DIALOG(object), GTK_STOCK_CLOSE, - GTK_RESPONSE_CLOSE); + GTK_RESPONSE_CLOSE); gtk_dialog_add_button(GTK_DIALOG(object), GTK_STOCK_OK, - GTK_RESPONSE_OK); + GTK_RESPONSE_OK); gtk_container_set_border_width(GTK_CONTAINER(object), GUI_PAD); gtk_dialog_set_default_response(GTK_DIALOG(object), GTK_RESPONSE_OK); g_signal_connect(G_OBJECT(object), - "response", - G_CALLBACK(trg_torrent_props_response_cb), NULL); + "response", + G_CALLBACK(trg_torrent_props_response_cb), NULL); notebook = gtk_notebook_new(); gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - trg_props_limitsPage - (TRG_TORRENT_PROPS_DIALOG(object), json), - gtk_label_new(_("Limits"))); + trg_props_limitsPage + (TRG_TORRENT_PROPS_DIALOG(object), json), + gtk_label_new(_("Limits"))); gtk_container_set_border_width(GTK_CONTAINER(notebook), GUI_PAD); @@ -316,39 +318,39 @@ trg_torrent_props_dialog_class_init(TrgTorrentPropsDialogClass * klass) g_type_class_add_private(klass, sizeof(TrgTorrentPropsDialogPrivate)); g_object_class_install_property(object_class, - PROP_TREEVIEW, - g_param_spec_object - ("torrent-tree-view", - "TrgTorrentTreeView", - "TrgTorrentTreeView", - TRG_TYPE_TORRENT_TREE_VIEW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_TREEVIEW, + g_param_spec_object + ("torrent-tree-view", + "TrgTorrentTreeView", + "TrgTorrentTreeView", + TRG_TYPE_TORRENT_TREE_VIEW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_PARENT_WINDOW, - g_param_spec_object - ("parent-window", "Parent window", - "Parent window", TRG_TYPE_MAIN_WINDOW, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_PARENT_WINDOW, + g_param_spec_object + ("parent-window", "Parent window", + "Parent window", TRG_TYPE_MAIN_WINDOW, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); g_object_class_install_property(object_class, - PROP_CLIENT, - g_param_spec_pointer - ("trg-client", "TClient", - "Client", - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY | - G_PARAM_STATIC_NAME | - G_PARAM_STATIC_NICK | - G_PARAM_STATIC_BLURB)); + PROP_CLIENT, + g_param_spec_pointer + ("trg-client", "TClient", + "Client", + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_NAME | + G_PARAM_STATIC_NICK | + G_PARAM_STATIC_BLURB)); } static void @@ -358,12 +360,12 @@ trg_torrent_props_dialog_init(TrgTorrentPropsDialog * self G_GNUC_UNUSED) } TrgTorrentPropsDialog *trg_torrent_props_dialog_new(GtkWindow * window, - TrgTorrentTreeView * - treeview, - TrgClient * client) + TrgTorrentTreeView * + treeview, + TrgClient * client) { return g_object_new(TRG_TYPE_TORRENT_PROPS_DIALOG, - "parent-window", window, - "torrent-tree-view", treeview, - "trg-client", client, NULL); + "parent-window", window, + "torrent-tree-view", treeview, + "trg-client", client, NULL); } diff --git a/src/trg-torrent-props-dialog.h b/src/trg-torrent-props-dialog.h index 9c935db..78d72de 100644 --- a/src/trg-torrent-props-dialog.h +++ b/src/trg-torrent-props-dialog.h @@ -48,9 +48,9 @@ typedef struct { GType trg_torrent_props_dialog_get_type(void); TrgTorrentPropsDialog *trg_torrent_props_dialog_new(GtkWindow * window, - TrgTorrentTreeView * - treeview, - TrgClient * client); + TrgTorrentTreeView * + treeview, + TrgClient * client); G_END_DECLS -#endif /* TRG_TORRENT_PROPS_DIALOG_H_ */ +#endif /* TRG_TORRENT_PROPS_DIALOG_H_ */ diff --git a/src/trg-torrent-tree-view.c b/src/trg-torrent-tree-view.c index de1d986..a359dff 100644 --- a/src/trg-torrent-tree-view.c +++ b/src/trg-torrent-tree-view.c @@ -26,11 +26,11 @@ #include "trg-torrent-tree-view.h" G_DEFINE_TYPE(TrgTorrentTreeView, trg_torrent_tree_view, - TRG_TYPE_TREE_VIEW) + TRG_TYPE_TREE_VIEW) static void trg_torrent_tree_view_class_init(TrgTorrentTreeViewClass * - klass G_GNUC_UNUSED) + klass G_GNUC_UNUSED) { } @@ -40,110 +40,110 @@ static void trg_torrent_tree_view_init(TrgTorrentTreeView * tttv) trg_column_description *desc; desc = - trg_tree_view_reg_column(ttv, TRG_COLTYPE_STOCKICONTEXT, - TORRENT_COLUMN_NAME, _("Name"), "name", - 0); + trg_tree_view_reg_column(ttv, TRG_COLTYPE_STOCKICONTEXT, + TORRENT_COLUMN_NAME, _("Name"), "name", + 0); desc->model_column_icon = TORRENT_COLUMN_ICON; trg_tree_view_reg_column(ttv, TRG_COLTYPE_SIZE, TORRENT_COLUMN_SIZE, - _("Size"), "size", 0); + _("Size"), "size", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_PROG, TORRENT_COLUMN_DONE, - _("Done"), "done", 0); + _("Done"), "done", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, TORRENT_COLUMN_STATUS, - _("Status"), "status", 0); + _("Status"), "status", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_SEEDS, _("Seeds"), "seeds", 0); + TORRENT_COLUMN_SEEDS, _("Seeds"), "seeds", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_PEERS_TO_US, _("Sending"), - "sending", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_PEERS_TO_US, _("Sending"), + "sending", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_LEECHERS, _("Leechers"), - "leechers", 0); + TORRENT_COLUMN_LEECHERS, _("Leechers"), + "leechers", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_DOWNLOADS, _("Downloads"), - "downloads", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_DOWNLOADS, _("Downloads"), + "downloads", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_PEERS_FROM_US, _("Receiving"), - "connected-leechers", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_PEERS_FROM_US, _("Receiving"), + "connected-leechers", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_PEERS_CONNECTED, - _("Connected"), "connected-peers", 0); + TORRENT_COLUMN_PEERS_CONNECTED, + _("Connected"), "connected-peers", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_FROMPEX, _("PEX Peers"), - "from-pex", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_FROMPEX, _("PEX Peers"), + "from-pex", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_FROMDHT, _("DHT Peers"), - "from-dht", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_FROMDHT, _("DHT Peers"), + "from-dht", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_FROMTRACKERS, - _("Tracker Peers"), "from-trackers", - TRG_COLUMN_EXTRA); + TORRENT_COLUMN_FROMTRACKERS, + _("Tracker Peers"), "from-trackers", + TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_FROMLTEP, _("LTEP Peers"), - "from-ltep", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_FROMLTEP, _("LTEP Peers"), + "from-ltep", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_FROMRESUME, _("Resumed Peers"), - "from-resume", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_FROMRESUME, _("Resumed Peers"), + "from-resume", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TORRENT_COLUMN_FROMINCOMING, - _("Incoming Peers"), "from-incoming", - TRG_COLUMN_EXTRA); + TORRENT_COLUMN_FROMINCOMING, + _("Incoming Peers"), "from-incoming", + TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, - TORRENT_COLUMN_PEER_SOURCES, - _("Peers T/I/E/H/X/L/R"), "peer-sources", - TRG_COLUMN_EXTRA); + TORRENT_COLUMN_PEER_SOURCES, + _("Peers T/I/E/H/X/L/R"), "peer-sources", + TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_SPEED, - TORRENT_COLUMN_DOWNSPEED, _("Down Speed"), - "down-speed", 0); + TORRENT_COLUMN_DOWNSPEED, _("Down Speed"), + "down-speed", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_SPEED, - TORRENT_COLUMN_UPSPEED, _("Up Speed"), - "up-speed", 0); + TORRENT_COLUMN_UPSPEED, _("Up Speed"), + "up-speed", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_ETA, TORRENT_COLUMN_ETA, - _("ETA"), "eta", 0); + _("ETA"), "eta", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_SIZE, - TORRENT_COLUMN_UPLOADED, _("Uploaded"), - "uploaded", 0); + TORRENT_COLUMN_UPLOADED, _("Uploaded"), + "uploaded", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_SIZE, - TORRENT_COLUMN_DOWNLOADED, _("Downloaded"), - "downloaded", 0); + TORRENT_COLUMN_DOWNLOADED, _("Downloaded"), + "downloaded", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_RATIO, TORRENT_COLUMN_RATIO, - _("Ratio"), "ratio", 0); + _("Ratio"), "ratio", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_EPOCH, TORRENT_COLUMN_ADDED, - _("Added"), "added", 0); + _("Added"), "added", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, - TORRENT_COLUMN_TRACKERHOST, - _("First Tracker"), "first-tracker", - TRG_COLUMN_EXTRA); + TORRENT_COLUMN_TRACKERHOST, + _("First Tracker"), "first-tracker", + TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, - TORRENT_COLUMN_DOWNLOADDIR, _("Location"), - "download-dir", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_DOWNLOADDIR, _("Location"), + "download-dir", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, TORRENT_COLUMN_ID, - _("ID"), "id", TRG_COLUMN_EXTRA); + _("ID"), "id", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_PRIO, - TORRENT_COLUMN_BANDWIDTH_PRIORITY, - _("Priority"), "priority", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_BANDWIDTH_PRIORITY, + _("Priority"), "priority", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTEQZERO, - TORRENT_COLUMN_QUEUE_POSITION, - _("Queue Position"), "queue-position", - TRG_COLUMN_EXTRA); + TORRENT_COLUMN_QUEUE_POSITION, + _("Queue Position"), "queue-position", + TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_EPOCH, - TORRENT_COLUMN_DONE_DATE, _("Completed"), - "done-date", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_DONE_DATE, _("Completed"), + "done-date", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_EPOCH, - TORRENT_COLUMN_LASTACTIVE, _("Last Active"), - "last-active", TRG_COLUMN_EXTRA); + TORRENT_COLUMN_LASTACTIVE, _("Last Active"), + "last-active", TRG_COLUMN_EXTRA); gtk_tree_view_set_search_column(GTK_TREE_VIEW(tttv), - TORRENT_COLUMN_NAME); + TORRENT_COLUMN_NAME); } static void trg_torrent_model_get_json_id_array_foreach(GtkTreeModel * model, - GtkTreePath * - path G_GNUC_UNUSED, - GtkTreeIter * iter, - gpointer data) + GtkTreePath * + path G_GNUC_UNUSED, + GtkTreeIter * iter, + gpointer data) { JsonArray *output = (JsonArray *) data; gint64 id; @@ -154,19 +154,19 @@ trg_torrent_model_get_json_id_array_foreach(GtkTreeModel * model, JsonArray *build_json_id_array(TrgTorrentTreeView * tv) { GtkTreeSelection *selection = - gtk_tree_view_get_selection(GTK_TREE_VIEW(tv)); + gtk_tree_view_get_selection(GTK_TREE_VIEW(tv)); JsonArray *ids = json_array_new(); gtk_tree_selection_selected_foreach(selection, - (GtkTreeSelectionForeachFunc) - trg_torrent_model_get_json_id_array_foreach, - ids); + (GtkTreeSelectionForeachFunc) + trg_torrent_model_get_json_id_array_foreach, + ids); return ids; } TrgTorrentTreeView *trg_torrent_tree_view_new(TrgPrefs * prefs, - GtkTreeModel * model) + GtkTreeModel * model) { GObject *obj = g_object_new(TRG_TYPE_TORRENT_TREE_VIEW, NULL); diff --git a/src/trg-torrent-tree-view.h b/src/trg-torrent-tree-view.h index 42887ef..a63d792 100644 --- a/src/trg-torrent-tree-view.h +++ b/src/trg-torrent-tree-view.h @@ -51,8 +51,8 @@ typedef struct { GType trg_torrent_tree_view_get_type(void); TrgTorrentTreeView *trg_torrent_tree_view_new(TrgPrefs * prefs, - GtkTreeModel * model); + GtkTreeModel * model); JsonArray *build_json_id_array(TrgTorrentTreeView * tv); G_END_DECLS -#endif /* _TRG_TORRENT_TREE_VIEW_H_ */ +#endif /* _TRG_TORRENT_TREE_VIEW_H_ */ diff --git a/src/trg-trackers-model.c b/src/trg-trackers-model.c index d86ed7a..2a4c92d 100644 --- a/src/trg-trackers-model.c +++ b/src/trg-trackers-model.c @@ -49,8 +49,8 @@ gint64 trg_trackers_model_get_torrent_id(TrgTrackersModel * model) } void trg_trackers_model_update(TrgTrackersModel * model, - gint64 updateSerial, JsonObject * t, - gint mode) + gint64 updateSerial, JsonObject * t, + gint mode) { TrgTrackersModelPrivate *priv = TRG_TRACKERS_MODEL_GET_PRIVATE(model); @@ -62,93 +62,93 @@ void trg_trackers_model_update(TrgTrackersModel * model, const gchar *scrape; if (mode == TORRENT_GET_MODE_FIRST) { - gtk_list_store_clear(GTK_LIST_STORE(model)); - priv->torrentId = torrent_get_id(t); - priv->accept = TRUE; + gtk_list_store_clear(GTK_LIST_STORE(model)); + priv->torrentId = torrent_get_id(t); + priv->accept = TRUE; } else if (!priv->accept) { - return; + return; } trackers = json_array_get_elements(torrent_get_tracker_stats(t)); for (li = trackers; li; li = g_list_next(li)) { - tracker = json_node_get_object((JsonNode *) li->data); - trackerId = tracker_stats_get_id(tracker); - announce = tracker_stats_get_announce(tracker); - scrape = tracker_stats_get_scrape(tracker); + tracker = json_node_get_object((JsonNode *) li->data); + trackerId = tracker_stats_get_id(tracker); + announce = tracker_stats_get_announce(tracker); + scrape = tracker_stats_get_scrape(tracker); - if (mode == TORRENT_GET_MODE_FIRST - || find_existing_model_item(GTK_TREE_MODEL(model), - TRACKERCOL_ID, trackerId, - &trackIter) == FALSE) - gtk_list_store_append(GTK_LIST_STORE(model), &trackIter); + if (mode == TORRENT_GET_MODE_FIRST + || find_existing_model_item(GTK_TREE_MODEL(model), + TRACKERCOL_ID, trackerId, + &trackIter) == FALSE) + gtk_list_store_append(GTK_LIST_STORE(model), &trackIter); #ifdef DEBUG - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_ICON, GTK_STOCK_NETWORK, -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_TIER, - tracker_stats_get_tier(tracker), -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_ANNOUNCE, announce, -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_SCRAPE, scrape, -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_ID, trackerId, -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_UPDATESERIAL, updateSerial, -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_LAST_ANNOUNCE_RESULT, - tracker_stats_get_announce_result(tracker), -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_LAST_ANNOUNCE_TIME, - tracker_stats_get_last_announce_time(tracker), - -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_LAST_SCRAPE_TIME, - tracker_stats_get_last_scrape_time(tracker), - -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_HOST, - tracker_stats_get_host(tracker), -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_LAST_ANNOUNCE_PEER_COUNT, - tracker_stats_get_last_announce_peer_count - (tracker), -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_LEECHERCOUNT, - tracker_stats_get_leecher_count(tracker), -1); - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_SEEDERCOUNT, - tracker_stats_get_seeder_count(tracker), -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_ICON, GTK_STOCK_NETWORK, -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_TIER, + tracker_stats_get_tier(tracker), -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_ANNOUNCE, announce, -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_SCRAPE, scrape, -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_ID, trackerId, -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_UPDATESERIAL, updateSerial, -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_LAST_ANNOUNCE_RESULT, + tracker_stats_get_announce_result(tracker), -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_LAST_ANNOUNCE_TIME, + tracker_stats_get_last_announce_time(tracker), + -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_LAST_SCRAPE_TIME, + tracker_stats_get_last_scrape_time(tracker), + -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_HOST, + tracker_stats_get_host(tracker), -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_LAST_ANNOUNCE_PEER_COUNT, + tracker_stats_get_last_announce_peer_count + (tracker), -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_LEECHERCOUNT, + tracker_stats_get_leecher_count(tracker), -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_SEEDERCOUNT, + tracker_stats_get_seeder_count(tracker), -1); #else - gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, - TRACKERCOL_ICON, GTK_STOCK_NETWORK, - TRACKERCOL_ID, trackerId, - TRACKERCOL_UPDATESERIAL, updateSerial, - TRACKERCOL_TIER, - tracker_stats_get_tier(tracker), - TRACKERCOL_ANNOUNCE, announce, - TRACKERCOL_SCRAPE, scrape, TRACKERCOL_HOST, - tracker_stats_get_host(tracker), - TRACKERCOL_LAST_ANNOUNCE_RESULT, - tracker_stats_get_announce_result(tracker), - TRACKERCOL_LAST_ANNOUNCE_TIME, - tracker_stats_get_last_announce_time(tracker), - TRACKERCOL_LAST_SCRAPE_TIME, - tracker_stats_get_last_scrape_time(tracker), - TRACKERCOL_LAST_ANNOUNCE_PEER_COUNT, - tracker_stats_get_last_announce_peer_count - (tracker), TRACKERCOL_LEECHERCOUNT, - tracker_stats_get_leecher_count(tracker), - TRACKERCOL_SEEDERCOUNT, - tracker_stats_get_seeder_count(tracker), -1); + gtk_list_store_set(GTK_LIST_STORE(model), &trackIter, + TRACKERCOL_ICON, GTK_STOCK_NETWORK, + TRACKERCOL_ID, trackerId, + TRACKERCOL_UPDATESERIAL, updateSerial, + TRACKERCOL_TIER, + tracker_stats_get_tier(tracker), + TRACKERCOL_ANNOUNCE, announce, + TRACKERCOL_SCRAPE, scrape, TRACKERCOL_HOST, + tracker_stats_get_host(tracker), + TRACKERCOL_LAST_ANNOUNCE_RESULT, + tracker_stats_get_announce_result(tracker), + TRACKERCOL_LAST_ANNOUNCE_TIME, + tracker_stats_get_last_announce_time(tracker), + TRACKERCOL_LAST_SCRAPE_TIME, + tracker_stats_get_last_scrape_time(tracker), + TRACKERCOL_LAST_ANNOUNCE_PEER_COUNT, + tracker_stats_get_last_announce_peer_count + (tracker), TRACKERCOL_LEECHERCOUNT, + tracker_stats_get_leecher_count(tracker), + TRACKERCOL_SEEDERCOUNT, + tracker_stats_get_seeder_count(tracker), -1); #endif } g_list_free(trackers); trg_model_remove_removed(GTK_LIST_STORE(model), - TRACKERCOL_UPDATESERIAL, updateSerial); + TRACKERCOL_UPDATESERIAL, updateSerial); } static void trg_trackers_model_class_init(TrgTrackersModelClass * klass) @@ -157,7 +157,7 @@ static void trg_trackers_model_class_init(TrgTrackersModelClass * klass) } void trg_trackers_model_set_accept(TrgTrackersModel * model, - gboolean accept) + gboolean accept) { TrgTrackersModelPrivate *priv = TRG_TRACKERS_MODEL_GET_PRIVATE(model); priv->accept = accept; @@ -187,7 +187,7 @@ static void trg_trackers_model_init(TrgTrackersModel * self) priv->torrentId = -1; gtk_list_store_set_column_types(GTK_LIST_STORE(self), - TRACKERCOL_COLUMNS, column_types); + TRACKERCOL_COLUMNS, column_types); } TrgTrackersModel *trg_trackers_model_new(void) diff --git a/src/trg-trackers-model.h b/src/trg-trackers-model.h index 20189ce..67025ea 100644 --- a/src/trg-trackers-model.h +++ b/src/trg-trackers-model.h @@ -49,10 +49,10 @@ TrgTrackersModel *trg_trackers_model_new(void); G_END_DECLS void trg_trackers_model_update(TrgTrackersModel * model, - gint64 updateSerial, JsonObject * t, - gint mode); + gint64 updateSerial, JsonObject * t, + gint mode); void trg_trackers_model_set_accept(TrgTrackersModel * model, - gboolean accept); + gboolean accept); gint64 trg_trackers_model_get_torrent_id(TrgTrackersModel * model); void trg_trackers_model_set_no_selection(TrgTrackersModel * model); @@ -93,4 +93,4 @@ enum { TRACKERCOL_COLUMNS }; -#endif /* TRG_TRACKERS_MODEL_H_ */ +#endif /* TRG_TRACKERS_MODEL_H_ */ diff --git a/src/trg-trackers-tree-view.c b/src/trg-trackers-tree-view.c index 2edf858..334b35c 100644 --- a/src/trg-trackers-tree-view.c +++ b/src/trg-trackers-tree-view.c @@ -32,7 +32,7 @@ #include "trg-main-window.h" G_DEFINE_TYPE(TrgTrackersTreeView, trg_trackers_tree_view, - TRG_TYPE_TREE_VIEW) + TRG_TYPE_TREE_VIEW) #define TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRG_TYPE_TRACKERS_TREE_VIEW, TrgTrackersTreeViewPrivate)) typedef struct _TrgTrackersTreeViewPrivate TrgTrackersTreeViewPrivate; @@ -59,9 +59,9 @@ static gboolean on_trackers_update(gpointer data) { trg_response *response = (trg_response *) data; TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(response->cb_data); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(response->cb_data); GtkTreeModel *model = - gtk_tree_view_get_model(GTK_TREE_VIEW(response->cb_data)); + gtk_tree_view_get_model(GTK_TREE_VIEW(response->cb_data)); trg_trackers_model_set_accept(TRG_TRACKERS_MODEL(model), TRUE); @@ -70,30 +70,30 @@ static gboolean on_trackers_update(gpointer data) } void trg_trackers_tree_view_new_connection(TrgTrackersTreeView * tv, - TrgClient * tc) + TrgClient * tc) { TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(tv); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(tv); gboolean editable = is_tracker_edit_supported(tc); g_object_set(priv->announceRenderer, "editable", editable, NULL); g_object_set(priv->announceRenderer, "mode", - editable ? GTK_CELL_RENDERER_MODE_EDITABLE : - GTK_CELL_RENDERER_MODE_INERT, NULL); + editable ? GTK_CELL_RENDERER_MODE_EDITABLE : + GTK_CELL_RENDERER_MODE_INERT, NULL); } static void trg_tracker_announce_edited(GtkCellRendererText * renderer, - gchar * path, - gchar * new_text, - gpointer user_data) + gchar * path, + gchar * new_text, + gpointer user_data) { TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(user_data); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(user_data); GtkTreeModel *model = - gtk_tree_view_get_model(GTK_TREE_VIEW(user_data)); + gtk_tree_view_get_model(GTK_TREE_VIEW(user_data)); gint64 torrentId = - trg_trackers_model_get_torrent_id(TRG_TRACKERS_MODEL(model)); + trg_trackers_model_get_torrent_id(TRG_TRACKERS_MODEL(model)); JsonArray *torrentIds = json_array_new(); JsonArray *trackerModifiers = json_array_new(); @@ -105,9 +105,9 @@ static void trg_tracker_announce_edited(GtkCellRendererText * renderer, gtk_tree_model_get_iter_from_string(model, &iter, path); gtk_list_store_set(GTK_LIST_STORE(model), &iter, TRACKERCOL_ANNOUNCE, - new_text, -1); + new_text, -1); gtk_tree_model_get(model, &iter, TRACKERCOL_ID, &trackerId, - TRACKERCOL_ICON, &icon, -1); + TRACKERCOL_ICON, &icon, -1); json_array_add_int_element(torrentIds, torrentId); @@ -116,13 +116,13 @@ static void trg_tracker_announce_edited(GtkCellRendererText * renderer, args = node_get_arguments(req); if (!g_strcmp0(icon, GTK_STOCK_ADD)) { - json_array_add_string_element(trackerModifiers, new_text); - json_object_set_array_member(args, "trackerAdd", trackerModifiers); + json_array_add_string_element(trackerModifiers, new_text); + json_object_set_array_member(args, "trackerAdd", trackerModifiers); } else { - json_array_add_int_element(trackerModifiers, trackerId); - json_array_add_string_element(trackerModifiers, new_text); - json_object_set_array_member(args, "trackerReplace", - trackerModifiers); + json_array_add_int_element(trackerModifiers, trackerId); + json_array_add_string_element(trackerModifiers, new_text); + json_object_set_array_member(args, "trackerReplace", + trackerModifiers); } g_free(icon); @@ -131,26 +131,26 @@ static void trg_tracker_announce_edited(GtkCellRendererText * renderer, } static void trg_tracker_announce_editing_started(GtkCellRenderer * - renderer G_GNUC_UNUSED, - GtkCellEditable * - editable G_GNUC_UNUSED, - gchar * - path G_GNUC_UNUSED, - gpointer user_data) + renderer G_GNUC_UNUSED, + GtkCellEditable * + editable G_GNUC_UNUSED, + gchar * + path G_GNUC_UNUSED, + gpointer user_data) { TrgTrackersModel *model = - TRG_TRACKERS_MODEL(gtk_tree_view_get_model - (GTK_TREE_VIEW(user_data))); + TRG_TRACKERS_MODEL(gtk_tree_view_get_model + (GTK_TREE_VIEW(user_data))); trg_trackers_model_set_accept(model, FALSE); } static void trg_tracker_announce_editing_canceled(GtkWidget * - w G_GNUC_UNUSED, - gpointer data) + w G_GNUC_UNUSED, + gpointer data) { TrgTrackersModel *model = - TRG_TRACKERS_MODEL(gtk_tree_view_get_model(GTK_TREE_VIEW(data))); + TRG_TRACKERS_MODEL(gtk_tree_view_get_model(GTK_TREE_VIEW(data))); trg_trackers_model_set_accept(model, TRUE); } @@ -158,68 +158,68 @@ static void trg_tracker_announce_editing_canceled(GtkWidget * static void trg_trackers_tree_view_init(TrgTrackersTreeView * self) { TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(self); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(self); TrgTreeView *ttv = TRG_TREE_VIEW(self); trg_column_description *desc; desc = - trg_tree_view_reg_column(ttv, TRG_COLTYPE_STOCKICONTEXT, - TRACKERCOL_TIER, _("Tier"), "tier", - TRG_COLUMN_UNREMOVABLE); + trg_tree_view_reg_column(ttv, TRG_COLTYPE_STOCKICONTEXT, + TRACKERCOL_TIER, _("Tier"), "tier", + TRG_COLUMN_UNREMOVABLE); desc->model_column_icon = TRACKERCOL_ICON; desc = - trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, - TRACKERCOL_ANNOUNCE, _("Announce URL"), - "announce-url", TRG_COLUMN_UNREMOVABLE); + trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, + TRACKERCOL_ANNOUNCE, _("Announce URL"), + "announce-url", TRG_COLUMN_UNREMOVABLE); priv->announceRenderer = desc->customRenderer = - gtk_cell_renderer_text_new(); + gtk_cell_renderer_text_new(); g_signal_connect(priv->announceRenderer, "edited", - G_CALLBACK(trg_tracker_announce_edited), self); + G_CALLBACK(trg_tracker_announce_edited), self); g_signal_connect(priv->announceRenderer, "editing-canceled", - G_CALLBACK(trg_tracker_announce_editing_canceled), - self); + G_CALLBACK(trg_tracker_announce_editing_canceled), + self); g_signal_connect(priv->announceRenderer, "editing-started", - G_CALLBACK(trg_tracker_announce_editing_started), - self); + G_CALLBACK(trg_tracker_announce_editing_started), + self); desc->out = &priv->announceColumn; trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TRACKERCOL_LAST_ANNOUNCE_PEER_COUNT, - _("Peers"), "last-announce-peer-count", 0); + TRACKERCOL_LAST_ANNOUNCE_PEER_COUNT, + _("Peers"), "last-announce-peer-count", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TRACKERCOL_SEEDERCOUNT, _("Seeder Count"), - "seeder-count", 0); + TRACKERCOL_SEEDERCOUNT, _("Seeder Count"), + "seeder-count", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_NUMGTZERO, - TRACKERCOL_LEECHERCOUNT, _("Leecher Count"), - "leecher-count", 0); + TRACKERCOL_LEECHERCOUNT, _("Leecher Count"), + "leecher-count", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_EPOCH, - TRACKERCOL_LAST_ANNOUNCE_TIME, - _("Last Announce"), "last-announce-time", 0); + TRACKERCOL_LAST_ANNOUNCE_TIME, + _("Last Announce"), "last-announce-time", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, - TRACKERCOL_LAST_ANNOUNCE_RESULT, - _("Last Result"), "last-result", 0); + TRACKERCOL_LAST_ANNOUNCE_RESULT, + _("Last Result"), "last-result", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, TRACKERCOL_SCRAPE, - _("Scrape URL"), "scrape-url", 0); + _("Scrape URL"), "scrape-url", 0); trg_tree_view_reg_column(ttv, TRG_COLTYPE_EPOCH, - TRACKERCOL_LAST_SCRAPE_TIME, _("Last Scrape"), - "last-scrape-time", TRG_COLUMN_EXTRA); + TRACKERCOL_LAST_SCRAPE_TIME, _("Last Scrape"), + "last-scrape-time", TRG_COLUMN_EXTRA); trg_tree_view_reg_column(ttv, TRG_COLTYPE_TEXT, TRACKERCOL_HOST, - _("Host"), "host", TRG_COLUMN_EXTRA); + _("Host"), "host", TRG_COLUMN_EXTRA); } static void add_tracker(GtkWidget * w, gpointer data) { GtkTreeView *tv = GTK_TREE_VIEW(data); TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(data); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(data); GtkTreeModel *model = gtk_tree_view_get_model(tv); GtkTreeIter iter; GtkTreePath *path; gtk_list_store_append(GTK_LIST_STORE(model), &iter); gtk_list_store_set(GTK_LIST_STORE(model), &iter, TRACKERCOL_ICON, - GTK_STOCK_ADD, -1); + GTK_STOCK_ADD, -1); path = gtk_tree_model_get_path(model, &iter); gtk_tree_view_set_cursor(tv, path, priv->announceColumn, TRUE); @@ -229,13 +229,13 @@ static void add_tracker(GtkWidget * w, gpointer data) static void delete_tracker(GtkWidget * w, gpointer data) { TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(data); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(data); GtkTreeView *tv = GTK_TREE_VIEW(data); GList *selectionRefs = trg_tree_view_get_selected_refs_list(tv); GtkTreeModel *model = gtk_tree_view_get_model(tv); JsonArray *trackerIds = json_array_new(); gint64 torrentId = - trg_trackers_model_get_torrent_id(TRG_TRACKERS_MODEL(model)); + trg_trackers_model_get_torrent_id(TRG_TRACKERS_MODEL(model)); JsonArray *torrentIds = json_array_new(); JsonNode *req; @@ -243,19 +243,19 @@ static void delete_tracker(GtkWidget * w, gpointer data) GList *li; for (li = selectionRefs; li; li = g_list_next(li)) { - GtkTreeRowReference *rr = (GtkTreeRowReference *) li->data; - GtkTreePath *path = gtk_tree_row_reference_get_path(rr); - if (path) { - gint64 trackerId; - GtkTreeIter trackerIter; - gtk_tree_model_get_iter(model, &trackerIter, path); - gtk_tree_model_get(model, &trackerIter, TRACKERCOL_ID, - &trackerId, -1); - json_array_add_int_element(trackerIds, trackerId); - gtk_list_store_remove(GTK_LIST_STORE(model), &trackerIter); - gtk_tree_path_free(path); - } - gtk_tree_row_reference_free(rr); + GtkTreeRowReference *rr = (GtkTreeRowReference *) li->data; + GtkTreePath *path = gtk_tree_row_reference_get_path(rr); + if (path) { + gint64 trackerId; + GtkTreeIter trackerIter; + gtk_tree_model_get_iter(model, &trackerIter, path); + gtk_tree_model_get(model, &trackerIter, TRACKERCOL_ID, + &trackerId, -1); + json_array_add_int_element(trackerIds, trackerId); + gtk_list_store_remove(GTK_LIST_STORE(model), &trackerIter); + gtk_tree_path_free(path); + } + gtk_tree_row_reference_free(rr); } g_list_free(selectionRefs); @@ -274,85 +274,85 @@ static void delete_tracker(GtkWidget * w, gpointer data) static void view_popup_menu_add_only(GtkWidget * treeview, GdkEventButton * event, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { GtkWidget *menu, *menuitem; menu = gtk_menu_new(); menuitem = - trg_menu_bar_item_new(GTK_MENU_SHELL(menu), _("Add"), - GTK_STOCK_ADD, TRUE); + trg_menu_bar_item_new(GTK_MENU_SHELL(menu), _("Add"), + GTK_STOCK_ADD, TRUE); g_signal_connect(menuitem, "activate", G_CALLBACK(add_tracker), - treeview); + treeview); gtk_widget_show_all(menu); gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, - (event != NULL) ? event->button : 0, - gdk_event_get_time((GdkEvent *) event)); + (event != NULL) ? event->button : 0, + gdk_event_get_time((GdkEvent *) event)); } static void view_popup_menu(GtkWidget * treeview, GdkEventButton * event, - gpointer data G_GNUC_UNUSED) + gpointer data G_GNUC_UNUSED) { GtkWidget *menu, *menuitem; menu = gtk_menu_new(); menuitem = - trg_menu_bar_item_new(GTK_MENU_SHELL(menu), _("Delete"), - GTK_STOCK_DELETE, TRUE); + trg_menu_bar_item_new(GTK_MENU_SHELL(menu), _("Delete"), + GTK_STOCK_DELETE, TRUE); g_signal_connect(menuitem, "activate", G_CALLBACK(delete_tracker), - treeview); + treeview); menuitem = - trg_menu_bar_item_new(GTK_MENU_SHELL(menu), _("Add"), - GTK_STOCK_ADD, TRUE); + trg_menu_bar_item_new(GTK_MENU_SHELL(menu), _("Add"), + GTK_STOCK_ADD, TRUE); g_signal_connect(menuitem, "activate", G_CALLBACK(add_tracker), - treeview); + treeview); gtk_widget_show_all(menu); gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, - (event != NULL) ? event->button : 0, - gdk_event_get_time((GdkEvent *) event)); + (event != NULL) ? event->button : 0, + gdk_event_get_time((GdkEvent *) event)); } static gboolean view_onButtonPressed(GtkWidget * treeview, GdkEventButton * event, - gpointer userdata) + gpointer userdata) { TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(treeview); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(treeview); TrgTrackersModel *model = - TRG_TRACKERS_MODEL(gtk_tree_view_get_model - (GTK_TREE_VIEW(treeview))); + TRG_TRACKERS_MODEL(gtk_tree_view_get_model + (GTK_TREE_VIEW(treeview))); GtkTreeSelection *selection; GtkTreePath *path; if (!is_tracker_edit_supported(priv->client)) - return FALSE; + return FALSE; if (event->type == GDK_BUTTON_PRESS && event->button == 3) { - selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); - - if (gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(treeview), - (gint) event->x, - (gint) event->y, &path, - NULL, NULL, NULL)) { - if (!gtk_tree_selection_path_is_selected(selection, path)) { - gtk_tree_selection_unselect_all(selection); - gtk_tree_selection_select_path(selection, path); - } - gtk_tree_path_free(path); - - view_popup_menu(treeview, event, userdata); - } else if (trg_trackers_model_get_torrent_id(model) >= 0) { - view_popup_menu_add_only(treeview, event, userdata); - } - return TRUE; + selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(treeview)); + + if (gtk_tree_view_get_path_at_pos(GTK_TREE_VIEW(treeview), + (gint) event->x, + (gint) event->y, &path, + NULL, NULL, NULL)) { + if (!gtk_tree_selection_path_is_selected(selection, path)) { + gtk_tree_selection_unselect_all(selection); + gtk_tree_selection_select_path(selection, path); + } + gtk_tree_path_free(path); + + view_popup_menu(treeview, event, userdata); + } else if (trg_trackers_model_get_torrent_id(model) >= 0) { + view_popup_menu_add_only(treeview, event, userdata); + } + return TRUE; } return FALSE; @@ -365,20 +365,20 @@ static gboolean view_onPopupMenu(GtkWidget * treeview, gpointer userdata) } TrgTrackersTreeView *trg_trackers_tree_view_new(TrgTrackersModel * model, - TrgClient * client, - TrgMainWindow * win) + TrgClient * client, + TrgMainWindow * win) { GObject *obj = g_object_new(TRG_TYPE_TRACKERS_TREE_VIEW, NULL); TrgTrackersTreeViewPrivate *priv = - TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(obj); + TRG_TRACKERS_TREE_VIEW_GET_PRIVATE(obj); trg_tree_view_set_prefs(TRG_TREE_VIEW(obj), - trg_client_get_prefs(client)); + trg_client_get_prefs(client)); g_signal_connect(obj, "button-press-event", - G_CALLBACK(view_onButtonPressed), NULL); + G_CALLBACK(view_onButtonPressed), NULL); g_signal_connect(obj, "popup-menu", G_CALLBACK(view_onPopupMenu), - NULL); + NULL); gtk_tree_view_set_model(GTK_TREE_VIEW(obj), GTK_TREE_MODEL(model)); priv->client = client; diff --git a/src/trg-trackers-tree-view.h b/src/trg-trackers-tree-view.h index d6a4942..c98a472 100644 --- a/src/trg-trackers-tree-view.h +++ b/src/trg-trackers-tree-view.h @@ -51,10 +51,10 @@ typedef struct { GType trg_trackers_tree_view_get_type(void); TrgTrackersTreeView *trg_trackers_tree_view_new(TrgTrackersModel * model, - TrgClient * client, - TrgMainWindow * win); + TrgClient * client, + TrgMainWindow * win); void trg_trackers_tree_view_new_connection(TrgTrackersTreeView * tv, - TrgClient * tc); + TrgClient * tc); G_END_DECLS -#endif /* TRG_TRACKERS_TREE_VIEW_H_ */ +#endif /* TRG_TRACKERS_TREE_VIEW_H_ */ diff --git a/src/trg-tree-view.c b/src/trg-tree-view.c index 26c90cd..30db56e 100644 --- a/src/trg-tree-view.c +++ b/src/trg-tree-view.c @@ -63,48 +63,48 @@ gboolean trg_tree_view_is_column_showing(TrgTreeView * tv, gint index) GList *li; for (li = priv->columns; li; li = g_list_next(li)) { - trg_column_description *cd = (trg_column_description *) li->data; - if (cd->model_column == index) { - if (cd->flags & TRG_COLUMN_SHOWING) - return TRUE; - else - break; - } + trg_column_description *cd = (trg_column_description *) li->data; + if (cd->model_column == index) { + if (cd->flags & TRG_COLUMN_SHOWING) + return TRUE; + else + break; + } } return FALSE; } static void trg_tree_view_get_property(GObject * object, guint property_id, - GValue * value, GParamSpec * pspec) + GValue * value, GParamSpec * pspec) { G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); } static void trg_tree_view_set_property(GObject * object, guint property_id, - const GValue * value, - GParamSpec * pspec) + const GValue * value, + GParamSpec * pspec) { TrgTreeViewPrivate *priv = TRG_TREE_VIEW_GET_PRIVATE(object); switch (property_id) { case PROP_PREFS: - priv->prefs = g_value_get_object(value); - break; + priv->prefs = g_value_get_object(value); + break; default: - G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); - break; + G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec); + break; } } static GObject *trg_tree_view_constructor(GType type, - guint n_construct_properties, - GObjectConstructParam * - construct_params) + guint n_construct_properties, + GObjectConstructParam * + construct_params) { GObject *obj = G_OBJECT_CLASS - (trg_tree_view_parent_class)->constructor(type, - n_construct_properties, - construct_params); + (trg_tree_view_parent_class)->constructor(type, + n_construct_properties, + construct_params); return obj; } @@ -118,33 +118,33 @@ static JsonObject *trg_prefs_get_tree_view_props(TrgTreeView * tv) JsonObject *tvProps = NULL; if (!json_object_has_member(root, TRG_PREFS_KEY_TREE_VIEWS)) { - obj = json_object_new(); - json_object_set_object_member(root, TRG_PREFS_KEY_TREE_VIEWS, obj); + obj = json_object_new(); + json_object_set_object_member(root, TRG_PREFS_KEY_TREE_VIEWS, obj); } else { - obj = - json_object_get_object_member(root, TRG_PREFS_KEY_TREE_VIEWS); + obj = + json_object_get_object_member(root, TRG_PREFS_KEY_TREE_VIEWS); } if (!json_object_has_member(obj, className)) { - tvProps = json_object_new(); - json_object_set_object_member(obj, className, tvProps); + tvProps = json_object_new(); + json_object_set_object_member(obj, className, tvProps); } else { - tvProps = json_object_get_object_member(obj, className); + tvProps = json_object_get_object_member(obj, className); } return tvProps; } static void trg_tree_view_add_column_after(TrgTreeView * tv, - trg_column_description * desc, - gint64 width, - GtkTreeViewColumn * after_col); + trg_column_description * desc, + gint64 width, + GtkTreeViewColumn * after_col); trg_column_description *trg_tree_view_reg_column(TrgTreeView * tv, - gint type, - gint model_column, - gchar * header, - gchar * id, gint flags) + gint type, + gint model_column, + gchar * header, + gchar * id, gint flags) { TrgTreeViewPrivate *priv = TRG_TREE_VIEW_GET_PRIVATE(tv); trg_column_description *desc = g_new0(trg_column_description, 1); @@ -161,50 +161,50 @@ trg_column_description *trg_tree_view_reg_column(TrgTreeView * tv, } static trg_column_description *trg_tree_view_find_column(TrgTreeView * tv, - const gchar * id) + const gchar * id) { TrgTreeViewPrivate *priv = TRG_TREE_VIEW_GET_PRIVATE(tv); GList *li; trg_column_description *desc; for (li = priv->columns; li; li = g_list_next(li)) { - desc = (trg_column_description *) li->data; - if (!g_strcmp0(desc->id, id)) - return desc; + desc = (trg_column_description *) li->data; + if (!g_strcmp0(desc->id, id)) + return desc; } return NULL; } static void trg_tree_view_hide_column(GtkWidget * w, - GtkTreeViewColumn * col) + GtkTreeViewColumn * col) { trg_column_description *desc = g_object_get_data(G_OBJECT(col), - "column-desc"); + "column-desc"); GtkWidget *tv = gtk_tree_view_column_get_tree_view(col); desc->flags &= ~TRG_COLUMN_SHOWING; gtk_tree_view_remove_column(GTK_TREE_VIEW(tv), col); } static void trg_tree_view_add_column(TrgTreeView * tv, - trg_column_description * desc, - gint64 width) + trg_column_description * desc, + gint64 width) { trg_tree_view_add_column_after(tv, desc, width, NULL); } static void trg_tree_view_user_add_column_cb(GtkWidget * w, - trg_column_description * desc) + trg_column_description * desc) { GtkTreeViewColumn *col = g_object_get_data(G_OBJECT(w), "parent-col"); TrgTreeView *tv = - TRG_TREE_VIEW(gtk_tree_view_column_get_tree_view(col)); + TRG_TREE_VIEW(gtk_tree_view_column_get_tree_view(col)); trg_tree_view_add_column_after(tv, desc, -1, col); } static void view_popup_menu(GtkButton * button, GdkEventButton * event, - GtkTreeViewColumn * column) + GtkTreeViewColumn * column) { GtkWidget *tv = gtk_tree_view_column_get_tree_view(column); TrgTreeViewPrivate *priv = TRG_TREE_VIEW_GET_PRIVATE(tv); @@ -218,44 +218,44 @@ static void view_popup_menu(GtkButton * button, GdkEventButton * event, menuitem = gtk_check_menu_item_new_with_label(desc->header); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE); g_signal_connect(menuitem, "activate", - G_CALLBACK(trg_tree_view_hide_column), column); + G_CALLBACK(trg_tree_view_hide_column), column); gtk_widget_set_sensitive(menuitem, - !(desc->flags & TRG_COLUMN_UNREMOVABLE)); + !(desc->flags & TRG_COLUMN_UNREMOVABLE)); gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); for (li = priv->columns; li; li = g_list_next(li)) { - trg_column_description *desc = (trg_column_description *) li->data; - if (!(desc->flags & TRG_COLUMN_SHOWING)) { - menuitem = gtk_check_menu_item_new_with_label(desc->header); - g_object_set_data(G_OBJECT(menuitem), "parent-col", column); - g_signal_connect(menuitem, "activate", - G_CALLBACK(trg_tree_view_user_add_column_cb), - desc); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); - } + trg_column_description *desc = (trg_column_description *) li->data; + if (!(desc->flags & TRG_COLUMN_SHOWING)) { + menuitem = gtk_check_menu_item_new_with_label(desc->header); + g_object_set_data(G_OBJECT(menuitem), "parent-col", column); + g_signal_connect(menuitem, "activate", + G_CALLBACK(trg_tree_view_user_add_column_cb), + desc); + gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); + } } gtk_widget_show_all(menu); gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, - (event != NULL) ? event->button : 0, - gdk_event_get_time((GdkEvent *) event)); + (event != NULL) ? event->button : 0, + gdk_event_get_time((GdkEvent *) event)); } static gboolean col_onButtonPressed(GtkButton * button, - GdkEventButton * event, - GtkTreeViewColumn * col) + GdkEventButton * event, + GtkTreeViewColumn * col) { if (event->type == GDK_BUTTON_PRESS && event->button == 3) { - view_popup_menu(button, event, col); - return TRUE; + view_popup_menu(button, event, col); + return TRUE; } return FALSE; } static GtkTreeViewColumn - *trg_tree_view_icontext_column_new(trg_column_description * desc, - gchar * renderer_property) + * trg_tree_view_icontext_column_new(trg_column_description * desc, + gchar * renderer_property) { GtkTreeViewColumn *column = gtk_tree_view_column_new(); GtkCellRenderer *renderer = gtk_cell_renderer_pixbuf_new(); @@ -263,134 +263,124 @@ static GtkTreeViewColumn gtk_tree_view_column_set_title(column, desc->header); gtk_tree_view_column_pack_start(column, renderer, FALSE); gtk_tree_view_column_set_attributes(column, renderer, - renderer_property, - desc->model_column_icon, NULL); + renderer_property, + desc->model_column_icon, NULL); renderer = gtk_cell_renderer_text_new(); gtk_tree_view_column_pack_start(column, renderer, TRUE); gtk_tree_view_column_set_attributes(column, renderer, "text", - desc->model_column, NULL); + desc->model_column, NULL); return column; } static void trg_tree_view_add_column_after(TrgTreeView * tv, - trg_column_description * desc, - gint64 width, - GtkTreeViewColumn * after_col) + trg_column_description * desc, + gint64 width, + GtkTreeViewColumn * after_col) { GtkCellRenderer *renderer; GtkTreeViewColumn *column = NULL; switch (desc->type) { case TRG_COLTYPE_TEXT: - renderer = - desc->customRenderer ? desc->customRenderer : - gtk_cell_renderer_text_new(); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, "text", - desc-> - model_column, - NULL); - - break; + renderer = + desc->customRenderer ? desc->customRenderer : + gtk_cell_renderer_text_new(); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, "text", + desc->model_column, + NULL); + + break; case TRG_COLTYPE_SPEED: - renderer = trg_cell_renderer_speed_new(); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "speed-value", - desc-> - model_column, - NULL); - break; + renderer = trg_cell_renderer_speed_new(); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "speed-value", + desc->model_column, + NULL); + break; case TRG_COLTYPE_EPOCH: - renderer = trg_cell_renderer_epoch_new(); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "epoch-value", - desc-> - model_column, - NULL); - break; + renderer = trg_cell_renderer_epoch_new(); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "epoch-value", + desc->model_column, + NULL); + break; case TRG_COLTYPE_ETA: - renderer = trg_cell_renderer_eta_new(); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "eta-value", - desc-> - model_column, - NULL); - break; + renderer = trg_cell_renderer_eta_new(); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "eta-value", + desc->model_column, + NULL); + break; case TRG_COLTYPE_SIZE: - renderer = trg_cell_renderer_size_new(); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "size-value", - desc-> - model_column, - NULL); - break; + renderer = trg_cell_renderer_size_new(); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "size-value", + desc->model_column, + NULL); + break; case TRG_COLTYPE_PROG: - renderer = gtk_cell_renderer_progress_new(); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "value", - desc-> - model_column, - NULL); - break; + renderer = gtk_cell_renderer_progress_new(); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "value", + desc->model_column, + NULL); + break; case TRG_COLTYPE_RATIO: - renderer = trg_cell_renderer_ratio_new(); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "ratio-value", - desc-> - model_column, - NULL); - break; + renderer = trg_cell_renderer_ratio_new(); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "ratio-value", + desc->model_column, + NULL); + break; case TRG_COLTYPE_ICON: - column = gtk_tree_view_column_new(); - renderer = gtk_cell_renderer_pixbuf_new(); - gtk_cell_renderer_set_alignment(GTK_CELL_RENDERER(renderer), 0.5f, - 0.0); - gtk_tree_view_column_set_title(column, desc->header); - gtk_tree_view_column_pack_start(column, renderer, TRUE); - gtk_tree_view_column_set_attributes(column, renderer, "stock-id", - desc->model_column, NULL); - break; + column = gtk_tree_view_column_new(); + renderer = gtk_cell_renderer_pixbuf_new(); + gtk_cell_renderer_set_alignment(GTK_CELL_RENDERER(renderer), 0.5f, + 0.0); + gtk_tree_view_column_set_title(column, desc->header); + gtk_tree_view_column_pack_start(column, renderer, TRUE); + gtk_tree_view_column_set_attributes(column, renderer, "stock-id", + desc->model_column, NULL); + break; case TRG_COLTYPE_STOCKICONTEXT: - column = trg_tree_view_icontext_column_new(desc, "stock-id"); - break; + column = trg_tree_view_icontext_column_new(desc, "stock-id"); + break; case TRG_COLTYPE_GICONTEXT: - column = trg_tree_view_icontext_column_new(desc, "gicon"); - break; + column = trg_tree_view_icontext_column_new(desc, "gicon"); + break; case TRG_COLTYPE_PRIO: - renderer = trg_cell_renderer_priority_new(); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "priority-value", - desc-> - model_column, - NULL); - break; + renderer = trg_cell_renderer_priority_new(); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "priority-value", + desc->model_column, + NULL); + break; case TRG_COLTYPE_NUMGTZERO: - renderer = trg_cell_renderer_numgteqthan_new(1); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "value", - desc-> - model_column, - NULL); - break; + renderer = trg_cell_renderer_numgteqthan_new(1); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "value", + desc->model_column, + NULL); + break; case TRG_COLTYPE_NUMGTEQZERO: - renderer = trg_cell_renderer_numgteqthan_new(0); - column = gtk_tree_view_column_new_with_attributes(desc->header, - renderer, - "value", - desc-> - model_column, - NULL); - break; + renderer = trg_cell_renderer_numgteqthan_new(0); + column = gtk_tree_view_column_new_with_attributes(desc->header, + renderer, + "value", + desc->model_column, + NULL); + break; } gtk_tree_view_column_set_min_width(column, 0); @@ -399,9 +389,9 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, gtk_tree_view_column_set_sort_column_id(column, desc->model_column); if (width >= 0) { - gtk_tree_view_column_set_sizing(column, - GTK_TREE_VIEW_COLUMN_FIXED); - gtk_tree_view_column_set_fixed_width(column, width); + gtk_tree_view_column_set_sizing(column, + GTK_TREE_VIEW_COLUMN_FIXED); + gtk_tree_view_column_set_fixed_width(column, width); } g_object_set_data(G_OBJECT(column), "column-desc", desc); @@ -409,20 +399,20 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, gtk_tree_view_append_column(GTK_TREE_VIEW(tv), column); if (after_col) - gtk_tree_view_move_column_after(GTK_TREE_VIEW(tv), column, - after_col); + gtk_tree_view_move_column_after(GTK_TREE_VIEW(tv), column, + after_col); #if GTK_CHECK_VERSION( 3,0,0 ) g_signal_connect(gtk_tree_view_column_get_button(column), - "button-press-event", G_CALLBACK(col_onButtonPressed), - column); + "button-press-event", G_CALLBACK(col_onButtonPressed), + column); #else g_signal_connect(column->button, "button-press-event", - G_CALLBACK(col_onButtonPressed), column); + G_CALLBACK(col_onButtonPressed), column); #endif if (desc->out) - *(desc->out) = column; + *(desc->out) = column; desc->flags |= TRG_COLUMN_SHOWING; } @@ -439,67 +429,67 @@ void trg_tree_view_persist(TrgTreeView * tv, gboolean parentIsSortable) JsonArray *widths, *columns; if (json_object_has_member(props, TRG_PREFS_KEY_TV_WIDTHS)) - json_object_remove_member(props, TRG_PREFS_KEY_TV_WIDTHS); + json_object_remove_member(props, TRG_PREFS_KEY_TV_WIDTHS); widths = json_array_new(); json_object_set_array_member(props, TRG_PREFS_KEY_TV_WIDTHS, widths); if (json_object_has_member(props, TRG_PREFS_KEY_TV_COLUMNS)) - json_object_remove_member(props, TRG_PREFS_KEY_TV_COLUMNS); + json_object_remove_member(props, TRG_PREFS_KEY_TV_COLUMNS); columns = json_array_new(); json_object_set_array_member(props, TRG_PREFS_KEY_TV_COLUMNS, columns); for (li = cols; li; li = g_list_next(li)) { - GtkTreeViewColumn *col = (GtkTreeViewColumn *) li->data; - trg_column_description *desc = - g_object_get_data(G_OBJECT(li->data), - "column-desc"); - - json_array_add_string_element(columns, desc->id); - json_array_add_int_element(widths, - gtk_tree_view_column_get_width(col)); + GtkTreeViewColumn *col = (GtkTreeViewColumn *) li->data; + trg_column_description *desc = + g_object_get_data(G_OBJECT(li->data), + "column-desc"); + + json_array_add_string_element(columns, desc->id); + json_array_add_int_element(widths, + gtk_tree_view_column_get_width(col)); } g_list_free(cols); gtk_tree_sortable_get_sort_column_id(GTK_TREE_SORTABLE - (parentIsSortable ? - gtk_tree_model_filter_get_model - (GTK_TREE_MODEL_FILTER(model)) : - model), &sort_column_id, - &sort_type); + (parentIsSortable ? + gtk_tree_model_filter_get_model + (GTK_TREE_MODEL_FILTER(model)) : + model), &sort_column_id, + &sort_type); if (json_object_has_member(props, TRG_PREFS_KEY_TV_SORT_COL)) - json_object_remove_member(props, TRG_PREFS_KEY_TV_SORT_COL); + json_object_remove_member(props, TRG_PREFS_KEY_TV_SORT_COL); if (json_object_has_member(props, TRG_PREFS_KEY_TV_SORT_TYPE)) - json_object_remove_member(props, TRG_PREFS_KEY_TV_SORT_TYPE); + json_object_remove_member(props, TRG_PREFS_KEY_TV_SORT_TYPE); json_object_set_int_member(props, TRG_PREFS_KEY_TV_SORT_COL, - (gint64) sort_column_id); + (gint64) sort_column_id); json_object_set_int_member(props, TRG_PREFS_KEY_TV_SORT_TYPE, - (gint64) sort_type); + (gint64) sort_type); } void trg_tree_view_restore_sort(TrgTreeView * tv, - gboolean parentIsSortable) + gboolean parentIsSortable) { JsonObject *props = trg_prefs_get_tree_view_props(tv); GtkTreeModel *model = gtk_tree_view_get_model(GTK_TREE_VIEW(tv)); if (json_object_has_member(props, TRG_PREFS_KEY_TV_SORT_COL) - && json_object_has_member(props, TRG_PREFS_KEY_TV_SORT_TYPE)) { - gint64 sort_col = json_object_get_int_member(props, - TRG_PREFS_KEY_TV_SORT_COL); - gint64 sort_type = json_object_get_int_member(props, - TRG_PREFS_KEY_TV_SORT_TYPE); - gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE - (parentIsSortable ? - gtk_tree_model_filter_get_model - (GTK_TREE_MODEL_FILTER - (model)) : model), sort_col, - (GtkSortType) sort_type); + && json_object_has_member(props, TRG_PREFS_KEY_TV_SORT_TYPE)) { + gint64 sort_col = json_object_get_int_member(props, + TRG_PREFS_KEY_TV_SORT_COL); + gint64 sort_type = json_object_get_int_member(props, + TRG_PREFS_KEY_TV_SORT_TYPE); + gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE + (parentIsSortable ? + gtk_tree_model_filter_get_model + (GTK_TREE_MODEL_FILTER + (model)) : model), sort_col, + (GtkSortType) sort_type); } } @@ -516,38 +506,38 @@ void trg_tree_view_setup_columns(TrgTreeView * tv) JsonObject *props = trg_prefs_get_tree_view_props(tv); if (!json_object_has_member(props, TRG_PREFS_KEY_TV_COLUMNS) - || !json_object_has_member(props, TRG_PREFS_KEY_TV_WIDTHS)) { - GList *li; - for (li = priv->columns; li; li = g_list_next(li)) { - trg_column_description *desc = - (trg_column_description *) li->data; - if (desc && !(desc->flags & TRG_COLUMN_EXTRA)) - trg_tree_view_add_column(tv, desc, -1); - } - return; + || !json_object_has_member(props, TRG_PREFS_KEY_TV_WIDTHS)) { + GList *li; + for (li = priv->columns; li; li = g_list_next(li)) { + trg_column_description *desc = + (trg_column_description *) li->data; + if (desc && !(desc->flags & TRG_COLUMN_EXTRA)) + trg_tree_view_add_column(tv, desc, -1); + } + return; } GList *columns = - json_array_get_elements(json_object_get_array_member - (props, TRG_PREFS_KEY_TV_COLUMNS)); + json_array_get_elements(json_object_get_array_member + (props, TRG_PREFS_KEY_TV_COLUMNS)); GList *widths = - json_array_get_elements(json_object_get_array_member - (props, TRG_PREFS_KEY_TV_WIDTHS)); + json_array_get_elements(json_object_get_array_member + (props, TRG_PREFS_KEY_TV_WIDTHS)); GList *wli = widths; GList *cli = columns; for (; cli; cli = g_list_next(cli)) { - trg_column_description *desc = trg_tree_view_find_column(tv, - json_node_get_string - ((JsonNode - *) cli-> - data)); - if (desc) { - gint64 width = json_node_get_int((JsonNode *) wli->data); - trg_tree_view_add_column(tv, desc, width); - } - wli = g_list_next(wli); + trg_column_description *desc = trg_tree_view_find_column(tv, + json_node_get_string + ((JsonNode + *) + cli->data)); + if (desc) { + gint64 width = json_node_get_int((JsonNode *) wli->data); + trg_tree_view_add_column(tv, desc, width); + } + wli = g_list_next(wli); } g_list_free(columns); @@ -563,10 +553,10 @@ GList *trg_tree_view_get_selected_refs_list(GtkTreeView * tv) selectionList = gtk_tree_selection_get_selected_rows(selection, NULL); for (li = selectionList; li != NULL; li = g_list_next(li)) { - GtkTreePath *path = (GtkTreePath *) li->data; - GtkTreeRowReference *ref = gtk_tree_row_reference_new(model, path); - gtk_tree_path_free(path); - refList = g_list_append(refList, ref); + GtkTreePath *path = (GtkTreePath *) li->data; + GtkTreeRowReference *ref = gtk_tree_row_reference_new(model, path); + gtk_tree_path_free(path); + refList = g_list_append(refList, ref); } g_list_free(selectionList); @@ -584,19 +574,19 @@ static void trg_tree_view_class_init(TrgTreeViewClass * klass) object_class->constructor = trg_tree_view_constructor; g_object_class_install_property(object_class, - PROP_PREFS, - g_param_spec_object("prefs", - "Trg Prefs", - "Trg Prefs", - TRG_TYPE_PREFS, - G_PARAM_READWRITE | - G_PARAM_CONSTRUCT_ONLY - | - G_PARAM_STATIC_NAME - | - G_PARAM_STATIC_NICK - | - G_PARAM_STATIC_BLURB)); + PROP_PREFS, + g_param_spec_object("prefs", + "Trg Prefs", + "Trg Prefs", + TRG_TYPE_PREFS, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY + | + G_PARAM_STATIC_NAME + | + G_PARAM_STATIC_NICK + | + G_PARAM_STATIC_BLURB)); } static void trg_tree_view_init(TrgTreeView * tv) @@ -605,8 +595,8 @@ static void trg_tree_view_init(TrgTreeView * tv) gtk_tree_view_set_headers_clickable(GTK_TREE_VIEW(tv), TRUE); gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(tv), TRUE); gtk_tree_selection_set_mode(gtk_tree_view_get_selection - (GTK_TREE_VIEW(tv)), - GTK_SELECTION_MULTIPLE); + (GTK_TREE_VIEW(tv)), + GTK_SELECTION_MULTIPLE); gtk_widget_set_sensitive(GTK_WIDGET(tv), FALSE); } diff --git a/src/trg-tree-view.h b/src/trg-tree-view.h index 7d1a33f..7332ad6 100644 --- a/src/trg-tree-view.h +++ b/src/trg-tree-view.h @@ -78,20 +78,20 @@ typedef struct { } trg_column_description; #define TRG_COLUMN_DEFAULT 0x00 -#define TRG_COLUMN_SHOWING (1 << 0) /* 0x01 */ -#define TRG_COLUMN_UNREMOVABLE (1 << 1) /* 0x02 */ -#define TRG_COLUMN_EXTRA (1 << 2) /* 0x04 */ +#define TRG_COLUMN_SHOWING (1 << 0) /* 0x01 */ +#define TRG_COLUMN_UNREMOVABLE (1 << 1) /* 0x02 */ +#define TRG_COLUMN_EXTRA (1 << 2) /* 0x04 */ trg_column_description *trg_tree_view_reg_column(TrgTreeView * tv, - gint type, - gint model_column, - gchar * header, - gchar * id, gint flags); + gint type, + gint model_column, + gchar * header, + gchar * id, gint flags); void trg_tree_view_setup_columns(TrgTreeView * tv); void trg_tree_view_set_prefs(TrgTreeView * tv, TrgPrefs * prefs); void trg_tree_view_persist(TrgTreeView * tv, gboolean parentIsSortable); void trg_tree_view_restore_sort(TrgTreeView * tv, - gboolean parentIsSortable); + gboolean parentIsSortable); gboolean trg_tree_view_is_column_showing(TrgTreeView * tv, gint index); -#endif /* _TRG_TREE_VIEW_H_ */ +#endif /* _TRG_TREE_VIEW_H_ */ @@ -48,10 +48,10 @@ void add_file_id_to_array(JsonObject * args, gchar * key, gint index) { JsonArray *array; if (json_object_has_member(args, key)) { - array = json_object_get_array_member(args, key); + array = json_object_get_array_member(args, key); } else { - array = json_array_new(); - json_object_set_array_member(args, key, array); + array = json_array_new(); + json_object_set_array_member(args, key, array); } json_array_add_int_element(array, index); } @@ -65,17 +65,17 @@ void g_str_slist_free(GSList * list) GRegex *trg_uri_host_regex_new(void) { return - g_regex_new - ("^[^:/?#]+:?//(?:www\\.|torrent\\.|torrents\\.|tracker\\.|\\d+\\.)?([^/?#:]*)", - G_REGEX_OPTIMIZE, 0, NULL); + g_regex_new + ("^[^:/?#]+:?//(?:www\\.|torrent\\.|torrents\\.|tracker\\.|\\d+\\.)?([^/?#:]*)", + G_REGEX_OPTIMIZE, 0, NULL); } GtkWidget *my_scrolledwin_new(GtkWidget * child) { GtkWidget *scrolled_win = gtk_scrolled_window_new(NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_win), - GTK_POLICY_AUTOMATIC, - GTK_POLICY_AUTOMATIC); + GTK_POLICY_AUTOMATIC, + GTK_POLICY_AUTOMATIC); gtk_container_add(GTK_CONTAINER(scrolled_win), child); return scrolled_win; } @@ -86,8 +86,8 @@ gchar *trg_gregex_get_first(GRegex * rx, const gchar * src) gchar *dst = NULL; g_regex_match(rx, src, 0, &mi); if (mi) { - dst = g_match_info_fetch(mi, 1); - g_match_info_free(mi); + dst = g_match_info_fetch(mi, 1); + g_match_info_free(mi); } return dst; } @@ -96,10 +96,10 @@ void trg_error_dialog(GtkWindow * parent, trg_response * response) { gchar *msg = make_error_message(response->obj, response->status); GtkWidget *dialog = gtk_message_dialog_new(parent, - GTK_DIALOG_MODAL, - GTK_MESSAGE_ERROR, - GTK_BUTTONS_OK, "%s", - msg); + GTK_DIALOG_MODAL, + GTK_MESSAGE_ERROR, + GTK_BUTTONS_OK, "%s", + msg); gtk_window_set_title(GTK_WINDOW(dialog), _("Error")); gtk_dialog_run(GTK_DIALOG(dialog)); gtk_widget_destroy(dialog); @@ -109,19 +109,19 @@ void trg_error_dialog(GtkWindow * parent, trg_response * response) gchar *make_error_message(JsonObject * response, int status) { if (status == FAIL_JSON_DECODE) { - return g_strdup(_("JSON decoding error.")); + return g_strdup(_("JSON decoding error.")); } else if (status == FAIL_RESPONSE_UNSUCCESSFUL) { - const gchar *resultStr = - json_object_get_string_member(response, "result"); - if (resultStr == NULL) - return g_strdup(_("Server responded, but with no result.")); - else - return g_strdup(resultStr); + const gchar *resultStr = + json_object_get_string_member(response, "result"); + if (resultStr == NULL) + return g_strdup(_("Server responded, but with no result.")); + else + return g_strdup(resultStr); } else if (status <= -100) { - return g_strdup_printf(_("Request failed with HTTP code %d"), - -(status + 100)); + return g_strdup_printf(_("Request failed with HTTP code %d"), + -(status + 100)); } else { - return g_strdup(curl_easy_strerror(status)); + return g_strdup(curl_easy_strerror(status)); } } @@ -134,11 +134,11 @@ char *tr_strpercent(char *buf, double x, size_t buflen) { int precision; if (x < 10.0) - precision = 2; + precision = 2; else if (x < 100.0) - precision = 1; + precision = 1; else - precision = 0; + precision = 0; tr_snprintf(buf, buflen, "%.*f%%", precision, tr_truncd(x, precision)); return buf; @@ -152,18 +152,18 @@ double tr_truncd(double x, int decimal_places) } char *tr_strratio(char *buf, size_t buflen, double ratio, - const char *infinity) + const char *infinity) { if ((int) ratio == TR_RATIO_NA) - tr_strlcpy(buf, _("None"), buflen); + tr_strlcpy(buf, _("None"), buflen); else if ((int) ratio == TR_RATIO_INF) - tr_strlcpy(buf, infinity, buflen); + tr_strlcpy(buf, infinity, buflen); else if (ratio < 10.0) - tr_snprintf(buf, buflen, "%.2f", tr_truncd(ratio, 2)); + tr_snprintf(buf, buflen, "%.2f", tr_truncd(ratio, 2)); else if (ratio < 100.0) - tr_snprintf(buf, buflen, "%.1f", tr_truncd(ratio, 1)); + tr_snprintf(buf, buflen, "%.1f", tr_truncd(ratio, 1)); else - tr_snprintf(buf, buflen, "%'.0f", ratio); + tr_snprintf(buf, buflen, "%'.0f", ratio); return buf; } @@ -175,30 +175,30 @@ char *tr_strlratio(char *buf, double ratio, size_t buflen) char *tr_strlsize(char *buf, guint64 size, size_t buflen) { if (!size) - g_strlcpy(buf, _("None"), buflen); + g_strlcpy(buf, _("None"), buflen); #if GLIB_CHECK_VERSION( 2, 16, 0 ) else { - char *tmp = g_format_size_for_display(size); - g_strlcpy(buf, tmp, buflen); - g_free(tmp); + char *tmp = g_format_size_for_display(size); + g_strlcpy(buf, tmp, buflen); + g_free(tmp); } #else else if (size < (guint64) KILOBYTE_FACTOR) - g_snprintf(buf, buflen, - ngettext("%'u byte", "%'u bytes", (guint) size), - (guint) size); + g_snprintf(buf, buflen, + ngettext("%'u byte", "%'u bytes", (guint) size), + (guint) size); else { - gdouble displayed_size; - if (size < (guint64) MEGABYTE_FACTOR) { - displayed_size = (gdouble) size / KILOBYTE_FACTOR; - g_snprintf(buf, buflen, _("%'.1f KB"), displayed_size); - } else if (size < (guint64) GIGABYTE_FACTOR) { - displayed_size = (gdouble) size / MEGABYTE_FACTOR; - g_snprintf(buf, buflen, _("%'.1f MB"), displayed_size); - } else { - displayed_size = (gdouble) size / GIGABYTE_FACTOR; - g_snprintf(buf, buflen, _("%'.1f GB"), displayed_size); - } + gdouble displayed_size; + if (size < (guint64) MEGABYTE_FACTOR) { + displayed_size = (gdouble) size / KILOBYTE_FACTOR; + g_snprintf(buf, buflen, _("%'.1f KB"), displayed_size); + } else if (size < (guint64) GIGABYTE_FACTOR) { + displayed_size = (gdouble) size / MEGABYTE_FACTOR; + g_snprintf(buf, buflen, _("%'.1f MB"), displayed_size); + } else { + displayed_size = (gdouble) size / GIGABYTE_FACTOR; + g_snprintf(buf, buflen, _("%'.1f GB"), displayed_size); + } } #endif return buf; @@ -208,14 +208,14 @@ char *tr_strlspeed(char *buf, double kb_sec, size_t buflen) { const double speed = kb_sec; - if (speed < 1000.0) /* 0.0 KB to 999.9 KB */ - g_snprintf(buf, buflen, _("%.1f KB/s"), speed); - else if (speed < 102400.0) /* 0.98 MB to 99.99 MB */ - g_snprintf(buf, buflen, _("%.2f MB/s"), (speed / KILOBYTE_FACTOR)); - else if (speed < 1024000.0) /* 100.0 MB to 999.9 MB */ - g_snprintf(buf, buflen, _("%.1f MB/s"), (speed / MEGABYTE_FACTOR)); - else /* insane speeds */ - g_snprintf(buf, buflen, _("%.2f GB/s"), (speed / GIGABYTE_FACTOR)); + if (speed < 1000.0) /* 0.0 KB to 999.9 KB */ + g_snprintf(buf, buflen, _("%.1f KB/s"), speed); + else if (speed < 102400.0) /* 0.98 MB to 99.99 MB */ + g_snprintf(buf, buflen, _("%.2f MB/s"), (speed / KILOBYTE_FACTOR)); + else if (speed < 1024000.0) /* 100.0 MB to 999.9 MB */ + g_snprintf(buf, buflen, _("%.1f MB/s"), (speed / MEGABYTE_FACTOR)); + else /* insane speeds */ + g_snprintf(buf, buflen, _("%.2f GB/s"), (speed / GIGABYTE_FACTOR)); return buf; } @@ -225,7 +225,7 @@ char *tr_strltime_short(char *buf, long seconds, size_t buflen) int hours, minutes; if (seconds < 0) - seconds = 0; + seconds = 0; hours = seconds / 3600; minutes = (seconds % 3600) / 60; @@ -242,7 +242,7 @@ char *tr_strltime_long(char *buf, long seconds, size_t buflen) char d[128], h[128], m[128], s[128]; if (seconds < 0) - seconds = 0; + seconds = 0; days = seconds / 86400; hours = (seconds % 86400) / 3600; @@ -251,32 +251,32 @@ char *tr_strltime_long(char *buf, long seconds, size_t buflen) g_snprintf(d, sizeof(d), ngettext("%d day", "%d days", days), days); g_snprintf(h, sizeof(h), ngettext("%d hour", "%d hours", hours), - hours); + hours); g_snprintf(m, sizeof(m), ngettext("%d minute", "%d minutes", minutes), - minutes); + minutes); g_snprintf(s, sizeof(s), - ngettext("%ld second", "%ld seconds", seconds), seconds); + ngettext("%ld second", "%ld seconds", seconds), seconds); if (days) { - if (days >= 4 || !hours) { - g_strlcpy(buf, d, buflen); - } else { - g_snprintf(buf, buflen, "%s, %s", d, h); - } + if (days >= 4 || !hours) { + g_strlcpy(buf, d, buflen); + } else { + g_snprintf(buf, buflen, "%s, %s", d, h); + } } else if (hours) { - if (hours >= 4 || !minutes) { - g_strlcpy(buf, h, buflen); - } else { - g_snprintf(buf, buflen, "%s, %s", h, m); - } + if (hours >= 4 || !minutes) { + g_strlcpy(buf, h, buflen); + } else { + g_snprintf(buf, buflen, "%s, %s", h, m); + } } else if (minutes) { - if (minutes >= 4 || !seconds) { - g_strlcpy(buf, m, buflen); - } else { - g_snprintf(buf, buflen, "%s, %s", m, s); - } + if (minutes >= 4 || !seconds) { + g_strlcpy(buf, m, buflen); + } else { + g_snprintf(buf, buflen, "%s, %s", m, s); + } } else { - g_strlcpy(buf, s, buflen); + g_strlcpy(buf, s, buflen); } return buf; @@ -289,7 +289,7 @@ char *gtr_localtime(time_t time) g_strlcpy(buf, asctime(&tm), sizeof(buf)); if ((eoln = strchr(buf, '\n'))) - *eoln = '\0'; + *eoln = '\0'; return g_locale_to_utf8(buf, -1, NULL, NULL, NULL); } @@ -324,20 +324,20 @@ size_t tr_strlcpy(char *dst, const void *src, size_t siz) /* Copy as many bytes as will fit */ if (n != 0) { - while (--n != 0) { - if ((*d++ = *s++) == '\0') - break; - } + while (--n != 0) { + if ((*d++ = *s++) == '\0') + break; + } } /* Not enough room in dst, add NUL and traverse rest of src */ if (n == 0) { - if (siz != 0) - *d = '\0'; /* NUL-terminate dst */ - while (*s++); + if (siz != 0) + *d = '\0'; /* NUL-terminate dst */ + while (*s++); } - return s - (char *) src - 1; /* count does not include NUL */ + return s - (char *) src - 1; /* count does not include NUL */ #endif } @@ -348,9 +348,9 @@ evutil_vsnprintf(char *buf, size_t buflen, const char *format, va_list ap) int r = _vsnprintf(buf, buflen, format, ap); buf[buflen - 1] = '\0'; if (r >= 0) - return r; + return r; else - return _vscprintf(format, ap); + return _vscprintf(format, ap); #else int r = vsnprintf(buf, buflen, format, ap); buf[buflen - 1] = '\0'; @@ -361,17 +361,17 @@ evutil_vsnprintf(char *buf, size_t buflen, const char *format, va_list ap) void rm_trailing_slashes(gchar * str) { if (!str) - return; + return; int i, len; if ((len = strlen(str)) < 1) - return; + return; for (i = strlen(str) - 1; str[i]; i--) { - if (str[i] == '/') - str[i] = '\0'; - else - return; + if (str[i] == '/') + str[i] = '\0'; + else + return; } } @@ -381,9 +381,9 @@ void rm_trailing_slashes(gchar * str) void trg_widget_set_visible(GtkWidget * w, gboolean visible) { if (visible) - gtk_widget_show(w); + gtk_widget_show(w); else - gtk_widget_hide(w); + gtk_widget_hide(w); } gdouble json_double_to_progress(JsonNode * n) @@ -398,11 +398,11 @@ gdouble json_node_really_get_double(JsonNode * node) json_node_get_value(node, &a); switch (G_VALUE_TYPE(&a)) { case G_TYPE_INT64: - return (gdouble) g_value_get_int64(&a); + return (gdouble) g_value_get_int64(&a); case G_TYPE_DOUBLE: - return g_value_get_double(&a); + return g_value_get_double(&a); default: - return 0.0; + return 0.0; } } @@ -413,12 +413,12 @@ gchar *trg_base64encode(const gchar * filename) gchar *b64out = NULL; if (error) { - g_error("%s", error->message); - g_error_free(error); + g_error("%s", error->message); + g_error_free(error); } else { - b64out = - g_base64_encode((guchar *) g_mapped_file_get_contents(mf), - g_mapped_file_get_length(mf)); + b64out = + g_base64_encode((guchar *) g_mapped_file_get_contents(mf), + g_mapped_file_get_length(mf)); } g_mapped_file_unref(mf); @@ -439,13 +439,13 @@ GtkWidget *gtr_combo_box_new_enum(const char *text_1, ...) text = text_1; if (text != NULL) - do { - const int val = va_arg(vl, int); - gtk_list_store_insert_with_values(store, NULL, INT_MAX, 0, val, - 1, text, -1); - text = va_arg(vl, const char *); - } - while (text != NULL); + do { + const int val = va_arg(vl, int); + gtk_list_store_insert_with_values(store, NULL, INT_MAX, 0, val, + 1, text, -1); + text = va_arg(vl, const char *); + } + while (text != NULL); w = gtk_combo_box_new_with_model(GTK_TREE_MODEL(store)); r = gtk_cell_renderer_text_new(); @@ -51,7 +51,7 @@ char *tr_strltime_short(char *buf, long seconds, size_t buflen); char *tr_strpercent(char *buf, double x, size_t buflen); char *tr_strlpercent(char *buf, double x, size_t buflen); char *tr_strratio(char *buf, size_t buflen, double ratio, - const char *infinity); + const char *infinity); char *tr_strlratio(char *buf, double ratio, size_t buflen); char *tr_strlspeed(char *buf, double kb_sec, size_t buflen); char *tr_strlsize(char *buf, guint64 size, size_t buflen); @@ -62,7 +62,7 @@ int tr_snprintf(char *buf, size_t buflen, const char *fmt, ...); size_t tr_strlcpy(char *dst, const void *src, size_t siz); double tr_truncd(double x, int decimal_places); int evutil_vsnprintf(char *buf, size_t buflen, const char *format, - va_list ap); + va_list ap); void rm_trailing_slashes(gchar * str); void trg_widget_set_visible(GtkWidget * w, gboolean visible); gdouble json_double_to_progress(JsonNode * n); @@ -73,4 +73,4 @@ gboolean is_magnet(gchar * string); gdouble json_node_really_get_double(JsonNode * node); GtkWidget *gtr_combo_box_new_enum(const char *text_1, ...); -#endif /* UTIL_H_ */ +#endif /* UTIL_H_ */ |