From d55bc1dfaeb0f28e02d74e65270b24a7ffa5fd0c Mon Sep 17 00:00:00 2001 From: fredrik Date: Fri, 2 Dec 2005 00:16:52 +0000 Subject: [PATCH] Switch transfers with scroll events. git-svn-id: svn+ssh://svn.dolda2000.com/srv/svn/repos/src/doldaconnect@533 959494ce-11ee-0310-bf91-de5d638817bd --- clients/gnome-trans-applet/dolcon-trans-applet.c | 29 ++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/clients/gnome-trans-applet/dolcon-trans-applet.c b/clients/gnome-trans-applet/dolcon-trans-applet.c index 46c58fc..b73b46e 100644 --- a/clients/gnome-trans-applet/dolcon-trans-applet.c +++ b/clients/gnome-trans-applet/dolcon-trans-applet.c @@ -197,6 +197,34 @@ static gboolean trview_applet_button_press(GtkWidget *widget, GdkEventButton *ev return(FALSE); } +static gboolean trview_applet_scroll(GtkWidget *widget, GdkEventScroll *event, struct appletdata *data) +{ + struct transfer *tr; + + if(event->direction == GDK_SCROLL_DOWN) + { + if(data->curdisplay == NULL) + data->curdisplay = data->conduit->transfers; + else if(data->curdisplay->next == NULL) + data->curdisplay = data->conduit->transfers; + else + data->curdisplay = data->curdisplay->next; + update(data); + } else if(event->direction == GDK_SCROLL_UP) { + if(data->curdisplay == NULL) + { + data->curdisplay = data->conduit->transfers; + } else if(data->curdisplay->prev == NULL) { + for(tr = data->conduit->transfers; tr->next != NULL; tr = tr->next); + data->curdisplay = tr; + } else { + data->curdisplay = data->curdisplay->prev; + } + update(data); + } + return(TRUE); +} + static void trview_applet_destroy(GtkWidget *widget, struct appletdata *data) { freeconduit(data->conduit); @@ -235,6 +263,7 @@ static gboolean trview_applet_fill(PanelApplet *applet, const gchar *iid, gpoint panel_applet_setup_menu(applet, ctxtmenu, ctxtmenuverbs, data); g_signal_connect(applet, "button-press-event", (GCallback)trview_applet_button_press, data); + g_signal_connect(applet, "scroll-event", (GCallback)trview_applet_scroll, data); g_signal_connect(applet, "destroy", (GCallback)trview_applet_destroy, data); condtryconn(data->conduit); -- 2.11.0