GUI: new osc renderer, part 29
This commit is contained in:
parent
ecd3875a64
commit
c5d0203f94
|
@ -610,6 +610,9 @@ void FurnaceGUI::drawMobileControls() {
|
||||||
mobileMenuPos=0.0f;
|
mobileMenuPos=0.0f;
|
||||||
aboutOpen=true;
|
aboutOpen=true;
|
||||||
}
|
}
|
||||||
|
if (ImGui::Button("Shader Editor")) {
|
||||||
|
shaderEditor=!shaderEditor;
|
||||||
|
}
|
||||||
if (ImGui::Button("Switch to Desktop Mode")) {
|
if (ImGui::Button("Switch to Desktop Mode")) {
|
||||||
toggleMobileUI(!mobileUI);
|
toggleMobileUI(!mobileUI);
|
||||||
}
|
}
|
||||||
|
|
|
@ -4423,6 +4423,7 @@ bool FurnaceGUI::loop() {
|
||||||
if (ImGui::MenuItem("effect list",BIND_FOR(GUI_ACTION_WINDOW_EFFECT_LIST),effectListOpen)) effectListOpen=!effectListOpen;
|
if (ImGui::MenuItem("effect list",BIND_FOR(GUI_ACTION_WINDOW_EFFECT_LIST),effectListOpen)) effectListOpen=!effectListOpen;
|
||||||
if (ImGui::MenuItem("debug menu",BIND_FOR(GUI_ACTION_WINDOW_DEBUG))) debugOpen=!debugOpen;
|
if (ImGui::MenuItem("debug menu",BIND_FOR(GUI_ACTION_WINDOW_DEBUG))) debugOpen=!debugOpen;
|
||||||
if (ImGui::MenuItem("inspector")) inspectorOpen=!inspectorOpen;
|
if (ImGui::MenuItem("inspector")) inspectorOpen=!inspectorOpen;
|
||||||
|
if (ImGui::MenuItem("shader editor")) shaderEditor=!shaderEditor;
|
||||||
if (ImGui::MenuItem("panic",BIND_FOR(GUI_ACTION_PANIC))) e->syncReset();
|
if (ImGui::MenuItem("panic",BIND_FOR(GUI_ACTION_PANIC))) e->syncReset();
|
||||||
if (ImGui::MenuItem("about...",BIND_FOR(GUI_ACTION_WINDOW_ABOUT))) {
|
if (ImGui::MenuItem("about...",BIND_FOR(GUI_ACTION_WINDOW_ABOUT))) {
|
||||||
aboutOpen=true;
|
aboutOpen=true;
|
||||||
|
@ -4678,28 +4679,30 @@ bool FurnaceGUI::loop() {
|
||||||
}
|
}
|
||||||
|
|
||||||
// NEW CODE - REMOVE WHEN DONE
|
// NEW CODE - REMOVE WHEN DONE
|
||||||
if (ImGui::Begin("Shader Editor 2024",NULL,ImGuiWindowFlags_NoScrollWithMouse|ImGuiWindowFlags_NoScrollbar)) {
|
if (shaderEditor) {
|
||||||
ImGui::PushFont(patFont);
|
if (ImGui::Begin("Shader Editor 2024",&shaderEditor,ImGuiWindowFlags_NoScrollWithMouse|ImGuiWindowFlags_NoScrollbar)) {
|
||||||
ImGui::InputTextMultiline("##SHFragment",&newOscFragment,ImVec2(ImGui::GetContentRegionAvail().x,ImGui::GetContentRegionAvail().y-ImGui::GetFrameHeightWithSpacing()),ImGuiInputTextFlags_UndoRedo);
|
ImGui::PushFont(patFont);
|
||||||
ImGui::PopFont();
|
ImGui::InputTextMultiline("##SHFragment",&newOscFragment,ImVec2(ImGui::GetContentRegionAvail().x,ImGui::GetContentRegionAvail().y-ImGui::GetFrameHeightWithSpacing()),ImGuiInputTextFlags_UndoRedo);
|
||||||
if (ImGui::Button("Save")) {
|
ImGui::PopFont();
|
||||||
FILE* f=ps_fopen("/storage/emulated/0/osc.fsh","w");
|
if (ImGui::Button("Save")) {
|
||||||
if (f==NULL) {
|
FILE* f=ps_fopen("/storage/emulated/0/osc.fsh","w");
|
||||||
showError("Something happened");
|
if (f==NULL) {
|
||||||
} else {
|
showError("Something happened");
|
||||||
fwrite(newOscFragment.c_str(),1,newOscFragment.size(),f);
|
} else {
|
||||||
fclose(f);
|
fwrite(newOscFragment.c_str(),1,newOscFragment.size(),f);
|
||||||
showError("Saved!");
|
fclose(f);
|
||||||
}
|
showError("Saved!");
|
||||||
}
|
}
|
||||||
ImGui::SameLine();
|
}
|
||||||
if (ImGui::Button("Apply")) {
|
ImGui::SameLine();
|
||||||
if (!rend->regenOscShader(newOscFragment.c_str())) {
|
if (ImGui::Button("Apply")) {
|
||||||
showError("Of course you screwed it up, again!");
|
if (!rend->regenOscShader(newOscFragment.c_str())) {
|
||||||
|
showError("Of course you screwed it up, again!");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
ImGui::End();
|
||||||
}
|
}
|
||||||
ImGui::End();
|
|
||||||
|
|
||||||
// release selection if mouse released
|
// release selection if mouse released
|
||||||
if (ImGui::IsMouseReleased(ImGuiMouseButton_Left) && selecting) {
|
if (ImGui::IsMouseReleased(ImGuiMouseButton_Left) && selecting) {
|
||||||
|
@ -7329,6 +7332,7 @@ FurnaceGUI::FurnaceGUI():
|
||||||
snesFilterHex(false),
|
snesFilterHex(false),
|
||||||
modTableHex(false),
|
modTableHex(false),
|
||||||
displayEditString(false),
|
displayEditString(false),
|
||||||
|
shaderEditor(false),
|
||||||
mobileEdit(false),
|
mobileEdit(false),
|
||||||
killGraphics(false),
|
killGraphics(false),
|
||||||
safeMode(false),
|
safeMode(false),
|
||||||
|
|
|
@ -1505,6 +1505,7 @@ class FurnaceGUI {
|
||||||
bool wantCaptureKeyboard, oldWantCaptureKeyboard, displayMacroMenu;
|
bool wantCaptureKeyboard, oldWantCaptureKeyboard, displayMacroMenu;
|
||||||
bool displayNew, displayExport, displayPalette, fullScreen, preserveChanPos, sysDupCloneChannels, sysDupEnd, wantScrollList, noteInputPoly, notifyWaveChange;
|
bool displayNew, displayExport, displayPalette, fullScreen, preserveChanPos, sysDupCloneChannels, sysDupEnd, wantScrollList, noteInputPoly, notifyWaveChange;
|
||||||
bool displayPendingIns, pendingInsSingle, displayPendingRawSample, snesFilterHex, modTableHex, displayEditString;
|
bool displayPendingIns, pendingInsSingle, displayPendingRawSample, snesFilterHex, modTableHex, displayEditString;
|
||||||
|
bool shaderEditor;
|
||||||
bool mobileEdit;
|
bool mobileEdit;
|
||||||
bool killGraphics;
|
bool killGraphics;
|
||||||
bool safeMode;
|
bool safeMode;
|
||||||
|
|
Loading…
Reference in a new issue