diff options
-rw-r--r-- | src/torrent.c | 3 | ||||
-rw-r--r-- | src/trg-file-parser.c | 16 | ||||
-rw-r--r-- | src/trg-files-model.c | 46 | ||||
-rw-r--r-- | src/trg-files-tree.c | 35 | ||||
-rw-r--r-- | src/trg-files-tree.h | 41 | ||||
-rw-r--r-- | src/trg-main-window.c | 12 | ||||
-rw-r--r-- | src/trg-preferences-dialog.c | 3 | ||||
-rw-r--r-- | src/trg-remote-prefs-dialog.c | 6 | ||||
-rw-r--r-- | src/trg-torrent-props-dialog.c | 6 | ||||
-rw-r--r-- | src/trg-tree-view.c | 33 | ||||
-rw-r--r-- | src/util.c | 5 | ||||
-rw-r--r-- | src/util.h | 5 |
12 files changed, 139 insertions, 72 deletions
diff --git a/src/torrent.c b/src/torrent.c index fbc5884..b5dcd7c 100644 --- a/src/torrent.c +++ b/src/torrent.c @@ -610,7 +610,8 @@ gint64 peerfrom_get_lpd(JsonObject * pf) gdouble file_get_progress(gint64 length, gint64 completed) { if (length > 0) { - gdouble progress = ((gdouble) completed / (gdouble) length) * 100.0; + gdouble progress = + ((gdouble) completed / (gdouble) length) * 100.0; if (progress > 100.0) return 100.0; else diff --git a/src/trg-file-parser.c b/src/trg-file-parser.c index 263cd2f..3353cd9 100644 --- a/src/trg-file-parser.c +++ b/src/trg-file-parser.c @@ -28,8 +28,8 @@ static trg_files_tree_node * trg_file_parser_node_insert(trg_files_tree_node * top, - trg_files_tree_node * last, - be_node * file_node, gint index) + trg_files_tree_node * last, + be_node * file_node, gint index) { be_node *file_length_node = be_dict_find(file_node, "length", BE_INT); be_node *file_path_list = be_dict_find(file_node, "path", BE_LIST); @@ -81,7 +81,7 @@ static trg_files_tree_node lastIter = target_node; if (isFile) { - target_node->length = (gint64)file_length_node->val.i; + target_node->length = (gint64) file_length_node->val.i; target_node->index = index; } } @@ -99,7 +99,7 @@ void trg_torrent_file_free(trg_torrent_file * t) } static trg_files_tree_node *trg_parse_torrent_file_nodes(be_node * - info_node) + info_node) { be_node *files_node = be_dict_find(info_node, "files", BE_LIST); trg_files_tree_node *top_node = g_new0(trg_files_tree_node, 1); @@ -116,7 +116,7 @@ static trg_files_tree_node *trg_parse_torrent_file_nodes(be_node * if (!be_validate_node(file_node, BE_DICT) || !(lastNode = trg_file_parser_node_insert(top_node, lastNode, - file_node, i))) { + file_node, i))) { /* Unexpected format. Throw away everything, file indexes need to * be correct. */ trg_files_tree_node_free(top_node); @@ -171,8 +171,7 @@ trg_torrent_file *trg_parse_torrent_file(const gchar * filename) 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->top_node = trg_parse_torrent_file_nodes(info_node); if (!ret->top_node) { trg_files_tree_node *file_node; be_node *length_node = be_dict_find(info_node, "length", BE_INT); @@ -184,8 +183,7 @@ trg_torrent_file *trg_parse_torrent_file(const gchar * filename) } file_node = g_new0(trg_files_tree_node, 1); - file_node->length = - (gint64) (length_node->val.i); + file_node->length = (gint64) (length_node->val.i); file_node->name = g_strdup(ret->name); ret->top_node = file_node; } diff --git a/src/trg-files-model.c b/src/trg-files-model.c index 521f99b..68ae79b 100644 --- a/src/trg-files-model.c +++ b/src/trg-files-model.c @@ -68,15 +68,13 @@ static void trg_files_update_parent_progress(GtkTreeModel * model, gtk_tree_store_set(GTK_TREE_STORE(model), &tmp_iter, FILESCOL_PROGRESS, file_get_progress(length, newCompleted), - FILESCOL_BYTESCOMPLETED, newCompleted, - -1); + FILESCOL_BYTESCOMPLETED, newCompleted, -1); back_iter = tmp_iter; } } -static void trg_files_tree_update_ancestors( - trg_files_tree_node *node) +static void trg_files_tree_update_ancestors(trg_files_tree_node * node) { trg_files_tree_node *back_iter = node; gint pri_result = node->priority; @@ -85,7 +83,8 @@ static void trg_files_tree_update_ancestors( while ((back_iter = back_iter->parent)) { GList *li; for (li = back_iter->children; li; li = g_list_next(li)) { - trg_files_tree_node *back_node = (trg_files_tree_node*)li->data; + trg_files_tree_node *back_node = + (trg_files_tree_node *) li->data; gboolean stop = FALSE; if (back_node->priority != pri_result) { @@ -116,14 +115,15 @@ static void store_add_node(GtkTreeStore * store, GtkTreeIter * parent, GList *li; if (node->name) { - gdouble progress = file_get_progress(node->length, node->bytesCompleted); + gdouble progress = + file_get_progress(node->length, node->bytesCompleted); gtk_tree_store_append(store, &child, parent); gtk_tree_store_set(store, &child, FILESCOL_WANTED, node->enabled, - FILESCOL_PROGRESS, progress, - FILESCOL_SIZE, node->length, - FILESCOL_ID, node->children ? -1 : node->index, - FILESCOL_PRIORITY, node->priority, FILESCOL_NAME, node->name, - -1); + FILESCOL_PROGRESS, progress, + FILESCOL_SIZE, node->length, + FILESCOL_ID, node->index, + FILESCOL_PRIORITY, node->priority, + FILESCOL_NAME, node->name, -1); } for (li = node->children; li; li = g_list_next(li)) @@ -133,9 +133,10 @@ static void store_add_node(GtkTreeStore * store, GtkTreeIter * parent, static trg_files_tree_node * trg_file_parser_node_insert(trg_files_tree_node * top, - trg_files_tree_node * last, - JsonObject *file, gint index, - JsonArray *enabled, JsonArray *priorities) + trg_files_tree_node * last, + JsonObject * file, gint index, + JsonArray * enabled, + JsonArray * priorities) { gchar **path = g_strsplit(file_get_name(file), "/", -1); trg_files_tree_node *lastIter = last; @@ -186,10 +187,14 @@ static trg_files_tree_node target_node->length = file_get_length(file); target_node->bytesCompleted = file_get_bytes_completed(file); target_node->index = index; - target_node->enabled = (gint)json_array_get_int_element(enabled, index); - target_node->priority = (gint)json_array_get_int_element(priorities, index); + target_node->enabled = + (gint) json_array_get_int_element(enabled, index); + target_node->priority = + (gint) json_array_get_int_element(priorities, index); trg_files_tree_update_ancestors(target_node); + } else { + target_node->index = -1; } } @@ -224,14 +229,14 @@ static void trg_files_model_iter_update(TrgFilesModel * model, gdouble progress = file_get_progress(fileLength, fileCompleted); gtk_tree_model_get(GTK_TREE_MODEL(model), filesIter, - FILESCOL_BYTESCOMPLETED, &lastCompleted, -1); + FILESCOL_BYTESCOMPLETED, &lastCompleted, -1); gtk_tree_store_set(GTK_TREE_STORE(model), filesIter, FILESCOL_PROGRESS, progress, FILESCOL_BYTESCOMPLETED, fileCompleted, -1); trg_files_update_parent_progress(GTK_TREE_MODEL(model), filesIter, - fileCompleted - lastCompleted); + fileCompleted - lastCompleted); if (priv->accept) gtk_tree_store_set(GTK_TREE_STORE(model), filesIter, @@ -309,8 +314,9 @@ void trg_files_model_update(TrgFilesModel * model, gint64 updateSerial, file = json_node_get_object((JsonNode *) li->data); lastNode = - trg_file_parser_node_insert(top_node, lastNode, - file, j++, priv->wanted, priv->priorities); + trg_file_parser_node_insert(top_node, lastNode, + file, j++, priv->wanted, + priv->priorities); } priv->n_items = j; diff --git a/src/trg-files-tree.c b/src/trg-files-tree.c new file mode 100644 index 0000000..4da802c --- /dev/null +++ b/src/trg-files-tree.c @@ -0,0 +1,35 @@ +/* + * transmission-remote-gtk - A GTK RPC client to Transmission + * Copyright (C) 2011 Alan Fitton + + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include <stdlib.h> +#include <string.h> + +#include <glib.h> + +#include "trg-files-tree.h" + +void trg_files_tree_node_free(trg_files_tree_node * node) +{ + GList *li; + for (li = node->children; li; li = g_list_next(li)) + trg_files_tree_node_free((trg_files_tree_node *) li->data); + g_list_free(node->children); + g_free(node->name); + g_free(node); +} diff --git a/src/trg-files-tree.h b/src/trg-files-tree.h new file mode 100644 index 0000000..3cc7269 --- /dev/null +++ b/src/trg-files-tree.h @@ -0,0 +1,41 @@ +/* + * transmission-remote-gtk - A GTK RPC client to Transmission + * Copyright (C) 2011 Alan Fitton + + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#ifndef TRG_FILES_TREE_H_ +#define TRG_FILES_TREE_H_ + +#include <glib-object.h> +#include <json-glib/json-glib.h> + +#include "trg-files-tree.h" + +typedef struct { + char *name; + gint64 length; + gint64 bytesCompleted; + GList *children; + gint index; + gpointer parent; + gint priority; + gint enabled; +} trg_files_tree_node; + +void trg_files_tree_node_free(trg_files_tree_node * node); + +#endif /* TRG_FILES_MODEL_H_ */ diff --git a/src/trg-main-window.c b/src/trg-main-window.c index d06f250..6dc2cda 100644 --- a/src/trg-main-window.c +++ b/src/trg-main-window.c @@ -434,8 +434,7 @@ 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)); } @@ -1304,8 +1303,7 @@ static gboolean trg_torrent_tree_view_visible_func(GtkTreeModel * model, matchesTracker = (!json || !torrent_has_tracker(json, trg_state_selector_get_url_host_regex - (priv-> - stateSelector), + (priv->stateSelector), text)); g_free(text); if (matchesTracker) @@ -2418,8 +2416,7 @@ static GObject *trg_main_window_constructor(GType type, self, NULL); priv->torrentTreeView = trg_main_window_torrent_tree_view_new(self, - priv-> - filteredTorrentModel); + priv->filteredTorrentModel); g_signal_connect(priv->torrentTreeView, "popup-menu", G_CALLBACK(torrent_tv_popup_menu_cb), self); g_signal_connect(priv->torrentTreeView, "button-press-event", @@ -2467,8 +2464,7 @@ static GObject *trg_main_window_constructor(GType type, FALSE, FALSE); gtk_paned_pack2(GTK_PANED(priv->hpaned), my_scrolledwin_new(GTK_WIDGET - (priv-> - torrentTreeView)), + (priv->torrentTreeView)), TRUE, TRUE); g_signal_connect(G_OBJECT(priv->stateSelector), diff --git a/src/trg-preferences-dialog.c b/src/trg-preferences-dialog.c index 4c774ec..89ea325 100644 --- a/src/trg-preferences-dialog.c +++ b/src/trg-preferences-dialog.c @@ -385,8 +385,7 @@ static void trgp_double_special_dependent(GtkWidget * widget, (priv->fullUpdateCheck) && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON - (priv-> - fullUpdateCheck))); + (priv->fullUpdateCheck))); } static GtkWidget *trg_prefs_generalPage(TrgPreferencesDialog * dlg) diff --git a/src/trg-remote-prefs-dialog.c b/src/trg-remote-prefs-dialog.c index 8f866ea..8c921e4 100644 --- a/src/trg-remote-prefs-dialog.c +++ b/src/trg-remote-prefs-dialog.c @@ -159,12 +159,10 @@ static void trg_remote_prefs_double_special_dependent(GtkWidget * widget, gtk_widget_set_sensitive(GTK_WIDGET(data), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON - (priv-> - alt_time_check)) + (priv->alt_time_check)) || gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON - (priv-> - alt_check))); + (priv->alt_check))); } static void trg_rprefs_time_widget_savefunc(GtkWidget * w, diff --git a/src/trg-torrent-props-dialog.c b/src/trg-torrent-props-dialog.c index 05ebaa8..89e5102 100644 --- a/src/trg-torrent-props-dialog.c +++ b/src/trg-torrent-props-dialog.c @@ -137,10 +137,12 @@ trg_torrent_props_response_cb(GtkDialog * dlg, gint res_id, json_object_set_int_member(args, FIELD_SEED_RATIO_MODE, gtk_combo_box_get_active(GTK_COMBO_BOX - (priv->seedRatioMode))); + (priv-> + seedRatioMode))); json_object_set_int_member(args, FIELD_BANDWIDTH_PRIORITY, gtk_combo_box_get_active(GTK_COMBO_BOX - (priv->bandwidthPriorityCombo)) + (priv-> + bandwidthPriorityCombo)) - 1); trg_json_widgets_save(priv->widgets, args); diff --git a/src/trg-tree-view.c b/src/trg-tree-view.c index 4265c7d..54c5cf5 100644 --- a/src/trg-tree-view.c +++ b/src/trg-tree-view.c @@ -313,8 +313,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, gtk_cell_renderer_text_new(); column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "text", - desc-> - model_column, + desc->model_column, NULL); break; @@ -323,8 +322,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "speed-value", - desc-> - model_column, + desc->model_column, NULL); break; case TRG_COLTYPE_EPOCH: @@ -332,8 +330,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "epoch-value", - desc-> - model_column, + desc->model_column, NULL); break; case TRG_COLTYPE_ETA: @@ -341,8 +338,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "eta-value", - desc-> - model_column, + desc->model_column, NULL); break; case TRG_COLTYPE_SIZE: @@ -350,8 +346,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "size-value", - desc-> - model_column, + desc->model_column, NULL); break; case TRG_COLTYPE_PROG: @@ -359,8 +354,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "value", - desc-> - model_column, + desc->model_column, NULL); break; case TRG_COLTYPE_RATIO: @@ -368,8 +362,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "ratio-value", - desc-> - model_column, + desc->model_column, NULL); break; case TRG_COLTYPE_WANTED: @@ -394,8 +387,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "priority-value", - desc-> - model_column, + desc->model_column, NULL); break; case TRG_COLTYPE_NUMGTZERO: @@ -403,8 +395,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "value", - desc-> - model_column, + desc->model_column, NULL); break; case TRG_COLTYPE_NUMGTEQZERO: @@ -412,8 +403,7 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, column = gtk_tree_view_column_new_with_attributes(desc->header, renderer, "value", - desc-> - model_column, + desc->model_column, NULL); break; } @@ -567,8 +557,7 @@ void trg_tree_view_setup_columns(TrgTreeView * tv) json_node_get_string ((JsonNode *) - cli-> - data)); + cli->data)); if (desc) { gint64 width = json_node_get_int((JsonNode *) wli->data); trg_tree_view_add_column(tv, desc, width); @@ -534,7 +534,8 @@ evutil_vsnprintf(char *buf, size_t buflen, const char *format, va_list ap) #endif } -GtkTreeRowReference* iter_to_row_reference(GtkTreeModel * model, GtkTreeIter * iter) +GtkTreeRowReference *iter_to_row_reference(GtkTreeModel * model, + GtkTreeIter * iter) { GtkTreePath *path = gtk_tree_model_get_path(model, iter); GtkTreeRowReference *rr = gtk_tree_row_reference_new(model, path); @@ -543,7 +544,7 @@ GtkTreeRowReference* iter_to_row_reference(GtkTreeModel * model, GtkTreeIter * i } void iter_replace_row_reference(GtkTreeModel * model, GtkTreeIter * iter, - GtkTreeRowReference ** rr) + GtkTreeRowReference ** rr) { if (*rr) gtk_tree_row_reference_free(*rr); @@ -90,9 +90,10 @@ gboolean is_url(gchar * string); gboolean is_magnet(gchar * string); GtkWidget *gtr_combo_box_new_enum(const char *text_1, ...); void iter_replace_row_reference(GtkTreeModel * model, GtkTreeIter * iter, - GtkTreeRowReference ** rr); + GtkTreeRowReference ** rr); void rowref_to_iter(GtkTreeModel * model, GtkTreeRowReference * rr, GtkTreeIter * iter); -GtkTreeRowReference* iter_to_row_reference(GtkTreeModel * model, GtkTreeIter * iter); +GtkTreeRowReference *iter_to_row_reference(GtkTreeModel * model, + GtkTreeIter * iter); #endif /* UTIL_H_ */ |