GUI: finally implement "don't scroll when moving c

ursor" setting
This commit is contained in:
tildearrow 2022-04-29 23:53:15 -05:00
parent 2e8634626d
commit d79e5d77a7
3 changed files with 7 additions and 5 deletions

View file

@ -29,7 +29,6 @@
- try to find out why does VSlider not accept keyboard input - try to find out why does VSlider not accept keyboard input
- finish lock layout - finish lock layout
- if macros have release, note off should release them - if macros have release, note off should release them
- add "don't scroll on cursor movement" option
- add ability to select entire row when clicking on row number - add ability to select entire row when clicking on row number
- store edit/followOrders/followPattern state in config - store edit/followOrders/followPattern state in config
- add ability to select a column by double clicking - add ability to select a column by double clicking
@ -38,5 +37,4 @@
- settings: OK/Cancel buttons should be always visible - settings: OK/Cancel buttons should be always visible
- Apply button in settings - Apply button in settings
- better FM chip names (number and codename) - better FM chip names (number and codename)
- find and replace - find and replace
- precise panning effects (80xx linear, 81xx/82xx per-channel)

View file

@ -193,7 +193,9 @@ void FurnaceGUI::moveCursor(int x, int y, bool select) {
selStart=cursor; selStart=cursor;
} }
selEnd=cursor; selEnd=cursor;
updateScroll(cursor.y); if (!settings.cursorMoveNoScroll) {
updateScroll(cursor.y);
}
e->setMidiBaseChan(cursor.xCoarse); e->setMidiBaseChan(cursor.xCoarse);
} }

View file

@ -2350,7 +2350,9 @@ bool FurnaceGUI::loop() {
demandScrollX=true; demandScrollX=true;
if (cursor.xCoarse==selStart.xCoarse && cursor.xFine==selStart.xFine && cursor.y==selStart.y && if (cursor.xCoarse==selStart.xCoarse && cursor.xFine==selStart.xFine && cursor.y==selStart.y &&
cursor.xCoarse==selEnd.xCoarse && cursor.xFine==selEnd.xFine && cursor.y==selEnd.y) { cursor.xCoarse==selEnd.xCoarse && cursor.xFine==selEnd.xFine && cursor.y==selEnd.y) {
updateScroll(cursor.y); if (!settings.cursorMoveNoScroll) {
updateScroll(cursor.y);
}
} }
} }
break; break;