99 lines
4.5 KiB
C++
99 lines
4.5 KiB
C++
#include <cstdio>
|
|
#include <SDL2/SDL.h>
|
|
#include <bits/stdc++.h>
|
|
|
|
#include "imgui.h"
|
|
#include "ssup.h"
|
|
|
|
#include "actions.cpp"
|
|
|
|
using namespace std;
|
|
|
|
|
|
void updateAppStyle(){
|
|
switch (applicationStyle){
|
|
case 0:
|
|
ImGui::StyleColorsLight();
|
|
break;
|
|
case 1:
|
|
ImGui::StyleColorsDark();
|
|
break;
|
|
default:
|
|
ImGui::StyleColorsClassic();
|
|
break;
|
|
}
|
|
}
|
|
|
|
void renderMenu(){
|
|
ImGui::SetNextWindowPos(ImVec2(0, 0), ImGuiCond_Always);
|
|
ImGui::SetNextWindowSize(ImVec2(ImGui::GetMainViewport()->Size.x, 0), ImGuiCond_Always);
|
|
ImGui::Begin("###INVISFRAME", NULL, ImGuiWindowFlags_NoBackground | ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoDecoration | ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_MenuBar);
|
|
|
|
if (ImGui::BeginMenuBar()){
|
|
if (ImGui::BeginMenu(appLang == LANG::ENGLISH ? "Edit" : "Bearbeiten")){
|
|
|
|
ImGui::EndMenu();
|
|
} if (ImGui::BeginMenu(appLang == LANG::ENGLISH ? "Actions" : "Aktionen")){
|
|
|
|
renderActions(),
|
|
|
|
ImGui::EndMenu();
|
|
} if (ImGui::BeginMenu(appLang == LANG::ENGLISH ? "Settings" : "Einstellungen")){
|
|
|
|
|
|
ImGui::SeparatorText("Application Style");
|
|
if (ImGui::RadioButton(appLang == LANG::ENGLISH ? "Light" : "Hell", &applicationStyle, 0)) updateAppStyle();
|
|
if (ImGui::RadioButton(appLang == LANG::ENGLISH ? "Dark" : "Dunkel", &applicationStyle, 1)) updateAppStyle();
|
|
if (ImGui::RadioButton(appLang == LANG::ENGLISH ? "Classic" : "Klassisch", &applicationStyle, 2)) updateAppStyle();
|
|
|
|
ImGui::SeparatorText(appLang == LANG::ENGLISH ? "Language" : "Sprache");
|
|
ImGui::RadioButton(appLang == LANG::ENGLISH ? "English" : "Englisch", &appLang, LANG::ENGLISH);
|
|
ImGui::RadioButton(appLang == LANG::ENGLISH ? "Deutsch" : "German", &appLang, LANG::GERMAN);
|
|
|
|
ImGui::EndMenu();
|
|
} if (ImGui::BeginMenu("About")){
|
|
if (ImGui::Button(appLang == LANG::ENGLISH ? "Why does this exist?" : "Warum existiert sowas?")) ImGui::OpenPopup("Fuck School");
|
|
|
|
ImVec2 center = ImGui::GetMainViewport()->GetCenter();
|
|
ImGui::SetNextWindowPos(center, ImGuiCond_Always, ImVec2(0.5f, 0.5f));
|
|
if (ImGui::BeginPopupModal("Fuck School", NULL, ImGuiWindowFlags_AlwaysAutoResize)) {
|
|
ImGui::Text(appLang == LANG::ENGLISH ?
|
|
"Because: Fuck school\nBecause: Fuck math\nBecause: Free time is more valuable than fucking school" :
|
|
"Weil: Fick Schule\nWeil: Fick Mathe\nWeil: Freizeit viel mehr Wert ist als scheiß Schule");
|
|
ImGui::Separator();
|
|
|
|
ImGui::SetItemDefaultFocus();
|
|
if (ImGui::Button("OK", ImVec2(120, 0))) ImGui::CloseCurrentPopup();
|
|
|
|
ImGui::EndPopup();
|
|
}
|
|
|
|
if (ImGui::Button(appLang == LANG::ENGLISH ? "License information" : "Lizenz Information")) ImGui::OpenPopup("Licence Info");
|
|
|
|
ImGui::SetNextWindowPos(center, ImGuiCond_Always, ImVec2(0.5f, 0.5f));
|
|
if (ImGui::BeginPopupModal("Licence Info", NULL, ImGuiWindowFlags_AlwaysAutoResize)) {
|
|
ImGui::Text(appLang == LANG::ENGLISH ?
|
|
"This shit is licenced under the GNU-GPL3 licence.\nThis means you can edit and modify this shit how ever you like.\nThe sourcecode and all info regarding the project can be found" :
|
|
"Diese Scheiße ist unter der GNU-GPL3 Lizenz lizenziert.\nDas heißt du kannst änderungen und modifikationen vorhehmen, wie du möchtest.\nDer Source-Code und jegliche Info über das Projekt kann");
|
|
ImGui::TextLinkOpenURL(appLang == LANG::ENGLISH ? "here at my Git instance" : "hier auf meiner Git Instanz", "https://git.weingardt.dev");
|
|
ImGui::Text(appLang == LANG::ENGLISH ? "or" : "oder");
|
|
ImGui::TextLinkOpenURL(appLang == LANG::ENGLISH ? "here on my website" : "hier auf meiner Webseite gefunden werden", "https://weingardt.dev/ssup");
|
|
|
|
|
|
ImGui::Separator();
|
|
|
|
ImGui::SetItemDefaultFocus();
|
|
if (ImGui::Button("OK", ImVec2(120, 0))) ImGui::CloseCurrentPopup();
|
|
|
|
ImGui::EndPopup();
|
|
}
|
|
|
|
ImGui::EndMenu();
|
|
}
|
|
|
|
ImGui::EndMenuBar();
|
|
}
|
|
|
|
ImGui::End();
|
|
}
|