Merge pull request #1336 from tildearrow/gui-pretty
Vertically centering text labels.
This commit is contained in:
commit
7f75b642da
|
@ -131,6 +131,7 @@ void FurnaceGUI::drawChanOsc() {
|
||||||
if (ImGui::BeginTable("ChanOscSettings",3)) {
|
if (ImGui::BeginTable("ChanOscSettings",3)) {
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Columns");
|
ImGui::Text("Columns");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -154,6 +155,7 @@ void FurnaceGUI::drawChanOsc() {
|
||||||
}
|
}
|
||||||
|
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Automatic columns");
|
ImGui::Text("Automatic columns");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -169,6 +171,7 @@ void FurnaceGUI::drawChanOsc() {
|
||||||
ImGui::EndTable();
|
ImGui::EndTable();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Amplitude");
|
ImGui::Text("Amplitude");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -261,6 +264,7 @@ void FurnaceGUI::drawChanOsc() {
|
||||||
if (ImGui::ColorPicker4("Color",(float*)&i.color)) {
|
if (ImGui::ColorPicker4("Color",(float*)&i.color)) {
|
||||||
updateChanOscGradTex=true;
|
updateChanOscGradTex=true;
|
||||||
}
|
}
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Distance");
|
ImGui::Text("Distance");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
float pDist=i.distance*100.0f;
|
float pDist=i.distance*100.0f;
|
||||||
|
@ -269,6 +273,7 @@ void FurnaceGUI::drawChanOsc() {
|
||||||
updateChanOscGradTex=true;
|
updateChanOscGradTex=true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Spread");
|
ImGui::Text("Spread");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
float pSpread=i.spread*100.0f;
|
float pSpread=i.spread*100.0f;
|
||||||
|
@ -313,6 +318,7 @@ void FurnaceGUI::drawChanOsc() {
|
||||||
ImGui::ColorPicker4("Color",(float*)&chanOscColor);
|
ImGui::ColorPicker4("Color",(float*)&chanOscColor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Text format:");
|
ImGui::Text("Text format:");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::InputText("##TextFormat",&chanOscTextFormat);
|
ImGui::InputText("##TextFormat",&chanOscTextFormat);
|
||||||
|
|
|
@ -486,6 +486,7 @@ void FurnaceGUI::drawDebug() {
|
||||||
pgProgram.clear();
|
pgProgram.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Address");
|
ImGui::Text("Address");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(100.0f*dpiScale);
|
ImGui::SetNextItemWidth(100.0f*dpiScale);
|
||||||
|
|
|
@ -619,6 +619,7 @@ void FurnaceGUI::drawMobileControls() {
|
||||||
"Furnace Amiga emulator is working properly by\n"
|
"Furnace Amiga emulator is working properly by\n"
|
||||||
"comparing it with real Amiga output."
|
"comparing it with real Amiga output."
|
||||||
);
|
);
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Directory");
|
ImGui::Text("Directory");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::InputText("##AVDPath",&workingDirROMExport);
|
ImGui::InputText("##AVDPath",&workingDirROMExport);
|
||||||
|
@ -717,6 +718,7 @@ void FurnaceGUI::drawEditControls() {
|
||||||
e->setMetronome(metro);
|
e->setMetronome(metro);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Follow");
|
ImGui::Text("Follow");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
unimportant(ImGui::Checkbox("Orders",&followOrders));
|
unimportant(ImGui::Checkbox("Orders",&followOrders));
|
||||||
|
@ -1063,6 +1065,7 @@ void FurnaceGUI::drawEditControls() {
|
||||||
|
|
||||||
if (ImGui::Begin("Edit Controls",&editControlsOpen,globalWinFlags)) {
|
if (ImGui::Begin("Edit Controls",&editControlsOpen,globalWinFlags)) {
|
||||||
ImGui::Columns(2);
|
ImGui::Columns(2);
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Octave");
|
ImGui::Text("Octave");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
float cursor=ImGui::GetCursorPosX();
|
float cursor=ImGui::GetCursorPosX();
|
||||||
|
@ -1078,6 +1081,7 @@ void FurnaceGUI::drawEditControls() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Step");
|
ImGui::Text("Step");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetCursorPosX(cursor);
|
ImGui::SetCursorPosX(cursor);
|
||||||
|
|
|
@ -595,6 +595,7 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
ImGui::TableSetupColumn("c3",ImGuiTableColumnFlags_WidthStretch,0.25);
|
ImGui::TableSetupColumn("c3",ImGuiTableColumnFlags_WidthStretch,0.25);
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Note");
|
ImGui::Text("Note");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -662,6 +663,7 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Ins");
|
ImGui::Text("Ins");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -697,6 +699,7 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Volume");
|
ImGui::Text("Volume");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -734,6 +737,7 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
ImGui::PushID(0x1000+j);
|
ImGui::PushID(0x1000+j);
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Effect");
|
ImGui::Text("Effect");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -769,6 +773,7 @@ void FurnaceGUI::drawFindReplace() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Value");
|
ImGui::Text("Value");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
|
|
@ -2783,6 +2783,7 @@ void FurnaceGUI::editOptions(bool topMenu) {
|
||||||
if (ImGui::MenuItem("values up (+16)",BIND_FOR(GUI_ACTION_PAT_VALUE_UP_COARSE))) doTranspose(16,opMaskTransposeValue);
|
if (ImGui::MenuItem("values up (+16)",BIND_FOR(GUI_ACTION_PAT_VALUE_UP_COARSE))) doTranspose(16,opMaskTransposeValue);
|
||||||
if (ImGui::MenuItem("values down (-16)",BIND_FOR(GUI_ACTION_PAT_VALUE_DOWN_COARSE))) doTranspose(-16,opMaskTransposeValue);
|
if (ImGui::MenuItem("values down (-16)",BIND_FOR(GUI_ACTION_PAT_VALUE_DOWN_COARSE))) doTranspose(-16,opMaskTransposeValue);
|
||||||
ImGui::Separator();
|
ImGui::Separator();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("transpose");
|
ImGui::Text("transpose");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(120.0f*dpiScale);
|
ImGui::SetNextItemWidth(120.0f*dpiScale);
|
||||||
|
@ -4118,6 +4119,7 @@ bool FurnaceGUI::loop() {
|
||||||
"Furnace Amiga emulator is working properly by\n"
|
"Furnace Amiga emulator is working properly by\n"
|
||||||
"comparing it with real Amiga output."
|
"comparing it with real Amiga output."
|
||||||
);
|
);
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Directory");
|
ImGui::Text("Directory");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::InputText("##AVDPath",&workingDirROMExport);
|
ImGui::InputText("##AVDPath",&workingDirROMExport);
|
||||||
|
@ -5656,6 +5658,7 @@ bool FurnaceGUI::loop() {
|
||||||
if (pendingInsSingle) {
|
if (pendingInsSingle) {
|
||||||
ImGui::Text("this is an instrument bank! select which one to use:");
|
ImGui::Text("this is an instrument bank! select which one to use:");
|
||||||
} else {
|
} else {
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("this is an instrument bank! select which ones to load:");
|
ImGui::Text("this is an instrument bank! select which ones to load:");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
if (ImGui::Button("All")) {
|
if (ImGui::Button("All")) {
|
||||||
|
@ -5743,6 +5746,7 @@ bool FurnaceGUI::loop() {
|
||||||
}
|
}
|
||||||
|
|
||||||
ImGui::BeginDisabled(pendingRawSampleDepth!=DIV_SAMPLE_DEPTH_8BIT && pendingRawSampleDepth!=DIV_SAMPLE_DEPTH_16BIT);
|
ImGui::BeginDisabled(pendingRawSampleDepth!=DIV_SAMPLE_DEPTH_8BIT && pendingRawSampleDepth!=DIV_SAMPLE_DEPTH_16BIT);
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Channels");
|
ImGui::Text("Channels");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
if (ImGui::InputInt("##RSChans",&pendingRawSampleChannels)) {
|
if (ImGui::InputInt("##RSChans",&pendingRawSampleChannels)) {
|
||||||
|
|
|
@ -4264,6 +4264,7 @@ void FurnaceGUI::drawInsEdit() {
|
||||||
ImGui::EndTabItem();
|
ImGui::EndTabItem();
|
||||||
}
|
}
|
||||||
if (ins->type==DIV_INS_C64) if (ImGui::BeginTabItem("C64")) {
|
if (ins->type==DIV_INS_C64) if (ImGui::BeginTabItem("C64")) {
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Waveform");
|
ImGui::Text("Waveform");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
pushToggleColors(ins->c64.triOn);
|
pushToggleColors(ins->c64.triOn);
|
||||||
|
@ -4348,6 +4349,7 @@ void FurnaceGUI::drawInsEdit() {
|
||||||
P(CWSliderScalar("Cutoff",ImGuiDataType_U16,&ins->c64.cut,&_ZERO,&_TWO_THOUSAND_FORTY_SEVEN)); rightClickable
|
P(CWSliderScalar("Cutoff",ImGuiDataType_U16,&ins->c64.cut,&_ZERO,&_TWO_THOUSAND_FORTY_SEVEN)); rightClickable
|
||||||
P(CWSliderScalar("Resonance",ImGuiDataType_U8,&ins->c64.res,&_ZERO,&_FIFTEEN)); rightClickable
|
P(CWSliderScalar("Resonance",ImGuiDataType_U8,&ins->c64.res,&_ZERO,&_FIFTEEN)); rightClickable
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Filter Mode");
|
ImGui::Text("Filter Mode");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
pushToggleColors(ins->c64.lp);
|
pushToggleColors(ins->c64.lp);
|
||||||
|
@ -5250,6 +5252,7 @@ void FurnaceGUI::drawInsEdit() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Wave 1");
|
ImGui::Text("Wave 1");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -5260,6 +5263,7 @@ void FurnaceGUI::drawInsEdit() {
|
||||||
}
|
}
|
||||||
if (isSingleWaveFX) {
|
if (isSingleWaveFX) {
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Wave 2");
|
ImGui::Text("Wave 2");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
|
|
@ -244,6 +244,7 @@ void FurnaceGUI::drawMixer() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("%d. %s",i+1,getSystemName(e->song.system[i]));
|
ImGui::Text("%d. %s",i+1,getSystemName(e->song.system[i]));
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
if (ImGui::Checkbox("Invert",&doInvert)) {
|
if (ImGui::Checkbox("Invert",&doInvert)) {
|
||||||
|
|
|
@ -372,6 +372,7 @@ void FurnaceGUI::drawSampleEdit() {
|
||||||
if (sampleInfo) {
|
if (sampleInfo) {
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Type");
|
ImGui::Text("Type");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -445,6 +446,7 @@ void FurnaceGUI::drawSampleEdit() {
|
||||||
bool coarseChanged=false;
|
bool coarseChanged=false;
|
||||||
|
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Hz");
|
ImGui::Text("Hz");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -459,6 +461,7 @@ void FurnaceGUI::drawSampleEdit() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Note");
|
ImGui::Text("Note");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -501,6 +504,7 @@ void FurnaceGUI::drawSampleEdit() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Fine");
|
ImGui::Text("Fine");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -537,6 +541,7 @@ void FurnaceGUI::drawSampleEdit() {
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::BeginDisabled(!(doLoop || keepLoopAlive));
|
ImGui::BeginDisabled(!(doLoop || keepLoopAlive));
|
||||||
keepLoopAlive=false;
|
keepLoopAlive=false;
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Mode");
|
ImGui::Text("Mode");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
pushWarningColor(!warnLoopMode.empty());
|
pushWarningColor(!warnLoopMode.empty());
|
||||||
|
@ -560,6 +565,7 @@ void FurnaceGUI::drawSampleEdit() {
|
||||||
popWarningColor();
|
popWarningColor();
|
||||||
|
|
||||||
pushWarningColor(!warnLoopPos.empty());
|
pushWarningColor(!warnLoopPos.empty());
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Start");
|
ImGui::Text("Start");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -585,6 +591,7 @@ void FurnaceGUI::drawSampleEdit() {
|
||||||
ImGui::SetTooltip("%s",warnLoopPos.c_str());
|
ImGui::SetTooltip("%s",warnLoopPos.c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("End");
|
ImGui::Text("End");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -1018,6 +1025,7 @@ void FurnaceGUI::drawSampleEdit() {
|
||||||
if (sampleFilterRes<0.0f) sampleFilterRes=0.0f;
|
if (sampleFilterRes<0.0f) sampleFilterRes=0.0f;
|
||||||
if (sampleFilterRes>0.99f) sampleFilterRes=0.99f;
|
if (sampleFilterRes>0.99f) sampleFilterRes=0.99f;
|
||||||
}
|
}
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Power");
|
ImGui::Text("Power");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
if (ImGui::RadioButton("1x",sampleFilterPower==1)) {
|
if (ImGui::RadioButton("1x",sampleFilterPower==1)) {
|
||||||
|
|
|
@ -239,6 +239,7 @@ const char* specificControls[18]={
|
||||||
#define UI_KEYBIND_CONFIG(what) \
|
#define UI_KEYBIND_CONFIG(what) \
|
||||||
ImGui::TableNextRow(); \
|
ImGui::TableNextRow(); \
|
||||||
ImGui::TableNextColumn(); \
|
ImGui::TableNextColumn(); \
|
||||||
|
ImGui::AlignTextToFramePadding();\
|
||||||
ImGui::TextUnformatted(guiActions[what].friendlyName); \
|
ImGui::TextUnformatted(guiActions[what].friendlyName); \
|
||||||
ImGui::TableNextColumn(); \
|
ImGui::TableNextColumn(); \
|
||||||
if (ImGui::Button(fmt::sprintf("%s##KC_" #what,(bindSetPending && bindSetTarget==what)?"Press key...":getKeyName(actionKeys[what])).c_str())) { \
|
if (ImGui::Button(fmt::sprintf("%s##KC_" #what,(bindSetPending && bindSetTarget==what)?"Press key...":getKeyName(actionKeys[what])).c_str())) { \
|
||||||
|
@ -474,6 +475,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
|
|
||||||
// SUBSECTION CHIP
|
// SUBSECTION CHIP
|
||||||
CONFIG_SUBSECTION("Chip");
|
CONFIG_SUBSECTION("Chip");
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Initial system:");
|
ImGui::Text("Initial system:");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
if (ImGui::Button("Current system")) {
|
if (ImGui::Button("Current system")) {
|
||||||
|
@ -552,6 +554,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
settings.initialSysName="Sega Genesis/Mega Drive";
|
settings.initialSysName="Sega Genesis/Mega Drive";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Name");
|
ImGui::Text("Name");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -720,6 +723,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
// SUBSECTION OUTPUT
|
// SUBSECTION OUTPUT
|
||||||
CONFIG_SUBSECTION("Output");
|
CONFIG_SUBSECTION("Output");
|
||||||
#ifdef HAVE_JACK
|
#ifdef HAVE_JACK
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Backend");
|
ImGui::Text("Backend");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
int prevAudioEngine=settings.audioEngine;
|
int prevAudioEngine=settings.audioEngine;
|
||||||
|
@ -731,6 +735,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (settings.audioEngine==DIV_AUDIO_SDL) {
|
if (settings.audioEngine==DIV_AUDIO_SDL) {
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Driver");
|
ImGui::Text("Driver");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
if (ImGui::BeginCombo("##SDLADriver",settings.sdlAudioDriver.empty()?"Automatic":settings.sdlAudioDriver.c_str())) {
|
if (ImGui::BeginCombo("##SDLADriver",settings.sdlAudioDriver.empty()?"Automatic":settings.sdlAudioDriver.c_str())) {
|
||||||
|
@ -749,6 +754,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Device");
|
ImGui::Text("Device");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
String audioDevName=settings.audioDevice.empty()?"<System default>":settings.audioDevice;
|
String audioDevName=settings.audioDevice.empty()?"<System default>":settings.audioDevice;
|
||||||
|
@ -764,6 +770,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
ImGui::EndCombo();
|
ImGui::EndCombo();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Sample rate");
|
ImGui::Text("Sample rate");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
String sr=fmt::sprintf("%d",settings.audioRate);
|
String sr=fmt::sprintf("%d",settings.audioRate);
|
||||||
|
@ -788,6 +795,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
if (settings.audioChans>16) settings.audioChans=16;
|
if (settings.audioChans>16) settings.audioChans=16;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Channels");
|
ImGui::Text("Channels");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
String chStr=(settings.audioChans<1 || settings.audioChans>8)?"What?":nonProAudioOuts[settings.audioChans-1];
|
String chStr=(settings.audioChans<1 || settings.audioChans>8)?"What?":nonProAudioOuts[settings.audioChans-1];
|
||||||
|
@ -801,6 +809,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Buffer size");
|
ImGui::Text("Buffer size");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
String bs=fmt::sprintf("%d (latency: ~%.1fms)",settings.audioBufSize,2000.0*(double)settings.audioBufSize/(double)MAX(1,settings.audioRate));
|
String bs=fmt::sprintf("%d (latency: ~%.1fms)",settings.audioBufSize,2000.0*(double)settings.audioBufSize/(double)MAX(1,settings.audioRate));
|
||||||
|
@ -835,6 +844,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
|
|
||||||
// SUBSECTION MIXING
|
// SUBSECTION MIXING
|
||||||
CONFIG_SUBSECTION("Mixing");
|
CONFIG_SUBSECTION("Mixing");
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Quality");
|
ImGui::Text("Quality");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##Quality",&settings.audioQuality,audioQualities,2);
|
ImGui::Combo("##Quality",&settings.audioQuality,audioQualities,2);
|
||||||
|
@ -846,6 +856,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
|
|
||||||
// SUBSECTION METRONOME
|
// SUBSECTION METRONOME
|
||||||
CONFIG_SUBSECTION("Metronome");
|
CONFIG_SUBSECTION("Metronome");
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Metronome volume");
|
ImGui::Text("Metronome volume");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
if (ImGui::SliderInt("##MetroVol",&settings.metroVol,0,200,"%d%%")) {
|
if (ImGui::SliderInt("##MetroVol",&settings.metroVol,0,200,"%d%%")) {
|
||||||
|
@ -859,6 +870,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
CONFIG_SECTION("MIDI") {
|
CONFIG_SECTION("MIDI") {
|
||||||
// SUBSECTION MIDI INPUT
|
// SUBSECTION MIDI INPUT
|
||||||
CONFIG_SUBSECTION("MIDI input");
|
CONFIG_SUBSECTION("MIDI input");
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("MIDI input");
|
ImGui::Text("MIDI input");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
String midiInName=settings.midiInDevice.empty()?"<disabled>":settings.midiInDevice;
|
String midiInName=settings.midiInDevice.empty()?"<disabled>":settings.midiInDevice;
|
||||||
|
@ -947,6 +959,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
}
|
}
|
||||||
ImGui::PlotLines("##VolCurveDisplay",curve,128,0,"Volume curve",0.0,127.0,ImVec2(200.0f*dpiScale,200.0f*dpiScale));
|
ImGui::PlotLines("##VolCurveDisplay",curve,128,0,"Volume curve",0.0,127.0,ImVec2(200.0f*dpiScale,200.0f*dpiScale));
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Actions:");
|
ImGui::Text("Actions:");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
if (ImGui::Button(ICON_FA_PLUS "##AddAction")) {
|
if (ImGui::Button(ICON_FA_PLUS "##AddAction")) {
|
||||||
|
@ -1109,6 +1122,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
|
|
||||||
// SUBSECTION MIDI OUTPUT
|
// SUBSECTION MIDI OUTPUT
|
||||||
CONFIG_SUBSECTION("MIDI output");
|
CONFIG_SUBSECTION("MIDI output");
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("MIDI output");
|
ImGui::Text("MIDI output");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
String midiOutName=settings.midiOutDevice.empty()?"<disabled>":settings.midiOutDevice;
|
String midiOutName=settings.midiOutDevice.empty()?"<disabled>":settings.midiOutDevice;
|
||||||
|
@ -1179,40 +1193,49 @@ void FurnaceGUI::drawSettings() {
|
||||||
CONFIG_SECTION("Emulation") {
|
CONFIG_SECTION("Emulation") {
|
||||||
// SUBSECTION LAYOUT
|
// SUBSECTION LAYOUT
|
||||||
CONFIG_SUBSECTION("Cores");
|
CONFIG_SUBSECTION("Cores");
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Arcade/YM2151 core");
|
ImGui::Text("Arcade/YM2151 core");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##ArcadeCore",&settings.arcadeCore,arcadeCores,2);
|
ImGui::Combo("##ArcadeCore",&settings.arcadeCore,arcadeCores,2);
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Genesis/YM2612 core");
|
ImGui::Text("Genesis/YM2612 core");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##YM2612Core",&settings.ym2612Core,ym2612Cores,2);
|
ImGui::Combo("##YM2612Core",&settings.ym2612Core,ym2612Cores,2);
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("SN76489 core");
|
ImGui::Text("SN76489 core");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##SNCore",&settings.snCore,snCores,2);
|
ImGui::Combo("##SNCore",&settings.snCore,snCores,2);
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("NES core");
|
ImGui::Text("NES core");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##NESCore",&settings.nesCore,nesCores,2);
|
ImGui::Combo("##NESCore",&settings.nesCore,nesCores,2);
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("FDS core");
|
ImGui::Text("FDS core");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##FDSCore",&settings.fdsCore,nesCores,2);
|
ImGui::Combo("##FDSCore",&settings.fdsCore,nesCores,2);
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("SID core");
|
ImGui::Text("SID core");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##C64Core",&settings.c64Core,c64Cores,3);
|
ImGui::Combo("##C64Core",&settings.c64Core,c64Cores,3);
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("POKEY core");
|
ImGui::Text("POKEY core");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##POKEYCore",&settings.pokeyCore,pokeyCores,2);
|
ImGui::Combo("##POKEYCore",&settings.pokeyCore,pokeyCores,2);
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("OPN/OPNA/OPNB cores");
|
ImGui::Text("OPN/OPNA/OPNB cores");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##OPNCore",&settings.opnCore,opnCores,2);
|
ImGui::Combo("##OPNCore",&settings.opnCore,opnCores,2);
|
||||||
|
|
||||||
ImGui::Separator();
|
ImGui::Separator();
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("PC Speaker strategy");
|
ImGui::Text("PC Speaker strategy");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##PCSOutMethod",&settings.pcSpeakerOutMethod,pcspkrOutMethods,5);
|
ImGui::Combo("##PCSOutMethod",&settings.pcSpeakerOutMethod,pcspkrOutMethods,5);
|
||||||
|
@ -1220,6 +1243,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
ImGui::Separator();
|
ImGui::Separator();
|
||||||
ImGui::Text("Sample ROMs:");
|
ImGui::Text("Sample ROMs:");
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("OPL4 YRW801 path");
|
ImGui::Text("OPL4 YRW801 path");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::InputText("##YRW801Path",&settings.yrw801Path);
|
ImGui::InputText("##YRW801Path",&settings.yrw801Path);
|
||||||
|
@ -1228,6 +1252,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
openFileDialog(GUI_FILE_YRW801_ROM_OPEN);
|
openFileDialog(GUI_FILE_YRW801_ROM_OPEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("MultiPCM TG100 path");
|
ImGui::Text("MultiPCM TG100 path");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::InputText("##TG100Path",&settings.tg100Path);
|
ImGui::InputText("##TG100Path",&settings.tg100Path);
|
||||||
|
@ -1236,6 +1261,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
openFileDialog(GUI_FILE_TG100_ROM_OPEN);
|
openFileDialog(GUI_FILE_TG100_ROM_OPEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("MultiPCM MU5 path");
|
ImGui::Text("MultiPCM MU5 path");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::InputText("##MU5Path",&settings.mu5Path);
|
ImGui::InputText("##MU5Path",&settings.mu5Path);
|
||||||
|
@ -1605,6 +1631,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
CONFIG_SECTION("Interface") {
|
CONFIG_SECTION("Interface") {
|
||||||
// SUBSECTION LAYOUT
|
// SUBSECTION LAYOUT
|
||||||
CONFIG_SUBSECTION("Layout");
|
CONFIG_SUBSECTION("Layout");
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Workspace layout:");
|
ImGui::Text("Workspace layout:");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
if (ImGui::Button("Import")) {
|
if (ImGui::Button("Import")) {
|
||||||
|
@ -1909,6 +1936,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
|
|
||||||
// SUBSECTION TEXT
|
// SUBSECTION TEXT
|
||||||
CONFIG_SUBSECTION("Text");
|
CONFIG_SUBSECTION("Text");
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Main font");
|
ImGui::Text("Main font");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##MainFont",&settings.mainFont,mainFonts,7);
|
ImGui::Combo("##MainFont",&settings.mainFont,mainFonts,7);
|
||||||
|
@ -1925,6 +1953,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
if (settings.mainFontSize>96) settings.mainFontSize=96;
|
if (settings.mainFontSize>96) settings.mainFontSize=96;
|
||||||
}
|
}
|
||||||
ImGui::Unindent();
|
ImGui::Unindent();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Header font");
|
ImGui::Text("Header font");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##HeadFont",&settings.headFont,headFonts,7);
|
ImGui::Combo("##HeadFont",&settings.headFont,headFonts,7);
|
||||||
|
@ -1941,6 +1970,7 @@ void FurnaceGUI::drawSettings() {
|
||||||
if (settings.headFontSize>96) settings.headFontSize=96;
|
if (settings.headFontSize>96) settings.headFontSize=96;
|
||||||
}
|
}
|
||||||
ImGui::Unindent();
|
ImGui::Unindent();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Pattern font");
|
ImGui::Text("Pattern font");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Combo("##PatFont",&settings.patFont,patFonts,7);
|
ImGui::Combo("##PatFont",&settings.patFont,patFonts,7);
|
||||||
|
|
|
@ -36,6 +36,7 @@ void FurnaceGUI::drawSongInfo(bool asChild) {
|
||||||
ImGui::TableSetupColumn("c1",ImGuiTableColumnFlags_WidthStretch,0.0);
|
ImGui::TableSetupColumn("c1",ImGuiTableColumnFlags_WidthStretch,0.0);
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Name");
|
ImGui::Text("Name");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
float avail=ImGui::GetContentRegionAvail().x;
|
float avail=ImGui::GetContentRegionAvail().x;
|
||||||
|
@ -59,6 +60,7 @@ void FurnaceGUI::drawSongInfo(bool asChild) {
|
||||||
}
|
}
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Author");
|
ImGui::Text("Author");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(avail);
|
ImGui::SetNextItemWidth(avail);
|
||||||
|
@ -68,6 +70,7 @@ void FurnaceGUI::drawSongInfo(bool asChild) {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Album");
|
ImGui::Text("Album");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(avail);
|
ImGui::SetNextItemWidth(avail);
|
||||||
|
@ -77,6 +80,7 @@ void FurnaceGUI::drawSongInfo(bool asChild) {
|
||||||
if (!basicMode) {
|
if (!basicMode) {
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("System");
|
ImGui::Text("System");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(MAX(16.0f*dpiScale,avail-autoButtonSize-ImGui::GetStyle().ItemSpacing.x));
|
ImGui::SetNextItemWidth(MAX(16.0f*dpiScale,avail-autoButtonSize-ImGui::GetStyle().ItemSpacing.x));
|
||||||
|
@ -112,6 +116,7 @@ void FurnaceGUI::drawSongInfo(bool asChild) {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Tuning (A-4)");
|
ImGui::Text("Tuning (A-4)");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
float tune=e->song.tuning;
|
float tune=e->song.tuning;
|
||||||
|
|
|
@ -37,6 +37,7 @@ void FurnaceGUI::drawSpeed(bool asChild) {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
if (ImGui::SmallButton(tempoView?"Base Tempo##TempoOrHz":"Tick Rate##TempoOrHz")) {
|
if (ImGui::SmallButton(tempoView?"Base Tempo##TempoOrHz":"Tick Rate##TempoOrHz")) {
|
||||||
tempoView=!tempoView;
|
tempoView=!tempoView;
|
||||||
}
|
}
|
||||||
|
@ -74,6 +75,7 @@ void FurnaceGUI::drawSpeed(bool asChild) {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
if (keepGrooveAlive || e->curSubSong->speeds.len>2) {
|
if (keepGrooveAlive || e->curSubSong->speeds.len>2) {
|
||||||
if (ImGui::SmallButton("Groove")) {
|
if (ImGui::SmallButton("Groove")) {
|
||||||
e->lockEngine([this]() {
|
e->lockEngine([this]() {
|
||||||
|
@ -163,6 +165,7 @@ void FurnaceGUI::drawSpeed(bool asChild) {
|
||||||
if (!basicMode) {
|
if (!basicMode) {
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Virtual Tempo");
|
ImGui::Text("Virtual Tempo");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(halfAvail);
|
ImGui::SetNextItemWidth(halfAvail);
|
||||||
|
@ -185,6 +188,7 @@ void FurnaceGUI::drawSpeed(bool asChild) {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Divider");
|
ImGui::Text("Divider");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(halfAvail);
|
ImGui::SetNextItemWidth(halfAvail);
|
||||||
|
@ -200,6 +204,7 @@ void FurnaceGUI::drawSpeed(bool asChild) {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Highlight");
|
ImGui::Text("Highlight");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(halfAvail);
|
ImGui::SetNextItemWidth(halfAvail);
|
||||||
|
@ -222,6 +227,7 @@ void FurnaceGUI::drawSpeed(bool asChild) {
|
||||||
ImGui::TableSetupColumn("c2",ImGuiTableColumnFlags_WidthStretch,0.0);
|
ImGui::TableSetupColumn("c2",ImGuiTableColumnFlags_WidthStretch,0.0);
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Pattern Length");
|
ImGui::Text("Pattern Length");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
float avail=ImGui::GetContentRegionAvail().x;
|
float avail=ImGui::GetContentRegionAvail().x;
|
||||||
|
@ -236,6 +242,7 @@ void FurnaceGUI::drawSpeed(bool asChild) {
|
||||||
if (!basicMode) {
|
if (!basicMode) {
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Song Length");
|
ImGui::Text("Song Length");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(avail);
|
ImGui::SetNextItemWidth(avail);
|
||||||
|
|
|
@ -32,6 +32,7 @@ void FurnaceGUI::drawStats() {
|
||||||
size_t lastProcTime=e->processTime;
|
size_t lastProcTime=e->processTime;
|
||||||
double maxGot=1000000000.0*(double)e->getAudioDescGot().bufsize/(double)e->getAudioDescGot().rate;
|
double maxGot=1000000000.0*(double)e->getAudioDescGot().bufsize/(double)e->getAudioDescGot().rate;
|
||||||
String procStr=fmt::sprintf("%.1f%%",100.0*((double)lastProcTime/(double)maxGot));
|
String procStr=fmt::sprintf("%.1f%%",100.0*((double)lastProcTime/(double)maxGot));
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Audio load");
|
ImGui::Text("Audio load");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::ProgressBar((double)lastProcTime/maxGot,ImVec2(-FLT_MIN,0),procStr.c_str());
|
ImGui::ProgressBar((double)lastProcTime/maxGot,ImVec2(-FLT_MIN,0),procStr.c_str());
|
||||||
|
@ -47,6 +48,7 @@ void FurnaceGUI::drawStats() {
|
||||||
} else {
|
} else {
|
||||||
usageStr=fmt::sprintf("%d/%d",usage,capacity);
|
usageStr=fmt::sprintf("%d/%d",usage,capacity);
|
||||||
}
|
}
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("%s [%d]", e->getSystemName(e->song.system[i]), j);
|
ImGui::Text("%s [%d]", e->getSystemName(e->song.system[i]), j);
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::ProgressBar(((float)usage)/((float)capacity),ImVec2(-FLT_MIN,0),usageStr.c_str());
|
ImGui::ProgressBar(((float)usage)/((float)capacity),ImVec2(-FLT_MIN,0),usageStr.c_str());
|
||||||
|
|
|
@ -127,6 +127,7 @@ void FurnaceGUI::drawSubSongs(bool asChild) {
|
||||||
ImGui::SetTooltip("Remove");
|
ImGui::SetTooltip("Remove");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Name");
|
ImGui::Text("Name");
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
|
|
@ -593,6 +593,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Duty");
|
ImGui::Text("Duty");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -602,6 +603,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("Exponent");
|
ImGui::Text("Exponent");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -611,6 +613,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("XOR Point");
|
ImGui::Text("XOR Point");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x);
|
||||||
|
@ -630,6 +633,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
for (int i=0; i<16; i++) {
|
for (int i=0; i<16; i++) {
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("%d",i+1);
|
ImGui::Text("%d",i+1);
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
ImGui::PushID(140+i);
|
ImGui::PushID(140+i);
|
||||||
|
@ -683,6 +687,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
for (int i=0; i<4; i++) {
|
for (int i=0; i<4; i++) {
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("%d",i+1);
|
ImGui::Text("%d",i+1);
|
||||||
|
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
@ -727,6 +732,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
for (int i=0; i<4; i++) {
|
for (int i=0; i<4; i++) {
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("%d",i+1);
|
ImGui::Text("%d",i+1);
|
||||||
|
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
@ -760,6 +766,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("1");
|
ImGui::Text("1");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
if (ImGui::Checkbox("##ConO1",&waveGenFMCon0[0])) {
|
if (ImGui::Checkbox("##ConO1",&waveGenFMCon0[0])) {
|
||||||
|
@ -784,6 +791,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("2");
|
ImGui::Text("2");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
if (ImGui::Checkbox("##Con11",&waveGenFMCon1[0])) {
|
if (ImGui::Checkbox("##Con11",&waveGenFMCon1[0])) {
|
||||||
|
@ -808,6 +816,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("3");
|
ImGui::Text("3");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
if (ImGui::Checkbox("##Con21",&waveGenFMCon2[0])) {
|
if (ImGui::Checkbox("##Con21",&waveGenFMCon2[0])) {
|
||||||
|
@ -832,6 +841,7 @@ void FurnaceGUI::drawWaveEdit() {
|
||||||
|
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
|
ImGui::AlignTextToFramePadding();
|
||||||
ImGui::Text("4");
|
ImGui::Text("4");
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
if (ImGui::Checkbox("##Con31",&waveGenFMCon3[0])) {
|
if (ImGui::Checkbox("##Con31",&waveGenFMCon3[0])) {
|
||||||
|
|
Loading…
Reference in a new issue