parent
57185c6da9
commit
603249573a
|
@ -113,7 +113,7 @@ void FurnaceGUI::insListItem(int i, int dir, int asset) {
|
||||||
if (settings.insFocusesPattern && patternOpen)
|
if (settings.insFocusesPattern && patternOpen)
|
||||||
nextWindow=GUI_WINDOW_PATTERN;
|
nextWindow=GUI_WINDOW_PATTERN;
|
||||||
}
|
}
|
||||||
if (wantScrollList && curIns==i) ImGui::SetScrollHereY();
|
if (wantScrollListIns && curIns==i) ImGui::SetScrollHereY();
|
||||||
if (ImGui::IsItemHovered() && i>=0 && !mobileUI) {
|
if (ImGui::IsItemHovered() && i>=0 && !mobileUI) {
|
||||||
ImGui::PushStyleColor(ImGuiCol_Text,uiColors[GUI_COLOR_TEXT]);
|
ImGui::PushStyleColor(ImGuiCol_Text,uiColors[GUI_COLOR_TEXT]);
|
||||||
ImGui::SetTooltip("%s",insType);
|
ImGui::SetTooltip("%s",insType);
|
||||||
|
@ -183,7 +183,7 @@ void FurnaceGUI::waveListItem(int i, float* wavePreview, int dir, int asset) {
|
||||||
}
|
}
|
||||||
ImGui::PopStyleVar();
|
ImGui::PopStyleVar();
|
||||||
curPos.x+=ImGui::CalcTextSize("2222").x;
|
curPos.x+=ImGui::CalcTextSize("2222").x;
|
||||||
if (wantScrollList && curWave==i) ImGui::SetScrollHereY();
|
if (wantScrollListWave && curWave==i) ImGui::SetScrollHereY();
|
||||||
if (ImGui::IsItemHovered()) {
|
if (ImGui::IsItemHovered()) {
|
||||||
if (ImGui::IsMouseDoubleClicked(ImGuiMouseButton_Left)) {
|
if (ImGui::IsMouseDoubleClicked(ImGuiMouseButton_Left)) {
|
||||||
waveEditOpen=true;
|
waveEditOpen=true;
|
||||||
|
@ -272,7 +272,7 @@ void FurnaceGUI::sampleListItem(int i, int dir, int asset) {
|
||||||
ImGui::PopStyleColor();
|
ImGui::PopStyleColor();
|
||||||
ImGui::EndPopup();
|
ImGui::EndPopup();
|
||||||
}
|
}
|
||||||
if (wantScrollList && curSample==i) ImGui::SetScrollHereY();
|
if (wantScrollListSample && curSample==i) ImGui::SetScrollHereY();
|
||||||
ImGui::PopID();
|
ImGui::PopID();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -143,7 +143,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
curIns=-1;
|
curIns=-1;
|
||||||
}
|
}
|
||||||
wavePreviewInit=true;
|
wavePreviewInit=true;
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
updateFMPreview=true;
|
updateFMPreview=true;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_INS_DOWN:
|
case GUI_ACTION_INS_DOWN:
|
||||||
|
@ -151,7 +151,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
curIns=((int)e->song.ins.size())-1;
|
curIns=((int)e->song.ins.size())-1;
|
||||||
}
|
}
|
||||||
wavePreviewInit=true;
|
wavePreviewInit=true;
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
updateFMPreview=true;
|
updateFMPreview=true;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_STEP_UP:
|
case GUI_ACTION_STEP_UP:
|
||||||
|
@ -706,7 +706,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
e->song.ins[curIns]->esfm.op[i].outLvl=0;
|
e->song.ins[curIns]->esfm.op[i].outLvl=0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
wavePreviewInit=true;
|
wavePreviewInit=true;
|
||||||
updateFMPreview=true;
|
updateFMPreview=true;
|
||||||
|
@ -720,7 +720,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
showError("too many instruments!");
|
showError("too many instruments!");
|
||||||
} else {
|
} else {
|
||||||
(*e->song.ins[curIns])=(*e->song.ins[prevIns]);
|
(*e->song.ins[curIns])=(*e->song.ins[prevIns]);
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
wavePreviewInit=true;
|
wavePreviewInit=true;
|
||||||
updateFMPreview=true;
|
updateFMPreview=true;
|
||||||
|
@ -742,21 +742,21 @@ void FurnaceGUI::doAction(int what) {
|
||||||
case GUI_ACTION_INS_LIST_MOVE_UP:
|
case GUI_ACTION_INS_LIST_MOVE_UP:
|
||||||
if (e->moveInsUp(curIns)) {
|
if (e->moveInsUp(curIns)) {
|
||||||
curIns--;
|
curIns--;
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_INS_LIST_MOVE_DOWN:
|
case GUI_ACTION_INS_LIST_MOVE_DOWN:
|
||||||
if (e->moveInsDown(curIns)) {
|
if (e->moveInsDown(curIns)) {
|
||||||
curIns++;
|
curIns++;
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_INS_LIST_DELETE:
|
case GUI_ACTION_INS_LIST_DELETE:
|
||||||
if (curIns>=0 && curIns<(int)e->song.ins.size()) {
|
if (curIns>=0 && curIns<(int)e->song.ins.size()) {
|
||||||
e->delInstrument(curIns);
|
e->delInstrument(curIns);
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
if (curIns>=(int)e->song.ins.size()) {
|
if (curIns>=(int)e->song.ins.size()) {
|
||||||
curIns--;
|
curIns--;
|
||||||
|
@ -768,13 +768,13 @@ void FurnaceGUI::doAction(int what) {
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_INS_LIST_UP:
|
case GUI_ACTION_INS_LIST_UP:
|
||||||
if (--curIns<0) curIns=0;
|
if (--curIns<0) curIns=0;
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
wavePreviewInit=true;
|
wavePreviewInit=true;
|
||||||
updateFMPreview=true;
|
updateFMPreview=true;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_INS_LIST_DOWN:
|
case GUI_ACTION_INS_LIST_DOWN:
|
||||||
if (++curIns>=(int)e->song.ins.size()) curIns=((int)e->song.ins.size())-1;
|
if (++curIns>=(int)e->song.ins.size()) curIns=((int)e->song.ins.size())-1;
|
||||||
wantScrollList=true;
|
wantScrollListIns=true;
|
||||||
wavePreviewInit=true;
|
wavePreviewInit=true;
|
||||||
updateFMPreview=true;
|
updateFMPreview=true;
|
||||||
break;
|
break;
|
||||||
|
@ -824,7 +824,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
if (curWave==-1) {
|
if (curWave==-1) {
|
||||||
showError("too many wavetables!");
|
showError("too many wavetables!");
|
||||||
} else {
|
} else {
|
||||||
wantScrollList=true;
|
wantScrollListWave=true;
|
||||||
e->song.wave[curWave]->len=finalWidth;
|
e->song.wave[curWave]->len=finalWidth;
|
||||||
e->song.wave[curWave]->max=finalHeight-1;
|
e->song.wave[curWave]->max=finalHeight-1;
|
||||||
for (int j=0; j<finalWidth; j++) {
|
for (int j=0; j<finalWidth; j++) {
|
||||||
|
@ -843,7 +843,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
showError("too many wavetables!");
|
showError("too many wavetables!");
|
||||||
} else {
|
} else {
|
||||||
(*e->song.wave[curWave])=(*e->song.wave[prevWave]);
|
(*e->song.wave[curWave])=(*e->song.wave[prevWave]);
|
||||||
wantScrollList=true;
|
wantScrollListWave=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
RESET_WAVE_MACRO_ZOOM;
|
RESET_WAVE_MACRO_ZOOM;
|
||||||
}
|
}
|
||||||
|
@ -867,14 +867,14 @@ void FurnaceGUI::doAction(int what) {
|
||||||
case GUI_ACTION_WAVE_LIST_MOVE_UP:
|
case GUI_ACTION_WAVE_LIST_MOVE_UP:
|
||||||
if (e->moveWaveUp(curWave)) {
|
if (e->moveWaveUp(curWave)) {
|
||||||
curWave--;
|
curWave--;
|
||||||
wantScrollList=true;
|
wantScrollListWave=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_WAVE_LIST_MOVE_DOWN:
|
case GUI_ACTION_WAVE_LIST_MOVE_DOWN:
|
||||||
if (e->moveWaveDown(curWave)) {
|
if (e->moveWaveDown(curWave)) {
|
||||||
curWave++;
|
curWave++;
|
||||||
wantScrollList=true;
|
wantScrollListWave=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -882,7 +882,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
if (curWave>=0 && curWave<(int)e->song.wave.size()) {
|
if (curWave>=0 && curWave<(int)e->song.wave.size()) {
|
||||||
e->delWave(curWave);
|
e->delWave(curWave);
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
wantScrollList=true;
|
wantScrollListWave=true;
|
||||||
if (curWave>=(int)e->song.wave.size()) {
|
if (curWave>=(int)e->song.wave.size()) {
|
||||||
curWave--;
|
curWave--;
|
||||||
}
|
}
|
||||||
|
@ -893,11 +893,11 @@ void FurnaceGUI::doAction(int what) {
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_WAVE_LIST_UP:
|
case GUI_ACTION_WAVE_LIST_UP:
|
||||||
if (--curWave<0) curWave=0;
|
if (--curWave<0) curWave=0;
|
||||||
wantScrollList=true;
|
wantScrollListWave=true;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_WAVE_LIST_DOWN:
|
case GUI_ACTION_WAVE_LIST_DOWN:
|
||||||
if (++curWave>=(int)e->song.wave.size()) curWave=((int)e->song.wave.size())-1;
|
if (++curWave>=(int)e->song.wave.size()) curWave=((int)e->song.wave.size())-1;
|
||||||
wantScrollList=true;
|
wantScrollListWave=true;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_WAVE_LIST_DIR_VIEW:
|
case GUI_ACTION_WAVE_LIST_DIR_VIEW:
|
||||||
waveListDir=!waveListDir;
|
waveListDir=!waveListDir;
|
||||||
|
@ -908,7 +908,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
if (curSample==-1) {
|
if (curSample==-1) {
|
||||||
showError("too many samples!");
|
showError("too many samples!");
|
||||||
} else {
|
} else {
|
||||||
wantScrollList=true;
|
wantScrollListSample=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
}
|
}
|
||||||
updateSampleTex=true;
|
updateSampleTex=true;
|
||||||
|
@ -941,7 +941,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
}
|
}
|
||||||
e->renderSamples();
|
e->renderSamples();
|
||||||
});
|
});
|
||||||
wantScrollList=true;
|
wantScrollListSample=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
}
|
}
|
||||||
updateSampleTex=true;
|
updateSampleTex=true;
|
||||||
|
@ -968,7 +968,7 @@ void FurnaceGUI::doAction(int what) {
|
||||||
case GUI_ACTION_SAMPLE_LIST_MOVE_UP:
|
case GUI_ACTION_SAMPLE_LIST_MOVE_UP:
|
||||||
if (e->moveSampleUp(curSample)) {
|
if (e->moveSampleUp(curSample)) {
|
||||||
curSample--;
|
curSample--;
|
||||||
wantScrollList=true;
|
wantScrollListSample=true;
|
||||||
updateSampleTex=true;
|
updateSampleTex=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
}
|
}
|
||||||
|
@ -976,14 +976,14 @@ void FurnaceGUI::doAction(int what) {
|
||||||
case GUI_ACTION_SAMPLE_LIST_MOVE_DOWN:
|
case GUI_ACTION_SAMPLE_LIST_MOVE_DOWN:
|
||||||
if (e->moveSampleDown(curSample)) {
|
if (e->moveSampleDown(curSample)) {
|
||||||
curSample++;
|
curSample++;
|
||||||
wantScrollList=true;
|
wantScrollListSample=true;
|
||||||
updateSampleTex=true;
|
updateSampleTex=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_DELETE:
|
case GUI_ACTION_SAMPLE_LIST_DELETE:
|
||||||
e->delSample(curSample);
|
e->delSample(curSample);
|
||||||
wantScrollList=true;
|
wantScrollListSample=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
if (curSample>=(int)e->song.sample.size()) {
|
if (curSample>=(int)e->song.sample.size()) {
|
||||||
curSample--;
|
curSample--;
|
||||||
|
@ -995,12 +995,12 @@ 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;
|
||||||
wantScrollList=true;
|
wantScrollListSample=true;
|
||||||
updateSampleTex=true;
|
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;
|
||||||
wantScrollList=true;
|
wantScrollListSample=true;
|
||||||
updateSampleTex=true;
|
updateSampleTex=true;
|
||||||
break;
|
break;
|
||||||
case GUI_ACTION_SAMPLE_LIST_PREVIEW:
|
case GUI_ACTION_SAMPLE_LIST_PREVIEW:
|
||||||
|
|
|
@ -6605,7 +6605,9 @@ bool FurnaceGUI::loop() {
|
||||||
|
|
||||||
wheelX=0;
|
wheelX=0;
|
||||||
wheelY=0;
|
wheelY=0;
|
||||||
wantScrollList=false;
|
wantScrollListIns=false;
|
||||||
|
wantScrollListWave=false;
|
||||||
|
wantScrollListSample=false;
|
||||||
|
|
||||||
pressedPoints.clear();
|
pressedPoints.clear();
|
||||||
releasedPoints.clear();
|
releasedPoints.clear();
|
||||||
|
@ -7533,9 +7535,11 @@ FurnaceGUI::FurnaceGUI():
|
||||||
preserveChanPos(false),
|
preserveChanPos(false),
|
||||||
sysDupCloneChannels(true),
|
sysDupCloneChannels(true),
|
||||||
sysDupEnd(false),
|
sysDupEnd(false),
|
||||||
wantScrollList(false),
|
|
||||||
noteInputPoly(true),
|
noteInputPoly(true),
|
||||||
notifyWaveChange(false),
|
notifyWaveChange(false),
|
||||||
|
wantScrollListIns(false),
|
||||||
|
wantScrollListWave(false),
|
||||||
|
wantScrollListSample(false),
|
||||||
displayPendingIns(false),
|
displayPendingIns(false),
|
||||||
pendingInsSingle(false),
|
pendingInsSingle(false),
|
||||||
displayPendingRawSample(false),
|
displayPendingRawSample(false),
|
||||||
|
|
|
@ -1601,7 +1601,8 @@ class FurnaceGUI {
|
||||||
bool vgmExportDirectStream, displayInsTypeList, displayWaveSizeList;
|
bool vgmExportDirectStream, displayInsTypeList, displayWaveSizeList;
|
||||||
bool portrait, injectBackUp, mobileMenuOpen, warnColorPushed;
|
bool portrait, injectBackUp, mobileMenuOpen, warnColorPushed;
|
||||||
bool wantCaptureKeyboard, oldWantCaptureKeyboard, displayMacroMenu;
|
bool wantCaptureKeyboard, oldWantCaptureKeyboard, displayMacroMenu;
|
||||||
bool displayNew, displayExport, displayPalette, fullScreen, preserveChanPos, sysDupCloneChannels, sysDupEnd, wantScrollList, noteInputPoly, notifyWaveChange;
|
bool displayNew, displayExport, displayPalette, fullScreen, preserveChanPos, sysDupCloneChannels, sysDupEnd, noteInputPoly, notifyWaveChange;
|
||||||
|
bool wantScrollListIns, wantScrollListWave, wantScrollListSample;
|
||||||
bool displayPendingIns, pendingInsSingle, displayPendingRawSample, snesFilterHex, modTableHex, displayEditString;
|
bool displayPendingIns, pendingInsSingle, displayPendingRawSample, snesFilterHex, modTableHex, displayEditString;
|
||||||
bool changeCoarse;
|
bool changeCoarse;
|
||||||
bool mobileEdit;
|
bool mobileEdit;
|
||||||
|
|
|
@ -6718,7 +6718,7 @@ void FurnaceGUI::drawInsEdit() {
|
||||||
if (curWave==-1) {
|
if (curWave==-1) {
|
||||||
showError("too many wavetables!");
|
showError("too many wavetables!");
|
||||||
} else {
|
} else {
|
||||||
wantScrollList=true;
|
wantScrollListWave=true;
|
||||||
MARK_MODIFIED;
|
MARK_MODIFIED;
|
||||||
RESET_WAVE_MACRO_ZOOM;
|
RESET_WAVE_MACRO_ZOOM;
|
||||||
nextWindow=GUI_WINDOW_WAVE_EDIT;
|
nextWindow=GUI_WINDOW_WAVE_EDIT;
|
||||||
|
|
Loading…
Reference in a new issue