Просмотр исходного кода

Some QOL changes + full About tab

tbvns 6 месяцев назад
Родитель
Сommit
39c09e113b

+ 1 - 1
PowerGDEditor/src/main/java/xyz/tbvns/ui/Elements/ModelsList.java

@@ -21,7 +21,7 @@ import java.util.List;
 public class ModelsList implements Element {
     @Override
     public void render() {
-        ImGui.begin("Menu", ImGuiWindowFlags.NoDecoration | ImGuiWindowFlags.NoMove);
+        ImGui.begin("Menu", ImGuiWindowFlags.NoDecoration | ImGuiWindowFlags.NoMove | ImGuiWindowFlags.NoBringToFrontOnFocus);
         ImGui.setWindowSize(200, Gdx.graphics.getHeight() - 19 - 200);
         ImGui.setWindowPos(0, 19);
 

+ 1 - 1
PowerGDEditor/src/main/java/xyz/tbvns/ui/Elements/Timeline.java

@@ -9,7 +9,7 @@ import xyz.tbvns.ui.Element;
 public class Timeline implements Element {
     @Override
     public void render() {
-        ImGui.begin("TimeMenu", ImGuiWindowFlags.NoDecoration | ImGuiWindowFlags.NoMove);
+        ImGui.begin("TimeMenu", ImGuiWindowFlags.NoDecoration | ImGuiWindowFlags.NoMove | ImGuiWindowFlags.NoBringToFrontOnFocus);
         ImGui.setWindowSize(Gdx.graphics.getWidth(), 201);
         ImGui.setWindowPos(0, Gdx.graphics.getHeight() - 201);
 

+ 26 - 6
PowerGDEditor/src/main/java/xyz/tbvns/ui/MenuBarTabs/AboutTabs.java

@@ -2,17 +2,37 @@ package xyz.tbvns.ui.MenuBarTabs;
 
 import imgui.ImGui;
 import xyz.tbvns.ui.MenuBarTab;
+import xyz.tbvns.ui.UIManager;
+import xyz.tbvns.ui.Windows.HelpWindow;
+import xyz.tbvns.ui.Windows.InfoWindow;
+
+import java.awt.*;
+import java.net.URI;
 
 public class AboutTabs implements MenuBarTab {
     @Override
     public void render() {
         if (ImGui.beginMenu("About")) {
-            ImGui.menuItem("Help", "H");
-            ImGui.menuItem("Wiki", "CTRL - H");
-            ImGui.menuItem("Info", "I");
-            ImGui.menuItem("Discord");
-            ImGui.menuItem("Git");
-            ImGui.endMenu();
+            try {
+                if (ImGui.menuItem("Help", "I")) {
+                    UIManager.getActiveUI().put(HelpWindow.class, true);
+                }
+                if (ImGui.menuItem("Wiki", "H")) {
+                    Desktop.getDesktop().browse(new URI("https://git.tbvns.xyz/tbvns/PowerGD/wiki"));
+                }
+                if (ImGui.menuItem("Info", "I")) {
+                    UIManager.getActiveUI().put(InfoWindow.class, true);
+                }
+                if (ImGui.menuItem("Discord")) {
+                    Desktop.getDesktop().browse(new URI("https://discord.gg/Vh8QAMq6BY"));
+                }
+                if (ImGui.menuItem("Git")) {
+                    Desktop.getDesktop().browse(new URI("https://git.tbvns.xyz/tbvns/PowerGD"));
+                }
+                ImGui.endMenu();
+            } catch (Exception e) {
+                throw new RuntimeException(e);
+            }
         }
     }
 

+ 20 - 0
PowerGDEditor/src/main/java/xyz/tbvns/ui/Windows/HelpWindow.java

@@ -0,0 +1,20 @@
+package xyz.tbvns.ui.Windows;
+
+import imgui.ImGui;
+import imgui.flag.ImGuiWindowFlags;
+import xyz.tbvns.ui.Element;
+import xyz.tbvns.ui.Renderable;
+import xyz.tbvns.ui.UIManager;
+
+public class HelpWindow implements Element {
+    @Override
+    public void render() {
+        ImGui.begin("Help");
+        //TODO: list shortcut / functionalities
+        ImGui.text("Not implemented yet !");
+        if (ImGui.button("Close")) {
+            UIManager.getActiveUI().put(HelpWindow.class, false);
+        }
+        ImGui.end();
+    }
+}

+ 19 - 0
PowerGDEditor/src/main/java/xyz/tbvns/ui/Windows/InfoWindow.java

@@ -0,0 +1,19 @@
+package xyz.tbvns.ui.Windows;
+
+import imgui.ImGui;
+import imgui.flag.ImGuiWindowFlags;
+import xyz.tbvns.ui.Element;
+import xyz.tbvns.ui.Renderable;
+import xyz.tbvns.ui.UIManager;
+
+public class InfoWindow implements Element {
+    @Override
+    public void render() {
+        ImGui.begin("Info");
+        ImGui.text("Not implemented yet !");
+        if (ImGui.button("Close")) {
+            UIManager.getActiveUI().put(InfoWindow.class, false);
+        }
+        ImGui.end();
+    }
+}

+ 0 - 1
PowerGDEditor/src/main/java/xyz/tbvns/ui/Windows/LevelSelector.java

@@ -36,7 +36,6 @@ public class LevelSelector implements Element {
 
     public void render() {
         ImGui.begin("Load a level:", ImGuiWindowFlags.NoCollapse);
-        ImGui.setWindowFocus();
         ImString string = new ImString();
         ImGui.inputTextWithHint("##", "Search...", string, ImGuiInputTextFlags.AutoSelectAll);
         for (Level level : levelList) {