GUI: sample editor keybinds
works
This commit is contained in:
parent
f4f91ca49e
commit
705ba4273b
9 changed files with 629 additions and 208 deletions
|
|
@ -24,6 +24,7 @@
|
|||
#include "ImGuiFileDialog.h"
|
||||
#include "IconsFontAwesome4.h"
|
||||
#include "misc/cpp/imgui_stdlib.h"
|
||||
#include <SDL_keycode.h>
|
||||
#include <SDL_scancode.h>
|
||||
#include <fmt/printf.h>
|
||||
#include <imgui.h>
|
||||
|
|
@ -865,6 +866,39 @@ void FurnaceGUI::drawSettings() {
|
|||
KEYBIND_CONFIG_END;
|
||||
ImGui::TreePop();
|
||||
}
|
||||
if (ImGui::TreeNode("Sample editor")) {
|
||||
KEYBIND_CONFIG_BEGIN("keysSampleEdit");
|
||||
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_SELECT,"Edit mode: Select");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_DRAW,"Edit mode: Draw");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_CUT,"Cut");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_COPY,"Copy");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_PASTE,"Paste");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_PASTE_REPLACE,"Paste replace");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_PASTE_MIX,"Paste mix");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_SELECT_ALL,"Select all");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_RESIZE,"Resize");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_RESAMPLE,"Resample");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_AMPLIFY,"Amplify");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_NORMALIZE,"Normalize");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_FADE_IN,"Fade in");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_FADE_OUT,"Fade out");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_SILENCE,"Apply silence");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_DELETE,"Delete");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_TRIM,"Trim");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_REVERSE,"Reverse");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_INVERT,"Invert");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_SIGN,"Signed/unsigned exchange");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_FILTER,"Apply filter");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_PREVIEW,"Preview sample");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_STOP_PREVIEW,"Stop sample preview");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_ZOOM_IN,"Zoom in");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_ZOOM_OUT,"Zoom out");
|
||||
UI_KEYBIND_CONFIG(GUI_ACTION_SAMPLE_ZOOM_AUTO,"Toggle auto-zoom");
|
||||
|
||||
KEYBIND_CONFIG_END;
|
||||
ImGui::TreePop();
|
||||
}
|
||||
ImGui::EndTabItem();
|
||||
}
|
||||
ImGui::EndTabBar();
|
||||
|
|
@ -1119,6 +1153,33 @@ void FurnaceGUI::syncSettings() {
|
|||
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_x);
|
||||
LOAD_KEYBIND(GUI_ACTION_SAMPLE_PASTE_MIX,FURKMOD_CMD|FURKMOD_ALT|SDLK_x);
|
||||
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_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);
|
||||
|
|
@ -1404,6 +1465,33 @@ void FurnaceGUI::commitSettings() {
|
|||
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_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);
|
||||
|
|
@ -1454,6 +1542,7 @@ void FurnaceGUI::parseKeybinds() {
|
|||
actionMapInsList.clear();
|
||||
actionMapWaveList.clear();
|
||||
actionMapSampleList.clear();
|
||||
actionMapSample.clear();
|
||||
actionMapOrders.clear();
|
||||
|
||||
for (int i=GUI_ACTION_GLOBAL_MIN+1; i<GUI_ACTION_GLOBAL_MAX; i++) {
|
||||
|
|
@ -1486,6 +1575,12 @@ void FurnaceGUI::parseKeybinds() {
|
|||
}
|
||||
}
|
||||
|
||||
for (int i=GUI_ACTION_SAMPLE_MIN+1; i<GUI_ACTION_SAMPLE_MAX; i++) {
|
||||
if (actionKeys[i]&FURK_MASK) {
|
||||
actionMapSample[actionKeys[i]]=i;
|
||||
}
|
||||
}
|
||||
|
||||
for (int i=GUI_ACTION_ORDERS_MIN+1; i<GUI_ACTION_ORDERS_MAX; i++) {
|
||||
if (actionKeys[i]&FURK_MASK) {
|
||||
actionMapOrders[actionKeys[i]]=i;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue