From f997713058282dba1ef7d8210244729c25a7dd18 Mon Sep 17 00:00:00 2001 From: Jon Williams Date: Sun, 4 Feb 2018 17:49:45 -0500 Subject: [PATCH] Allow custom Knob sensitivity --- include/app.hpp | 2 ++ src/app/Knob.cpp | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/include/app.hpp b/include/app.hpp index 5acb6bef..18eab8a0 100644 --- a/include/app.hpp +++ b/include/app.hpp @@ -23,6 +23,7 @@ struct SVGPanel; // A 1U module should be 15x380. Thus the width of a module should be a factor of 15. #define RACK_GRID_WIDTH 15 #define RACK_GRID_HEIGHT 380 +#define KNOB_SENSITIVITY 0.0015 static const Vec RACK_GRID_SIZE = Vec(15, 380); @@ -200,6 +201,7 @@ struct Knob : ParamWidget { /** Snap to nearest integer while dragging */ bool snap = false; float dragValue; + float sensitivity = KNOB_SENSITIVITY; void onDragStart(EventDragStart &e) override; void onDragMove(EventDragMove &e) override; void onDragEnd(EventDragEnd &e) override; diff --git a/src/app/Knob.cpp b/src/app/Knob.cpp index 4495b98e..ae8d4bb2 100644 --- a/src/app/Knob.cpp +++ b/src/app/Knob.cpp @@ -7,7 +7,6 @@ namespace rack { -#define KNOB_SENSITIVITY 0.0015 void Knob::onDragStart(EventDragStart &e) { @@ -18,7 +17,7 @@ void Knob::onDragStart(EventDragStart &e) { void Knob::onDragMove(EventDragMove &e) { // Drag slower if Mod - float delta = KNOB_SENSITIVITY * (maxValue - minValue) * -e.mouseRel.y; + float delta = sensitivity * (maxValue - minValue) * -e.mouseRel.y; if (guiIsModPressed()) delta /= 16.0; dragValue += delta;