mirror of
https://github.com/tildearrow/furnace.git
synced 2025-01-06 23:51:21 +00:00
proper setting name, fix overflow by making smaller, ay is psg, sid3 case
im done please
This commit is contained in:
parent
6e47a119fa
commit
a061639f4b
7 changed files with 20 additions and 3 deletions
|
@ -252,6 +252,7 @@ const char* chanNames[CHANNEL_TYPE_MAX+1]={
|
|||
_N("Drums"),
|
||||
_N("Slope"), // PowerNoise
|
||||
_N("Wave"), // not wavetable (VERA, 5E01)
|
||||
_N("PSG"),
|
||||
|
||||
_N("Channel"), // if neither
|
||||
_N("Channels") // in case this makes l10n easier
|
||||
|
|
|
@ -35,6 +35,7 @@ enum FurnaceGUIChanTypes {
|
|||
CHANNEL_TYPE_DRUMS,
|
||||
CHANNEL_TYPE_SLOPE,
|
||||
CHANNEL_TYPE_WAVE,
|
||||
CHANNEL_TYPE_PSG,
|
||||
CHANNEL_TYPE_OTHER,
|
||||
|
||||
CHANNEL_TYPE_MAX
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
#include "misc/cpp/imgui_stdlib.h"
|
||||
#include <fmt/printf.h>
|
||||
#include <algorithm>
|
||||
#include <imgui.h>
|
||||
|
||||
String sysDefID;
|
||||
|
||||
|
@ -81,6 +82,7 @@ void FurnaceGUI::drawSysDefs(std::vector<FurnaceGUISysDef>& category, bool& acce
|
|||
ImGui::PushTextWrapPos(MIN(scrW*dpiScale,400.0f*dpiScale));
|
||||
ImGui::Text("%s (x%d): ",sysDef->name,chipCounts[chip]);
|
||||
ImGui::Text("%s",sysDef->description);
|
||||
ImGui::Separator();
|
||||
if (settings.sysTooltipChanInfoStyle&1) drawSystemChannelInfoText(sysDef);
|
||||
if (settings.sysTooltipChanInfoStyle&2) drawSystemChannelInfo(sysDef);
|
||||
ImGui::PopTextWrapPos();
|
||||
|
|
|
@ -3331,7 +3331,7 @@ void FurnaceGUI::drawSettings() {
|
|||
settings.sysTooltipChanInfoStyle=1;
|
||||
settingsChanged=true;
|
||||
}
|
||||
if (ImGui::RadioButton("Color... things?##stciCO",settings.sysTooltipChanInfoStyle==2)) {
|
||||
if (ImGui::RadioButton("Color tiles##stciCO",settings.sysTooltipChanInfoStyle==2)) {
|
||||
settings.sysTooltipChanInfoStyle=2; // retext!!!
|
||||
settingsChanged=true;
|
||||
}
|
||||
|
|
|
@ -94,6 +94,7 @@ void FurnaceGUI::drawSysManager() {
|
|||
if (ImGui::BeginTooltip()) {
|
||||
ImGui::PushTextWrapPos(420.0f*dpiScale); // arbitrary constant
|
||||
ImGui::TextWrapped("%s",sysDef->description);
|
||||
ImGui::Separator();
|
||||
if (settings.sysTooltipChanInfoStyle&1) drawSystemChannelInfoText(sysDef);
|
||||
if (settings.sysTooltipChanInfoStyle&2) drawSystemChannelInfo(sysDef);
|
||||
ImGui::PopTextWrapPos();
|
||||
|
|
|
@ -300,8 +300,8 @@ void FurnaceGUI::drawSystemChannelInfo(const DivSysDef* whichDef) {
|
|||
float scaler=5.0f*dpiScale;
|
||||
float x=p.x+dpiScale;
|
||||
for (int i=0; i<whichDef->channels; i++) {
|
||||
dl->AddRectFilled(ImVec2(x,p.y),ImVec2(x+2.0f*scaler,p.y+4.0f*scaler),ImGui::GetColorU32(uiColors[whichDef->chanTypes[i]+GUI_COLOR_CHANNEL_FM]),scaler);
|
||||
x+=3.0f*scaler;
|
||||
dl->AddRectFilled(ImVec2(x,p.y),ImVec2(x+1.5f*scaler,p.y+3.0f*scaler),ImGui::GetColorU32(uiColors[whichDef->chanTypes[i]+GUI_COLOR_CHANNEL_FM]),scaler);
|
||||
x+=2.0f*scaler;
|
||||
}
|
||||
ImGui::Dummy(ImVec2(0,4*scaler));
|
||||
}
|
||||
|
@ -342,6 +342,10 @@ void FurnaceGUI::drawSystemChannelInfoText(const DivSysDef* whichDef) {
|
|||
chanCount[whichDef->chanTypes[i]]++;
|
||||
}
|
||||
break;
|
||||
case DIV_INS_AY:
|
||||
case DIV_INS_AY8930:
|
||||
chanCount[CHANNEL_TYPE_PSG]++;
|
||||
break;
|
||||
case DIV_INS_OPL_DRUMS:
|
||||
case DIV_INS_OPL:
|
||||
case DIV_INS_OPLL:
|
||||
|
@ -403,6 +407,13 @@ void FurnaceGUI::drawSystemChannelInfoText(const DivSysDef* whichDef) {
|
|||
}
|
||||
chanCount[whichDef->chanTypes[i]]++;
|
||||
break;
|
||||
case DIV_INS_SID3:
|
||||
if (whichDef->chanTypes[i]!=DIV_CH_WAVE) {
|
||||
chanCount[CHANNEL_TYPE_OTHER]++;
|
||||
} else {
|
||||
chanCount[CHANNEL_TYPE_WAVE]++;
|
||||
}
|
||||
break;
|
||||
case DIV_INS_C64: // uncategorizable (by me)
|
||||
case DIV_INS_TIA:
|
||||
case DIV_INS_PET:
|
||||
|
|
|
@ -92,6 +92,7 @@ DivSystem FurnaceGUI::systemPicker(bool fullWidth) {
|
|||
if (hoveredSys!=DIV_SYSTEM_NULL) {
|
||||
const DivSysDef* sysDef=e->getSystemDef(hoveredSys);
|
||||
ImGui::TextWrapped("%s",sysDef->description);
|
||||
ImGui::Separator();
|
||||
if (settings.sysTooltipChanInfoStyle&1) drawSystemChannelInfoText(sysDef);
|
||||
if (settings.sysTooltipChanInfoStyle&2) drawSystemChannelInfo(sysDef);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue