Merge pull request #1422 from Eknous-P/guimprove
Numerous GUI improvements
This commit is contained in:
commit
7ea7f72b45
|
@ -282,10 +282,12 @@ void FurnaceGUI::drawChanOsc() {
|
|||
updateChanOscGradTex=true;
|
||||
}
|
||||
|
||||
pushDestColor();
|
||||
if (ImGui::Button("Remove")) {
|
||||
removePoint=index;
|
||||
ImGui::CloseCurrentPopup();
|
||||
}
|
||||
popDestColor();
|
||||
|
||||
ImGui::EndPopup();
|
||||
}
|
||||
|
|
|
@ -172,10 +172,12 @@ void FurnaceGUI::waveListItem(int i, float* wavePreview, int dir, int asset) {
|
|||
wavePreview[i]=wave->data[i];
|
||||
}
|
||||
if (wave->len>0) wavePreview[wave->len]=wave->data[wave->len-1];
|
||||
if (ImGui::Selectable(fmt::sprintf("%d##_WAVE%d\n",i,i).c_str(),curWave==i)) {
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_SelectableTextAlign, ImVec2(0,0.5f));
|
||||
if (ImGui::Selectable(fmt::sprintf(" %d##_WAVE%d\n",i,i).c_str(),curWave==i,0,ImVec2(0,23*dpiScale))) { // i didnt think that the 0 would work, but it does
|
||||
curWave=i;
|
||||
lastAssetType=1;
|
||||
}
|
||||
ImGui::PopStyleVar();
|
||||
if (wantScrollList && curWave==i) ImGui::SetScrollHereY();
|
||||
if (ImGui::IsItemHovered()) {
|
||||
if (ImGui::IsMouseDoubleClicked(ImGuiMouseButton_Left)) {
|
||||
|
|
|
@ -811,9 +811,14 @@ void FurnaceGUI::drawFindReplace() {
|
|||
}
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
pushDestColor();
|
||||
if (ImGui::Button(ICON_FA_MINUS "##DelQuery")) {
|
||||
eraseIndex=index;
|
||||
}
|
||||
popDestColor();
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("Delete query");
|
||||
}
|
||||
ImGui::TableNextColumn();
|
||||
if (i.effectCount<8) {
|
||||
if (ImGui::Button("Add effect")) {
|
||||
|
@ -822,9 +827,11 @@ void FurnaceGUI::drawFindReplace() {
|
|||
}
|
||||
ImGui::TableNextColumn();
|
||||
if (i.effectCount>0) {
|
||||
pushDestColor();
|
||||
if (ImGui::Button("Remove effect")) {
|
||||
i.effectCount--;
|
||||
}
|
||||
popDestColor();
|
||||
}
|
||||
ImGui::EndTable();
|
||||
}
|
||||
|
@ -1103,9 +1110,11 @@ void FurnaceGUI::drawFindReplace() {
|
|||
}
|
||||
ImGui::TableNextColumn();
|
||||
if (queryReplaceEffectCount>0) {
|
||||
pushDestColor();
|
||||
if (ImGui::Button("Remove effect")) {
|
||||
queryReplaceEffectCount--;
|
||||
}
|
||||
popDestColor();
|
||||
}
|
||||
|
||||
ImGui::EndTable();
|
||||
|
|
|
@ -47,13 +47,14 @@ void FurnaceGUI::drawGrooves() {
|
|||
ImGui::TableNextColumn();
|
||||
ImGui::Text("pattern");
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::Text("remove");
|
||||
// ImGui::Text("remove"); removed because the text clips from the fixed width
|
||||
|
||||
int index=0;
|
||||
for (DivGroovePattern& i: e->song.grooves) {
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::PushFont(patFont);
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("%.2X",index);
|
||||
ImGui::PopFont();
|
||||
|
||||
|
@ -79,6 +80,7 @@ void FurnaceGUI::drawGrooves() {
|
|||
ImGui::SetKeyboardFocusHere();
|
||||
}
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
ImGui::AlignTextToFramePadding();
|
||||
if (ImGui::InputText(grooveStr.c_str(),&grooveListString)) {
|
||||
decodeMMLStr(grooveListString,intVersion,intVersionLen,ignoredLoop,1,255,ignoredRel);
|
||||
if (intVersionLen<1) {
|
||||
|
@ -120,10 +122,15 @@ void FurnaceGUI::drawGrooves() {
|
|||
}
|
||||
|
||||
ImGui::TableNextColumn();
|
||||
pushDestColor();
|
||||
String grooveID=fmt::sprintf(ICON_FA_TIMES "##GRR%d",index);
|
||||
if (ImGui::Button(grooveID.c_str())) {
|
||||
delGroove=index;
|
||||
}
|
||||
popDestColor();
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("remove");
|
||||
}
|
||||
|
||||
index++;
|
||||
}
|
||||
|
|
|
@ -4333,6 +4333,7 @@ void FurnaceGUI::drawInsEdit() {
|
|||
MARK_MODIFIED;
|
||||
}
|
||||
ImGui::SameLine();
|
||||
pushDestColor();
|
||||
if (ImGui::Button(ICON_FA_TIMES "##HWCmdDel")) {
|
||||
for (int j=i; j<ins->gb.hwSeqLen-1; j++) {
|
||||
ins->gb.hwSeq[j].cmd=ins->gb.hwSeq[j+1].cmd;
|
||||
|
@ -4340,6 +4341,7 @@ void FurnaceGUI::drawInsEdit() {
|
|||
}
|
||||
ins->gb.hwSeqLen--;
|
||||
}
|
||||
popDestColor();
|
||||
ImGui::PopID();
|
||||
}
|
||||
ImGui::EndTable();
|
||||
|
|
|
@ -115,10 +115,12 @@ void FurnaceGUI::drawOrderButtons() {
|
|||
}
|
||||
NEXT_BUTTON;
|
||||
|
||||
pushDestColor();
|
||||
if (ImGui::Button(ICON_FA_MINUS)) { handleUnimportant
|
||||
// remove this order row
|
||||
doAction(GUI_ACTION_ORDERS_REMOVE);
|
||||
}
|
||||
popDestColor();
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("Remove order");
|
||||
}
|
||||
|
|
|
@ -577,7 +577,7 @@ void FurnaceGUI::drawSettings() {
|
|||
float vol=fabs(sysVol);
|
||||
ImGui::PushID(i);
|
||||
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x-ImGui::CalcTextSize("Invert").x-ImGui::GetFrameHeightWithSpacing()*2.0-ImGui::GetStyle().ItemSpacing.x);
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x-ImGui::CalcTextSize("Invert").x-ImGui::GetFrameHeightWithSpacing()*2.0-ImGui::GetStyle().ItemSpacing.x*2.0);
|
||||
if (ImGui::BeginCombo("##System",getSystemName(sysID))) {
|
||||
for (int j=0; availableSystems[j]; j++) {
|
||||
if (ImGui::Selectable(getSystemName((DivSystem)availableSystems[j]),sysID==availableSystems[j])) {
|
||||
|
@ -596,11 +596,13 @@ void FurnaceGUI::drawSettings() {
|
|||
}
|
||||
ImGui::SameLine();
|
||||
//ImGui::BeginDisabled(settings.initialSys.size()<=4);
|
||||
pushDestColor();
|
||||
if (ImGui::Button(ICON_FA_MINUS "##InitSysRemove")) {
|
||||
doRemove=i;
|
||||
}
|
||||
popDestColor();
|
||||
//ImGui::EndDisabled();
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x-ImGui::GetFrameHeightWithSpacing()*2.0-ImGui::GetStyle().ItemSpacing.x*2.0);
|
||||
if (CWSliderFloat("Volume",&vol,0.0f,3.0f)) {
|
||||
if (doInvert) {
|
||||
if (vol<0.0001) vol=0.0001;
|
||||
|
@ -610,13 +612,13 @@ void FurnaceGUI::drawSettings() {
|
|||
sysVol=doInvert?-vol:vol;
|
||||
settings.initialSys.set(fmt::sprintf("vol%d",i),(float)sysVol);
|
||||
} rightClickable
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x-ImGui::GetFrameHeightWithSpacing()*2.0-ImGui::GetStyle().ItemSpacing.x*2.0);
|
||||
if (CWSliderFloat("Panning",&sysPan,-1.0f,1.0f)) {
|
||||
if (sysPan<-1.0f) sysPan=-1.0f;
|
||||
if (sysPan>1.0f) sysPan=1.0f;
|
||||
settings.initialSys.set(fmt::sprintf("pan%d",i),(float)sysPan);
|
||||
} rightClickable
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x-ImGui::GetFrameHeightWithSpacing()*2.0-ImGui::GetStyle().ItemSpacing.x*2.0);
|
||||
if (CWSliderFloat("Front/Rear",&sysPanFR,-1.0f,1.0f)) {
|
||||
if (sysPanFR<-1.0f) sysPanFR=-1.0f;
|
||||
if (sysPanFR>1.0f) sysPanFR=1.0f;
|
||||
|
@ -719,105 +721,123 @@ void FurnaceGUI::drawSettings() {
|
|||
CONFIG_SECTION("Audio") {
|
||||
// SUBSECTION OUTPUT
|
||||
CONFIG_SUBSECTION("Output");
|
||||
if (ImGui::BeginTable("##Output",2)) {
|
||||
ImGui::TableSetupColumn("##Label",ImGuiTableColumnFlags_WidthFixed);
|
||||
ImGui::TableSetupColumn("##Combo",ImGuiTableColumnFlags_WidthStretch);
|
||||
#ifdef HAVE_JACK
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Backend");
|
||||
ImGui::SameLine();
|
||||
int prevAudioEngine=settings.audioEngine;
|
||||
if (ImGui::Combo("##Backend",&settings.audioEngine,audioBackends,2)) {
|
||||
if (settings.audioEngine!=prevAudioEngine) {
|
||||
if (!isProAudio[settings.audioEngine]) settings.audioChans=2;
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Backend");
|
||||
ImGui::TableNextColumn();
|
||||
int prevAudioEngine=settings.audioEngine;
|
||||
if (ImGui::Combo("##Backend",&settings.audioEngine,audioBackends,2)) {
|
||||
if (settings.audioEngine!=prevAudioEngine) {
|
||||
if (!isProAudio[settings.audioEngine]) settings.audioChans=2;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
if (settings.audioEngine==DIV_AUDIO_SDL) {
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Driver");
|
||||
ImGui::SameLine();
|
||||
if (ImGui::BeginCombo("##SDLADriver",settings.sdlAudioDriver.empty()?"Automatic":settings.sdlAudioDriver.c_str())) {
|
||||
if (ImGui::Selectable("Automatic",settings.sdlAudioDriver.empty())) {
|
||||
settings.sdlAudioDriver="";
|
||||
if (settings.audioEngine==DIV_AUDIO_SDL) {
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Driver");
|
||||
ImGui::TableNextColumn();
|
||||
if (ImGui::BeginCombo("##SDLADriver",settings.sdlAudioDriver.empty()?"Automatic":settings.sdlAudioDriver.c_str())) {
|
||||
if (ImGui::Selectable("Automatic",settings.sdlAudioDriver.empty())) {
|
||||
settings.sdlAudioDriver="";
|
||||
}
|
||||
for (String& i: availAudioDrivers) {
|
||||
if (ImGui::Selectable(i.c_str(),i==settings.sdlAudioDriver)) {
|
||||
settings.sdlAudioDriver=i;
|
||||
}
|
||||
}
|
||||
ImGui::EndCombo();
|
||||
}
|
||||
for (String& i: availAudioDrivers) {
|
||||
if (ImGui::Selectable(i.c_str(),i==settings.sdlAudioDriver)) {
|
||||
settings.sdlAudioDriver=i;
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("you may need to restart Furnace for this setting to take effect.");
|
||||
}
|
||||
}
|
||||
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Device");
|
||||
ImGui::TableNextColumn();
|
||||
String audioDevName=settings.audioDevice.empty()?"<System default>":settings.audioDevice;
|
||||
if (ImGui::BeginCombo("##AudioDevice",audioDevName.c_str())) {
|
||||
if (ImGui::Selectable("<System default>",settings.audioDevice.empty())) {
|
||||
settings.audioDevice="";
|
||||
}
|
||||
for (String& i: e->getAudioDevices()) {
|
||||
if (ImGui::Selectable(i.c_str(),i==settings.audioDevice)) {
|
||||
settings.audioDevice=i;
|
||||
}
|
||||
}
|
||||
ImGui::EndCombo();
|
||||
}
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("you may need to restart Furnace for this setting to take effect.");
|
||||
}
|
||||
}
|
||||
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Device");
|
||||
ImGui::SameLine();
|
||||
String audioDevName=settings.audioDevice.empty()?"<System default>":settings.audioDevice;
|
||||
if (ImGui::BeginCombo("##AudioDevice",audioDevName.c_str())) {
|
||||
if (ImGui::Selectable("<System default>",settings.audioDevice.empty())) {
|
||||
settings.audioDevice="";
|
||||
}
|
||||
for (String& i: e->getAudioDevices()) {
|
||||
if (ImGui::Selectable(i.c_str(),i==settings.audioDevice)) {
|
||||
settings.audioDevice=i;
|
||||
}
|
||||
}
|
||||
ImGui::EndCombo();
|
||||
}
|
||||
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Sample rate");
|
||||
ImGui::SameLine();
|
||||
String sr=fmt::sprintf("%d",settings.audioRate);
|
||||
if (ImGui::BeginCombo("##SampleRate",sr.c_str())) {
|
||||
SAMPLE_RATE_SELECTABLE(8000);
|
||||
SAMPLE_RATE_SELECTABLE(16000);
|
||||
SAMPLE_RATE_SELECTABLE(22050);
|
||||
SAMPLE_RATE_SELECTABLE(32000);
|
||||
SAMPLE_RATE_SELECTABLE(44100);
|
||||
SAMPLE_RATE_SELECTABLE(48000);
|
||||
SAMPLE_RATE_SELECTABLE(88200);
|
||||
SAMPLE_RATE_SELECTABLE(96000);
|
||||
SAMPLE_RATE_SELECTABLE(192000);
|
||||
ImGui::EndCombo();
|
||||
}
|
||||
|
||||
if (isProAudio[settings.audioEngine]) {
|
||||
ImGui::Text("Outputs");
|
||||
ImGui::SameLine();
|
||||
if (ImGui::InputInt("##AudioChansI",&settings.audioChans,1,1)) {
|
||||
if (settings.audioChans<1) settings.audioChans=1;
|
||||
if (settings.audioChans>16) settings.audioChans=16;
|
||||
}
|
||||
} else {
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Channels");
|
||||
ImGui::SameLine();
|
||||
String chStr=(settings.audioChans<1 || settings.audioChans>8)?"What?":nonProAudioOuts[settings.audioChans-1];
|
||||
if (ImGui::BeginCombo("##AudioChans",chStr.c_str())) {
|
||||
CHANS_SELECTABLE(1);
|
||||
CHANS_SELECTABLE(2);
|
||||
CHANS_SELECTABLE(4);
|
||||
CHANS_SELECTABLE(6);
|
||||
CHANS_SELECTABLE(8);
|
||||
ImGui::Text("Sample rate");
|
||||
ImGui::TableNextColumn();
|
||||
String sr=fmt::sprintf("%d",settings.audioRate);
|
||||
if (ImGui::BeginCombo("##SampleRate",sr.c_str())) {
|
||||
SAMPLE_RATE_SELECTABLE(8000);
|
||||
SAMPLE_RATE_SELECTABLE(16000);
|
||||
SAMPLE_RATE_SELECTABLE(22050);
|
||||
SAMPLE_RATE_SELECTABLE(32000);
|
||||
SAMPLE_RATE_SELECTABLE(44100);
|
||||
SAMPLE_RATE_SELECTABLE(48000);
|
||||
SAMPLE_RATE_SELECTABLE(88200);
|
||||
SAMPLE_RATE_SELECTABLE(96000);
|
||||
SAMPLE_RATE_SELECTABLE(192000);
|
||||
ImGui::EndCombo();
|
||||
}
|
||||
}
|
||||
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Buffer size");
|
||||
ImGui::SameLine();
|
||||
String bs=fmt::sprintf("%d (latency: ~%.1fms)",settings.audioBufSize,2000.0*(double)settings.audioBufSize/(double)MAX(1,settings.audioRate));
|
||||
if (ImGui::BeginCombo("##BufferSize",bs.c_str())) {
|
||||
BUFFER_SIZE_SELECTABLE(64);
|
||||
BUFFER_SIZE_SELECTABLE(128);
|
||||
BUFFER_SIZE_SELECTABLE(256);
|
||||
BUFFER_SIZE_SELECTABLE(512);
|
||||
BUFFER_SIZE_SELECTABLE(1024);
|
||||
BUFFER_SIZE_SELECTABLE(2048);
|
||||
ImGui::EndCombo();
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
if (isProAudio[settings.audioEngine]) {
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Outputs");
|
||||
ImGui::TableNextColumn();
|
||||
if (ImGui::InputInt("##AudioChansI",&settings.audioChans,1,1)) {
|
||||
if (settings.audioChans<1) settings.audioChans=1;
|
||||
if (settings.audioChans>16) settings.audioChans=16;
|
||||
}
|
||||
} else {
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Channels");
|
||||
ImGui::TableNextColumn();
|
||||
String chStr=(settings.audioChans<1 || settings.audioChans>8)?"What?":nonProAudioOuts[settings.audioChans-1];
|
||||
if (ImGui::BeginCombo("##AudioChans",chStr.c_str())) {
|
||||
CHANS_SELECTABLE(1);
|
||||
CHANS_SELECTABLE(2);
|
||||
CHANS_SELECTABLE(4);
|
||||
CHANS_SELECTABLE(6);
|
||||
CHANS_SELECTABLE(8);
|
||||
ImGui::EndCombo();
|
||||
}
|
||||
}
|
||||
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Buffer size");
|
||||
ImGui::TableNextColumn();
|
||||
String bs=fmt::sprintf("%d (latency: ~%.1fms)",settings.audioBufSize,2000.0*(double)settings.audioBufSize/(double)MAX(1,settings.audioRate));
|
||||
if (ImGui::BeginCombo("##BufferSize",bs.c_str())) {
|
||||
BUFFER_SIZE_SELECTABLE(64);
|
||||
BUFFER_SIZE_SELECTABLE(128);
|
||||
BUFFER_SIZE_SELECTABLE(256);
|
||||
BUFFER_SIZE_SELECTABLE(512);
|
||||
BUFFER_SIZE_SELECTABLE(1024);
|
||||
BUFFER_SIZE_SELECTABLE(2048);
|
||||
ImGui::EndCombo();
|
||||
}
|
||||
ImGui::EndTable();
|
||||
}
|
||||
|
||||
bool lowLatencyB=settings.lowLatency;
|
||||
|
@ -2015,57 +2035,62 @@ void FurnaceGUI::drawSettings() {
|
|||
|
||||
// SUBSECTION TEXT
|
||||
CONFIG_SUBSECTION("Text");
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Main font");
|
||||
ImGui::SameLine();
|
||||
ImGui::Combo("##MainFont",&settings.mainFont,mainFonts,7);
|
||||
ImGui::Indent();
|
||||
if (settings.mainFont==6) {
|
||||
ImGui::InputText("##MainFontPath",&settings.mainFontPath);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(ICON_FA_FOLDER "##MainFontLoad")) {
|
||||
openFileDialog(GUI_FILE_LOAD_MAIN_FONT);
|
||||
if (ImGui::BeginTable("##Text",2)) {
|
||||
ImGui::TableSetupColumn("##Label",ImGuiTableColumnFlags_WidthFixed);
|
||||
ImGui::TableSetupColumn("##Combos",ImGuiTableColumnFlags_WidthStretch);
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Main font");
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::Combo("##MainFont",&settings.mainFont,mainFonts,7);
|
||||
if (settings.mainFont==6) {
|
||||
ImGui::InputText("##MainFontPath",&settings.mainFontPath);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(ICON_FA_FOLDER "##MainFontLoad")) {
|
||||
openFileDialog(GUI_FILE_LOAD_MAIN_FONT);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (ImGui::InputInt("Size##MainFontSize",&settings.mainFontSize)) {
|
||||
if (settings.mainFontSize<3) settings.mainFontSize=3;
|
||||
if (settings.mainFontSize>96) settings.mainFontSize=96;
|
||||
}
|
||||
ImGui::Unindent();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Header font");
|
||||
ImGui::SameLine();
|
||||
ImGui::Combo("##HeadFont",&settings.headFont,headFonts,7);
|
||||
ImGui::Indent();
|
||||
if (settings.headFont==6) {
|
||||
ImGui::InputText("##HeadFontPath",&settings.headFontPath);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(ICON_FA_FOLDER "##HeadFontLoad")) {
|
||||
openFileDialog(GUI_FILE_LOAD_HEAD_FONT);
|
||||
if (ImGui::InputInt("Size##MainFontSize",&settings.mainFontSize)) {
|
||||
if (settings.mainFontSize<3) settings.mainFontSize=3;
|
||||
if (settings.mainFontSize>96) settings.mainFontSize=96;
|
||||
}
|
||||
}
|
||||
if (ImGui::InputInt("Size##HeadFontSize",&settings.headFontSize)) {
|
||||
if (settings.headFontSize<3) settings.headFontSize=3;
|
||||
if (settings.headFontSize>96) settings.headFontSize=96;
|
||||
}
|
||||
ImGui::Unindent();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Pattern font");
|
||||
ImGui::SameLine();
|
||||
ImGui::Combo("##PatFont",&settings.patFont,patFonts,7);
|
||||
ImGui::Indent();
|
||||
if (settings.patFont==6) {
|
||||
ImGui::InputText("##PatFontPath",&settings.patFontPath);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(ICON_FA_FOLDER "##PatFontLoad")) {
|
||||
openFileDialog(GUI_FILE_LOAD_PAT_FONT);
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Header font");
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::Combo("##HeadFont",&settings.headFont,headFonts,7);
|
||||
if (settings.headFont==6) {
|
||||
ImGui::InputText("##HeadFontPath",&settings.headFontPath);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(ICON_FA_FOLDER "##HeadFontLoad")) {
|
||||
openFileDialog(GUI_FILE_LOAD_HEAD_FONT);
|
||||
}
|
||||
}
|
||||
if (ImGui::InputInt("Size##HeadFontSize",&settings.headFontSize)) {
|
||||
if (settings.headFontSize<3) settings.headFontSize=3;
|
||||
if (settings.headFontSize>96) settings.headFontSize=96;
|
||||
}
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::AlignTextToFramePadding();
|
||||
ImGui::Text("Pattern font");
|
||||
ImGui::TableNextColumn();
|
||||
ImGui::Combo("##PatFont",&settings.patFont,patFonts,7);
|
||||
if (settings.patFont==6) {
|
||||
ImGui::InputText("##PatFontPath",&settings.patFontPath);
|
||||
ImGui::SameLine();
|
||||
if (ImGui::Button(ICON_FA_FOLDER "##PatFontLoad")) {
|
||||
openFileDialog(GUI_FILE_LOAD_PAT_FONT);
|
||||
}
|
||||
}
|
||||
if (ImGui::InputInt("Size##PatFontSize",&settings.patFontSize)) {
|
||||
if (settings.patFontSize<3) settings.patFontSize=3;
|
||||
if (settings.patFontSize>96) settings.patFontSize=96;
|
||||
}
|
||||
ImGui::EndTable();
|
||||
}
|
||||
if (ImGui::InputInt("Size##PatFontSize",&settings.patFontSize)) {
|
||||
if (settings.patFontSize<3) settings.patFontSize=3;
|
||||
if (settings.patFontSize>96) settings.patFontSize=96;
|
||||
}
|
||||
ImGui::Unindent();
|
||||
|
||||
bool loadJapaneseB=settings.loadJapanese;
|
||||
if (ImGui::Checkbox("Display Japanese characters",&loadJapaneseB)) {
|
||||
|
|
|
@ -102,10 +102,12 @@ void FurnaceGUI::drawSysManager() {
|
|||
}
|
||||
ImGui::SameLine();
|
||||
ImGui::BeginDisabled(e->song.systemLen<=1);
|
||||
pushDestColor();
|
||||
if (ImGui::Button(ICON_FA_TIMES "##SysRemove")) {
|
||||
sysToDelete=i;
|
||||
showWarning("Are you sure you want to remove this chip?",GUI_WARN_SYSTEM_DEL);
|
||||
}
|
||||
popDestColor();
|
||||
if (ImGui::IsItemHovered()) {
|
||||
ImGui::SetTooltip("Remove");
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue