From c2c3a1eea9a153eeebf66450ab9e4620b21dda43 Mon Sep 17 00:00:00 2001 From: Bryan Schumaker Date: Sat, 3 Sep 2011 23:06:13 -0400 Subject: [PATCH] ocarina: Added a rewind button Pressing the rewind button rewinds the song by 5 seconds. --- gui/buttons/controls.cpp | 12 ++++++++++++ gui/ocarina.cpp | 3 +++ include/ocarina/button.h | 2 ++ 3 files changed, 17 insertions(+) diff --git a/gui/buttons/controls.cpp b/gui/buttons/controls.cpp index 0a491ab9..efb52a27 100644 --- a/gui/buttons/controls.cpp +++ b/gui/buttons/controls.cpp @@ -4,6 +4,7 @@ using namespace std; #include #include +#include static list play_buttons; static list pause_buttons; @@ -77,4 +78,15 @@ GtkWidget *make_stop_button(GtkIconSize size) true); } +static void on_click_rewind(GtkWidget *b, GdkEvent *e, gpointer d) +{ + libsaria_seek(-5); +} +GtkWidget *make_rewind_button(GtkIconSize size) +{ + return make_button(GTK_STOCK_MEDIA_REWIND, + size, + on_click_rewind, + true); +} diff --git a/gui/ocarina.cpp b/gui/ocarina.cpp index fe6d70b3..defd64fd 100644 --- a/gui/ocarina.cpp +++ b/gui/ocarina.cpp @@ -9,6 +9,7 @@ void ocarina_init(int argc, char **argv) { GtkWidget *open; + GtkWidget *rewind; GtkWidget *play; GtkWidget *pause; GtkWidget *stop; @@ -21,12 +22,14 @@ void ocarina_init(int argc, char **argv) hbox = gtk_hbox_new(FALSE, 0); open = make_open_button(GTK_ICON_SIZE_MENU); + rewind = make_rewind_button(GTK_ICON_SIZE_MENU); play = make_play_button(GTK_ICON_SIZE_MENU); pause = make_pause_button(GTK_ICON_SIZE_MENU); stop = make_stop_button(GTK_ICON_SIZE_MENU); volume = make_volume_button(); box_pack_start(hbox, open, FALSE, FALSE, 0); + box_pack_start(hbox, rewind, FALSE, FALSE, 0); box_pack_start(hbox, play, FALSE, FALSE, 0); box_pack_start(hbox, pause , FALSE, FALSE, 0); box_pack_start(hbox, stop, FALSE, FALSE, 0); diff --git a/include/ocarina/button.h b/include/ocarina/button.h index 3ba581cb..86a95d1c 100644 --- a/include/ocarina/button.h +++ b/include/ocarina/button.h @@ -14,6 +14,8 @@ GtkWidget *make_button(const gchar *stockid, GtkWidget *make_play_button(GtkIconSize); GtkWidget *make_pause_button(GtkIconSize); GtkWidget *make_stop_button(GtkIconSize); +GtkWidget *make_rewind_button(GtkIconSize); + GtkWidget *make_open_button(GtkIconSize); GtkWidget *make_volume_button();