Skip to content

Commit

Permalink
Instrument: Don"t switch current instrument automatically when draggi…
Browse files Browse the repository at this point in the history
…ng horizontal scrollbar in editor, when current instrument is locked. (Fix for #1412)
  • Loading branch information
kjetil_matheussen committed Feb 25, 2024
1 parent b520d2d commit 822cb9a
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 15 deletions.
4 changes: 2 additions & 2 deletions api/api_mouse.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -539,7 +539,7 @@ void setTrackSliderPos(float pos, int blocknum, int windownum){
break;

if (window->wblock==wblock)
cursorRight(window->l.num);
cursorRight(window->l.num, false);

if (track==window->curr_track && subtrack==window->curr_track_sub)
break;
Expand All @@ -564,7 +564,7 @@ void setTrackSliderPos(float pos, int blocknum, int windownum){
break;

if (window->wblock==wblock)
cursorLeft(window->l.num);
cursorLeft(window->l.num, false);

if (track==window->curr_track && subtrack==window->curr_track_sub)
break;
Expand Down
16 changes: 8 additions & 8 deletions api/api_navigate.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -594,7 +594,7 @@ static int get_next_legal_track(int tracknum, int num_tracks, int windownum){
}


void cursorRight(int windownum){
void cursorRight(int windownum, bool switch_instrument_even_if_locked){
struct Tracker_Windows *window=getWindowFromNum(windownum);
if(window==NULL) return;

Expand Down Expand Up @@ -637,10 +637,10 @@ void cursorRight(int windownum){
if (!canCursorMoveToTrack(tracknum, subtracknum, -1, windownum))
return;

setCurrentTrack(tracknum, subtracknum, windownum, true);
setCurrentTrack(tracknum, subtracknum, windownum, switch_instrument_even_if_locked);
}

void cursorNextTrack(int windownum){
void cursorNextTrack(int windownum, bool switch_instrument_even_if_locked){
struct Tracker_Windows *window=getWindowFromNum(windownum);
if(window==NULL) return;

Expand Down Expand Up @@ -687,7 +687,7 @@ void cursorNextTrack(int windownum){
subtracknum = num_subtracks -1;
}

setCurrentTrack(tracknum, subtracknum, windownum, true);
setCurrentTrack(tracknum, subtracknum, windownum, switch_instrument_even_if_locked);
}

static int get_previous_legal_track(int tracknum, int windownum){
Expand All @@ -702,7 +702,7 @@ static int get_previous_legal_track(int tracknum, int windownum){
}
}

void cursorLeft(int windownum){
void cursorLeft(int windownum, bool switch_instrument_even_if_locked){
struct Tracker_Windows *window=getWindowFromNum(windownum);
if(window==NULL) return;

Expand Down Expand Up @@ -776,10 +776,10 @@ void cursorLeft(int windownum){
if (!canCursorMoveToTrack(tracknum, subtracknum, -1, windownum))
return;

setCurrentTrack(tracknum, subtracknum, windownum, true);
setCurrentTrack(tracknum, subtracknum, windownum, switch_instrument_even_if_locked);
}

void cursorPrevTrack(int windownum){
void cursorPrevTrack(int windownum, bool switch_instrument_even_if_locked){
struct Tracker_Windows *window=getWindowFromNum(windownum);
if(window==NULL) return;

Expand Down Expand Up @@ -823,7 +823,7 @@ void cursorPrevTrack(int windownum){
subtracknum = num_subtracks -1;
}

setCurrentTrack(tracknum, subtracknum, windownum, true);
setCurrentTrack(tracknum, subtracknum, windownum, switch_instrument_even_if_locked);
}


Expand Down
8 changes: 4 additions & 4 deletions api/protos.conf
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,10 @@ int getLeftmostCursorTrack | int blocknum ? -1 | int windownum ? -1 # Currently
#const_char* getSubtrackType | int subtracknum ? -2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
#int getSubtrackTypeNum | int subtracknum ? -2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

cursorRight | int windownum ? -1
cursorNextTrack | int windownum ? -1
cursorLeft | int windownum ? -1
cursorPrevTrack | int windownum ? -1
cursorRight | int windownum ? -1 | bool switch_instrument_even_if_locked ? true
cursorNextTrack | int windownum ? -1 | bool switch_instrument_even_if_locked ? true
cursorLeft | int windownum ? -1 | bool switch_instrument_even_if_locked ? true
cursorPrevTrack | int windownum ? -1 | bool switch_instrument_even_if_locked ? true

int currentBlock | int windownum ? -1
int currentTrack | int blocknum ? -1 | int windownum ? -1
Expand Down
2 changes: 1 addition & 1 deletion common/wtracks.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -738,7 +738,7 @@ void SwapTrack_CurrPos(

window->must_redraw = true;

cursorNextTrack(window->l.num);
cursorNextTrack(window->l.num, false);
}


Expand Down

0 comments on commit 822cb9a

Please sign in to comment.