From ba99c5bdb6d7e147c2824bd12925e41ae53d5601 Mon Sep 17 00:00:00 2001 From: Willem Date: Mon, 14 Jul 2025 20:24:57 +0200 Subject: [PATCH] Updated dep versions and added simple mvn run cmd --- README.md | 15 +- .../gdxapp4d/app/mmdoc/MMDocDeskApp.java | 6 +- .../gdxapp4d/app/tosamp/TosAmpDeskApp.java | 6 +- gdxapp4d-boot-desktop/.pom-poop-enforcer | 1 + .../Warpship/local-override.xml | 27 ++++ gdxapp4d-boot-desktop/Warpship/logback.xml | 3 + gdxapp4d-boot-desktop/local-override.xml | 27 ---- gdxapp4d-boot-desktop/pom.xml | 50 +++++- .../boot/desktop/GDXAppDesktopLauncher.java | 2 +- gdxapp4d-chain-boot-ship-engine/pom.xml | 23 +++ gdxapp4d-chain-boot-warp-sea/pom.xml | 37 +++++ gdxapp4d-chain-dep-osgi-lib/pom.xml | 10 ++ .../src/main/chain/warp-hash.xml | 6 + .../src/main/chain/warp-sea.xml | 6 + gdxapp4d-chain-mod-vrgem4/pom.xml | 2 +- .../gdxapp4d/tos4/GDXAppTos4.java | 2 +- .../gdxapp4d/tos4/GDXAppTos4Activator.java | 27 +++- .../gdxapp4d/tos4/GDXAppTos4BootFactory.java | 12 +- .../tos4/service/SystemGdxBootArgs.java | 2 +- .../vrgem4/GDXAppVrGem4Activator.java | 6 +- .../gdxapp4d/vrgem4/ImGuiSetup.java | 19 ++- .../vrgem4/VrGem4Unicode4DServiceImpl.java | 4 +- .../vrgem4/screen/AbstractScreenDesktop.java | 5 +- .../vrgem4/view/DeskAppInputProcessor.java | 12 ++ .../src/main/java/org/slf4j/impl/MyClass.java | 34 ---- gdxapp4d-vrsys5/pom.xml | 5 + pom.xml | 146 +++++++++++++++--- 27 files changed, 354 insertions(+), 141 deletions(-) create mode 100644 gdxapp4d-boot-desktop/.pom-poop-enforcer create mode 100644 gdxapp4d-boot-desktop/Warpship/local-override.xml delete mode 100644 gdxapp4d-boot-desktop/local-override.xml delete mode 100644 gdxapp4d-vrgem4/src/main/java/org/slf4j/impl/MyClass.java diff --git a/README.md b/README.md index 93e5e754..c7d52896 100644 --- a/README.md +++ b/README.md @@ -30,16 +30,19 @@ Requirements; * 8GB of free memory * Setup a DAT Hyperdrive tool [drives](https://github.com/holepunchto/drives) -* Use an AdoptOpenJDK(11++) to run the demo -* install local copy of nx01 maven artifacts +* run `mvn install` in local copy of nx01 project -### Project Launch IDE +### Project Launch -Run "mvn package" after every git pull. +Test launch from command line; -Run the main class from gdxapp4d-boot-desktop; love.distributedrebirth.gdxapp4d.boot.desktop.GDXAppDesktopLauncher +``` +mvn verify -P test-none,run +``` -Append "use-local" to the main launcher to use the local chains. (as the real are fake) +In an IDE setup an runner with the main class from gdxapp4d-boot-desktop module; `love.distributedrebirth.gdxapp4d.boot.desktop.GDXAppDesktopLauncher` + +And append `use-local` as an argument of the main launcher to use the local chains. (as the real are fake) ## Duytschen Code diff --git a/gdxapp4d-app-mmdoc/src/main/java/love/distributedrebirth/gdxapp4d/app/mmdoc/MMDocDeskApp.java b/gdxapp4d-app-mmdoc/src/main/java/love/distributedrebirth/gdxapp4d/app/mmdoc/MMDocDeskApp.java index d1763767..075d69e0 100644 --- a/gdxapp4d-app-mmdoc/src/main/java/love/distributedrebirth/gdxapp4d/app/mmdoc/MMDocDeskApp.java +++ b/gdxapp4d-app-mmdoc/src/main/java/love/distributedrebirth/gdxapp4d/app/mmdoc/MMDocDeskApp.java @@ -36,15 +36,15 @@ import org.apache.metamodel.DataContext; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.files.FileHandle; +import games.spooky.gdx.nativefilechooser.NativeFileChooser; +import games.spooky.gdx.nativefilechooser.NativeFileChooserCallback; +import games.spooky.gdx.nativefilechooser.NativeFileChooserConfiguration; import imgui.ImGui; import imgui.flag.ImGuiTableFlags; import imgui.type.ImString; import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp; import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection; import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer; -import net.spookygames.gdx.nativefilechooser.NativeFileChooser; -import net.spookygames.gdx.nativefilechooser.NativeFileChooserCallback; -import net.spookygames.gdx.nativefilechooser.NativeFileChooserConfiguration; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") diff --git a/gdxapp4d-app-tosamp/src/main/java/love/distributedrebirth/gdxapp4d/app/tosamp/TosAmpDeskApp.java b/gdxapp4d-app-tosamp/src/main/java/love/distributedrebirth/gdxapp4d/app/tosamp/TosAmpDeskApp.java index 5cd343ca..9a8b5f5c 100644 --- a/gdxapp4d-app-tosamp/src/main/java/love/distributedrebirth/gdxapp4d/app/tosamp/TosAmpDeskApp.java +++ b/gdxapp4d-app-tosamp/src/main/java/love/distributedrebirth/gdxapp4d/app/tosamp/TosAmpDeskApp.java @@ -35,6 +35,9 @@ import org.osgi.framework.BundleContext; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.files.FileHandle; +import games.spooky.gdx.nativefilechooser.NativeFileChooser; +import games.spooky.gdx.nativefilechooser.NativeFileChooserCallback; +import games.spooky.gdx.nativefilechooser.NativeFileChooserConfiguration; import imgui.ImGui; import imgui.flag.ImGuiSelectableFlags; import imgui.flag.ImGuiTableColumnFlags; @@ -45,9 +48,6 @@ import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip; import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp; import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection; import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer; -import net.spookygames.gdx.nativefilechooser.NativeFileChooser; -import net.spookygames.gdx.nativefilechooser.NativeFileChooserCallback; -import net.spookygames.gdx.nativefilechooser.NativeFileChooserConfiguration; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") diff --git a/gdxapp4d-boot-desktop/.pom-poop-enforcer b/gdxapp4d-boot-desktop/.pom-poop-enforcer new file mode 100644 index 00000000..3d6e0605 --- /dev/null +++ b/gdxapp4d-boot-desktop/.pom-poop-enforcer @@ -0,0 +1 @@ +Used to activate pom profiles only here. \ No newline at end of file diff --git a/gdxapp4d-boot-desktop/Warpship/local-override.xml b/gdxapp4d-boot-desktop/Warpship/local-override.xml new file mode 100644 index 00000000..b803f1b1 --- /dev/null +++ b/gdxapp4d-boot-desktop/Warpship/local-override.xml @@ -0,0 +1,27 @@ + + + + ../../gdxapp4d-chain-boot-ship-engine/target/chain + ../../gdxapp4d-chain-boot-warp-sea/target/chain + + ../../gdxapp4d-chain-dep-osgi-lib/target/chain + ../../gdxapp4d-chain-dep-osgi-scr/target/chain + ../../gdxapp4d-chain-font-unicode4d/target/chain + ../../gdxapp4d-chain-default-music/target/chain + ../../gdxapp4d-chain-default-apps/target/chain + ../../gdxapp4d-app-calculator/target/classes + ../../gdxapp4d-app-hewallet/target/classes + ../../gdxapp4d-app-tosamp/target/classes + ../../gdxapp4d-app-notepad/target/classes + ../../gdxapp4d-app-glyphdemo/target/classes + ../../gdxapp4d-app-mmdoc/target/classes + + ../../gdxapp4d-chain-mod-vrgem4/target/chain + ../../gdxapp4d-vrgem4/target/classes + + ../../gdxapp4d-chain-mod-vrsys5/target/chain + ../../gdxapp4d-vrsys5/target/classes + + ../../gdxapp4d-chain-mod-unitxc/target/chain + ../../gdxapp4d-unitxc/target/classes + diff --git a/gdxapp4d-boot-desktop/Warpship/logback.xml b/gdxapp4d-boot-desktop/Warpship/logback.xml index 8a6b1305..2a5a4e18 100644 --- a/gdxapp4d-boot-desktop/Warpship/logback.xml +++ b/gdxapp4d-boot-desktop/Warpship/logback.xml @@ -27,5 +27,8 @@ + + + diff --git a/gdxapp4d-boot-desktop/local-override.xml b/gdxapp4d-boot-desktop/local-override.xml deleted file mode 100644 index ae9ebddd..00000000 --- a/gdxapp4d-boot-desktop/local-override.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - ../gdxapp4d-chain-boot-ship-engine/target/chain - ../gdxapp4d-chain-boot-warp-sea/target/chain - - ../gdxapp4d-chain-dep-osgi-lib/target/chain - ../gdxapp4d-chain-dep-osgi-scr/target/chain - ../gdxapp4d-chain-font-unicode4d/target/chain - ../gdxapp4d-chain-default-music/target/chain - ../gdxapp4d-chain-default-apps/target/chain - ../gdxapp4d-app-calculator/target/classes - ../gdxapp4d-app-hewallet/target/classes - ../gdxapp4d-app-tosamp/target/classes - ../gdxapp4d-app-notepad/target/classes - ../gdxapp4d-app-glyphdemo/target/classes - ../gdxapp4d-app-mmdoc/target/classes - - ../gdxapp4d-chain-mod-vrgem4/target/chain - ../gdxapp4d-vrgem4/target/classes - - ../gdxapp4d-chain-mod-vrsys5/target/chain - ../gdxapp4d-vrsys5/target/classes - - ../gdxapp4d-chain-mod-unitxc/target/chain - ../gdxapp4d-unitxc/target/classes - diff --git a/gdxapp4d-boot-desktop/pom.xml b/gdxapp4d-boot-desktop/pom.xml index 83e14c58..d02fb2a2 100644 --- a/gdxapp4d-boot-desktop/pom.xml +++ b/gdxapp4d-boot-desktop/pom.xml @@ -1,4 +1,5 @@ - + 4.0.0 love.distributedrebirth.gdxapp4d @@ -13,6 +14,11 @@ gdxapp4d-tos4 ${project.version} + + com.badlogicgames.gdx + gdx-platform + natives-desktop + com.badlogicgames.gdx gdx-backend-lwjgl3 @@ -21,9 +27,43 @@ games.spooky.gdx gdx-nativefilechooser-desktop - - org.slf4j - jul-to-slf4j - + + org.slf4j + jul-to-slf4j + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-boot-ship-engine + ${project.version} + pom + provided + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-boot-warp-sea + ${project.version} + pom + provided + + + + run + + + + org.codehaus.mojo + exec-maven-plugin + + love.distributedrebirth.gdxapp4d.boot.desktop.GDXAppDesktopLauncher + + use-local + nosync + + + + + + + \ No newline at end of file diff --git a/gdxapp4d-boot-desktop/src/main/java/love/distributedrebirth/gdxapp4d/boot/desktop/GDXAppDesktopLauncher.java b/gdxapp4d-boot-desktop/src/main/java/love/distributedrebirth/gdxapp4d/boot/desktop/GDXAppDesktopLauncher.java index 2f9f2015..1420febe 100644 --- a/gdxapp4d-boot-desktop/src/main/java/love/distributedrebirth/gdxapp4d/boot/desktop/GDXAppDesktopLauncher.java +++ b/gdxapp4d-boot-desktop/src/main/java/love/distributedrebirth/gdxapp4d/boot/desktop/GDXAppDesktopLauncher.java @@ -37,8 +37,8 @@ import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration; import ch.qos.logback.core.status.NopStatusListener; +import games.spooky.gdx.nativefilechooser.desktop.DesktopFileChooser; import love.distributedrebirth.gdxapp4d.tos4.GDXAppTos4; -import net.spookygames.gdx.nativefilechooser.desktop.DesktopFileChooser; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ꕢꕌꔳꕺꖃꕯꕮꕊ; diff --git a/gdxapp4d-chain-boot-ship-engine/pom.xml b/gdxapp4d-chain-boot-ship-engine/pom.xml index ac67f782..bb6c9c3d 100644 --- a/gdxapp4d-chain-boot-ship-engine/pom.xml +++ b/gdxapp4d-chain-boot-ship-engine/pom.xml @@ -8,6 +8,29 @@ gdxapp4d-chain-boot-ship-engine GDXApp⁴ᴰ-Chain-Boot-Ship-محرك pom + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-font-unicode4d + ${project.version} + pom + provided + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-dep-osgi-scr + ${project.version} + pom + provided + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-mod-vrgem4 + ${project.version} + pom + provided + + diff --git a/gdxapp4d-chain-boot-warp-sea/pom.xml b/gdxapp4d-chain-boot-warp-sea/pom.xml index f0cad820..dd5fced3 100644 --- a/gdxapp4d-chain-boot-warp-sea/pom.xml +++ b/gdxapp4d-chain-boot-warp-sea/pom.xml @@ -8,6 +8,43 @@ gdxapp4d-chain-boot-warp-sea GDXApp⁴ᴰ-Chain-Boot-Warp-ค่าเริ่มต้น pom + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-dep-osgi-lib + ${project.version} + pom + provided + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-mod-unitxc + ${project.version} + pom + provided + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-mod-vrsys5 + ${project.version} + pom + provided + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-default-apps + ${project.version} + pom + provided + + + love.distributedrebirth.gdxapp4d + gdxapp4d-chain-default-music + ${project.version} + pom + provided + + diff --git a/gdxapp4d-chain-dep-osgi-lib/pom.xml b/gdxapp4d-chain-dep-osgi-lib/pom.xml index 9975f5ee..171bd368 100644 --- a/gdxapp4d-chain-dep-osgi-lib/pom.xml +++ b/gdxapp4d-chain-dep-osgi-lib/pom.xml @@ -33,6 +33,10 @@ com.fasterxml.jackson.core jackson-databind + + org.apache.aries.spifly + org.apache.aries.spifly.dynamic.bundle + @@ -63,6 +67,12 @@ + + + + + + diff --git a/gdxapp4d-chain-dep-osgi-lib/src/main/chain/warp-hash.xml b/gdxapp4d-chain-dep-osgi-lib/src/main/chain/warp-hash.xml index b2930142..e4e6f5c2 100644 --- a/gdxapp4d-chain-dep-osgi-lib/src/main/chain/warp-hash.xml +++ b/gdxapp4d-chain-dep-osgi-lib/src/main/chain/warp-hash.xml @@ -4,6 +4,12 @@ xmlns:soft="http://warp-hash.x4o.distributedrebirth.love/xml/ns/warp-hash-soft" xsi:schemaLocation="http://wrap-core.x4o.distributedrebirth.love/xml/ns/warp-hash-root http://warp-hash.x4o.distributedrebirth.love/xml/ns/warp-hash-root-1.0.xsd"> + + + + + + diff --git a/gdxapp4d-chain-dep-osgi-lib/src/main/chain/warp-sea.xml b/gdxapp4d-chain-dep-osgi-lib/src/main/chain/warp-sea.xml index b49c85d5..2cb9cfe4 100644 --- a/gdxapp4d-chain-dep-osgi-lib/src/main/chain/warp-sea.xml +++ b/gdxapp4d-chain-dep-osgi-lib/src/main/chain/warp-sea.xml @@ -4,6 +4,12 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://wrap-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-root http://warp-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-root-1.0.xsd"> + + + + + + diff --git a/gdxapp4d-chain-mod-vrgem4/pom.xml b/gdxapp4d-chain-mod-vrgem4/pom.xml index 9565d886..34dbcbd7 100644 --- a/gdxapp4d-chain-mod-vrgem4/pom.xml +++ b/gdxapp4d-chain-mod-vrgem4/pom.xml @@ -63,7 +63,7 @@ Konsole: try selecting the text, unicode is broken | | .' | Mecca System eXtension | .' | | .' -| @Ω仙⁴ ˧꜏⋇꜊꜔ ⁴ﷲΩ@ | .' +| @Ω仙⁴ ˧꜏⋇꜊꜔ ⁴ﷲΩ@ | .' | ©Δ∞ 仙上主天 | .' | בְּרֵאשִׁית :o: יְסוֺד :o: יִשְׂרָאֵל | .' +-----------------------------+' diff --git a/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4.java b/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4.java index 4d8abf6c..bfa4294a 100644 --- a/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4.java +++ b/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4.java @@ -40,8 +40,8 @@ import com.badlogic.gdx.Gdx; import com.badlogic.gdx.Screen; import com.badlogic.gdx.utils.ScreenUtils; +import games.spooky.gdx.nativefilechooser.NativeFileChooser; import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxTerminal; -import net.spookygames.gdx.nativefilechooser.NativeFileChooser; import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.ᒄᓫᣔᐪᑋ.ᔆᣖᑊᒄᓫᣗ.BãßBȍőnSpiderWireFly注; import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.ᒄᓫᣔᐪᑋ.ᔆᣖᑊᒄᓫᣗ.BãßBȍőnSpiderWire注; import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.ᔿᓑᔿᔿᔋᐝᣚ.BãßᛗᚢᛗᛗᛉVū́ǘrChaliceEnumShot𓄯; diff --git a/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4Activator.java b/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4Activator.java index 4ba8dc6c..408a1a49 100644 --- a/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4Activator.java +++ b/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4Activator.java @@ -40,6 +40,7 @@ import java.util.List; import java.util.Properties; import java.util.function.Consumer; +import org.osgi.framework.Bundle; import org.osgi.framework.BundleActivator; import org.osgi.framework.BundleContext; import org.osgi.framework.BundleException; @@ -57,6 +58,7 @@ import com.badlogic.gdx.graphics.g2d.BitmapFont; import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator; import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.FreeTypeFontParameter; +import games.spooky.gdx.nativefilechooser.NativeFileChooser; import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpBase; import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs; import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootReadyListener; @@ -73,7 +75,6 @@ import love.distributedrebirth.warpme.sea.WaterSeaChain; import love.distributedrebirth.warpme.sea.WaterSeaMagic; import love.distributedrebirth.warpme.ship.WaterDevice; import love.distributedrebirth.warpme.ship.WaterDeviceDriver; -import net.spookygames.gdx.nativefilechooser.NativeFileChooser; import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.Bãß; import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.ᒃᐤᣔᐪ.BãßBȍőnBőatWind; import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.ᒃᐤᣔᐪ.BãßBȍőnBőatWindKnots; @@ -144,6 +145,9 @@ public class GDXAppTos4Activator implements BundleActivator { boolean useLocal = args.contains("use-local"); warpshipHome = new File(".", WARPSHIP_HOME); + if (!warpshipHome.exists()) { + warpshipHome = new File("gdxapp4d-boot-desktop", WARPSHIP_HOME); // tmp for: mvn verify -P test-none,run + } if (!warpshipHome.exists()) { bootScreen.bootLineError("ERROR: No Warpship home."); startError = true; @@ -176,14 +180,19 @@ public class GDXAppTos4Activator implements BundleActivator { localOverrides = new Properties(); if (useLocal) { - File localOverride = new File("local-override.xml"); + File localOverride = new File(warpshipHome, "local-override.xml"); if (localOverride.exists()) { try { localOverrides.loadFromXML(new FileInputStream(localOverride)); } catch (Exception e) { throw new RuntimeException(e); } - bootScreen.bootLine("use-local: local-override.xml loaded."); + for (Object keyObj : localOverrides.keySet()) { + String key = String.class.cast(keyObj); + String value = localOverrides.getProperty(key); + localOverrides.setProperty(key, warpshipHome.getAbsolutePath() + "/" + value); + } + bootScreen.bootLine("use-local: local-override.xml loaded: " + localOverrides.size()); } else { bootScreen.bootLine("use-local: local-override.xml not found."); } @@ -430,20 +439,24 @@ public class GDXAppTos4Activator implements BundleActivator { for (SystemWarpSea service : registratedSeas) { String key = service.getWarpKey(); File waterHome = service.getWarpHome(); + List loaded = new ArrayList<>(); for (WaterSeaMagic magic:service.getWarpSea().theWater().getSeaMagics()) { if ("application/vnd.osgi.bundle".equals(magic.getMime())) { magic.setMime("application/vnd.osgi.bundle.loaded"); // TODO: HACK for now to not load again String overrideBundleKey = key + "." + magic.getFile(); String overrideBundle = localOverrides.getProperty(overrideBundleKey); if (overrideBundle == null) { - LOG.debug("loadBundles: "+waterHome.getAbsolutePath()+"/"+magic.getFile()); - GDXAppTos4BootFactory.installAndStartBundles(context, "reference:file:"+waterHome.getAbsolutePath()+"/"+magic.getFile()); + LOG.debug("loadBundle: "+waterHome.getAbsolutePath()+"/"+magic.getFile()); + loaded.add(context.installBundle("reference:file:"+waterHome.getAbsolutePath()+"/"+magic.getFile())); } else { - LOG.debug("loadBundles: "+overrideBundle); - GDXAppTos4BootFactory.installAndStartBundles(context, "reference:file:"+overrideBundle); + LOG.debug("loadBundle-local: "+overrideBundle); + loaded.add(context.installBundle("reference:file:"+overrideBundle)); } } } + for (Bundle b : loaded) { + b.start(); + } } } diff --git a/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4BootFactory.java b/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4BootFactory.java index a3e193b3..4e01d15b 100644 --- a/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4BootFactory.java +++ b/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/GDXAppTos4BootFactory.java @@ -33,9 +33,6 @@ import java.util.HashMap; import java.util.Map; import java.util.ServiceLoader; -import org.osgi.framework.Bundle; -import org.osgi.framework.BundleContext; -import org.osgi.framework.BundleException; import org.osgi.framework.Constants; import org.osgi.framework.launch.Framework; import org.osgi.framework.launch.FrameworkFactory; @@ -44,13 +41,6 @@ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAu @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") public class GDXAppTos4BootFactory { - - public static void installAndStartBundles(BundleContext bundleContext, String... bundleLocations) throws BundleException { - for (String location : bundleLocations) { - Bundle addition = bundleContext.installBundle(location); - addition.start(); - } - } public static Framework createFramework() { return createFramework(buildConfig()); @@ -123,7 +113,7 @@ public class GDXAppTos4BootFactory { "imgui.glfw,"+ "imgui.gl3,"+ "imgui.type,"+ - "net.spookygames.gdx.nativefilechooser,"+ + "games.spooky.gdx.nativefilechooser,"+ "org.x4o.fc18,"+ "org.x4o.fc18.cake2,"+ "org.x4o.fc18.cake2.clk1k,"+ diff --git a/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/service/SystemGdxBootArgs.java b/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/service/SystemGdxBootArgs.java index 6c79fd88..e68684f9 100644 --- a/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/service/SystemGdxBootArgs.java +++ b/gdxapp4d-tos4/src/main/java/love/distributedrebirth/gdxapp4d/tos4/service/SystemGdxBootArgs.java @@ -27,7 +27,7 @@ package love.distributedrebirth.gdxapp4d.tos4.service; -import net.spookygames.gdx.nativefilechooser.NativeFileChooser; +import games.spooky.gdx.nativefilechooser.NativeFileChooser; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") diff --git a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/GDXAppVrGem4Activator.java b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/GDXAppVrGem4Activator.java index 3813bbdc..7860bc86 100644 --- a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/GDXAppVrGem4Activator.java +++ b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/GDXAppVrGem4Activator.java @@ -68,14 +68,12 @@ public class GDXAppVrGem4Activator implements BundleActivator { private static final int VIEW_SLEEP_TIME = 1234; - private ImGuiSetup imguiSetup = new ImGuiSetup(); - @Override public void stop(final BundleContext context) { Gdx.app.postRunnable(new Runnable() { @Override public void run() { - imguiSetup.dispose(); + ImGuiSetup.INSTANCE.dispose(); } }); } @@ -205,7 +203,7 @@ public class GDXAppVrGem4Activator implements BundleActivator { Gdx.app.postRunnable(new Runnable() { @Override public void run() { - imguiSetup.init(fonts, v -> bootScreen.bootLine(v)); + ImGuiSetup.INSTANCE.init(fonts, v -> bootScreen.bootLine(v)); imLoaded.set(true); } }); diff --git a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/ImGuiSetup.java b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/ImGuiSetup.java index f56aecd9..5962f08d 100644 --- a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/ImGuiSetup.java +++ b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/ImGuiSetup.java @@ -48,9 +48,11 @@ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAu * Create and shutdown of ImGui and font activations. */ @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") -public class ImGuiSetup { - public final static ImGuiImplGlfw imGuiImp = new ImGuiImplGlfw(); - public final static ImGuiImplGl3 imGuiGlImp = new ImGuiImplGl3(); +public enum ImGuiSetup { + INSTANCE, + ; + public final ImGuiImplGlfw imGuiImp = new ImGuiImplGlfw(); + public final ImGuiImplGl3 imGuiGlImp = new ImGuiImplGl3(); public void init(List fonts, Consumer logger) { long windowHandleᕯ = -1; @@ -61,6 +63,7 @@ public class ImGuiSetup { throw new RuntimeException(e); } ImGui.createContext(); + //ImGui.getIO().getFonts().setFreeTypeRenderer(false); initFonts(ImGui.getIO(), fonts, logger); imGuiImp.init(windowHandleᕯ, true); imGuiGlImp.init("#version 140"); @@ -86,13 +89,11 @@ public class ImGuiSetup { final short[] glyphRanges = fontBuilder.buildRanges(); float fontSize = ImCharacter.HEIGHT; - boolean first = true; - for (File font: fonts) { - logger.accept("Load font: "+font); + for (File font : fonts) { + logger.accept("Load font: " + font.getName()); io.getFonts().addFontFromMemoryTTF(Gdx.files.absolute(font.getAbsolutePath()).readBytes(), fontSize, fontConfig, glyphRanges); - if (first) { + if (!fontConfig.getMergeMode()) { fontConfig.setMergeMode(true); - first = false; } } fontConfig.destroy(); @@ -109,6 +110,8 @@ public class ImGuiSetup { public void dispose() { imGuiImp.dispose(); imGuiGlImp.dispose(); + //imGuiImp.shutdown(); + //imGuiGlImp.shutdown(); ImGui.destroyContext(); } } diff --git a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/VrGem4Unicode4DServiceImpl.java b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/VrGem4Unicode4DServiceImpl.java index 14f7c8e9..c5cbdfbc 100644 --- a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/VrGem4Unicode4DServiceImpl.java +++ b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/VrGem4Unicode4DServiceImpl.java @@ -62,8 +62,8 @@ public class VrGem4Unicode4DServiceImpl implements VrGem4Unicode4DService { FontAtlas masterFontAtlas = new FontAtlas(); List glyps = warpShip.searchMagic(context, "application/x-font-ttf4d"); try { - for (File glypSet:glyps) { - log.accept("Loading glypSet: "+glypSet); + for (File glypSet : glyps) { + log.accept("Loading glypSet: " + glypSet.getName()); FontAtlas atlas = FontAtlasDriver.newInstance().createReader().readFile(glypSet); masterFontAtlas.setStores(atlas.getStores()); } diff --git a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/screen/AbstractScreenDesktop.java b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/screen/AbstractScreenDesktop.java index abf119c4..17297d30 100644 --- a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/screen/AbstractScreenDesktop.java +++ b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/screen/AbstractScreenDesktop.java @@ -160,7 +160,8 @@ public abstract class AbstractScreenDesktop extends ScreenAdapter implements Des @Override public final void render(float delta) { ScreenUtils.clear(0f, 0f, 0f, 1f, true); - ImGuiSetup.imGuiImp.newFrame(); + //ImGuiSetup.imGuiGlImp.newFrame(); + ImGuiSetup.INSTANCE.imGuiImp.newFrame(); ImGui.newFrame(); DeskTopScreen appScreen = this; @@ -184,7 +185,7 @@ public abstract class AbstractScreenDesktop extends ScreenAdapter implements Des renderDesktop(delta, modelBatch, cam, modelInstances); ImGui.render(); - ImGuiSetup.imGuiGlImp.renderDrawData(ImGui.getDrawData()); + ImGuiSetup.INSTANCE.imGuiGlImp.renderDrawData(ImGui.getDrawData()); } protected void renderDesktop(float delta, ModelBatch modelBatch, PerspectiveCamera cam, Array modelInstances) { diff --git a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/view/DeskAppInputProcessor.java b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/view/DeskAppInputProcessor.java index 2d9adb7d..0001f046 100644 --- a/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/view/DeskAppInputProcessor.java +++ b/gdxapp4d-vrgem4/src/main/java/love/distributedrebirth/gdxapp4d/vrgem4/view/DeskAppInputProcessor.java @@ -121,6 +121,18 @@ public class DeskAppInputProcessor implements InputProcessor { } } + @Override + public boolean touchCancelled(int screenX, int screenY, int pointer, int button) { + if (isFilterMenu(screenY)) { + return false; + } + if (filtering) { + return false; + } else { + return input.touchCancelled(screenX, screenY, pointer, button); + } + } + @Override public boolean mouseMoved(int screenX, int screenY) { if (isFilterMenu(screenY)) { diff --git a/gdxapp4d-vrgem4/src/main/java/org/slf4j/impl/MyClass.java b/gdxapp4d-vrgem4/src/main/java/org/slf4j/impl/MyClass.java deleted file mode 100644 index 010f7995..00000000 --- a/gdxapp4d-vrgem4/src/main/java/org/slf4j/impl/MyClass.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright ©Δ∞ 仙上主天 - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without modification, are permitted provided - * that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright notice, this list of conditions and the - * following disclaimer. - * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and - * the following disclaimer in the documentation and/or other materials provided with the distribution. - * * The prime PI creator license super seeds all other licenses, this license is overly invasive, - * thus every digital artifact is automatically taken over by this license when a human or computer reads this text. - * Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits, - * even on air gaped systems, all information in the universe is owned by the pi creator. - * - * THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL - * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT - * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR - * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package org.slf4j.impl; - -public class MyClass { - - public static void fakeDepToBootSLF4J(String out) { - } -} diff --git a/gdxapp4d-vrsys5/pom.xml b/gdxapp4d-vrsys5/pom.xml index aab9e4a9..f7f7317d 100644 --- a/gdxapp4d-vrsys5/pom.xml +++ b/gdxapp4d-vrsys5/pom.xml @@ -15,6 +15,11 @@ ${project.version} provided + + love.distributedrebirth.gdxapp4d + gdxapp4d-lib-basicwd + ${project.version} + diff --git a/pom.xml b/pom.xml index b5a8b871..dfa3f1dc 100644 --- a/pom.xml +++ b/pom.xml @@ -1,13 +1,11 @@ - + 4.0.0 love.distributedrebirth.gdxapp4d gdxapp4d 0.0.1-SNAPSHOT pom GDXApp⁴ᴰ - - 3.0.1 - gdxapp4d-app-notepad gdxapp4d-app-tosamp @@ -38,15 +36,20 @@ UTF-8 11 - 1.10.0 - 1.86.0 - 1.0.0 - 1.7.36 + 1.13.5 + + + + 1.86.12 + 2.4.0 + + 2.1.0-alpha1 〇一。壬寅。一〄-SNAPSHOT 6.0.53 5.3.6 - - 2.13.1 + + 2.19.1 org.osgi.framework, org.osgi.service.packageadmin, @@ -108,7 +111,7 @@ imgui.glfw, imgui.gl3, imgui.type, - net.spookygames.gdx.nativefilechooser, + games.spooky.gdx.nativefilechooser, org.x4o.fc18, org.x4o.fc18.cake2, org.x4o.fc18.cake2.clk1k, @@ -365,17 +368,17 @@ org.apache.commons commons-lang3 - 3.5 + 3.18.0 org.junit.jupiter junit-jupiter - 5.9.1 + 6.0.0-M1 ch.qos.logback logback-classic - 1.2.10 + 1.5.18 io.github.spair @@ -415,6 +418,7 @@ com.badlogicgames.gdx gdx-platform + natives-desktop ${gdx.version} @@ -430,22 +434,27 @@ org.apache.felix org.apache.felix.framework - 7.0.3 + 7.0.5 org.osgi org.osgi.service.component.annotations - 1.4.0 + 1.5.1 + + + org.apache.aries.spifly + org.apache.aries.spifly.dynamic.bundle + 1.3.7 com.badlogicgames.gdx gdx-freetype - 1.10.0 + ${gdx.version} com.badlogicgames.gdx gdx-freetype-platform - 1.10.0 + ${gdx.version} natives-desktop @@ -534,12 +543,12 @@ org.apache.maven.plugins maven-antrun-plugin - 1.8 + 3.1.0 org.apache.maven.plugins maven-compiler-plugin - 3.10.1 + 3.14.0 ${project.build.sourceEncoding} ${project.build.sourceVersion} @@ -549,32 +558,46 @@ org.apache.maven.plugins maven-source-plugin - 3.2.1 + 3.3.1 org.apache.felix maven-bundle-plugin - 5.1.9 + 6.0.0 org.apache.maven.plugins maven-dependency-plugin 3.3.0 + org.apache.maven.plugins maven-install-plugin - 2.5.2 + 3.1.4 org.apache.maven.plugins maven-jar-plugin - 3.3.0 + 3.4.2 org.codehaus.mojo versions-maven-plugin - 2.16.2 + 2.18.0 + + + org.apache.maven.plugins + maven-enforcer-plugin + 3.4.1 + + + org.codehaus.mojo + exec-maven-plugin + 3.5.1 @@ -604,6 +627,27 @@ + + run + + + + + org.codehaus.mojo + exec-maven-plugin + + + verify + + java + + + + + + + + mvn-versions-check @@ -672,5 +716,57 @@ + + auto-poop-enforcer + + + ${basedir}/.pom-poop-enforcer + + + + + + org.apache.maven.plugins + maven-enforcer-plugin + + + enforce-maven + + enforce + + + + + + + 3.2.2 + Needs maven 3.2.2 for: maven.build.timestamp is in UTC + + + 3.6.3 + Needs maven 3.6.3 for: current build plugins + + + + ${project.build.sourceVersion} + + + + + + + + + \ No newline at end of file