diff options
| author | Martin Scarratt <mmmm@rockbox.org> | 2006-08-20 21:33:40 +0000 |
|---|---|---|
| committer | Martin Scarratt <mmmm@rockbox.org> | 2006-08-20 21:33:40 +0000 |
| commit | c8bd9129bf146c3c0bbacc744ab509709a004fd7 (patch) | |
| tree | ecf927b6f31c94f12e073c0b9fbd1a144ecd83d3 /apps/recorder | |
| parent | 7847dde8cf00838de8ff75b8398ffbb1921baf8b (diff) | |
| download | rockbox-c8bd9129bf146c3c0bbacc744ab509709a004fd7.zip rockbox-c8bd9129bf146c3c0bbacc744ab509709a004fd7.tar.gz rockbox-c8bd9129bf146c3c0bbacc744ab509709a004fd7.tar.bz2 rockbox-c8bd9129bf146c3c0bbacc744ab509709a004fd7.tar.xz | |
Button action code for recording screen. Shouldnt make any noticable difference in recording screen button operation except for H300 I-River remote, which should now work as expected, -10 button = LCD off
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10666 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/recorder')
| -rw-r--r-- | apps/recorder/peakmeter.c | 3 | ||||
| -rw-r--r-- | apps/recorder/recording.c | 166 |
2 files changed, 20 insertions, 149 deletions
diff --git a/apps/recorder/peakmeter.c b/apps/recorder/peakmeter.c index 39444fe..0370f4d 100644 --- a/apps/recorder/peakmeter.c +++ b/apps/recorder/peakmeter.c @@ -37,6 +37,7 @@ #ifdef CONFIG_BACKLIGHT #include "backlight.h" #endif +#include "action.h" #if CONFIG_CODEC == SWCODEC #include "pcm_playback.h" @@ -1222,7 +1223,7 @@ int peak_meter_draw_get_btn(int x, int y[], int height, int nb_screens) bool dopeek = true; while (TIME_BEFORE(current_tick, next_big_refresh)) { - button = button_get(false); + button = get_action(CONTEXT_RECSCREEN, TIMEOUT_NOBLOCK); if (button != BUTTON_NONE) { break; } diff --git a/apps/recorder/recording.c b/apps/recorder/recording.c index 0d4f127..e6b06d5 100644 --- a/apps/recorder/recording.c +++ b/apps/recorder/recording.c @@ -65,75 +65,9 @@ #include "ata.h" #include "splash.h" #include "screen_access.h" +#include "action.h" #ifdef HAVE_RECORDING - -#if CONFIG_KEYPAD == RECORDER_PAD -#define REC_SHUTDOWN (BUTTON_OFF | BUTTON_REPEAT) -#define REC_STOPEXIT BUTTON_OFF -#define REC_RECPAUSE BUTTON_PLAY -#define REC_INC BUTTON_RIGHT -#define REC_DEC BUTTON_LEFT -#define REC_NEXT BUTTON_DOWN -#define REC_PREV BUTTON_UP -#define REC_SETTINGS BUTTON_F1 -#define REC_F2 BUTTON_F2 -#define REC_F3 BUTTON_F3 - -#elif CONFIG_KEYPAD == ONDIO_PAD /* only limited features */ -#define REC_SHUTDOWN (BUTTON_OFF | BUTTON_REPEAT) -#define REC_STOPEXIT BUTTON_OFF -#define REC_RECPAUSE_PRE BUTTON_MENU -#define REC_RECPAUSE (BUTTON_MENU | BUTTON_REL) -#define REC_INC BUTTON_RIGHT -#define REC_DEC BUTTON_LEFT -#define REC_NEXT BUTTON_DOWN -#define REC_PREV BUTTON_UP -#define REC_SETTINGS (BUTTON_MENU | BUTTON_REPEAT) - -#elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) -#define REC_SHUTDOWN (BUTTON_OFF | BUTTON_REPEAT) -#define REC_STOPEXIT BUTTON_OFF -#define REC_RECPAUSE BUTTON_ON -#define REC_NEWFILE BUTTON_REC -#define REC_INC BUTTON_RIGHT -#define REC_DEC BUTTON_LEFT -#define REC_NEXT BUTTON_DOWN -#define REC_PREV BUTTON_UP -#define REC_SETTINGS BUTTON_MODE - -#define REC_RC_SHUTDOWN (BUTTON_RC_STOP | BUTTON_REPEAT) -#define REC_RC_STOPEXIT BUTTON_RC_STOP -#define REC_RC_RECPAUSE BUTTON_RC_ON -#define REC_RC_NEWFILE BUTTON_RC_REC -#define REC_RC_INC BUTTON_RC_BITRATE -#define REC_RC_DEC BUTTON_RC_SOURCE -#define REC_RC_NEXT BUTTON_RC_FF -#define REC_RC_PREV BUTTON_RC_REW -#define REC_RC_SETTINGS BUTTON_RC_MODE -#define BUTTON_RC_DISPLAY BUTTON_RC_VOL_DOWN - -#elif (CONFIG_KEYPAD == IAUDIO_X5_PAD) -#define REC_SHUTDOWN (BUTTON_POWER | BUTTON_REPEAT) -#define REC_STOPEXIT (BUTTON_PLAY | BUTTON_REPEAT) -#define REC_RECPAUSE_PRE BUTTON_PLAY -#define REC_RECPAUSE (BUTTON_PLAY | BUTTON_REL) -#define REC_INC BUTTON_RIGHT -#define REC_DEC BUTTON_LEFT -#define REC_NEXT BUTTON_DOWN -#define REC_PREV BUTTON_UP -#define REC_NEWFILE_PRE BUTTON_REC -#define REC_SETTINGS (BUTTON_REC | BUTTON_REPEAT) -#define REC_NEWFILE (BUTTON_REC | BUTTON_REL) - -#elif CONFIG_KEYPAD == GMINI100_PAD -#define REC_SHUTDOWN (BUTTON_OFF | BUTTON_REPEAT) -#define REC_STOPEXIT BUTTON_OFF -#define REC_RECPAUSE BUTTON_ON -#define REC_INC BUTTON_RIGHT -#define REC_DEC BUTTON_LEFT -#endif - #define PM_HEIGHT ((LCD_HEIGHT >= 72) ? 2 : 1) bool f2_rec_screen(void); @@ -830,8 +764,7 @@ bool recording_screen(void) switch(button) { -#ifdef BUTTON_RC_DISPLAY - case BUTTON_RC_DISPLAY: + case ACTION_REC_LCD: if (remote_display_on) { remote_display_on = false; @@ -849,15 +782,8 @@ bool recording_screen(void) screen_update = NB_SCREENS; } break; -#endif - case REC_STOPEXIT: - case REC_SHUTDOWN: -#ifdef REC_RC_STOPEXIT - case REC_RC_STOPEXIT: -#endif -#ifdef REC_RC_SHUTDOWN - case REC_RC_SHUTDOWN: -#endif + + case ACTION_STD_CANCEL: /* turn off the trigger */ peak_meter_trigger(false); peak_meter_set_trigger_listener(NULL); @@ -877,27 +803,8 @@ bool recording_screen(void) update_countdown = 1; /* Update immediately */ break; - case REC_RECPAUSE: -#ifdef REC_RC_RECPAUSE - case REC_RC_RECPAUSE: -#endif -#ifdef REC_RECPAUSE_PRE - if (lastbutton != REC_RECPAUSE_PRE) - break; -#endif -#ifdef REC_NEWFILE - case REC_NEWFILE: -#endif -#ifdef REC_RC_NEWFILE - case REC_RC_NEWFILE: -#endif -#ifdef REC_NEWFILE_PRE - if (button == REC_NEWFILE){ - if (lastbutton != REC_NEWFILE_PRE) - break; - } -#endif - + case ACTION_REC_PAUSE: + case ACTION_REC_NEWFILE: /* Only act if the mpeg is stopped */ if(!(audio_stat & AUDIO_STATUS_RECORD)) { @@ -928,19 +835,13 @@ bool recording_screen(void) } else { -#ifdef REC_NEWFILE /*if new file button pressed, start new file */ - if ((button == REC_NEWFILE) -#ifdef REC_RC_NEWFILE - || (button == REC_RC_NEWFILE) -#endif - ) + if (button == ACTION_REC_NEWFILE) { audio_new_file(rec_create_filename(path_buffer)); last_seconds = 0; } else -#endif /* if pause button pressed, pause or resume */ { if(audio_stat & AUDIO_STATUS_PAUSE) @@ -960,34 +861,19 @@ bool recording_screen(void) update_countdown = 1; /* Update immediately */ break; -#ifdef REC_PREV - case REC_PREV: -#ifdef REC_RC_PREV - case REC_RC_PREV: -#endif + case ACTION_STD_PREV: cursor--; adjust_cursor(); update_countdown = 1; /* Update immediately */ break; -#endif -#ifdef REC_NEXT - case REC_NEXT: -#ifdef REC_RC_NEXT - case REC_RC_NEXT: -#endif + case ACTION_STD_NEXT: cursor++; adjust_cursor(); update_countdown = 1; /* Update immediately */ break; -#endif - case REC_INC: - case REC_INC | BUTTON_REPEAT: -#ifdef REC_RC_INC - case REC_RC_INC: - case REC_RC_INC | BUTTON_REPEAT: -#endif + case ACTION_SETTINGS_INC: switch(cursor) { case 0: @@ -1055,12 +941,7 @@ bool recording_screen(void) update_countdown = 1; /* Update immediately */ break; - case REC_DEC: - case REC_DEC | BUTTON_REPEAT: -#ifdef REC_RC_DEC - case REC_RC_DEC: - case REC_RC_DEC | BUTTON_REPEAT: -#endif + case ACTION_SETTINGS_DEC: switch(cursor) { case 0: @@ -1128,11 +1009,7 @@ bool recording_screen(void) update_countdown = 1; /* Update immediately */ break; -#ifdef REC_SETTINGS - case REC_SETTINGS: -#ifdef REC_RC_SETTINGS - case REC_RC_SETTINGS: -#endif + case ACTION_STD_MENU: if(audio_stat != AUDIO_STATUS_RECORD) { #if CONFIG_LED == LED_REAL @@ -1178,10 +1055,8 @@ bool recording_screen(void) } } break; -#endif - -#ifdef REC_F2 - case REC_F2: +#if CONFIG_KEYPAD == RECORDER_PAD + case ACTION_REC_F2: if(audio_stat != AUDIO_STATUS_RECORD) { #if CONFIG_LED == LED_REAL @@ -1197,10 +1072,8 @@ bool recording_screen(void) update_countdown = 1; /* Update immediately */ } break; -#endif -#ifdef REC_F3 - case REC_F3: + case ACTION_REC_F3: if(audio_stat & AUDIO_STATUS_RECORD) { audio_new_file(rec_create_filename(path_buffer)); @@ -1653,8 +1526,7 @@ bool recording_screen(void) while(1) { - button = button_get(true); - if(button == (REC_STOPEXIT | BUTTON_REL)) + if (action_userabort(TIMEOUT_NOBLOCK)) break; } } @@ -1690,7 +1562,7 @@ bool recording_screen(void) return been_in_usb_mode; } -#ifdef REC_F2 +#if CONFIG_KEYPAD == RECORDER_PAD bool f2_rec_screen(void) { bool exit = false; @@ -1826,9 +1698,7 @@ bool f2_rec_screen(void) return false; } -#endif /* #ifdef REC_F2 */ -#ifdef REC_F3 bool f3_rec_screen(void) { bool exit = false; @@ -1931,7 +1801,7 @@ bool f3_rec_screen(void) return false; } -#endif /* #ifdef REC_F3 */ +#endif /* #ifdef RECORDER_PAD */ #if CONFIG_CODEC == SWCODEC void audio_beep(int duration) |