summaryrefslogtreecommitdiff
path: root/src/trg-main-window.c
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2011-04-11 00:17:23 +0000
committerGravatar Alan Fitton <ajf@eth0.org.uk>2011-04-11 00:17:23 +0000
commit279d52a0c841cc101210aef8affc6b061c2ef6db (patch)
tree89352997a45cd142af77fbcecc1a69b93248f780 /src/trg-main-window.c
parentdba8e3c7dd7322dab486063c85487f1f79ee5db6 (diff)
for gconf integers, fallback to our own defaults
Diffstat (limited to 'src/trg-main-window.c')
-rw-r--r--src/trg-main-window.c32
1 files changed, 31 insertions, 1 deletions
diff --git a/src/trg-main-window.c b/src/trg-main-window.c
index af6b048..f681de5 100644
--- a/src/trg-main-window.c
+++ b/src/trg-main-window.c
@@ -97,6 +97,8 @@ static void reannounce_cb(GtkWidget * w, gpointer data);
static void pause_cb(GtkWidget * w, gpointer data);
static void resume_cb(GtkWidget * w, gpointer data);
static void remove_cb(GtkWidget * w, gpointer data);
+static void resume_all_cb(GtkWidget * w, gpointer data);
+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);
@@ -397,6 +399,15 @@ static void pause_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
on_generic_interactive_action, data);
}
+static void pause_all_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
+{
+ TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
+
+ dispatch_async(priv->client,
+ torrent_pause(NULL),
+ on_generic_interactive_action, data);
+}
+
gboolean trg_add_from_filename(TrgMainWindow * win, gchar * fileName)
{
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(win);
@@ -425,6 +436,16 @@ gboolean trg_add_from_filename(TrgMainWindow * win, gchar * fileName)
return FALSE;
}
+static void resume_all_cb(GtkWidget *w G_GNUC_UNUSED, gpointer data)
+{
+ TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
+
+ g_printf("%s\n", __func__);
+ dispatch_async(priv->client,
+ torrent_start(NULL),
+ on_generic_interactive_action, data);
+}
+
static void resume_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
{
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
@@ -1512,6 +1533,7 @@ trg_status_icon_view_menu(GtkStatusIcon * icon G_GNUC_UNUSED,
trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Add"),
GTK_STOCK_ADD, connected, G_CALLBACK(add_cb),
data);
+
trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Add from URL"),
GTK_STOCK_ADD, connected,
G_CALLBACK(add_url_cb), data);
@@ -1526,11 +1548,19 @@ trg_status_icon_view_menu(GtkStatusIcon * icon G_GNUC_UNUSED,
_("Up Limit"),
SGET_SPEED_LIMIT_UP_ENABLED,
SGET_SPEED_LIMIT_UP, NULL));
+
+ trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Resume All"),
+ GTK_STOCK_MEDIA_PLAY, connected,
+ G_CALLBACK(resume_all_cb), data);
+
+ trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Pause All"),
+ GTK_STOCK_MEDIA_PAUSE, connected,
+ G_CALLBACK(pause_all_cb), data);
}
gtk_menu_shell_append(GTK_MENU_SHELL(menu),
gtk_separator_menu_item_new());
- trg_imagemenuitem_new(GTK_MENU_SHELL(menu), "Quit", GTK_STOCK_QUIT,
+ trg_imagemenuitem_new(GTK_MENU_SHELL(menu), _("Quit"), GTK_STOCK_QUIT,
TRUE, G_CALLBACK(quit_cb), data);
gtk_widget_show_all(menu);