2009-07-22 05:37:49 +00:00
|
|
|
/* $Id$ */
|
|
|
|
|
|
|
|
#ifndef UI_H
|
|
|
|
#define UI_H
|
|
|
|
|
2009-07-22 09:58:01 +00:00
|
|
|
#define EDIT_TIMER_RESET 200
|
|
|
|
|
|
|
|
enum EditMode {
|
|
|
|
EM_LOOPS,
|
|
|
|
EM_BPM,
|
2009-07-22 16:31:12 +00:00
|
|
|
EM_TEMPO,
|
2009-07-22 09:58:01 +00:00
|
|
|
};
|
|
|
|
|
2009-07-22 05:37:49 +00:00
|
|
|
class UI {
|
|
|
|
private:
|
|
|
|
int m_loop;
|
2009-07-22 09:58:01 +00:00
|
|
|
int m_bpm;
|
|
|
|
bool m_quantise;
|
2009-07-22 13:45:36 +00:00
|
|
|
bool m_delay_record;
|
|
|
|
bool m_sync_playback;
|
2009-07-22 09:58:01 +00:00
|
|
|
|
|
|
|
EditMode m_edit_mode;
|
|
|
|
int m_edit_timer;
|
2009-07-22 05:37:49 +00:00
|
|
|
|
|
|
|
public:
|
2009-07-22 09:58:01 +00:00
|
|
|
UI();
|
|
|
|
~UI();
|
|
|
|
|
2009-07-22 05:37:49 +00:00
|
|
|
bool Run(Jack &j);
|
|
|
|
};
|
|
|
|
|
2009-07-23 11:48:55 +00:00
|
|
|
#define UIKEY_QUIT 3
|
|
|
|
#define UIKEY_RECORD 'r'
|
|
|
|
#define UIKEY_PLAY_ONCE 'z'
|
|
|
|
#define UIKEY_PLAY_LOOP 'x'
|
|
|
|
#define UIKEY_STOP 'c'
|
2010-03-30 16:54:24 +00:00
|
|
|
#define UIKEY_STOP_ALL 'C'
|
2009-07-23 11:48:55 +00:00
|
|
|
#define UIKEY_ERASE 'e'
|
|
|
|
#define UIKEY_QUANTISE 'q'
|
|
|
|
#define UIKEY_DELAY 'd'
|
|
|
|
#define UIKEY_SYNC 's'
|
|
|
|
#define UIKEY_BPM 'b'
|
|
|
|
#define UIKEY_TEMPO 't'
|
|
|
|
#define UIKEY_SAVE 'S'
|
2010-03-30 16:54:24 +00:00
|
|
|
#define UIKEY_LOAD 'L'
|
2009-07-23 15:35:15 +00:00
|
|
|
#define UIKEY_RECONNECT 18
|
2009-07-23 16:43:47 +00:00
|
|
|
#define UIKEY_DISCONNECT 4
|
2009-07-23 11:48:55 +00:00
|
|
|
|
2009-07-22 05:37:49 +00:00
|
|
|
#endif /* UI_H */
|