summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/trg-main-window.c1520
-rw-r--r--src/trg-status-bar.c25
-rw-r--r--src/trg-status-bar.h4
3 files changed, 659 insertions, 890 deletions
diff --git a/src/trg-main-window.c b/src/trg-main-window.c
index 6dc2cda..aa074f2 100644
--- a/src/trg-main-window.c
+++ b/src/trg-main-window.c
@@ -83,30 +83,24 @@
/* 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);
+static void torrent_event_notification(TrgTorrentModel * model, 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);
-static void on_torrent_completed(TrgTorrentModel * model,
- GtkTreeIter * iter, gpointer data);
+ const gchar * speedLabel, trg_torrent_model_update_stats * stats);
+static void on_torrent_completed(TrgTorrentModel * model, GtkTreeIter * iter,
+ gpointer data);
static void on_torrent_added(TrgTorrentModel * model, GtkTreeIter * iter,
- gpointer data);
-static gboolean delete_event(GtkWidget * w, GdkEvent * event,
- gpointer data);
+ gpointer data);
+static gboolean delete_event(GtkWidget * w, GdkEvent * event, 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,11 +117,8 @@ static void pause_all_cb(GtkWidget * w, gpointer data);
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);
+static gint confirm_action_dialog(GtkWindow * win, 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);
@@ -141,65 +132,54 @@ 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);
-static void trg_main_window_get_property(GObject * object,
- guint property_id, GValue * value,
- GParamSpec * pspec);
-static void trg_main_window_set_property(GObject * object,
- guint property_id,
- const GValue * value,
- GParamSpec * pspec);
+ gboolean connected);
+static void trg_main_window_get_property(GObject * object, guint property_id,
+ GValue * value, GParamSpec * pspec);
+static void trg_main_window_set_property(GObject * object, 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 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 is_ready_for_torrent_action(TrgMainWindow * win);
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) \
@@ -213,7 +193,7 @@ struct _TrgMainWindowPrivate {
TrgStatusBar *statusBar;
GtkWidget *iconStatusItem, *iconDownloadingItem, *iconSeedingItem,
- *iconSepItem;
+ *iconSepItem;
#ifdef HAVE_LIBAPPINDICATOR
AppIndicator *appIndicator;
#else
@@ -261,8 +241,7 @@ enum {
PROP_0, PROP_CLIENT, PROP_MINIMISE_ON_START
};
-static void reset_connect_args(TrgMainWindow * win)
-{
+static void reset_connect_args(TrgMainWindow * win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
if (priv->args) {
g_strfreev(priv->args);
@@ -270,39 +249,37 @@ static void reset_connect_args(TrgMainWindow * win)
}
}
-static void trg_main_window_init(TrgMainWindow * self G_GNUC_UNUSED)
-{
+static void trg_main_window_init(TrgMainWindow * self G_GNUC_UNUSED) {
}
-gint trg_mw_get_selected_torrent_id(TrgMainWindow * win)
-{
+gint trg_mw_get_selected_torrent_id(TrgMainWindow * win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
return priv->selectedTorrentId;
}
-static void update_selected_torrent_notebook(TrgMainWindow * win,
- gint mode, gint64 id)
-{
+static void update_selected_torrent_notebook(TrgMainWindow * win, gint mode,
+ gint64 id) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
TrgClient *client = priv->client;
JsonObject *t;
GtkTreeIter iter;
if (id >= 0
- && get_torrent_data(trg_client_get_torrent_table(client), id, &t,
- &iter)) {
+ && 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_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);
+ TRG_TREE_VIEW(priv->peersTreeView),
+ trg_client_get_serial(client), t, mode);
- if (mode == TORRENT_GET_MODE_FIRST)
+ if (mode == TORRENT_GET_MODE_FIRST
+ )
gtk_tree_view_expand_all(GTK_TREE_VIEW(priv->filesTreeView));
} else if (id < 0) {
@@ -313,11 +290,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)
-{
+static void torrent_event_notification(TrgTorrentModel * model, 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);
gchar *name;
@@ -326,20 +301,20 @@ static void torrent_event_notification(TrgTorrentModel * model,
if (!trg_prefs_get_bool(prefs, prefKey, TRG_PREFS_NOFLAGS))
return;
- gtk_tree_model_get(GTK_TREE_MODEL(model), iter, TORRENT_COLUMN_NAME,
- &name, -1);
+ gtk_tree_model_get(GTK_TREE_MODEL(model), iter, TORRENT_COLUMN_NAME, &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
@@ -352,49 +327,42 @@ static void torrent_event_notification(TrgTorrentModel * model,
}
#endif
-static void on_torrent_completed(TrgTorrentModel * model,
- GtkTreeIter * iter, gpointer data)
-{
+static void on_torrent_completed(TrgTorrentModel * model, 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
}
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;
}
-static void destroy_window(GtkWidget * w, gpointer data G_GNUC_UNUSED)
-{
+static void destroy_window(GtkWidget * w, gpointer data G_GNUC_UNUSED) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(w);
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);
@@ -405,8 +373,7 @@ static void destroy_window(GtkWidget * w, gpointer data G_GNUC_UNUSED)
gtk_main_quit();
}
-static void open_props_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void open_props_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
TrgTorrentPropsDialog *dialog;
@@ -414,60 +381,51 @@ static void open_props_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
return;
dialog = trg_torrent_props_dialog_new(GTK_WINDOW(data),
- priv->torrentTreeView,
- priv->client);
+ 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);
}
-static void add_url_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void add_url_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindow *win = TRG_MAIN_WINDOW(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));
}
-static void add_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void add_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (trg_client_is_connected(priv->client))
trg_torrent_add_dialog(TRG_MAIN_WINDOW(data), priv->client);
}
-static void pause_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void pause_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (trg_client_is_connected(priv->client))
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)
-{
+static void pause_all_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (trg_client_is_connected(priv->client))
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)
-{
+gboolean trg_add_from_filename(TrgMainWindow * win, gchar ** uris) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
TrgClient *client = priv->client;
TrgPrefs *prefs = trg_client_get_prefs(client);
@@ -478,15 +436,14 @@ gboolean trg_add_from_filename(TrgMainWindow * win, gchar ** uris)
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));
} else {
struct add_torrent_threadfunc_args *args =
- g_new0(struct add_torrent_threadfunc_args, 1);
+ g_new0(struct add_torrent_threadfunc_args, 1);
args->list = filesList;
args->cb_data = win;
args->client = client;
@@ -496,35 +453,31 @@ gboolean trg_add_from_filename(TrgMainWindow * win, gchar ** uris)
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;
return TRUE;
}
-static void resume_all_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void resume_all_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (trg_client_is_connected(priv->client))
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)
-{
+static void resume_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (trg_client_is_connected(priv->client))
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)
-{
+static void disconnect_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
trg_client_inc_connid(priv->client);
@@ -532,8 +485,7 @@ static void disconnect_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
trg_status_bar_reset(priv->statusBar);
}
-void connect_cb(GtkWidget * w, gpointer data)
-{
+void connect_cb(GtkWidget * w, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
TrgPrefs *prefs = trg_client_get_prefs(priv->client);
JsonObject *currentProfile = trg_prefs_get_profile(prefs);
@@ -567,187 +519,162 @@ void connect_cb(GtkWidget * w, gpointer data)
}
dialog = gtk_message_dialog_new(GTK_WINDOW(data),
- GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
- "%s", msg);
+ 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..."));
+ trg_status_bar_push_connection_msg(priv->statusBar, _("Connecting..."));
trg_client_inc_connid(priv->client);
dispatch_async(priv->client, session_get(), on_session_get, data);
}
-static void open_local_prefs_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+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);
+ GtkWidget *dlg = 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)
-{
+static void open_remote_prefs_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (trg_client_is_connected(priv->client))
gtk_widget_show_all(GTK_WIDGET
- (trg_remote_prefs_dialog_get_instance
- (TRG_MAIN_WINDOW(data), priv->client)));
+ (trg_remote_prefs_dialog_get_instance
+ (TRG_MAIN_WINDOW(data), priv->client)));
}
-static void main_window_toggle_filter_dirs(GtkCheckMenuItem * w,
- gpointer win)
-{
+static void main_window_toggle_filter_dirs(GtkCheckMenuItem * w, gpointer win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
if (gtk_widget_is_sensitive(GTK_WIDGET(w)))
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);
if (gtk_widget_is_sensitive(GTK_WIDGET(w)))
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)
-{
+static TrgToolbar *trg_main_window_toolbar_new(TrgMainWindow * win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
TrgPrefs *prefs = trg_client_get_prefs(priv->client);
GObject *b_connect, *b_disconnect, *b_add, *b_resume, *b_pause;
- GObject *b_remove, *b_delete, *b_props, *b_local_prefs,
- *b_remote_prefs;
+ GObject *b_remove, *b_delete, *b_props, *b_local_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);
+ 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);
g_signal_connect(b_connect, "clicked", G_CALLBACK(connect_cb), win);
- g_signal_connect(b_disconnect, "clicked", G_CALLBACK(disconnect_cb),
- win);
+ g_signal_connect(b_disconnect, "clicked", 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);
g_signal_connect(b_delete, "clicked", G_CALLBACK(delete_cb), 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_signal_connect(b_local_prefs, "clicked", 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;
}
-static void reannounce_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void reannounce_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (trg_client_is_connected(priv->client))
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)
-{
+static void verify_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (is_ready_for_torrent_action(TRG_MAIN_WINDOW(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)
-{
+static void start_now_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (is_ready_for_torrent_action(TRG_MAIN_WINDOW(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)
-{
+static void up_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (priv->queuesEnabled
- && is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
- dispatch_async(priv->client,
- torrent_queue_move_up(build_json_id_array
- (priv->torrentTreeView)),
- on_generic_interactive_action, data);
+ && is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
+ dispatch_async(
+ priv->client,
+ 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)
-{
+static void top_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (priv->queuesEnabled
- && is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
- dispatch_async(priv->client,
- torrent_queue_move_top(build_json_id_array
- (priv->torrentTreeView)),
- on_generic_interactive_action, data);
+ && is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
+ dispatch_async(
+ priv->client,
+ 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)
-{
+static void bottom_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (priv->queuesEnabled
- && is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
- dispatch_async(priv->client,
- torrent_queue_move_bottom(build_json_id_array
- (priv->torrentTreeView)),
- on_generic_interactive_action, data);
+ && is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
+ dispatch_async(
+ priv->client,
+ 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)
-{
+static void down_queue_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (priv->queuesEnabled
- && is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
- dispatch_async(priv->client,
- torrent_queue_move_down(build_json_id_array
- (priv->torrentTreeView)),
- on_generic_interactive_action, data);
+ && is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
+ dispatch_async(
+ priv->client,
+ 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)
-{
+static gint confirm_action_dialog(GtkWindow * win, GtkTreeSelection * selection,
+ gchar * question_single, gchar * question_multi, gchar * action_stock) {
TrgMainWindowPrivate *priv;
gint selectCount;
gint response;
@@ -767,65 +694,52 @@ static gint confirm_action_dialog(GtkWindow * win,
firstNode = g_list_first(list);
gtk_tree_model_get_iter(GTK_TREE_MODEL
- (priv->filteredTorrentModel), &firstIter,
- firstNode->data);
+ (priv->filteredTorrentModel), &firstIter, firstNode->data);
gtk_tree_model_get(GTK_TREE_MODEL(priv->filteredTorrentModel),
- &firstIter, TORRENT_COLUMN_NAME, &name, -1);
+ &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);
+ 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);
+ GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION,
+ GTK_BUTTONS_NONE, question_multi, selectCount);
} else {
return 0;
}
gtk_dialog_add_buttons(GTK_DIALOG(dialog), GTK_STOCK_CANCEL,
- GTK_RESPONSE_CANCEL, action_stock,
- GTK_RESPONSE_ACCEPT, NULL);
- gtk_dialog_set_default_response(GTK_DIALOG(dialog),
- GTK_RESPONSE_CANCEL);
+ GTK_RESPONSE_CANCEL, action_stock, GTK_RESPONSE_ACCEPT, NULL);
+ gtk_dialog_set_default_response(GTK_DIALOG(dialog), 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);
return response;
}
-static gboolean is_ready_for_torrent_action(TrgMainWindow * win)
-{
+static gboolean is_ready_for_torrent_action(TrgMainWindow * win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
- return priv->selectedTorrentId >= 0
- && trg_client_is_connected(priv->client);
+ return priv->selectedTorrentId >= 0 && trg_client_is_connected(priv->client);
}
-static void move_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void move_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
if (is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
gtk_widget_show_all(GTK_WIDGET
- (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)));
}
-static void remove_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void remove_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
GtkTreeSelection *selection;
JsonArray *ids;
@@ -833,75 +747,65 @@ static void remove_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
if (!is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
return;
- selection =
- gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView));
+ selection = 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)
+ ("<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);
+ on_generic_interactive_action, data);
else
json_array_unref(ids);
}
-static void delete_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void delete_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
TrgMainWindowPrivate *priv;
GtkTreeSelection *selection;
JsonArray *ids;
priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
- selection =
- gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView));
+ selection = gtk_tree_view_get_selection(
+ GTK_TREE_VIEW(priv->torrentTreeView));
ids = build_json_id_array(priv->torrentTreeView);
if (!is_ready_for_torrent_action(TRG_MAIN_WINDOW(data)))
return;
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)
+ ("<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);
+ on_generic_interactive_action, data);
else
json_array_unref(ids);
}
-static void view_stats_toggled_cb(GtkWidget * w, gpointer data)
-{
+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);
+ TrgStatsDialog *dlg = trg_stats_dialog_get_instance(TRG_MAIN_WINDOW(data),
+ priv->client);
gtk_widget_show_all(GTK_WIDGET(dlg));
}
-static void view_states_toggled_cb(GtkCheckMenuItem * w, gpointer data)
-{
+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)
-{
+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));
+ trg_widget_set_visible(priv->notebook, gtk_check_menu_item_get_active(w));
}
#ifndef TRG_NO_GRAPH
-static void trg_main_window_toggle_graph_cb(GtkCheckMenuItem * w,
- gpointer win)
-{
+static void trg_main_window_toggle_graph_cb(GtkCheckMenuItem * w, gpointer win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
if (!gtk_widget_is_sensitive(GTK_WIDGET(w))) {
@@ -916,59 +820,49 @@ static void trg_main_window_toggle_graph_cb(GtkCheckMenuItem * w,
}
#endif
-void trg_main_window_notebook_set_visible(TrgMainWindow * win,
- gboolean visible)
-{
+void trg_main_window_notebook_set_visible(TrgMainWindow * win, gboolean visible) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
trg_widget_set_visible(priv->notebook, visible);
}
-static GtkWidget *trg_main_window_notebook_new(TrgMainWindow * win)
-{
+static GtkWidget *trg_main_window_notebook_new(TrgMainWindow * win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
TrgPrefs *prefs = trg_client_get_prefs(priv->client);
GtkWidget *notebook = priv->notebook = gtk_notebook_new();
GtkWidget *genScrolledWin = gtk_scrolled_window_new(NULL, NULL);
- priv->genDetails =
- trg_general_panel_new(GTK_TREE_MODEL(priv->torrentModel),
- priv->client);
+ priv->genDetails = trg_general_panel_new(GTK_TREE_MODEL(priv->torrentModel),
+ priv->client);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(genScrolledWin),
- GTK_POLICY_AUTOMATIC,
- GTK_POLICY_AUTOMATIC);
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW
- (genScrolledWin),
- GTK_WIDGET(priv->genDetails));
+ (genScrolledWin), GTK_WIDGET(priv->genDetails));
gtk_notebook_append_page(GTK_NOTEBOOK(notebook), genScrolledWin,
- gtk_label_new(_("General")));
+ gtk_label_new(_("General")));
priv->trackersModel = trg_trackers_model_new();
- priv->trackersTreeView =
- trg_trackers_tree_view_new(priv->trackersModel, priv->client, win);
+ priv->trackersTreeView = 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))
+ if (trg_prefs_get_bool(prefs, TRG_PREFS_KEY_SHOW_GRAPH, TRG_PREFS_GLOBAL))
trg_main_window_add_graph(win, FALSE);
else
priv->graphNotebookIndex = -1;
@@ -977,16 +871,15 @@ static GtkWidget *trg_main_window_notebook_new(TrgMainWindow * win)
return notebook;
}
-gboolean on_session_set(gpointer data)
-{
+gboolean on_session_set(gpointer data) {
trg_response *response = (trg_response *) data;
- TrgMainWindowPrivate *priv =
- TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data);
+ TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data);
if (response->status == CURLE_OK
- || response->status == FAIL_RESPONSE_UNSUCCESSFUL)
+ || response->status == FAIL_RESPONSE_UNSUCCESSFUL
+ )
dispatch_async(priv->client, session_get(), on_session_get,
- response->cb_data);
+ response->cb_data);
trg_dialog_error_handler(TRG_MAIN_WINDOW(response->cb_data), response);
trg_response_free(response);
@@ -994,12 +887,10 @@ gboolean on_session_set(gpointer data)
return FALSE;
}
-static gboolean on_session_get(gpointer data)
-{
+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);
+ TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data);
TrgClient *client = priv->client;
gboolean isConnected = trg_client_is_connected(client);
JsonObject *lastSession = trg_client_get_session(client);
@@ -1018,17 +909,15 @@ static gboolean on_session_get(gpointer data)
}
if (session_get_version(newSession, &version) == 0
- || version < TRANSMISSION_MIN_SUPPORTED) {
+ || version < TRANSMISSION_MIN_SUPPORTED) {
gchar *msg =
- g_strdup_printf(_
- ("This application supports Transmission %.2f and later, you have %.2f."),
-TRANSMISSION_MIN_SUPPORTED, version);
+ 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_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);
@@ -1043,21 +932,34 @@ TRANSMISSION_MIN_SUPPORTED, version);
if (newSession) {
gboolean reloadAliases = lastSession
- && g_strcmp0(session_get_download_dir(lastSession),
- session_get_download_dir(newSession));
+ && g_strcmp0(session_get_download_dir(lastSession),
+ session_get_download_dir(newSession));
+ gboolean refreshSpeed = lastSession
+ && ((session_get_alt_speed_enabled(lastSession)
+ != session_get_alt_speed_enabled(newSession))
+ || (session_get_speed_limit_down_enabled(lastSession)
+ != session_get_speed_limit_down_enabled(
+ newSession))
+ || (session_get_speed_limit_up_enabled(lastSession)
+ != session_get_speed_limit_up_enabled(
+ newSession)));
trg_client_set_session(client, newSession);
if (reloadAliases)
trg_main_window_reload_dir_aliases(win);
+
+ if (refreshSpeed)
+ trg_status_bar_update_speed(priv->statusBar,
+ trg_torrent_model_get_stats(priv->torrentModel),
+ priv->client);
}
if (!isConnected) {
trg_main_window_conn_changed(win, TRUE);
- trg_trackers_tree_view_new_connection(priv->trackersTreeView,
- client);
+ trg_trackers_tree_view_new_connection(priv->trackersTreeView, client);
dispatch_async(client, torrent_get(TORRENT_GET_TAG_MODE_FULL),
- on_torrent_get_first, win);
+ on_torrent_get_first, win);
}
trg_response_free(response);
@@ -1066,8 +968,7 @@ 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");
@@ -1090,10 +991,7 @@ static void connchange_whatever_statusicon(TrgMainWindow * win,
}
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);
gtk_widget_set_visible(priv->iconSeedingItem, stats != NULL);
@@ -1102,20 +1000,19 @@ static void update_whatever_statusicon(TrgMainWindow * win,
if (stats) {
gchar *downloadingLabel = g_strdup_printf(_("Downloading %d"),
- stats->down);
- gchar *seedingLabel =
- g_strdup_printf(_("Seeding %d"), stats->seeding);
+ stats->down);
+ gchar *seedingLabel = g_strdup_printf(_("Seeding %d"), stats->seeding);
gtk_menu_item_set_label(GTK_MENU_ITEM(priv->iconSeedingItem),
- seedingLabel);
+ seedingLabel);
gtk_menu_item_set_label(GTK_MENU_ITEM(priv->iconDownloadingItem),
- downloadingLabel);
+ downloadingLabel);
g_free(downloadingLabel);
g_free(seedingLabel);
}
if (priv->iconStatusItem)
gtk_menu_item_set_label(GTK_MENU_ITEM
- (priv->iconStatusItem), speedLabel);
+ (priv->iconStatusItem), speedLabel);
#ifndef HAVE_LIBAPPINDICATOR
if (priv->statusIcon)
@@ -1127,12 +1024,10 @@ static void update_whatever_statusicon(TrgMainWindow * win,
* The callback for a torrent-get response.
*/
-static gboolean on_torrent_get(gpointer data, int mode)
-{
+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);
+ TrgMainWindowPrivate *priv = 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;
@@ -1147,35 +1042,28 @@ static gboolean on_torrent_get(gpointer data, int mode)
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,
+ 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;
if (response->status != CURLE_OK) {
- gint64 max_retries =
- trg_prefs_get_int(prefs, TRG_PREFS_KEY_RETRIES,
- TRG_PREFS_CONNECTION);
+ gint64 max_retries = trg_prefs_get_int(prefs, TRG_PREFS_KEY_RETRIES,
+ TRG_PREFS_CONNECTION);
if (trg_client_inc_failcount(client) >= 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),
- max_retries, msg);
- trg_status_bar_push_connection_msg(priv->statusBar,
- statusBarMsg);
+ gchar *msg = make_error_message(response->obj, response->status);
+ gchar *statusBarMsg = g_strdup_printf(_("Request %d/%d failed: %s"),
+ trg_client_get_failcount(client), 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_update_torrents_timerfunc, win);
}
trg_client_updateunlock(client);
trg_response_free(response);
@@ -1185,40 +1073,35 @@ static gboolean on_torrent_get(gpointer data, int mode)
trg_client_reset_failcount(client);
trg_client_inc_serial(client);
- stats =
- trg_torrent_model_update(priv->torrentModel, client, response->obj,
- mode);
+ stats = trg_torrent_model_update(priv->torrentModel, client, response->obj,
+ mode);
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);
#endif
- if (mode != TORRENT_GET_MODE_INTERACTION)
+ if (mode != TORRENT_GET_MODE_INTERACTION
+ )
priv->timerId = g_timeout_add_seconds(interval,
- trg_update_torrents_timerfunc,
- win);
+ trg_update_torrents_timerfunc, win);
trg_client_updateunlock(client);
trg_response_free(response);
return FALSE;
}
-static gboolean on_torrent_get_active(gpointer data)
-{
+static gboolean on_torrent_get_active(gpointer data) {
return on_torrent_get(data, TORRENT_GET_MODE_ACTIVE);
}
-static gboolean on_torrent_get_first(gpointer data)
-{
+static gboolean on_torrent_get_first(gpointer data) {
trg_response *response = (trg_response *) data;
- TrgMainWindowPrivate *priv =
- TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data);
+ TrgMainWindowPrivate *priv = 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);
@@ -1229,49 +1112,45 @@ static gboolean on_torrent_get_first(gpointer data)
return result;
}
-static gboolean on_torrent_get_interactive(gpointer data)
-{
+static gboolean on_torrent_get_interactive(gpointer data) {
return on_torrent_get(data, TORRENT_GET_MODE_INTERACTION);
}
-static gboolean on_torrent_get_update(gpointer data)
-{
+static gboolean on_torrent_get_update(gpointer data) {
return on_torrent_get(data, TORRENT_GET_MODE_UPDATE);
}
-static gboolean trg_update_torrents_timerfunc(gpointer data)
-{
+static gboolean trg_update_torrents_timerfunc(gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
TrgClient *tc = priv->client;
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_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);
+ 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);
+ dispatch_async(priv->client, session_get(), on_session_get, data);
}
return FALSE;
}
-static void open_about_cb(GtkWidget * w G_GNUC_UNUSED, GtkWindow * parent)
-{
+static void open_about_cb(GtkWidget * w G_GNUC_UNUSED, GtkWindow * parent) {
GtkWidget *aboutDialog = trg_about_window_new(parent);
gtk_dialog_run(GTK_DIALOG(aboutDialog));
@@ -1279,9 +1158,7 @@ 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);
guint flags;
@@ -1294,27 +1171,26 @@ static gboolean trg_torrent_tree_view_visible_func(GtkTreeModel * model,
if (criteria != 0) {
if (criteria & FILTER_FLAG_TRACKER) {
- gchar *text =
- trg_state_selector_get_selected_text(priv->stateSelector);
+ gchar *text = trg_state_selector_get_selected_text(
+ priv->stateSelector);
JsonObject *json = NULL;
gboolean matchesTracker;
- gtk_tree_model_get(model, iter, TORRENT_COLUMN_JSON, &json,
- -1);
+ gtk_tree_model_get(model, iter, TORRENT_COLUMN_JSON, &json, -1);
matchesTracker = (!json
- || !torrent_has_tracker(json,
- trg_state_selector_get_url_host_regex
- (priv->stateSelector),
- text));
+ || !torrent_has_tracker(
+ json,
+ trg_state_selector_get_url_host_regex(
+ priv->stateSelector), text));
g_free(text);
if (matchesTracker)
return FALSE;
} else if (criteria & FILTER_FLAG_DIR) {
- gchar *text =
- trg_state_selector_get_selected_text(priv->stateSelector);
+ 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);
+ gtk_tree_model_get(model, iter, TORRENT_COLUMN_DOWNLOADDIR_SHORT,
+ &dd, -1);
cmp = g_strcmp0(text, dd);
g_free(dd);
g_free(text);
@@ -1347,34 +1223,29 @@ static gboolean trg_torrent_tree_view_visible_func(GtkTreeModel * model,
return visible;
}
-void trg_main_window_reload_dir_aliases(TrgMainWindow * win)
-{
+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));
+ (priv->torrentModel));
}
-static TrgTorrentTreeView
- * trg_main_window_torrent_tree_view_new(TrgMainWindow * win,
- GtkTreeModel * model)
-{
+static TrgTorrentTreeView * trg_main_window_torrent_tree_view_new(
+ TrgMainWindow * win, GtkTreeModel * model) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
- TrgTorrentTreeView *torrentTreeView =
- trg_torrent_tree_view_new(trg_client_get_prefs(priv->client),
- model);
+ TrgTorrentTreeView *torrentTreeView = trg_torrent_tree_view_new(
+ trg_client_get_prefs(priv->client), model);
- GtkTreeSelection *selection =
- gtk_tree_view_get_selection(GTK_TREE_VIEW(torrentTreeView));
+ GtkTreeSelection *selection = 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) {
@@ -1385,8 +1256,7 @@ static gboolean trg_dialog_error_handler(TrgMainWindow * win,
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_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);
@@ -1398,8 +1268,7 @@ static gboolean trg_dialog_error_handler(TrgMainWindow * win,
}
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);
GList *selectionList;
@@ -1418,9 +1287,9 @@ static gboolean torrent_selection_changed(GtkTreeSelection * selection,
if (firstNode) {
GtkTreeIter iter;
if (gtk_tree_model_get_iter(priv->filteredTorrentModel, &iter,
- (GtkTreePath *) firstNode->data)) {
+ (GtkTreePath *) firstNode->data)) {
gtk_tree_model_get(priv->filteredTorrentModel, &iter,
- TORRENT_COLUMN_ID, &id, -1);
+ TORRENT_COLUMN_ID, &id, -1);
}
}
@@ -1432,12 +1301,10 @@ static gboolean torrent_selection_changed(GtkTreeSelection * selection,
return TRUE;
}
-gboolean on_generic_interactive_action(gpointer data)
-{
+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);
+ TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(response->cb_data);
TrgClient *tc = priv->client;
TrgPrefs *prefs = trg_client_get_prefs(tc);
@@ -1448,15 +1315,14 @@ gboolean on_generic_interactive_action(gpointer data)
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))
+ else if (trg_prefs_get_bool(prefs, TRG_PREFS_KEY_UPDATE_ACTIVE_ONLY,
+ TRG_PREFS_CONNECTION))
id = TORRENT_GET_TAG_MODE_UPDATE;
else
id = TORRENT_GET_TAG_MODE_FULL;
dispatch_async(tc, torrent_get(id), on_torrent_get_interactive,
- win);
+ win);
}
}
@@ -1465,8 +1331,7 @@ gboolean on_generic_interactive_action(gpointer data)
}
static
-void trg_main_window_torrent_scrub(TrgMainWindow * win)
-{
+void trg_main_window_torrent_scrub(TrgMainWindow * win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
gtk_tree_store_clear(GTK_TREE_STORE(priv->filesModel));
@@ -1474,35 +1339,31 @@ 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);
}
-static void entry_filter_changed_cb(GtkWidget * w, gpointer data)
-{
+static void entry_filter_changed_cb(GtkWidget * w, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(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);
+ g_object_set(priv->filterEntry, "secondary-icon-sensitive", clearSensitive,
+ NULL);
}
-static void torrent_state_selection_changed(TrgStateSelector *
- selector G_GNUC_UNUSED,
- guint flag G_GNUC_UNUSED,
- gpointer data)
-{
+static void torrent_state_selection_changed(
+ TrgStateSelector * selector G_GNUC_UNUSED, guint flag G_GNUC_UNUSED,
+ gpointer data) {
gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(data));
}
static
-void trg_main_window_conn_changed(TrgMainWindow * win, gboolean connected)
-{
+void trg_main_window_conn_changed(TrgMainWindow * win, gboolean connected) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
TrgClient *tc = priv->client;
@@ -1512,8 +1373,7 @@ void trg_main_window_conn_changed(TrgMainWindow * win, gboolean connected)
gtk_widget_set_sensitive(GTK_WIDGET(priv->torrentTreeView), 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);
+ gtk_widget_set_sensitive(GTK_WIDGET(priv->trackersTreeView), connected);
gtk_widget_set_sensitive(GTK_WIDGET(priv->genDetails), connected);
if (!connected) {
@@ -1534,10 +1394,8 @@ void trg_main_window_conn_changed(TrgMainWindow * win, gboolean connected)
connchange_whatever_statusicon(win, connected);
}
-static void trg_main_window_get_property(GObject * object,
- guint property_id, GValue * value,
- GParamSpec * pspec)
-{
+static void trg_main_window_get_property(GObject * object, guint property_id,
+ GValue * value, GParamSpec * pspec) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(object);
switch (property_id) {
case PROP_CLIENT:
@@ -1552,11 +1410,8 @@ static void trg_main_window_get_property(GObject * object,
}
}
-static void trg_main_window_set_property(GObject * object,
- guint property_id,
- const GValue * value,
- GParamSpec * pspec)
-{
+static void trg_main_window_set_property(GObject * object, guint property_id,
+ const GValue * value, GParamSpec * pspec) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(object);
switch (property_id) {
case PROP_CLIENT:
@@ -1571,25 +1426,23 @@ static void trg_main_window_set_property(GObject * object,
}
}
-static void quit_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
-{
+static void quit_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data) {
gtk_widget_destroy(GTK_WIDGET(data));
}
-static TrgMenuBar *trg_main_window_menu_bar_new(TrgMainWindow * win)
-{
+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,
+ 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,
#ifndef TRG_NO_GRAPH
- *b_show_graph,
+ *b_show_graph,
#endif
- *b_start_now;
+ *b_start_now;
TrgMenuBar *menuBar;
GtkAccelGroup *accel_group;
@@ -1597,72 +1450,63 @@ static TrgMenuBar *trg_main_window_menu_bar_new(TrgMainWindow * win)
accel_group = gtk_accel_group_new();
menuBar = trg_menu_bar_new(win, trg_client_get_prefs(priv->client),
- accel_group);
+ accel_group);
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_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_signal_connect(b_disconnect, "activate", 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);
+ g_signal_connect(b_resume_all, "activate", G_CALLBACK(resume_all_cb), 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);
+ g_signal_connect(b_pause_all, "activate", G_CALLBACK(pause_all_cb), win);
g_signal_connect(b_verify, "activate", G_CALLBACK(verify_cb), win);
- g_signal_connect(b_reannounce, "activate", G_CALLBACK(reannounce_cb),
- win);
+ g_signal_connect(b_reannounce, "activate", G_CALLBACK(reannounce_cb), 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);
- g_signal_connect(b_top_queue, "activate", G_CALLBACK(top_queue_cb),
- win);
- g_signal_connect(b_bottom_queue, "activate",
- G_CALLBACK(bottom_queue_cb), win);
- g_signal_connect(b_start_now, "activate", G_CALLBACK(start_now_cb),
- win);
+ g_signal_connect(b_down_queue, "activate", G_CALLBACK(down_queue_cb), win);
+ g_signal_connect(b_top_queue, "activate", G_CALLBACK(top_queue_cb), win);
+ g_signal_connect(b_bottom_queue, "activate", G_CALLBACK(bottom_queue_cb),
+ win);
+ g_signal_connect(b_start_now, "activate", G_CALLBACK(start_now_cb), 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_signal_connect(b_local_prefs, "activate", 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);
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);
@@ -1674,8 +1518,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);
gtk_window_deiconify(GTK_WINDOW(data));
@@ -1683,34 +1526,28 @@ static void status_icon_activated(GtkStatusIcon * icon G_GNUC_UNUSED,
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);
+ 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) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(userdata);
- gtk_menu_popup(priv->iconMenu, NULL, NULL,
- gtk_status_icon_position_menu, priv->statusIcon, 0,
- gtk_get_current_event_time());
+ gtk_menu_popup(priv->iconMenu, NULL, NULL, gtk_status_icon_position_menu,
+ priv->statusIcon, 0, gtk_get_current_event_time());
return TRUE;
}
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) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
gtk_menu_popup(priv->iconMenu, NULL, NULL,
- gtk_status_icon_position_menu, priv->statusIcon,
- event->button,
- gdk_event_get_time((GdkEvent *) event));
+ gtk_status_icon_position_menu, priv->statusIcon, event->button,
+ gdk_event_get_time((GdkEvent *) event));
return TRUE;
} else {
return FALSE;
@@ -1719,22 +1556,18 @@ static gboolean status_icon_button_press_event(GtkStatusIcon * icon,
#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 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);
@@ -1743,8 +1576,7 @@ static GtkWidget *trg_imagemenuitem_new(GtkMenuShell * shell,
return item;
}
-static void set_limit_cb(GtkWidget * w, gpointer data)
-{
+static void set_limit_cb(GtkWidget * w, gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
GtkWidget *parent = gtk_widget_get_parent(w);
@@ -1770,15 +1602,13 @@ static void set_limit_cb(GtkWidget * w, gpointer data)
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);
}
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);
@@ -1787,8 +1617,7 @@ static GtkWidget *limit_item_new(TrgMainWindow * win, GtkWidget * menu,
item = gtk_check_menu_item_new_with_label(speed);
- g_object_set_data(G_OBJECT(item), "limit",
- GINT_TO_POINTER((gint) limit));
+ g_object_set_data(G_OBJECT(item), "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);
@@ -1797,9 +1626,7 @@ 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;
JsonObject *current = NULL;
@@ -1809,28 +1636,28 @@ static GtkWidget *limit_menu_new(TrgMainWindow * win, gchar * title,
if (ids)
get_torrent_data(trg_client_get_torrent_table(client),
- priv->selectedTorrentId, &current, &iter);
+ priv->selectedTorrentId, &current, &iter);
else
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_object_set_data_full(G_OBJECT(menu), "enabledKey",
- g_strdup(enabledKey), g_free);
+ g_free);
+ g_object_set_data_full(G_OBJECT(menu), "enabledKey", 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);
@@ -1838,8 +1665,7 @@ static GtkWidget *limit_menu_new(TrgMainWindow * win, gchar * title,
g_signal_connect(item, "activate", G_CALLBACK(set_limit_cb), win);
gtk_menu_shell_append(GTK_MENU_SHELL(menu), item);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),
- gtk_separator_menu_item_new());
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), gtk_separator_menu_item_new());
limit_item_new(win, menu, limit, 0);
limit_item_new(win, menu, limit, 5);
@@ -1866,25 +1692,25 @@ static GtkWidget *limit_menu_new(TrgMainWindow * win, gchar * title,
return toplevel;
}
-static void exec_cmd_cb(GtkWidget * w, gpointer data)
-{
+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");
- GtkTreeSelection *selection =
- gtk_tree_view_get_selection(GTK_TREE_VIEW(priv->torrentTreeView));
+ "cmd-object");
+ GtkTreeSelection *selection = gtk_tree_view_get_selection(
+ GTK_TREE_VIEW(priv->torrentTreeView));
GtkTreeModel *model;
GList *selectedRows = gtk_tree_selection_get_selected_rows(selection,
- &model);
+ &model);
GError *cmd_error = NULL;
gchar *cmd_line = NULL;
gchar **argv = NULL;
- cmd_line = build_remote_exec_cmd(priv->client,
- model,
- selectedRows,
- json_object_get_string_member(cmd_obj,
- TRG_PREFS_KEY_EXEC_COMMANDS_SUBKEY_CMD));
+ cmd_line = build_remote_exec_cmd(
+ priv->client,
+ model,
+ selectedRows,
+ json_object_get_string_member(cmd_obj,
+ TRG_PREFS_KEY_EXEC_COMMANDS_SUBKEY_CMD));
g_debug("Exec: %s", cmd_line);
@@ -1896,7 +1722,7 @@ static void exec_cmd_cb(GtkWidget * w, gpointer data)
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);
@@ -1908,10 +1734,8 @@ static void exec_cmd_cb(GtkWidget * w, gpointer data)
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_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);
@@ -1920,8 +1744,7 @@ static void exec_cmd_cb(GtkWidget * w, gpointer data)
}
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);
GtkWidget *menu;
@@ -1933,32 +1756,24 @@ 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);
- trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Verify"),
- GTK_STOCK_REFRESH, TRUE, G_CALLBACK(verify_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);
trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Re-announce"),
- 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);
- trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Remove"),
- GTK_STOCK_REMOVE, TRUE, G_CALLBACK(remove_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);
+ trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Remove"), 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_CONNECTION);
n_cmds = json_array_get_length(cmds);
if (n_cmds > 0) {
@@ -1968,84 +1783,71 @@ static void trg_torrent_tv_view_menu(GtkWidget * treeview,
if (n_cmds < 3) {
gtk_menu_shell_append(GTK_MENU_SHELL(menu),
- gtk_separator_menu_item_new());
+ 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(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"));
+ 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));
+ 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);
+ JsonObject *cmd_obj = json_node_get_object(
+ (JsonNode *) cmds_li->data);
const gchar *cmd_label = json_object_get_string_member(cmd_obj,
- "label");
+ "label");
GtkWidget *item = trg_imagemenuitem_new(cmds_shell, cmd_label,
- GTK_STOCK_EXECUTE,
- TRUE,
- G_CALLBACK
- (exec_cmd_cb), data);
+ 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_menu_shell_append(GTK_MENU_SHELL(menu), 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);
+ 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);
+ 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);
+ 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);
+ 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_STOCK_GOTO_TOP, TRUE, G_CALLBACK(top_queue_cb), data);
gtk_menu_shell_append(GTK_MENU_SHELL(menu),
- gtk_separator_menu_item_new());
+ 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));
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),
- limit_menu_new(TRG_MAIN_WINDOW(data),
- _("Up Limit"),
- FIELD_UPLOAD_LIMITED,
- FIELD_UPLOAD_LIMIT, ids));
+ gtk_menu_shell_append(
+ GTK_MENU_SHELL(menu),
+ 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));
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);
gboolean connected = trg_client_is_connected(priv->client);
@@ -2058,15 +1860,13 @@ static GtkMenu *trg_status_icon_view_menu(TrgMainWindow * win,
gtk_menu_shell_append(GTK_MENU_SHELL(menu), priv->iconStatusItem);
if (connected) {
- priv->iconDownloadingItem =
- gtk_menu_item_new_with_label(_("Updating..."));
+ priv->iconDownloadingItem = gtk_menu_item_new_with_label(
+ _("Updating..."));
gtk_widget_set_visible(priv->iconDownloadingItem, FALSE);
gtk_widget_set_sensitive(priv->iconDownloadingItem, FALSE);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),
- priv->iconDownloadingItem);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), priv->iconDownloadingItem);
- priv->iconSeedingItem =
- gtk_menu_item_new_with_label(_("Updating..."));
+ priv->iconSeedingItem = gtk_menu_item_new_with_label(_("Updating..."));
gtk_widget_set_visible(priv->iconSeedingItem, FALSE);
gtk_widget_set_sensitive(priv->iconSeedingItem, FALSE);
gtk_menu_shell_append(GTK_MENU_SHELL(menu), priv->iconSeedingItem);
@@ -2079,48 +1879,45 @@ static GtkMenu *trg_status_icon_view_menu(TrgMainWindow * win,
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);
+ 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"), 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_STOCK_ADD, connected, G_CALLBACK(add_url_cb), win);
trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Resume All"),
- GTK_STOCK_MEDIA_PLAY, connected,
- G_CALLBACK(resume_all_cb), win);
+ 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),
- 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));
+ GTK_STOCK_MEDIA_PAUSE, connected, G_CALLBACK(pause_all_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));
}
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),
- gtk_separator_menu_item_new());
- trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Quit"), GTK_STOCK_QUIT,
- TRUE, G_CALLBACK(quit_cb), win);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu), gtk_separator_menu_item_new());
+ trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Quit"), GTK_STOCK_QUIT, TRUE,
+ G_CALLBACK(quit_cb), win);
gtk_widget_show_all(menu);
@@ -2128,9 +1925,7 @@ 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;
@@ -2138,8 +1933,7 @@ static gboolean torrent_tv_button_pressed_cb(GtkWidget * 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)) {
+ (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);
@@ -2156,27 +1950,24 @@ static gboolean torrent_tv_button_pressed_cb(GtkWidget * treeview,
}
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)) {
+ 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));
}
@@ -2186,12 +1977,11 @@ static gboolean window_state_event(GtkWidget * widget,
#endif
}
-void trg_main_window_remove_status_icon(TrgMainWindow * win)
-{
+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
@@ -2204,16 +1994,13 @@ void trg_main_window_remove_status_icon(TrgMainWindow * win)
}
#ifndef TRG_NO_GRAPH
-void trg_main_window_add_graph(TrgMainWindow * win, gboolean show)
-{
+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));
- priv->graphNotebookIndex =
- gtk_notebook_append_page(GTK_NOTEBOOK(priv->notebook),
- GTK_WIDGET(priv->graph),
- gtk_label_new(_("Graph")));
+ priv->graph = 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")));
if (show)
gtk_widget_show_all(priv->notebook);
@@ -2221,29 +2008,27 @@ void trg_main_window_add_graph(TrgMainWindow * win, gboolean show)
trg_torrent_graph_start(priv->graph);
}
-void trg_main_window_remove_graph(TrgMainWindow * win)
-{
+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);
priv->graphNotebookIndex = -1;
}
}
#endif
-void trg_main_window_add_status_icon(TrgMainWindow * win)
-{
+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_new(PACKAGE_NAME, PACKAGE_NAME,
+ APP_INDICATOR_CATEGORY_APPLICATION_STATUS))) {
app_indicator_set_status(priv->appIndicator,
- APP_INDICATOR_STATUS_ACTIVE);
+ APP_INDICATOR_STATUS_ACTIVE);
app_indicator_set_menu(priv->appIndicator,
- trg_status_icon_view_menu(win, NULL));
+ trg_status_icon_view_menu(win, NULL));
}
#else
if (!priv->icon)
@@ -2251,42 +2036,35 @@ void trg_main_window_add_status_icon(TrgMainWindow * win)
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));
+ connchange_whatever_statusicon(win, trg_client_is_connected(priv->client));
}
-TrgStateSelector *trg_main_window_get_state_selector(TrgMainWindow * win)
-{
+TrgStateSelector *trg_main_window_get_state_selector(TrgMainWindow * win) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
return priv->stateSelector;
}
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;
priv->height = event->configure.height;
return FALSE;
}
-static void trg_client_session_updated_cb(TrgClient * tc,
- JsonObject * session,
- gpointer data)
-{
+static void trg_client_session_updated_cb(TrgClient * tc, JsonObject * session,
+ gpointer data) {
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
gboolean queuesEnabled;
@@ -2294,9 +2072,9 @@ static void trg_client_session_updated_cb(TrgClient * tc,
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);
+ SGET_DOWNLOAD_QUEUE_ENABLED)
+ || json_object_get_boolean_member(session,
+ SGET_SEED_QUEUE_ENABLED);
} else {
queuesEnabled = FALSE;
}
@@ -2304,7 +2082,7 @@ static void trg_client_session_updated_cb(TrgClient * tc,
if (priv->queuesEnabled != queuesEnabled) {
trg_menu_bar_set_supports_queues(priv->menuBar, queuesEnabled);
trg_state_selector_set_queues_enabled(priv->stateSelector,
- queuesEnabled);
+ queuesEnabled);
}
priv->queuesEnabled = queuesEnabled;
@@ -2313,19 +2091,17 @@ static void trg_client_session_updated_cb(TrgClient * tc,
/* Drag & Drop support */
static GtkTargetEntry target_list[] = {
/* datatype (string), restrictions on DnD (GtkTargetFlags), datatype (int) */
- {"text/uri-list", GTK_TARGET_OTHER_APP | GTK_TARGET_OTHER_WIDGET, 0}
-};
+{ "text/uri-list", GTK_TARGET_OTHER_APP | GTK_TARGET_OTHER_WIDGET, 0 } };
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)) {
+ && (gtk_selection_data_get_format(data) == 8)) {
if (gdk_drag_context_get_actions(context) == GDK_ACTION_MOVE) {
gchar **uri_list = gtk_selection_data_get_uris(data);
guint num_files = g_strv_length(uri_list);
@@ -2333,8 +2109,7 @@ static void on_dropped_file(GtkWidget * widget, GdkDragContext * context,
int i;
for (i = 0; i < num_files; i++)
- file_list[i] =
- g_filename_from_uri(uri_list[i], NULL, NULL);
+ file_list[i] = g_filename_from_uri(uri_list[i], NULL, NULL);
g_strfreev(uri_list);
gtk_drag_finish(context, TRUE, FALSE, time);
@@ -2346,10 +2121,7 @@ static void on_dropped_file(GtkWidget * widget, GdkDragContext * context,
}
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;
GtkWidget *w;
@@ -2361,9 +2133,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;
@@ -2373,8 +2145,7 @@ static GObject *trg_main_window_constructor(GType type,
theme = gtk_icon_theme_get_default();
register_my_icons(theme);
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);
@@ -2385,71 +2156,69 @@ static GObject *trg_main_window_constructor(GType type,
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_signal_connect(G_OBJECT(self), "delete-event", 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);
- priv->sortedTorrentModel =
- gtk_tree_model_sort_new_with_model(GTK_TREE_MODEL
- (priv->torrentModel));
+ priv->sortedTorrentModel = 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);
+ priv->filteredTorrentModel = 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, "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);
+ gtk_box_pack_start(GTK_BOX(outerVbox), GTK_WIDGET(priv->menuBar), 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);
+ gtk_box_pack_start(GTK_BOX(toolbarHbox), GTK_WIDGET(priv->toolBar), 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);
+ 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();
@@ -2457,26 +2226,24 @@ static GObject *trg_main_window_constructor(GType type,
gtk_paned_pack1(GTK_PANED(priv->vpaned), priv->hpaned, TRUE, TRUE);
priv->stateSelector = trg_state_selector_new(priv->client,
- priv->torrentModel);
- priv->stateSelectorScroller =
- my_scrolledwin_new(GTK_WIDGET(priv->stateSelector));
- gtk_paned_pack1(GTK_PANED(priv->hpaned), priv->stateSelectorScroller,
- FALSE, FALSE);
+ priv->torrentModel);
+ priv->stateSelectorScroller = my_scrolledwin_new(
+ GTK_WIDGET(priv->stateSelector));
+ gtk_paned_pack1(GTK_PANED(priv->hpaned), priv->stateSelectorScroller, 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);
+ g_signal_connect(G_OBJECT(priv->stateSelector), "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);
else
@@ -2484,18 +2251,18 @@ static GObject *trg_main_window_constructor(GType type,
priv->statusBar = trg_status_bar_new(self, priv->client);
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);
+ gtk_box_pack_start(GTK_BOX(outerVbox), GTK_WIDGET(priv->statusBar), 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);
pos = trg_prefs_get_int(prefs, TRG_PREFS_KEY_NOTEBOOK_PANED_POS,
- TRG_PREFS_GLOBAL);
+ TRG_PREFS_GLOBAL);
if (width > 0 && height > 0)
gtk_window_set_default_size(GTK_WINDOW(self), width, height);
@@ -2507,17 +2274,17 @@ static GObject *trg_main_window_constructor(GType type,
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_widget_set_visible(priv->notebook,
- trg_prefs_get_bool(prefs,
- TRG_PREFS_KEY_SHOW_NOTEBOOK,
- TRG_PREFS_GLOBAL));
+ trg_widget_set_visible(
+ priv->stateSelectorScroller,
+ 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));
pos = trg_prefs_get_int(prefs, TRG_PREFS_KEY_STATES_PANED_POS,
- TRG_PREFS_GLOBAL);
+ TRG_PREFS_GLOBAL);
if (pos > 0)
gtk_paned_set_position(GTK_PANED(priv->hpaned), pos);
@@ -2526,21 +2293,20 @@ static GObject *trg_main_window_constructor(GType type,
/* 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_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_signal_connect(self, "drag-data-received", G_CALLBACK(on_dropped_file),
+ self);
return G_OBJECT(self);
}
-static void trg_main_window_class_init(TrgMainWindowClass * klass)
-{
+static void trg_main_window_class_init(TrgMainWindowClass * klass) {
GObjectClass *object_class = G_OBJECT_CLASS(klass);
g_type_class_add_private(klass, sizeof(TrgMainWindowPrivate));
@@ -2549,51 +2315,42 @@ static void trg_main_window_class_init(TrgMainWindowClass * klass)
object_class->get_property = trg_main_window_get_property;
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));
-
- 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));
-}
-
-void auto_connect_if_required(TrgMainWindow * win, gchar ** args)
-{
+ 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));
+
+ 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));
+}
+
+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)) {
+ && trg_prefs_get_bool(prefs, TRG_PREFS_KEY_AUTO_CONNECT,
+ TRG_PREFS_PROFILE)) {
priv->args = args;
connect_cb(NULL, win);
return;
@@ -2604,8 +2361,7 @@ void auto_connect_if_required(TrgMainWindow * win, gchar ** 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);
+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);
}
diff --git a/src/trg-status-bar.c b/src/trg-status-bar.c
index 4d3efc2..0ec8272 100644
--- a/src/trg-status-bar.c
+++ b/src/trg-status-bar.c
@@ -169,15 +169,14 @@ void trg_status_bar_session_update(TrgStatusBar * sb, JsonObject * session)
gtk_widget_set_visible(priv->turtleEventBox, TRUE);
}
-void trg_status_bar_update(TrgStatusBar * sb,
- trg_torrent_model_update_stats * stats,
- TrgClient * client)
+void trg_status_bar_update_speed(TrgStatusBar * sb,
+ trg_torrent_model_update_stats * stats,
+ TrgClient * client)
{
TrgStatusBarPrivate *priv = TRG_STATUS_BAR_GET_PRIVATE(sb);
JsonObject *session = trg_client_get_session(client);
gboolean altLimits = session_get_speed_limit_alt_enabled(session);
-
- gchar *speedText, *infoText;
+ gchar *speedText;
gint64 uplimitraw, downlimitraw;
gchar downRateTotalString[32], upRateTotalString[32];
gchar uplimit[64], downlimit[64];
@@ -218,6 +217,18 @@ void trg_status_bar_update(TrgStatusBar * sb,
downlimitraw >= 0 ? downlimit : "",
upRateTotalString, uplimitraw >= 0 ? uplimit : "");
+ gtk_label_set_text(GTK_LABEL(priv->speed_lbl), speedText);
+
+ g_free(speedText);
+}
+
+void trg_status_bar_update(TrgStatusBar * sb,
+ trg_torrent_model_update_stats * stats,
+ TrgClient * client)
+{
+ TrgStatusBarPrivate *priv = TRG_STATUS_BAR_GET_PRIVATE(sb);
+ gchar *infoText;
+
infoText = g_strdup_printf(ngettext
("%d torrent: %d seeding, %d downloading, %d paused",
"%d torrents: %d seeding, %d downloading, %d paused",
@@ -225,9 +236,9 @@ void trg_status_bar_update(TrgStatusBar * sb,
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);
- g_free(speedText);
+ trg_status_bar_update_speed(sb, stats, client);
+
g_free(infoText);
}
diff --git a/src/trg-status-bar.h b/src/trg-status-bar.h
index 5dd2221..bbbdf19 100644
--- a/src/trg-status-bar.h
+++ b/src/trg-status-bar.h
@@ -61,5 +61,7 @@ void trg_status_bar_push_connection_msg(TrgStatusBar * sb,
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);
-
+void trg_status_bar_update_speed(TrgStatusBar * sb,
+ trg_torrent_model_update_stats * stats,
+ TrgClient * client);
#endif /* TRG_STATUS_BAR_H_ */