GUI: simplify keybind load/save code
as of now action definitions are in guiConst.cpp.
This commit is contained in:
parent
7f51f0f246
commit
1054f92029
|
@ -440,6 +440,12 @@ enum PasteMode {
|
|||
#define FURKMOD_ALT (1<<27)
|
||||
#define FURK_MASK 0x40ffffff
|
||||
|
||||
#ifdef __APPLE__
|
||||
#define FURKMOD_CMD FURKMOD_META
|
||||
#else
|
||||
#define FURKMOD_CMD FURKMOD_CTRL
|
||||
#endif
|
||||
|
||||
struct SelectionPoint {
|
||||
int xCoarse, xFine;
|
||||
int y;
|
||||
|
|
|
@ -138,212 +138,217 @@ const char* resampleStrats[]={
|
|||
"best possible"
|
||||
};
|
||||
|
||||
const char* guiActions[GUI_ACTION_MAX][2]={
|
||||
{"GLOBAL_MIN", "---Global"},
|
||||
{"OPEN", "Open file"},
|
||||
{"OPEN_BACKUP", "Restore backup"},
|
||||
{"SAVE", "Save file"},
|
||||
{"SAVE_AS", "Save as"},
|
||||
{"UNDO", "Undo"},
|
||||
{"REDO", "Redo"},
|
||||
{"PLAY_TOGGLE", "Play/Stop (toggle)"},
|
||||
{"PLAY", "Play"},
|
||||
{"STOP", "Stop"},
|
||||
{"PLAY_REPEAT", "Play (repeat pattern)"},
|
||||
{"PLAY_CURSOR", "Play from cursor"},
|
||||
{"STEP_ONE", "Step row"},
|
||||
{"OCTAVE_UP", "Octave up"},
|
||||
{"OCTAVE_DOWN", "Octave down"},
|
||||
{"INS_UP", "Previous instrument"},
|
||||
{"INS_DOWN", "Next instrument"},
|
||||
{"STEP_UP", "Increase edit step"},
|
||||
{"STEP_DOWN", "Decrease edit step"},
|
||||
{"TOGGLE_EDIT", "Toggle edit mode"},
|
||||
{"METRONOME", "Metronome"},
|
||||
{"REPEAT_PATTERN", "Toggle repeat pattern"},
|
||||
{"FOLLOW_ORDERS", "Follow orders"},
|
||||
{"FOLLOW_PATTERN", "Follow pattern"},
|
||||
{"PANIC", "Panic"},
|
||||
#define D FurnaceGUIActionDef
|
||||
#define NOT_AN_ACTION -1
|
||||
|
||||
{"WINDOW_EDIT_CONTROLS", "Edit Controls"},
|
||||
{"WINDOW_ORDERS", "Orders"},
|
||||
{"WINDOW_INS_LIST", "Instrument List"},
|
||||
{"WINDOW_INS_EDIT", "Instrument Editor"},
|
||||
{"WINDOW_SONG_INFO", "Song Information"},
|
||||
{"WINDOW_PATTERN", "Pattern"},
|
||||
{"WINDOW_WAVE_LIST", "Wavetable List"},
|
||||
{"WINDOW_WAVE_EDIT", "Wavetable Editor"},
|
||||
{"WINDOW_SAMPLE_LIST", "Sample List"},
|
||||
{"WINDOW_SAMPLE_EDIT", "Sample Editor"},
|
||||
{"WINDOW_ABOUT", "About"},
|
||||
{"WINDOW_SETTINGS", "Settings"},
|
||||
{"WINDOW_MIXER", "Mixer"},
|
||||
{"WINDOW_DEBUG", "Debug Menu"},
|
||||
{"WINDOW_OSCILLOSCOPE", "Oscilloscope"},
|
||||
{"WINDOW_VOL_METER", "Volume Meter"},
|
||||
{"WINDOW_STATS", "Statistics"},
|
||||
{"WINDOW_COMPAT_FLAGS", "Compatibility Flags"},
|
||||
{"WINDOW_PIANO", "Piano"},
|
||||
{"WINDOW_NOTES", "Song Comments"},
|
||||
{"WINDOW_CHANNELS", "Channels"},
|
||||
{"WINDOW_REGISTER_VIEW", "Register View"},
|
||||
// format: ("ACTION_ENUM", "Action name", defaultBind)
|
||||
const FurnaceGUIActionDef guiActions[GUI_ACTION_MAX]={
|
||||
D("GLOBAL_MIN", "---Global", NOT_AN_ACTION),
|
||||
D("OPEN", "Open file", FURKMOD_CMD|SDLK_o),
|
||||
D("OPEN_BACKUP", "Restore backup", 0),
|
||||
D("SAVE", "Save file", FURKMOD_CMD|SDLK_s),
|
||||
D("SAVE_AS", "Save as", FURKMOD_CMD|FURKMOD_SHIFT|SDLK_s),
|
||||
D("UNDO", "Undo", FURKMOD_CMD|SDLK_z),
|
||||
D("REDO", "Redo", FURKMOD_CMD|SDLK_y),
|
||||
D("PLAY_TOGGLE", "Play/Stop (toggle)", SDLK_RETURN),
|
||||
D("PLAY", "Play", 0),
|
||||
D("STOP", "Stop", 0),
|
||||
D("PLAY_REPEAT", "Play (repeat pattern)", 0),
|
||||
D("PLAY_CURSOR", "Play from cursor", FURKMOD_SHIFT|SDLK_RETURN),
|
||||
D("STEP_ONE", "Step row", FURKMOD_CMD|SDLK_RETURN),
|
||||
D("OCTAVE_UP", "Octave up", SDLK_KP_MULTIPLY),
|
||||
D("OCTAVE_DOWN", "Octave down", SDLK_KP_DIVIDE),
|
||||
D("INS_UP", "Previous instrument", FURKMOD_SHIFT|SDLK_KP_DIVIDE),
|
||||
D("INS_DOWN", "Next instrument", FURKMOD_SHIFT|SDLK_KP_MULTIPLY),
|
||||
D("STEP_UP", "Increase edit step", FURKMOD_CMD|SDLK_KP_MULTIPLY),
|
||||
D("STEP_DOWN", "Decrease edit step", FURKMOD_CMD|SDLK_KP_DIVIDE),
|
||||
D("TOGGLE_EDIT", "Toggle edit mode", SDLK_SPACE),
|
||||
D("METRONOME", "Metronome", FURKMOD_CMD|SDLK_m),
|
||||
D("REPEAT_PATTERN", "Toggle repeat pattern", 0),
|
||||
D("FOLLOW_ORDERS", "Follow orders", 0),
|
||||
D("FOLLOW_PATTERN", "Follow pattern", 0),
|
||||
D("PANIC", "Panic", SDLK_F12),
|
||||
|
||||
{"COLLAPSE_WINDOW", "Collapse/expand current window"},
|
||||
{"CLOSE_WINDOW", "Close current window"},
|
||||
{"GLOBAL_MAX", ""},
|
||||
D("WINDOW_EDIT_CONTROLS", "Edit Controls", 0),
|
||||
D("WINDOW_ORDERS", "Orders", 0),
|
||||
D("WINDOW_INS_LIST", "Instrument List", 0),
|
||||
D("WINDOW_INS_EDIT", "Instrument Editor", 0),
|
||||
D("WINDOW_SONG_INFO", "Song Information", 0),
|
||||
D("WINDOW_PATTERN", "Pattern", 0),
|
||||
D("WINDOW_WAVE_LIST", "Wavetable List", 0),
|
||||
D("WINDOW_WAVE_EDIT", "Wavetable Editor", 0),
|
||||
D("WINDOW_SAMPLE_LIST", "Sample List", 0),
|
||||
D("WINDOW_SAMPLE_EDIT", "Sample Editor", 0),
|
||||
D("WINDOW_ABOUT", "About", 0),
|
||||
D("WINDOW_SETTINGS", "Settings", 0),
|
||||
D("WINDOW_MIXER", "Mixer", 0),
|
||||
D("WINDOW_DEBUG", "Debug Menu", 0),
|
||||
D("WINDOW_OSCILLOSCOPE", "Oscilloscope", 0),
|
||||
D("WINDOW_VOL_METER", "Volume Meter", 0),
|
||||
D("WINDOW_STATS", "Statistics", 0),
|
||||
D("WINDOW_COMPAT_FLAGS", "Compatibility Flags", 0),
|
||||
D("WINDOW_PIANO", "Piano", 0),
|
||||
D("WINDOW_NOTES", "Song Comments", 0),
|
||||
D("WINDOW_CHANNELS", "Channels", 0),
|
||||
D("WINDOW_REGISTER_VIEW", "Register View", 0),
|
||||
|
||||
{"PAT_MIN", "---Pattern"},
|
||||
{"PAT_NOTE_UP", "Transpose (+1)"},
|
||||
{"PAT_NOTE_DOWN", "Transpose (-1)"},
|
||||
{"PAT_OCTAVE_UP", "Transpose (+1 octave)"},
|
||||
{"PAT_OCTAVE_DOWN", "Transpose (-1 octave)"},
|
||||
{"PAT_SELECT_ALL", "Select all"},
|
||||
{"PAT_CUT", "Cut"},
|
||||
{"PAT_COPY", "Copy"},
|
||||
{"PAT_PASTE", "Paste"},
|
||||
{"PAT_PASTE_MIX", "Paste Mix (foreground)"},
|
||||
{"PAT_PASTE_MIX_BG", "Paste Mix (background)"},
|
||||
{"PAT_PASTE_FLOOD", "Paste Flood"},
|
||||
{"PAT_PASTE_OVERFLOW", "Paste Overflow"},
|
||||
{"PAT_CURSOR_UP", "Move cursor up"},
|
||||
{"PAT_CURSOR_DOWN", "Move cursor down"},
|
||||
{"PAT_CURSOR_LEFT", "Move cursor left"},
|
||||
{"PAT_CURSOR_RIGHT", "Move cursor right"},
|
||||
{"PAT_CURSOR_UP_ONE", "Move cursor up by one (override Edit Step)"},
|
||||
{"PAT_CURSOR_DOWN_ONE", "Move cursor down by one (override Edit Step)"},
|
||||
{"PAT_CURSOR_LEFT_CHANNEL", "Move cursor to previous channel"},
|
||||
{"PAT_CURSOR_RIGHT_CHANNEL", "Move cursor to next channel"},
|
||||
{"PAT_CURSOR_NEXT_CHANNEL", "Move cursor to previous channel (overflow)"},
|
||||
{"PAT_CURSOR_PREVIOUS_CHANNEL", "Move cursor to next channel (overflow)"},
|
||||
{"PAT_CURSOR_BEGIN", "Move cursor to beginning of pattern"},
|
||||
{"PAT_CURSOR_END", "Move cursor to end of pattern"},
|
||||
{"PAT_CURSOR_UP_COARSE", "Move cursor up (coarse)"},
|
||||
{"PAT_CURSOR_DOWN_COARSE", "Move cursor down (coarse)"},
|
||||
{"PAT_SELECTION_UP", "Expand selection upwards"},
|
||||
{"PAT_SELECTION_DOWN", "Expand selection downwards"},
|
||||
{"PAT_SELECTION_LEFT", "Expand selection to the left"},
|
||||
{"PAT_SELECTION_RIGHT", "Expand selection to the right"},
|
||||
{"PAT_SELECTION_UP_ONE", "Expand selection upwards by one (override Edit Step)"},
|
||||
{"PAT_SELECTION_DOWN_ONE", "Expand selection downwards by one (override Edit Step)"},
|
||||
{"PAT_SELECTION_BEGIN", "Expand selection to beginning of pattern"},
|
||||
{"PAT_SELECTION_END", "Expand selection to end of pattern"},
|
||||
{"PAT_SELECTION_UP_COARSE", "Expand selection upwards (coarse)"},
|
||||
{"PAT_SELECTION_DOWN_COARSE", "Expand selection downwards (coarse)"},
|
||||
{"PAT_DELETE", "Delete"},
|
||||
{"PAT_PULL_DELETE", "Pull delete"},
|
||||
{"PAT_INSERT", "Insert"},
|
||||
{"PAT_MUTE_CURSOR", "Mute channel at cursor"},
|
||||
{"PAT_SOLO_CURSOR", "Solo channel at cursor"},
|
||||
{"PAT_UNMUTE_ALL", "Unmute all channels"},
|
||||
{"PAT_NEXT_ORDER", "Go to next order"},
|
||||
{"PAT_PREV_ORDER", "Go to previous order"},
|
||||
{"PAT_COLLAPSE", "Collapse channel at cursor"},
|
||||
{"PAT_INCREASE_COLUMNS", "Increase effect columns"},
|
||||
{"PAT_DECREASE_COLUMNS", "Decrease effect columns"},
|
||||
{"PAT_INTERPOLATE", "Interpolate"},
|
||||
{"PAT_FADE", "Fade"},
|
||||
{"PAT_INVERT_VALUES", "Invert values"},
|
||||
{"PAT_FLIP_SELECTION", "Flip selection"},
|
||||
{"PAT_COLLAPSE_ROWS", "Collapse rows"},
|
||||
{"PAT_EXPAND_ROWS", "Expand rows"},
|
||||
{"PAT_COLLAPSE_PAT", "Collapse pattern"},
|
||||
{"PAT_EXPAND_PAT", "Expand pattern"},
|
||||
{"PAT_COLLAPSE_SONG", "Collapse song"},
|
||||
{"PAT_EXPAND_SONG", "Expand song"},
|
||||
{"PAT_LATCH", "Set note input latch"},
|
||||
{"PAT_MAX", ""},
|
||||
D("COLLAPSE_WINDOW", "Collapse/expand current window", 0),
|
||||
D("CLOSE_WINDOW", "Close current window", FURKMOD_SHIFT|SDLK_ESCAPE),
|
||||
D("GLOBAL_MAX", "", NOT_AN_ACTION),
|
||||
|
||||
{"INS_LIST_MIN", "---Instrument list"},
|
||||
{"INS_LIST_ADD", "Add"},
|
||||
{"INS_LIST_DUPLICATE", "Duplicate"},
|
||||
{"INS_LIST_OPEN", "Open"},
|
||||
{"INS_LIST_SAVE", "Save"},
|
||||
{"INS_LIST_MOVE_UP", "Move up"},
|
||||
{"INS_LIST_MOVE_DOWN", "Move down"},
|
||||
{"INS_LIST_DELETE", "Delete"},
|
||||
{"INS_LIST_EDIT", "Edit"},
|
||||
{"INS_LIST_UP", "Cursor up"},
|
||||
{"INS_LIST_DOWN", "Cursor down"},
|
||||
{"INS_LIST_MAX", ""},
|
||||
D("PAT_MIN", "---Pattern", NOT_AN_ACTION),
|
||||
D("PAT_NOTE_UP", "Transpose (+1)", FURKMOD_CMD|SDLK_F2),
|
||||
D("PAT_NOTE_DOWN", "Transpose (-1)", FURKMOD_CMD|SDLK_F1),
|
||||
D("PAT_OCTAVE_UP", "Transpose (+1 octave)", FURKMOD_CMD|SDLK_F4),
|
||||
D("PAT_OCTAVE_DOWN", "Transpose (-1 octave)", FURKMOD_CMD|SDLK_F3),
|
||||
D("PAT_SELECT_ALL", "Select all", FURKMOD_CMD|SDLK_a),
|
||||
D("PAT_CUT", "Cut", FURKMOD_CMD|SDLK_x),
|
||||
D("PAT_COPY", "Copy", FURKMOD_CMD|SDLK_c),
|
||||
D("PAT_PASTE", "Paste", FURKMOD_CMD|SDLK_v),
|
||||
D("PAT_PASTE_MIX", "Paste Mix (foreground)", FURKMOD_CMD|FURKMOD_SHIFT|SDLK_v),
|
||||
D("PAT_PASTE_MIX_BG", "Paste Mix (background)", 0),
|
||||
D("PAT_PASTE_FLOOD", "Paste Flood", 0),
|
||||
D("PAT_PASTE_OVERFLOW", "Paste Overflow", 0),
|
||||
D("PAT_CURSOR_UP", "Move cursor up", SDLK_UP),
|
||||
D("PAT_CURSOR_DOWN", "Move cursor down", SDLK_DOWN),
|
||||
D("PAT_CURSOR_LEFT", "Move cursor left", SDLK_LEFT),
|
||||
D("PAT_CURSOR_RIGHT", "Move cursor right", SDLK_RIGHT),
|
||||
D("PAT_CURSOR_UP_ONE", "Move cursor up by one (override Edit Step)", FURKMOD_SHIFT|SDLK_HOME),
|
||||
D("PAT_CURSOR_DOWN_ONE", "Move cursor down by one (override Edit Step)", FURKMOD_SHIFT|SDLK_END),
|
||||
D("PAT_CURSOR_LEFT_CHANNEL", "Move cursor to previous channel", 0),
|
||||
D("PAT_CURSOR_RIGHT_CHANNEL", "Move cursor to next channel", 0),
|
||||
D("PAT_CURSOR_NEXT_CHANNEL", "Move cursor to previous channel (overflow)", 0),
|
||||
D("PAT_CURSOR_PREVIOUS_CHANNEL", "Move cursor to next channel (overflow)", 0),
|
||||
D("PAT_CURSOR_BEGIN", "Move cursor to beginning of pattern", SDLK_HOME),
|
||||
D("PAT_CURSOR_END", "Move cursor to end of pattern", SDLK_END),
|
||||
D("PAT_CURSOR_UP_COARSE", "Move cursor up (coarse)", SDLK_PAGEUP),
|
||||
D("PAT_CURSOR_DOWN_COARSE", "Move cursor down (coarse)", SDLK_PAGEDOWN),
|
||||
D("PAT_SELECTION_UP", "Expand selection upwards", FURKMOD_SHIFT|SDLK_UP),
|
||||
D("PAT_SELECTION_DOWN", "Expand selection downwards", FURKMOD_SHIFT|SDLK_DOWN),
|
||||
D("PAT_SELECTION_LEFT", "Expand selection to the left", FURKMOD_SHIFT|SDLK_LEFT),
|
||||
D("PAT_SELECTION_RIGHT", "Expand selection to the right", FURKMOD_SHIFT|SDLK_RIGHT),
|
||||
D("PAT_SELECTION_UP_ONE", "Expand selection upwards by one (override Edit Step)", 0),
|
||||
D("PAT_SELECTION_DOWN_ONE", "Expand selection downwards by one (override Edit Step)", 0),
|
||||
D("PAT_SELECTION_BEGIN", "Expand selection to beginning of pattern", 0),
|
||||
D("PAT_SELECTION_END", "Expand selection to end of pattern", 0),
|
||||
D("PAT_SELECTION_UP_COARSE", "Expand selection upwards (coarse)", FURKMOD_SHIFT|SDLK_PAGEUP),
|
||||
D("PAT_SELECTION_DOWN_COARSE", "Expand selection downwards (coarse)", FURKMOD_SHIFT|SDLK_PAGEDOWN),
|
||||
D("PAT_DELETE", "Delete", SDLK_DELETE),
|
||||
D("PAT_PULL_DELETE", "Pull delete", SDLK_BACKSPACE),
|
||||
D("PAT_INSERT", "Insert", SDLK_INSERT),
|
||||
D("PAT_MUTE_CURSOR", "Mute channel at cursor", FURKMOD_ALT|SDLK_F9),
|
||||
D("PAT_SOLO_CURSOR", "Solo channel at cursor", FURKMOD_ALT|SDLK_F10),
|
||||
D("PAT_UNMUTE_ALL", "Unmute all channels", FURKMOD_ALT|FURKMOD_SHIFT|SDLK_F9),
|
||||
D("PAT_NEXT_ORDER", "Go to next order", 0),
|
||||
D("PAT_PREV_ORDER", "Go to previous order", 0),
|
||||
D("PAT_COLLAPSE", "Collapse channel at cursor", 0),
|
||||
D("PAT_INCREASE_COLUMNS", "Increase effect columns", 0),
|
||||
D("PAT_DECREASE_COLUMNS", "Decrease effect columns", 0),
|
||||
D("PAT_INTERPOLATE", "Interpolate", 0),
|
||||
D("PAT_FADE", "Fade", 0),
|
||||
D("PAT_INVERT_VALUES", "Invert values", 0),
|
||||
D("PAT_FLIP_SELECTION", "Flip selection", 0),
|
||||
D("PAT_COLLAPSE_ROWS", "Collapse rows", 0),
|
||||
D("PAT_EXPAND_ROWS", "Expand rows", 0),
|
||||
D("PAT_COLLAPSE_PAT", "Collapse pattern", 0),
|
||||
D("PAT_EXPAND_PAT", "Expand pattern", 0),
|
||||
D("PAT_COLLAPSE_SONG", "Collapse song", 0),
|
||||
D("PAT_EXPAND_SONG", "Expand song", 0),
|
||||
D("PAT_LATCH", "Set note input latch", 0),
|
||||
D("PAT_MAX", "", NOT_AN_ACTION),
|
||||
|
||||
{"WAVE_LIST_MIN", "---Wavetable list"},
|
||||
{"WAVE_LIST_ADD", "Add"},
|
||||
{"WAVE_LIST_DUPLICATE", "Duplicate"},
|
||||
{"WAVE_LIST_OPEN", "Open"},
|
||||
{"WAVE_LIST_SAVE", "Save"},
|
||||
{"WAVE_LIST_MOVE_UP", "Move up"},
|
||||
{"WAVE_LIST_MOVE_DOWN", "Move down"},
|
||||
{"WAVE_LIST_DELETE", "Delete"},
|
||||
{"WAVE_LIST_EDIT", "Edit"},
|
||||
{"WAVE_LIST_UP", "Cursor up"},
|
||||
{"WAVE_LIST_DOWN", "Cursor down"},
|
||||
{"WAVE_LIST_MAX", ""},
|
||||
D("INS_LIST_MIN", "---Instrument list", NOT_AN_ACTION),
|
||||
D("INS_LIST_ADD", "Add", SDLK_INSERT),
|
||||
D("INS_LIST_DUPLICATE", "Duplicate", FURKMOD_CMD|SDLK_d),
|
||||
D("INS_LIST_OPEN", "Open", 0),
|
||||
D("INS_LIST_SAVE", "Save", 0),
|
||||
D("INS_LIST_MOVE_UP", "Move up", FURKMOD_SHIFT|SDLK_UP),
|
||||
D("INS_LIST_MOVE_DOWN", "Move down", FURKMOD_SHIFT|SDLK_DOWN),
|
||||
D("INS_LIST_DELETE", "Delete", 0),
|
||||
D("INS_LIST_EDIT", "Edit", FURKMOD_SHIFT|SDLK_RETURN),
|
||||
D("INS_LIST_UP", "Cursor up", SDLK_UP),
|
||||
D("INS_LIST_DOWN", "Cursor down", SDLK_DOWN),
|
||||
D("INS_LIST_MAX", "", NOT_AN_ACTION),
|
||||
|
||||
{"SAMPLE_LIST_MIN", "---Sample list"},
|
||||
{"SAMPLE_LIST_ADD", "Add"},
|
||||
{"SAMPLE_LIST_DUPLICATE", "Duplicate"},
|
||||
{"SAMPLE_LIST_OPEN", "Open"},
|
||||
{"SAMPLE_LIST_SAVE", "Save"},
|
||||
{"SAMPLE_LIST_MOVE_UP", "Move up"},
|
||||
{"SAMPLE_LIST_MOVE_DOWN", "Move down"},
|
||||
{"SAMPLE_LIST_DELETE", "Delete"},
|
||||
{"SAMPLE_LIST_EDIT", "Edit"},
|
||||
{"SAMPLE_LIST_UP", "Cursor up"},
|
||||
{"SAMPLE_LIST_DOWN", "Cursor down"},
|
||||
{"SAMPLE_LIST_PREVIEW", "Preview"},
|
||||
{"SAMPLE_LIST_STOP_PREVIEW", "Stop preview"},
|
||||
{"SAMPLE_LIST_MAX", ""},
|
||||
D("WAVE_LIST_MIN", "---Wavetable list", NOT_AN_ACTION),
|
||||
D("WAVE_LIST_ADD", "Add", SDLK_INSERT),
|
||||
D("WAVE_LIST_DUPLICATE", "Duplicate", FURKMOD_CMD|SDLK_d),
|
||||
D("WAVE_LIST_OPEN", "Open", 0),
|
||||
D("WAVE_LIST_SAVE", "Save", 0),
|
||||
D("WAVE_LIST_MOVE_UP", "Move up", FURKMOD_SHIFT|SDLK_UP),
|
||||
D("WAVE_LIST_MOVE_DOWN", "Move down", FURKMOD_SHIFT|SDLK_DOWN),
|
||||
D("WAVE_LIST_DELETE", "Delete", 0),
|
||||
D("WAVE_LIST_EDIT", "Edit", FURKMOD_SHIFT|SDLK_RETURN),
|
||||
D("WAVE_LIST_UP", "Cursor up", SDLK_UP),
|
||||
D("WAVE_LIST_DOWN", "Cursor down", SDLK_DOWN),
|
||||
D("WAVE_LIST_MAX", "", NOT_AN_ACTION),
|
||||
|
||||
{"SAMPLE_MIN", "---Sample editor"},
|
||||
{"SAMPLE_SELECT", "Edit mode: Select"},
|
||||
{"SAMPLE_DRAW", "Edit mode: Draw"},
|
||||
{"SAMPLE_CUT", "Cut"},
|
||||
{"SAMPLE_COPY", "Copy"},
|
||||
{"SAMPLE_PASTE", "Paste"},
|
||||
{"SAMPLE_PASTE_REPLACE", "Paste replace"},
|
||||
{"SAMPLE_PASTE_MIX", "Paste mix"},
|
||||
{"SAMPLE_SELECT_ALL", "Select all"},
|
||||
{"SAMPLE_RESIZE", "Resize"},
|
||||
{"SAMPLE_RESAMPLE", "Resample"},
|
||||
{"SAMPLE_AMPLIFY", "Amplify"},
|
||||
{"SAMPLE_NORMALIZE", "Normalize"},
|
||||
{"SAMPLE_FADE_IN", "Fade in"},
|
||||
{"SAMPLE_FADE_OUT", "Fade out"},
|
||||
{"SAMPLE_SILENCE", "Apply silence"},
|
||||
{"SAMPLE_INSERT", "Insert silence"},
|
||||
{"SAMPLE_DELETE", "Delete"},
|
||||
{"SAMPLE_TRIM", "Trim"},
|
||||
{"SAMPLE_REVERSE", "Reverse"},
|
||||
{"SAMPLE_INVERT", "Invert"},
|
||||
{"SAMPLE_SIGN", "Signed/unsigned exchange"},
|
||||
{"SAMPLE_FILTER", "Apply filter"},
|
||||
{"SAMPLE_PREVIEW", "Preview sample"},
|
||||
{"SAMPLE_STOP_PREVIEW", "Stop sample preview"},
|
||||
{"SAMPLE_ZOOM_IN", "Zoom in"},
|
||||
{"SAMPLE_ZOOM_OUT", "Zoom out"},
|
||||
{"SAMPLE_ZOOM_AUTO", "Toggle auto-zoom"},
|
||||
{"SAMPLE_MAX", ""},
|
||||
D("SAMPLE_LIST_MIN", "---Sample list", NOT_AN_ACTION),
|
||||
D("SAMPLE_LIST_ADD", "Add", SDLK_INSERT),
|
||||
D("SAMPLE_LIST_DUPLICATE", "Duplicate", FURKMOD_CMD|SDLK_d),
|
||||
D("SAMPLE_LIST_OPEN", "Open", 0),
|
||||
D("SAMPLE_LIST_SAVE", "Save", 0),
|
||||
D("SAMPLE_LIST_MOVE_UP", "Move up", FURKMOD_SHIFT|SDLK_UP),
|
||||
D("SAMPLE_LIST_MOVE_DOWN", "Move down", FURKMOD_SHIFT|SDLK_DOWN),
|
||||
D("SAMPLE_LIST_DELETE", "Delete", 0),
|
||||
D("SAMPLE_LIST_EDIT", "Edit", FURKMOD_SHIFT|SDLK_RETURN),
|
||||
D("SAMPLE_LIST_UP", "Cursor up", SDLK_UP),
|
||||
D("SAMPLE_LIST_DOWN", "Cursor down", SDLK_DOWN),
|
||||
D("SAMPLE_LIST_PREVIEW", "Preview", 0),
|
||||
D("SAMPLE_LIST_STOP_PREVIEW", "Stop preview", 0),
|
||||
D("SAMPLE_LIST_MAX", "", NOT_AN_ACTION),
|
||||
|
||||
{"ORDERS_MIN", "---Orders"},
|
||||
{"ORDERS_UP", "Previous order"},
|
||||
{"ORDERS_DOWN", "Next order"},
|
||||
{"ORDERS_LEFT", "Cursor left"},
|
||||
{"ORDERS_RIGHT", "Cursor right"},
|
||||
{"ORDERS_INCREASE", "Increase value"},
|
||||
{"ORDERS_DECREASE", "Decrease value"},
|
||||
{"ORDERS_EDIT_MODE", "Switch edit mode"},
|
||||
{"ORDERS_LINK", "Toggle alter entire row"},
|
||||
{"ORDERS_ADD", "Add"},
|
||||
{"ORDERS_DUPLICATE", "Duplicate"},
|
||||
{"ORDERS_DEEP_CLONE", "Deep clone"},
|
||||
{"ORDERS_DUPLICATE_END", "Duplicate to end of song"},
|
||||
{"ORDERS_DEEP_CLONE_END", "Deep clone to end of song"},
|
||||
{"ORDERS_REMOVE", "Remove"},
|
||||
{"ORDERS_MOVE_UP", "Move up"},
|
||||
{"ORDERS_MOVE_DOWN", "Move down"},
|
||||
{"ORDERS_REPLAY", "Replay"},
|
||||
{"ORDERS_MAX", ""},
|
||||
D("SAMPLE_MIN", "---Sample editor", NOT_AN_ACTION),
|
||||
D("SAMPLE_SELECT", "Edit mode: Select", FURKMOD_SHIFT|SDLK_i),
|
||||
D("SAMPLE_DRAW", "Edit mode: Draw", FURKMOD_SHIFT|SDLK_d),
|
||||
D("SAMPLE_CUT", "Cut", FURKMOD_CMD|SDLK_x),
|
||||
D("SAMPLE_COPY", "Copy", FURKMOD_CMD|SDLK_c),
|
||||
D("SAMPLE_PASTE", "Paste", FURKMOD_CMD|SDLK_v),
|
||||
D("SAMPLE_PASTE_REPLACE", "Paste replace", FURKMOD_CMD|FURKMOD_SHIFT|SDLK_v),
|
||||
D("SAMPLE_PASTE_MIX", "Paste mix", FURKMOD_CMD|FURKMOD_ALT|SDLK_v),
|
||||
D("SAMPLE_SELECT_ALL", "Select all", FURKMOD_CMD|SDLK_a),
|
||||
D("SAMPLE_RESIZE", "Resize", FURKMOD_CMD|SDLK_r),
|
||||
D("SAMPLE_RESAMPLE", "Resample", FURKMOD_CMD|SDLK_e),
|
||||
D("SAMPLE_AMPLIFY", "Amplify", FURKMOD_CMD|SDLK_b),
|
||||
D("SAMPLE_NORMALIZE", "Normalize", FURKMOD_CMD|SDLK_n),
|
||||
D("SAMPLE_FADE_IN", "Fade in", FURKMOD_CMD|SDLK_i),
|
||||
D("SAMPLE_FADE_OUT", "Fade out", FURKMOD_CMD|SDLK_o),
|
||||
D("SAMPLE_SILENCE", "Apply silence", FURKMOD_SHIFT|SDLK_DELETE),
|
||||
D("SAMPLE_INSERT", "Insert silence", SDLK_INSERT),
|
||||
D("SAMPLE_DELETE", "Delete", SDLK_DELETE),
|
||||
D("SAMPLE_TRIM", "Trim", FURKMOD_CMD|SDLK_DELETE),
|
||||
D("SAMPLE_REVERSE", "Reverse", FURKMOD_CMD|SDLK_t),
|
||||
D("SAMPLE_INVERT", "Invert", FURKMOD_CMD|FURKMOD_SHIFT|SDLK_t),
|
||||
D("SAMPLE_SIGN", "Signed/unsigned exchange", FURKMOD_CMD|SDLK_u),
|
||||
D("SAMPLE_FILTER", "Apply filter", FURKMOD_CMD|SDLK_f),
|
||||
D("SAMPLE_PREVIEW", "Preview sample", 0),
|
||||
D("SAMPLE_STOP_PREVIEW", "Stop sample preview", 0),
|
||||
D("SAMPLE_ZOOM_IN", "Zoom in", FURKMOD_CMD|SDLK_EQUALS),
|
||||
D("SAMPLE_ZOOM_OUT", "Zoom out", FURKMOD_CMD|SDLK_MINUS),
|
||||
D("SAMPLE_ZOOM_AUTO", "Toggle auto-zoom", FURKMOD_CMD|SDLK_0),
|
||||
D("SAMPLE_MAX", "", NOT_AN_ACTION),
|
||||
|
||||
D("ORDERS_MIN", "---Orders", NOT_AN_ACTION),
|
||||
D("ORDERS_UP", "Previous order", SDLK_UP),
|
||||
D("ORDERS_DOWN", "Next order", SDLK_DOWN),
|
||||
D("ORDERS_LEFT", "Cursor left", SDLK_LEFT),
|
||||
D("ORDERS_RIGHT", "Cursor right", SDLK_RIGHT),
|
||||
D("ORDERS_INCREASE", "Increase value", 0),
|
||||
D("ORDERS_DECREASE", "Decrease value", 0),
|
||||
D("ORDERS_EDIT_MODE", "Switch edit mode", 0),
|
||||
D("ORDERS_LINK", "Toggle alter entire row", FURKMOD_CMD|SDLK_l),
|
||||
D("ORDERS_ADD", "Add", SDLK_INSERT),
|
||||
D("ORDERS_DUPLICATE", "Duplicate", FURKMOD_CMD|SDLK_d),
|
||||
D("ORDERS_DEEP_CLONE", "Deep clone", FURKMOD_CMD|FURKMOD_SHIFT|SDLK_d),
|
||||
D("ORDERS_DUPLICATE_END", "Duplicate to end of song", FURKMOD_CMD|SDLK_e),
|
||||
D("ORDERS_DEEP_CLONE_END", "Deep clone to end of song", FURKMOD_CMD|FURKMOD_SHIFT|SDLK_e),
|
||||
D("ORDERS_REMOVE", "Remove", SDLK_DELETE),
|
||||
D("ORDERS_MOVE_UP", "Move up", FURKMOD_SHIFT|SDLK_UP),
|
||||
D("ORDERS_MOVE_DOWN", "Move down", FURKMOD_SHIFT|SDLK_DOWN),
|
||||
D("ORDERS_REPLAY", "Replay", 0),
|
||||
D("ORDERS_MAX", "", NOT_AN_ACTION),
|
||||
};
|
||||
#undef D
|
||||
|
||||
// define systems.
|
||||
const int availableSystems[]={
|
||||
|
|
|
@ -19,6 +19,14 @@
|
|||
|
||||
// guiConst: constants used in the GUI like arrays, strings and other stuff
|
||||
|
||||
struct FurnaceGUIActionDef {
|
||||
const char* name;
|
||||
const char* friendlyName;
|
||||
int defaultBind;
|
||||
FurnaceGUIActionDef(const char* n, const char* fn, int db):
|
||||
name(n), friendlyName(fn), defaultBind(db) {}
|
||||
};
|
||||
|
||||
extern const int opOrder[4];
|
||||
extern const char* noteNames[180];
|
||||
extern const char* noteNamesG[180];
|
||||
|
@ -27,6 +35,6 @@ extern const char* insTypes[];
|
|||
extern const char* sampleDepths[17];
|
||||
extern const char* resampleStrats[];
|
||||
extern const int availableSystems[];
|
||||
extern const char* guiActions[][2];
|
||||
extern const FurnaceGUIActionDef guiActions[];
|
||||
extern const int altValues[24];
|
||||
extern const int vgmVersions[6];
|
|
@ -165,7 +165,7 @@ bool MIDIMap::read(String path) {
|
|||
|
||||
bool foundAction=false;
|
||||
for (int i=0; i<GUI_ACTION_MAX; i++) {
|
||||
if (strcmp(bindAction,guiActions[i][0])==0) {
|
||||
if (strcmp(bindAction,guiActions[i].name)==0) {
|
||||
bind.action=i;
|
||||
foundAction=true;
|
||||
break;
|
||||
|
@ -217,7 +217,7 @@ bool MIDIMap::write(String path) {
|
|||
}
|
||||
|
||||
for (MIDIBind& i: binds) {
|
||||
if (fprintf(f,"%d %d %d %d %s\n",i.type,i.channel,i.data1,i.data2,guiActions[i.action][0])<0) {
|
||||
if (fprintf(f,"%d %d %d %d %s\n",i.type,i.channel,i.data1,i.data2,guiActions[i.action].name)<0) {
|
||||
logW("did not write MIDI mapping entirely! %s\n",strerror(errno));
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -28,12 +28,6 @@
|
|||
#include <fmt/printf.h>
|
||||
#include <imgui.h>
|
||||
|
||||
#ifdef __APPLE__
|
||||
#define FURKMOD_CMD FURKMOD_META
|
||||
#else
|
||||
#define FURKMOD_CMD FURKMOD_CTRL
|
||||
#endif
|
||||
|
||||
#define DEFAULT_NOTE_KEYS "5:7;6:4;7:3;8:16;10:6;11:8;12:24;13:10;16:11;17:9;18:26;19:28;20:12;21:17;22:1;23:19;24:23;25:5;26:14;27:2;28:21;29:0;30:100;31:13;32:15;34:18;35:20;36:22;38:25;39:27;43:100;46:101;47:29;48:31;53:102;"
|
||||
|
||||
const char* mainFonts[]={
|
||||
|
@ -165,7 +159,7 @@ const char* specificControls[18]={
|
|||
#define UI_KEYBIND_CONFIG(what) \
|
||||
ImGui::TableNextRow(); \
|
||||
ImGui::TableNextColumn(); \
|
||||
ImGui::TextUnformatted(guiActions[what][1]); \
|
||||
ImGui::TextUnformatted(guiActions[what].friendlyName); \
|
||||
ImGui::TableNextColumn(); \
|
||||
if (ImGui::Button(fmt::sprintf("%s##KC_" #what,(bindSetPending && bindSetTarget==what)?"Press key...":getKeyName(actionKeys[what])).c_str())) { \
|
||||
promptKey(what); \
|
||||
|
@ -586,16 +580,16 @@ void FurnaceGUI::drawSettings() {
|
|||
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
if (ImGui::BeginCombo("##BAction",(bind.action==0)?"--none--":guiActions[bind.action][1])) {
|
||||
if (ImGui::BeginCombo("##BAction",(bind.action==0)?"--none--":guiActions[bind.action].friendlyName)) {
|
||||
if (ImGui::Selectable("--none--",bind.action==0)) {
|
||||
bind.action=0;
|
||||
}
|
||||
for (int j=0; j<GUI_ACTION_MAX; j++) {
|
||||
if (strcmp(guiActions[j][1],"")==0) continue;
|
||||
if (strstr(guiActions[j][1],"---")==guiActions[j][1]) {
|
||||
ImGui::TextUnformatted(guiActions[j][1]);
|
||||
if (strcmp(guiActions[j].friendlyName,"")==0) continue;
|
||||
if (strstr(guiActions[j].friendlyName,"---")==guiActions[j].friendlyName) {
|
||||
ImGui::TextUnformatted(guiActions[j].friendlyName);
|
||||
} else {
|
||||
snprintf(bindID,1024,"%s##BA_%d",guiActions[j][1],j);
|
||||
snprintf(bindID,1024,"%s##BA_%d",guiActions[j].friendlyName,j);
|
||||
if (ImGui::Selectable(bindID,bind.action==j)) {
|
||||
bind.action=j;
|
||||
}
|
||||
|
@ -1168,6 +1162,10 @@ void FurnaceGUI::drawSettings() {
|
|||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_CUT);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_COPY);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_PASTE);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_PASTE_MIX);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_PASTE_MIX_BG);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_PASTE_FLOOD);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_PASTE_OVERFLOW);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_CURSOR_UP);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_CURSOR_DOWN);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_CURSOR_LEFT);
|
||||
|
@ -1203,6 +1201,15 @@ void FurnaceGUI::drawSettings() {
|
|||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_COLLAPSE);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_INCREASE_COLUMNS);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_DECREASE_COLUMNS);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_INTERPOLATE);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_FADE);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_INVERT_VALUES);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_FLIP_SELECTION);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_COLLAPSE_ROWS);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_EXPAND_ROWS);
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_PAT_LATCH);
|
||||
|
||||
// TODO: collapse/expand pattern and song
|
||||
|
||||
KEYBIND_CONFIG_END;
|
||||
ImGui::TreePop();
|
||||
|
@ -1337,9 +1344,6 @@ void FurnaceGUI::drawSettings() {
|
|||
ImGui::End();
|
||||
}
|
||||
|
||||
#define LOAD_KEYBIND(x,y) \
|
||||
actionKeys[x]=e->getConfInt("keybind_" #x,y);
|
||||
|
||||
#define clampSetting(x,minV,maxV) \
|
||||
if (x<minV) { \
|
||||
x=minV; \
|
||||
|
@ -1458,181 +1462,10 @@ void FurnaceGUI::syncSettings() {
|
|||
clampSetting(settings.frameBorders,0,1);
|
||||
|
||||
// keybinds
|
||||
LOAD_KEYBIND(GUI_ACTION_OPEN,FURKMOD_CMD|SDLK_o);
|
||||
LOAD_KEYBIND(GUI_ACTION_OPEN_BACKUP,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAVE,FURKMOD_CMD|SDLK_s);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAVE_AS,FURKMOD_CMD|FURKMOD_SHIFT|SDLK_s);
|
||||
LOAD_KEYBIND(GUI_ACTION_UNDO,FURKMOD_CMD|SDLK_z);
|
||||
LOAD_KEYBIND(GUI_ACTION_REDO,FURKMOD_CMD|SDLK_y);
|
||||
LOAD_KEYBIND(GUI_ACTION_PLAY_TOGGLE,SDLK_RETURN);
|
||||
LOAD_KEYBIND(GUI_ACTION_PLAY,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_STOP,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PLAY_REPEAT,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PLAY_CURSOR,FURKMOD_SHIFT|SDLK_RETURN);
|
||||
LOAD_KEYBIND(GUI_ACTION_STEP_ONE,FURKMOD_CMD|SDLK_RETURN);
|
||||
LOAD_KEYBIND(GUI_ACTION_OCTAVE_UP,SDLK_KP_MULTIPLY);
|
||||
LOAD_KEYBIND(GUI_ACTION_OCTAVE_DOWN,SDLK_KP_DIVIDE);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_UP,FURKMOD_SHIFT|SDLK_KP_DIVIDE);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_DOWN,FURKMOD_SHIFT|SDLK_KP_MULTIPLY);
|
||||
LOAD_KEYBIND(GUI_ACTION_STEP_UP,FURKMOD_CMD|SDLK_KP_MULTIPLY);
|
||||
LOAD_KEYBIND(GUI_ACTION_STEP_DOWN,FURKMOD_CMD|SDLK_KP_DIVIDE);
|
||||
LOAD_KEYBIND(GUI_ACTION_TOGGLE_EDIT,SDLK_SPACE);
|
||||
LOAD_KEYBIND(GUI_ACTION_METRONOME,FURKMOD_CMD|SDLK_m);
|
||||
LOAD_KEYBIND(GUI_ACTION_REPEAT_PATTERN,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_FOLLOW_ORDERS,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_FOLLOW_PATTERN,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PANIC,SDLK_F12);
|
||||
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_EDIT_CONTROLS,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_ORDERS,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_INS_LIST,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_INS_EDIT,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_SONG_INFO,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_PATTERN,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_WAVE_LIST,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_WAVE_EDIT,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_SAMPLE_LIST,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_SAMPLE_EDIT,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_ABOUT,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_SETTINGS,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_MIXER,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_DEBUG,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_OSCILLOSCOPE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_VOL_METER,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_STATS,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_COMPAT_FLAGS,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_PIANO,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_NOTES,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_CHANNELS,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WINDOW_REGISTER_VIEW,0);
|
||||
|
||||
LOAD_KEYBIND(GUI_ACTION_COLLAPSE_WINDOW,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_CLOSE_WINDOW,FURKMOD_SHIFT|SDLK_ESCAPE);
|
||||
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_NOTE_UP,FURKMOD_CMD|SDLK_F2);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_NOTE_DOWN,FURKMOD_CMD|SDLK_F1);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_OCTAVE_UP,FURKMOD_CMD|SDLK_F4);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_OCTAVE_DOWN,FURKMOD_CMD|SDLK_F3);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECT_ALL,FURKMOD_CMD|SDLK_a);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CUT,FURKMOD_CMD|SDLK_x);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_COPY,FURKMOD_CMD|SDLK_c);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_PASTE,FURKMOD_CMD|SDLK_v);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_UP,SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_DOWN,SDLK_DOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_LEFT,SDLK_LEFT);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_RIGHT,SDLK_RIGHT);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_UP_ONE,FURKMOD_SHIFT|SDLK_HOME);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_DOWN_ONE,FURKMOD_SHIFT|SDLK_END);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_LEFT_CHANNEL,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_RIGHT_CHANNEL,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_NEXT_CHANNEL,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_PREVIOUS_CHANNEL,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_BEGIN,SDLK_HOME);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_END,SDLK_END);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_UP_COARSE,SDLK_PAGEUP);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_CURSOR_DOWN_COARSE,SDLK_PAGEDOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_UP,FURKMOD_SHIFT|SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_DOWN,FURKMOD_SHIFT|SDLK_DOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_LEFT,FURKMOD_SHIFT|SDLK_LEFT);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_RIGHT,FURKMOD_SHIFT|SDLK_RIGHT);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_UP_ONE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_DOWN_ONE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_BEGIN,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_END,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_UP_COARSE,FURKMOD_SHIFT|SDLK_PAGEUP);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SELECTION_DOWN_COARSE,FURKMOD_SHIFT|SDLK_PAGEDOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_DELETE,SDLK_DELETE);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_PULL_DELETE,SDLK_BACKSPACE);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_INSERT,SDLK_INSERT);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_MUTE_CURSOR,FURKMOD_ALT|SDLK_F9);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_SOLO_CURSOR,FURKMOD_ALT|SDLK_F10);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_UNMUTE_ALL,FURKMOD_ALT|FURKMOD_SHIFT|SDLK_F9);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_NEXT_ORDER,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_PREV_ORDER,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_COLLAPSE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_INCREASE_COLUMNS,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_PAT_DECREASE_COLUMNS,0);
|
||||
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_ADD,SDLK_INSERT);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_DUPLICATE,FURKMOD_CMD|SDLK_d);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_OPEN,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_SAVE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_MOVE_UP,FURKMOD_SHIFT|SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_MOVE_DOWN,FURKMOD_SHIFT|SDLK_DOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_DELETE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_EDIT,FURKMOD_SHIFT|SDLK_RETURN);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_UP,SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_INS_LIST_DOWN,SDLK_DOWN);
|
||||
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_ADD,SDLK_INSERT);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_DUPLICATE,FURKMOD_CMD|SDLK_d);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_OPEN,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_SAVE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_MOVE_UP,FURKMOD_SHIFT|SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_MOVE_DOWN,FURKMOD_SHIFT|SDLK_DOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_DELETE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_EDIT,FURKMOD_SHIFT|SDLK_RETURN);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_UP,SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_WAVE_LIST_DOWN,SDLK_DOWN);
|
||||
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_ADD,SDLK_INSERT);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_DUPLICATE,FURKMOD_CMD|SDLK_d);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_OPEN,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_SAVE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_MOVE_UP,FURKMOD_SHIFT|SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_MOVE_DOWN,FURKMOD_SHIFT|SDLK_DOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_DELETE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_EDIT,FURKMOD_SHIFT|SDLK_RETURN);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_UP,SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_DOWN,SDLK_DOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_PREVIEW,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_LIST_STOP_PREVIEW,0);
|
||||
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_SELECT,FURKMOD_SHIFT|SDLK_i);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_DRAW,FURKMOD_SHIFT|SDLK_d);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_CUT,FURKMOD_CMD|SDLK_x);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_COPY,FURKMOD_CMD|SDLK_c);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_PASTE,FURKMOD_CMD|SDLK_v);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_PASTE_REPLACE,FURKMOD_CMD|FURKMOD_SHIFT|SDLK_v);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_PASTE_MIX,FURKMOD_CMD|FURKMOD_ALT|SDLK_v);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_SELECT_ALL,FURKMOD_CMD|SDLK_a);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_RESIZE,FURKMOD_CMD|SDLK_r);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_RESAMPLE,FURKMOD_CMD|SDLK_e);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_AMPLIFY,FURKMOD_CMD|SDLK_b);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_NORMALIZE,FURKMOD_CMD|SDLK_n);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_FADE_IN,FURKMOD_CMD|SDLK_i);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_FADE_OUT,FURKMOD_CMD|SDLK_o);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_INSERT,SDLK_INSERT);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_SILENCE,FURKMOD_SHIFT|SDLK_DELETE);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_DELETE,SDLK_DELETE);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_TRIM,FURKMOD_CMD|SDLK_DELETE);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_REVERSE,FURKMOD_CMD|SDLK_t);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_INVERT,FURKMOD_CMD|FURKMOD_SHIFT|SDLK_t);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_SIGN,FURKMOD_CMD|SDLK_u);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_FILTER,FURKMOD_CMD|SDLK_f);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_PREVIEW,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_STOP_PREVIEW,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_ZOOM_IN,FURKMOD_CMD|SDLK_EQUALS);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_ZOOM_OUT,FURKMOD_CMD|SDLK_MINUS);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_ZOOM_AUTO,FURKMOD_CMD|SDLK_0);
|
||||
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_UP,SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_DOWN,SDLK_DOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_LEFT,SDLK_LEFT);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_RIGHT,SDLK_RIGHT);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_INCREASE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_DECREASE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_EDIT_MODE,0);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_LINK,FURKMOD_CMD|SDLK_l);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_ADD,SDLK_INSERT);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_DUPLICATE,FURKMOD_CMD|SDLK_d);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_DEEP_CLONE,FURKMOD_CMD|FURKMOD_SHIFT|SDLK_d);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_DUPLICATE_END,FURKMOD_CMD|SDLK_e);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_DEEP_CLONE_END,FURKMOD_CMD|FURKMOD_SHIFT|SDLK_e);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_REMOVE,SDLK_DELETE);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_MOVE_UP,FURKMOD_SHIFT|SDLK_UP);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_MOVE_DOWN,FURKMOD_SHIFT|SDLK_DOWN);
|
||||
LOAD_KEYBIND(GUI_ACTION_ORDERS_REPLAY,0);
|
||||
for (int i=0; i<GUI_ACTION_MAX; i++) {
|
||||
if (guiActions[i].defaultBind==-1) continue; // not a bind
|
||||
actionKeys[i]=e->getConfInt(String("keybind_GUI_ACTION_")+String(guiActions[i].name),guiActions[i].defaultBind);
|
||||
}
|
||||
|
||||
decodeKeyMap(noteKeys,e->getConfString("noteKeys",DEFAULT_NOTE_KEYS));
|
||||
|
||||
|
@ -1804,181 +1637,11 @@ void FurnaceGUI::commitSettings() {
|
|||
PUT_UI_COLOR(GUI_COLOR_EE_VALUE);
|
||||
PUT_UI_COLOR(GUI_COLOR_PLAYBACK_STAT);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_OPEN);
|
||||
SAVE_KEYBIND(GUI_ACTION_OPEN_BACKUP);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAVE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAVE_AS);
|
||||
SAVE_KEYBIND(GUI_ACTION_UNDO);
|
||||
SAVE_KEYBIND(GUI_ACTION_REDO);
|
||||
SAVE_KEYBIND(GUI_ACTION_PLAY_TOGGLE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PLAY);
|
||||
SAVE_KEYBIND(GUI_ACTION_STOP);
|
||||
SAVE_KEYBIND(GUI_ACTION_PLAY_REPEAT);
|
||||
SAVE_KEYBIND(GUI_ACTION_PLAY_CURSOR);
|
||||
SAVE_KEYBIND(GUI_ACTION_STEP_ONE);
|
||||
SAVE_KEYBIND(GUI_ACTION_OCTAVE_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_OCTAVE_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_STEP_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_STEP_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_TOGGLE_EDIT);
|
||||
SAVE_KEYBIND(GUI_ACTION_METRONOME);
|
||||
SAVE_KEYBIND(GUI_ACTION_REPEAT_PATTERN);
|
||||
SAVE_KEYBIND(GUI_ACTION_FOLLOW_ORDERS);
|
||||
SAVE_KEYBIND(GUI_ACTION_FOLLOW_PATTERN);
|
||||
SAVE_KEYBIND(GUI_ACTION_PANIC);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_EDIT_CONTROLS);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_ORDERS);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_INS_LIST);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_INS_EDIT);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_SONG_INFO);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_PATTERN);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_WAVE_LIST);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_WAVE_EDIT);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_SAMPLE_LIST);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_SAMPLE_EDIT);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_ABOUT);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_SETTINGS);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_MIXER);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_DEBUG);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_OSCILLOSCOPE);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_VOL_METER);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_STATS);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_COMPAT_FLAGS);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_PIANO);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_NOTES);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_CHANNELS);
|
||||
SAVE_KEYBIND(GUI_ACTION_WINDOW_REGISTER_VIEW);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_COLLAPSE_WINDOW);
|
||||
SAVE_KEYBIND(GUI_ACTION_CLOSE_WINDOW);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_NOTE_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_NOTE_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_OCTAVE_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_OCTAVE_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECT_ALL);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CUT);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_COPY);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_PASTE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_LEFT);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_RIGHT);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_UP_ONE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_DOWN_ONE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_LEFT_CHANNEL);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_RIGHT_CHANNEL);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_NEXT_CHANNEL);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_PREVIOUS_CHANNEL);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_BEGIN);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_END);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_UP_COARSE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_CURSOR_DOWN_COARSE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_LEFT);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_RIGHT);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_UP_ONE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_DOWN_ONE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_BEGIN);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_END);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_UP_COARSE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SELECTION_DOWN_COARSE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_DELETE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_PULL_DELETE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_INSERT);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_MUTE_CURSOR);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_SOLO_CURSOR);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_UNMUTE_ALL);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_NEXT_ORDER);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_PREV_ORDER);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_COLLAPSE);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_INCREASE_COLUMNS);
|
||||
SAVE_KEYBIND(GUI_ACTION_PAT_DECREASE_COLUMNS);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_ADD);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_DUPLICATE);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_OPEN);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_SAVE);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_MOVE_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_MOVE_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_DELETE);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_EDIT);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_INS_LIST_DOWN);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_ADD);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_DUPLICATE);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_OPEN);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_SAVE);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_MOVE_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_MOVE_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_DELETE);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_EDIT);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_WAVE_LIST_DOWN);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_ADD);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_DUPLICATE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_OPEN);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_SAVE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_MOVE_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_MOVE_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_DELETE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_EDIT);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_PREVIEW);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_LIST_STOP_PREVIEW);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_SELECT);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_DRAW);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_CUT);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_COPY);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_PASTE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_PASTE_REPLACE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_PASTE_MIX);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_SELECT_ALL);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_RESIZE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_RESAMPLE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_AMPLIFY);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_NORMALIZE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_FADE_IN);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_FADE_OUT);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_INSERT);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_SILENCE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_DELETE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_TRIM);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_REVERSE);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_INVERT);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_SIGN);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_FILTER);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_PREVIEW);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_STOP_PREVIEW);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_ZOOM_IN);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_ZOOM_OUT);
|
||||
SAVE_KEYBIND(GUI_ACTION_SAMPLE_ZOOM_AUTO);
|
||||
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_LEFT);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_RIGHT);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_INCREASE);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_DECREASE);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_EDIT_MODE);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_LINK);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_ADD);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_DUPLICATE);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_DEEP_CLONE);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_DUPLICATE_END);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_DEEP_CLONE_END);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_REMOVE);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_MOVE_UP);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_MOVE_DOWN);
|
||||
SAVE_KEYBIND(GUI_ACTION_ORDERS_REPLAY);
|
||||
// keybinds
|
||||
for (int i=0; i<GUI_ACTION_MAX; i++) {
|
||||
if (guiActions[i].defaultBind==-1) continue; // not a bind
|
||||
e->setConf(String("keybind_GUI_ACTION_")+String(guiActions[i].name),actionKeys[i]);
|
||||
}
|
||||
|
||||
parseKeybinds();
|
||||
|
||||
|
|
Loading…
Reference in New Issue