mirror of
https://github.com/tildearrow/furnace.git
synced 2024-11-27 06:53:01 +00:00
GUI: add backdrop if system file picker is open
This commit is contained in:
parent
52c0044bd9
commit
ba657fe4db
4 changed files with 18 additions and 1 deletions
1
TODO.md
1
TODO.md
|
@ -13,7 +13,6 @@
|
|||
- maybe YMU759 ADPCM channel
|
||||
- ADPCM chips
|
||||
- more effects for FM param control
|
||||
- store system presets in new file
|
||||
- Game Boy envelope macro/sequence
|
||||
- option to display chip names instead of "multi-system" on title bar
|
||||
- rewrite the system name detection function anyway
|
||||
|
|
|
@ -95,6 +95,10 @@ bool FurnaceGUIFileDialog::render(const ImVec2& min, const ImVec2& max) {
|
|||
}
|
||||
}
|
||||
|
||||
bool FurnaceGUIFileDialog::isOpen() {
|
||||
return opened;
|
||||
}
|
||||
|
||||
String FurnaceGUIFileDialog::getPath() {
|
||||
if (sysDialog) {
|
||||
if (curPath.size()>1) {
|
||||
|
|
|
@ -24,6 +24,7 @@ class FurnaceGUIFileDialog {
|
|||
bool accepted();
|
||||
void close();
|
||||
bool render(const ImVec2& min, const ImVec2& max);
|
||||
bool isOpen();
|
||||
String getPath();
|
||||
String getFileName();
|
||||
explicit FurnaceGUIFileDialog(bool system):
|
||||
|
|
|
@ -2882,6 +2882,19 @@ bool FurnaceGUI::loop() {
|
|||
#endif
|
||||
}
|
||||
|
||||
if (fileDialog->isOpen() && settings.sysFileDialog) {
|
||||
ImGui::OpenPopup("System File Dialog Pending");
|
||||
}
|
||||
|
||||
if (ImGui::BeginPopupModal("System File Dialog Pending",NULL,ImGuiWindowFlags_NoTitleBar|ImGuiWindowFlags_NoBackground|ImGuiWindowFlags_NoResize|ImGuiWindowFlags_NoMove)) {
|
||||
if (!fileDialog->isOpen()) {
|
||||
ImGui::CloseCurrentPopup();
|
||||
}
|
||||
ImDrawList* dl=ImGui::GetForegroundDrawList();
|
||||
dl->AddRectFilled(ImVec2(0.0f,0.0f),ImVec2(scrW*dpiScale,scrH*dpiScale),ImGui::ColorConvertFloat4ToU32(uiColors[GUI_COLOR_MODAL_BACKDROP]));
|
||||
ImGui::EndPopup();
|
||||
}
|
||||
|
||||
if (fileDialog->render(ImVec2(600.0f*dpiScale,400.0f*dpiScale),ImVec2(scrW*dpiScale,scrH*dpiScale))) {
|
||||
bool openOpen=false;
|
||||
//ImGui::GetIO().ConfigFlags&=~ImGuiConfigFlags_NavEnableKeyboard;
|
||||
|
|
Loading…
Reference in a new issue