GUI: fix sample up/down actions not changing wavef
orm
This commit is contained in:
parent
6450a5323a
commit
523adfac86
|
@ -559,12 +559,14 @@ void FurnaceGUI::doAction(int what) {
|
||||||
|
|
||||||
case GUI_ACTION_SAMPLE_LIST_ADD:
|
case GUI_ACTION_SAMPLE_LIST_ADD:
|
||||||
curSample=e->addSample();
|
curSample=e->addSample();
|
||||||
|
updateSampleTex=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_DUPLICATE:
|
case GUI_ACTION_SAMPLE_LIST_DUPLICATE:
|
||||||
if (curSample>=0 && curSample<(int)e->song.sample.size()) {
|
if (curSample>=0 && curSample<(int)e->song.sample.size()) {
|
||||||
DivSample* prevSample=e->getSample(curSample);
|
DivSample* prevSample=e->getSample(curSample);
|
||||||
curSample=e->addSample();
|
curSample=e->addSample();
|
||||||
|
updateSampleTex=true;
|
||||||
e->lockEngine([this,prevSample]() {
|
e->lockEngine([this,prevSample]() {
|
||||||
DivSample* sample=e->getSample(curSample);
|
DivSample* sample=e->getSample(curSample);
|
||||||
if (sample!=NULL) {
|
if (sample!=NULL) {
|
||||||
|
@ -591,16 +593,23 @@ void FurnaceGUI::doAction(int what) {
|
||||||
if (curSample>=0 && curSample<(int)e->song.sample.size()) openFileDialog(GUI_FILE_SAMPLE_SAVE);
|
if (curSample>=0 && curSample<(int)e->song.sample.size()) openFileDialog(GUI_FILE_SAMPLE_SAVE);
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_MOVE_UP:
|
case GUI_ACTION_SAMPLE_LIST_MOVE_UP:
|
||||||
if (e->moveSampleUp(curSample)) curSample--;
|
if (e->moveSampleUp(curSample)) {
|
||||||
|
curSample--;
|
||||||
|
updateSampleTex=true;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_MOVE_DOWN:
|
case GUI_ACTION_SAMPLE_LIST_MOVE_DOWN:
|
||||||
if (e->moveSampleDown(curSample)) curSample++;
|
if (e->moveSampleDown(curSample)) {
|
||||||
|
curSample++;
|
||||||
|
updateSampleTex=true;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_DELETE:
|
case GUI_ACTION_SAMPLE_LIST_DELETE:
|
||||||
e->delSample(curSample);
|
e->delSample(curSample);
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
if (curSample>=(int)e->song.sample.size()) {
|
if (curSample>=(int)e->song.sample.size()) {
|
||||||
curSample--;
|
curSample--;
|
||||||
|
updateSampleTex=true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_EDIT:
|
case GUI_ACTION_SAMPLE_LIST_EDIT:
|
||||||
|
@ -608,9 +617,11 @@ void FurnaceGUI::doAction(int what) {
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_UP:
|
case GUI_ACTION_SAMPLE_LIST_UP:
|
||||||
if (--curSample<0) curSample=0;
|
if (--curSample<0) curSample=0;
|
||||||
|
updateSampleTex=true;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_DOWN:
|
case GUI_ACTION_SAMPLE_LIST_DOWN:
|
||||||
if (++curSample>=(int)e->song.sample.size()) curSample=((int)e->song.sample.size())-1;
|
if (++curSample>=(int)e->song.sample.size()) curSample=((int)e->song.sample.size())-1;
|
||||||
|
updateSampleTex=true;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_PREVIEW:
|
case GUI_ACTION_SAMPLE_LIST_PREVIEW:
|
||||||
e->previewSample(curSample);
|
e->previewSample(curSample);
|
||||||
|
|
Loading…
Reference in a new issue