summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2009-03-12 18:50:24 +0000
committerThomas Martitz <kugel@rockbox.org>2009-03-12 18:50:24 +0000
commit74aba34b5805b345a8f5f89657da4aeaaffcdb0c (patch)
tree1756673575f547c2e21a3e4d2cdaf73b2536ab4e
parent23722d5ff4769bcf1d2c4c241d90e93d8ec70e12 (diff)
downloadrockbox-74aba34b5805b345a8f5f89657da4aeaaffcdb0c.tar.gz
rockbox-74aba34b5805b345a8f5f89657da4aeaaffcdb0c.zip
Move play_hop() to gwps.c and make it static. It's the only file that calls it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20306 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/gui/gwps-common.c31
-rw-r--r--apps/gui/gwps-common.h1
-rw-r--r--apps/gui/gwps.c32
3 files changed, 32 insertions, 32 deletions
diff --git a/apps/gui/gwps-common.c b/apps/gui/gwps-common.c
index b43c357408..b60377de78 100644
--- a/apps/gui/gwps-common.c
+++ b/apps/gui/gwps-common.c
@@ -62,7 +62,6 @@
62#endif 62#endif
63#include "backdrop.h" 63#include "backdrop.h"
64#include "viewport.h" 64#include "viewport.h"
65#include "pcmbuf.h"
66 65
67#define FF_REWIND_MAX_PERCENT 3 /* cap ff/rewind step size at max % of file */ 66#define FF_REWIND_MAX_PERCENT 3 /* cap ff/rewind step size at max % of file */
68 /* 3% of 30min file == 54s step size */ 67 /* 3% of 30min file == 54s step size */
@@ -151,36 +150,6 @@ bool update_onvol_change(struct gui_wps * gwps)
151 return false; 150 return false;
152} 151}
153 152
154void play_hop(int direction)
155{
156 unsigned step = ((unsigned)global_settings.skip_length*1000);
157 unsigned long *elapsed = &(wps_state.id3->elapsed);
158
159 if (direction == 1 && wps_state.id3->length - *elapsed < step+1000) {
160#if CONFIG_CODEC == SWCODEC
161 if(global_settings.beep)
162 pcmbuf_beep(1000, 150, 1500*global_settings.beep);
163#endif
164 return;
165 } else if ((direction == -1 && *elapsed < step)) {
166 *elapsed = 0;
167 } else {
168 *elapsed += step * direction;
169 }
170 if((audio_status() & AUDIO_STATUS_PLAY) && !wps_state.paused) {
171#if (CONFIG_CODEC == SWCODEC)
172 audio_pre_ff_rewind();
173#else
174 audio_pause();
175#endif
176 }
177 audio_ff_rewind(*elapsed);
178#if (CONFIG_CODEC != SWCODEC)
179 if (!wps_state.paused)
180 audio_resume();
181#endif
182}
183
184bool ffwd_rew(int button) 153bool ffwd_rew(int button)
185{ 154{
186 unsigned int step = 0; /* current ff/rewind step */ 155 unsigned int step = 0; /* current ff/rewind step */
diff --git a/apps/gui/gwps-common.h b/apps/gui/gwps-common.h
index 3102d72c80..25ce435592 100644
--- a/apps/gui/gwps-common.h
+++ b/apps/gui/gwps-common.h
@@ -29,7 +29,6 @@ void fade(bool fade_in, bool updatewps);
29bool gui_wps_display(void); 29bool gui_wps_display(void);
30bool update_onvol_change(struct gui_wps * gwps); 30bool update_onvol_change(struct gui_wps * gwps);
31bool update(struct gui_wps *gwps); 31bool update(struct gui_wps *gwps);
32void play_hop(int direction);
33bool ffwd_rew(int button); 32bool ffwd_rew(int button);
34void display_keylock_text(bool locked); 33void display_keylock_text(bool locked);
35 34
diff --git a/apps/gui/gwps.c b/apps/gui/gwps.c
index 7ba9862895..d928bc3e64 100644
--- a/apps/gui/gwps.c
+++ b/apps/gui/gwps.c
@@ -63,6 +63,7 @@
63#include "pitchscreen.h" 63#include "pitchscreen.h"
64#include "appevents.h" 64#include "appevents.h"
65#include "viewport.h" 65#include "viewport.h"
66#include "pcmbuf.h"
66 67
67/* currently only one wps_state is needed */ 68/* currently only one wps_state is needed */
68struct wps_state wps_state; 69struct wps_state wps_state;
@@ -115,6 +116,37 @@ static void next_track(void)
115 116
116 audio_next(); 117 audio_next();
117} 118}
119
120static void play_hop(int direction)
121{
122 unsigned step = ((unsigned)global_settings.skip_length*1000);
123 unsigned long *elapsed = &(wps_state.id3->elapsed);
124
125 if (direction == 1 && wps_state.id3->length - *elapsed < step+1000) {
126#if CONFIG_CODEC == SWCODEC
127 if(global_settings.beep)
128 pcmbuf_beep(1000, 150, 1500*global_settings.beep);
129#endif
130 return;
131 } else if ((direction == -1 && *elapsed < step)) {
132 *elapsed = 0;
133 } else {
134 *elapsed += step * direction;
135 }
136 if((audio_status() & AUDIO_STATUS_PLAY) && !wps_state.paused) {
137#if (CONFIG_CODEC == SWCODEC)
138 audio_pre_ff_rewind();
139#else
140 audio_pause();
141#endif
142 }
143 audio_ff_rewind(*elapsed);
144#if (CONFIG_CODEC != SWCODEC)
145 if (!wps_state.paused)
146 audio_resume();
147#endif
148}
149
118static int fix_wps_bars(void) 150static int fix_wps_bars(void)
119{ 151{
120#ifdef HAVE_LCD_BITMAP 152#ifdef HAVE_LCD_BITMAP