GUI: find and replace, part 6
This commit is contained in:
parent
dd05429c0e
commit
936d9dfa49
|
@ -3,6 +3,7 @@
|
||||||
#include "IconsFontAwesome4.h"
|
#include "IconsFontAwesome4.h"
|
||||||
#include "misc/cpp/imgui_stdlib.h"
|
#include "misc/cpp/imgui_stdlib.h"
|
||||||
#include "guiConst.h"
|
#include "guiConst.h"
|
||||||
|
#include "intConst.h"
|
||||||
|
|
||||||
const char* queryModes[GUI_QUERY_MAX]={
|
const char* queryModes[GUI_QUERY_MAX]={
|
||||||
"ignore",
|
"ignore",
|
||||||
|
@ -290,7 +291,11 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
curQuery.push_back(FurnaceGUIFindQuery());
|
curQuery.push_back(FurnaceGUIFindQuery());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ImGui::BeginTable("QueryLimits",2)) {
|
if (ImGui::BeginTable("QueryLimits",3)) {
|
||||||
|
ImGui::TableSetupColumn("c0",ImGuiTableColumnFlags_WidthFixed);
|
||||||
|
ImGui::TableSetupColumn("c1",ImGuiTableColumnFlags_WidthStretch,0.5f);
|
||||||
|
ImGui::TableSetupColumn("c2",ImGuiTableColumnFlags_WidthStretch,0.5f);
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
|
||||||
|
@ -333,6 +338,7 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
}
|
}
|
||||||
ImGui::EndDisabled();
|
ImGui::EndDisabled();
|
||||||
|
|
||||||
|
ImGui::TableNextColumn();
|
||||||
ImGui::Text("Match effect position:");
|
ImGui::Text("Match effect position:");
|
||||||
|
|
||||||
if (ImGui::RadioButton("No",curQueryEffectPos==0)) {
|
if (ImGui::RadioButton("No",curQueryEffectPos==0)) {
|
||||||
|
@ -356,8 +362,6 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::Checkbox("From start",&curQueryFromStart);
|
|
||||||
ImGui::TableNextColumn();
|
|
||||||
ImGui::Checkbox("Backwards",&curQueryBackwards);
|
ImGui::Checkbox("Backwards",&curQueryBackwards);
|
||||||
|
|
||||||
ImGui::EndTable();
|
ImGui::EndTable();
|
||||||
|
@ -373,10 +377,49 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::Checkbox("Note",&queryReplaceNoteDo);
|
ImGui::Checkbox("Note",&queryReplaceNoteDo);
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::BeginDisabled(!queryReplaceNoteDo);
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
ImGui::Combo("##NRMode",&queryReplaceNoteMode,queryReplaceModes,GUI_QUERY_REPLACE_MAX);
|
ImGui::Combo("##NRMode",&queryReplaceNoteMode,queryReplaceModes,GUI_QUERY_REPLACE_MAX);
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
if (queryReplaceNoteMode==GUI_QUERY_REPLACE_SET) {
|
||||||
|
if (queryReplaceNote==130) {
|
||||||
|
snprintf(tempID,1024,"REL");
|
||||||
|
} else if (queryReplaceNote==129) {
|
||||||
|
snprintf(tempID,1024,"===");
|
||||||
|
} else if (queryReplaceNote==128) {
|
||||||
|
snprintf(tempID,1024,"OFF");
|
||||||
|
} else if (queryReplaceNote>=-60 && queryReplaceNote<120) {
|
||||||
|
snprintf(tempID,1024,"%s",noteNames[queryReplaceNote+60]);
|
||||||
|
} else {
|
||||||
|
snprintf(tempID,1024,"???");
|
||||||
|
queryReplaceNote=0;
|
||||||
|
}
|
||||||
|
if (ImGui::BeginCombo("##NRValueC",tempID)) {
|
||||||
|
for (int j=0; j<180; j++) {
|
||||||
|
snprintf(tempID,1024,"%s",noteNames[j]);
|
||||||
|
if (ImGui::Selectable(tempID,queryReplaceNote==(j-60))) {
|
||||||
|
queryReplaceNote=j-60;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (ImGui::Selectable("OFF",queryReplaceNote==128)) {
|
||||||
|
queryReplaceNote=128;
|
||||||
|
}
|
||||||
|
if (ImGui::Selectable("===",queryReplaceNote==129)) {
|
||||||
|
queryReplaceNote=129;
|
||||||
|
}
|
||||||
|
if (ImGui::Selectable("REL",queryReplaceNote==130)) {
|
||||||
|
queryReplaceNote=130;
|
||||||
|
}
|
||||||
|
ImGui::EndCombo();
|
||||||
|
}
|
||||||
|
} else if (queryReplaceNoteMode==GUI_QUERY_REPLACE_ADD || queryReplaceNoteMode==GUI_QUERY_REPLACE_ADD_OVERFLOW) {
|
||||||
|
if (ImGui::InputInt("##NRValue",&queryReplaceNote,1,12)) {
|
||||||
|
if (queryReplaceNote<-180) queryReplaceNote=-180;
|
||||||
|
if (queryReplaceNote>180) queryReplaceNote=180;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ImGui::EndDisabled();
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
@ -384,6 +427,19 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
ImGui::Combo("##IRMode",&queryReplaceInsMode,queryReplaceModes,GUI_QUERY_REPLACE_MAX);
|
ImGui::Combo("##IRMode",&queryReplaceInsMode,queryReplaceModes,GUI_QUERY_REPLACE_MAX);
|
||||||
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
if (queryReplaceInsMode==GUI_QUERY_REPLACE_SET) {
|
||||||
|
if (ImGui::InputScalar("##IRValueH",ImGuiDataType_S32,&queryReplaceIns,&_ONE,&_SIXTEEN,"%.2X",ImGuiInputTextFlags_CharsHexadecimal)) {
|
||||||
|
if (queryReplaceIns<0) queryReplaceIns=0;
|
||||||
|
if (queryReplaceIns>255) queryReplaceIns=255;
|
||||||
|
}
|
||||||
|
} else if (queryReplaceInsMode==GUI_QUERY_REPLACE_ADD || queryReplaceInsMode==GUI_QUERY_REPLACE_ADD_OVERFLOW) {
|
||||||
|
if (ImGui::InputInt("##IRValue",&queryReplaceIns,1,12)) {
|
||||||
|
if (queryReplaceIns<-255) queryReplaceIns=-255;
|
||||||
|
if (queryReplaceIns>255) queryReplaceIns=255;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
@ -391,14 +447,27 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
ImGui::Combo("##VRMode",&queryReplaceVolMode,queryReplaceModes,GUI_QUERY_REPLACE_MAX);
|
ImGui::Combo("##VRMode",&queryReplaceVolMode,queryReplaceModes,GUI_QUERY_REPLACE_MAX);
|
||||||
|
|
||||||
/*ImGui::TableNextRow();
|
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::Text("Effect");
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
if (queryReplaceVolMode==GUI_QUERY_REPLACE_SET) {
|
||||||
|
if (ImGui::InputScalar("##VRValueH",ImGuiDataType_S32,&queryReplaceVol,&_ONE,&_SIXTEEN,"%.2X",ImGuiInputTextFlags_CharsHexadecimal)) {
|
||||||
|
if (queryReplaceVol<0) queryReplaceVol=0;
|
||||||
|
if (queryReplaceVol>255) queryReplaceVol=255;
|
||||||
|
}
|
||||||
|
} else if (queryReplaceVolMode==GUI_QUERY_REPLACE_ADD || queryReplaceVolMode==GUI_QUERY_REPLACE_ADD_OVERFLOW) {
|
||||||
|
if (ImGui::InputInt("##VRValue",&queryReplaceVol,1,12)) {
|
||||||
|
if (queryReplaceVol<-255) queryReplaceVol=-255;
|
||||||
|
if (queryReplaceVol>255) queryReplaceVol=255;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::Text("Value");*/
|
ImGui::Text("Later");
|
||||||
|
|
||||||
|
ImGui::TableNextRow();
|
||||||
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::Text("Later");
|
||||||
|
|
||||||
ImGui::EndTable();
|
ImGui::EndTable();
|
||||||
}
|
}
|
||||||
|
|
|
@ -4431,6 +4431,25 @@ FurnaceGUI::FurnaceGUI():
|
||||||
wavePreviewLen(32),
|
wavePreviewLen(32),
|
||||||
wavePreviewHeight(255),
|
wavePreviewHeight(255),
|
||||||
wavePreviewInit(true),
|
wavePreviewInit(true),
|
||||||
|
pgSys(0),
|
||||||
|
pgAddr(0),
|
||||||
|
pgVal(0),
|
||||||
|
curQueryRangeX(false),
|
||||||
|
curQueryBackwards(false),
|
||||||
|
curQueryRangeXMin(0), curQueryRangeXMax(0),
|
||||||
|
curQueryRangeY(0),
|
||||||
|
curQueryEffectPos(0),
|
||||||
|
queryReplaceEffectCount(0),
|
||||||
|
queryReplaceEffectPos(0),
|
||||||
|
queryReplaceNoteMode(0),
|
||||||
|
queryReplaceInsMode(0),
|
||||||
|
queryReplaceVolMode(0),
|
||||||
|
queryReplaceNote(0),
|
||||||
|
queryReplaceIns(0),
|
||||||
|
queryReplaceVol(0),
|
||||||
|
queryReplaceNoteDo(false),
|
||||||
|
queryReplaceInsDo(false),
|
||||||
|
queryReplaceVolDo(false),
|
||||||
wavePreviewOn(false),
|
wavePreviewOn(false),
|
||||||
wavePreviewKey((SDL_Scancode)0),
|
wavePreviewKey((SDL_Scancode)0),
|
||||||
wavePreviewNote(0),
|
wavePreviewNote(0),
|
||||||
|
@ -4624,4 +4643,11 @@ FurnaceGUI::FurnaceGUI():
|
||||||
|
|
||||||
memset(pianoKeyHit,0,sizeof(float)*180);
|
memset(pianoKeyHit,0,sizeof(float)*180);
|
||||||
memset(pianoKeyPressed,0,sizeof(bool)*180);
|
memset(pianoKeyPressed,0,sizeof(bool)*180);
|
||||||
|
|
||||||
|
memset(queryReplaceEffectMode,0,sizeof(int)*8);
|
||||||
|
memset(queryReplaceEffectValMode,0,sizeof(int)*8);
|
||||||
|
memset(queryReplaceEffect,0,sizeof(int)*8);
|
||||||
|
memset(queryReplaceEffectVal,0,sizeof(int)*8);
|
||||||
|
memset(queryReplaceEffectDo,0,sizeof(bool)*8);
|
||||||
|
memset(queryReplaceEffectValDo,0,sizeof(bool)*8);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1171,7 +1171,7 @@ class FurnaceGUI {
|
||||||
int pgSys, pgAddr, pgVal;
|
int pgSys, pgAddr, pgVal;
|
||||||
|
|
||||||
std::vector<FurnaceGUIFindQuery> curQuery;
|
std::vector<FurnaceGUIFindQuery> curQuery;
|
||||||
bool curQueryRangeX, curQueryFromStart, curQueryBackwards;
|
bool curQueryRangeX, curQueryBackwards;
|
||||||
int curQueryRangeXMin, curQueryRangeXMax;
|
int curQueryRangeXMin, curQueryRangeXMax;
|
||||||
int curQueryRangeY;
|
int curQueryRangeY;
|
||||||
int curQueryEffectPos;
|
int curQueryEffectPos;
|
||||||
|
|
|
@ -25,6 +25,7 @@ const int _THREE=3;
|
||||||
const int _SEVEN=7;
|
const int _SEVEN=7;
|
||||||
const int _TEN=10;
|
const int _TEN=10;
|
||||||
const int _FIFTEEN=15;
|
const int _FIFTEEN=15;
|
||||||
|
const int _SIXTEEN=16;
|
||||||
const int _THIRTY_ONE=31;
|
const int _THIRTY_ONE=31;
|
||||||
const int _SIXTY_FOUR=64;
|
const int _SIXTY_FOUR=64;
|
||||||
const int _ONE_HUNDRED=100;
|
const int _ONE_HUNDRED=100;
|
||||||
|
|
|
@ -27,6 +27,7 @@ extern const int _THREE;
|
||||||
extern const int _SEVEN;
|
extern const int _SEVEN;
|
||||||
extern const int _TEN;
|
extern const int _TEN;
|
||||||
extern const int _FIFTEEN;
|
extern const int _FIFTEEN;
|
||||||
|
extern const int _SIXTEEN;
|
||||||
extern const int _THIRTY_ONE;
|
extern const int _THIRTY_ONE;
|
||||||
extern const int _SIXTY_FOUR;
|
extern const int _SIXTY_FOUR;
|
||||||
extern const int _ONE_HUNDRED;
|
extern const int _ONE_HUNDRED;
|
||||||
|
|
Loading…
Reference in New Issue