Moved two apps to seperate bundle and chains.
This commit is contained in:
parent
812e80fa5e
commit
c47d626eef
118
gdxapp4d-app-calculator/pom.xml
Normal file
118
gdxapp4d-app-calculator/pom.xml
Normal file
|
@ -0,0 +1,118 @@
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<parent>
|
||||||
|
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||||
|
<artifactId>gdxapp4d</artifactId>
|
||||||
|
<version>0.0.1-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
<artifactId>gdxapp4d-app-calculator</artifactId>
|
||||||
|
<packaging>bundle</packaging>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||||
|
<artifactId>gdxapp4d-vrgem4</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-bundle-plugin</artifactId>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<exportScr>true</exportScr>
|
||||||
|
<instructions>
|
||||||
|
<_donotcopy>(.git)</_donotcopy>
|
||||||
|
<_dsannotations>*</_dsannotations>
|
||||||
|
<_metatypeannotations>*</_metatypeannotations>
|
||||||
|
<Import-Package>
|
||||||
|
org.osgi.framework,
|
||||||
|
org.osgi.service.packageadmin,
|
||||||
|
org.osgi.service.url,
|
||||||
|
org.osgi.service.startlevel,
|
||||||
|
org.osgi.util.tracker,
|
||||||
|
love.distributedrebirth.gdxapp4d.tos4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp,
|
||||||
|
com.badlogic.gdx,
|
||||||
|
com.badlogic.gdx.assets,
|
||||||
|
com.badlogic.gdx.assets.loaders,
|
||||||
|
com.badlogic.gdx.assets.loaders.resolvers,
|
||||||
|
com.badlogic.gdx.audio,
|
||||||
|
com.badlogic.gdx.files,
|
||||||
|
com.badlogic.gdx.graphics,
|
||||||
|
com.badlogic.gdx.graphics.g2d,
|
||||||
|
com.badlogic.gdx.graphics.g2d.freetype,
|
||||||
|
com.badlogic.gdx.graphics.g3d,
|
||||||
|
com.badlogic.gdx.graphics.g3d.attributes,
|
||||||
|
com.badlogic.gdx.graphics.g3d.decals,
|
||||||
|
com.badlogic.gdx.graphics.g3d.environment,
|
||||||
|
com.badlogic.gdx.graphics.g3d.loader,
|
||||||
|
com.badlogic.gdx.graphics.g3d.model,
|
||||||
|
com.badlogic.gdx.graphics.g3d.model.data,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.bactches,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.emitters,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.influencers,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.renderers,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.values,
|
||||||
|
com.badlogic.gdx.graphics.g3d.shaders,
|
||||||
|
com.badlogic.gdx.graphics.g3d.utils,
|
||||||
|
com.badlogic.gdx.graphics.g3d.utils.shapebuilders,
|
||||||
|
com.badlogic.gdx.graphics.glutils,
|
||||||
|
com.badlogic.gdx.graphics.profiling,
|
||||||
|
com.badlogic.gdx.input,
|
||||||
|
com.badlogic.gdx.maps,
|
||||||
|
com.badlogic.gdx.maps.objects,
|
||||||
|
com.badlogic.gdx.maps.tiled,
|
||||||
|
com.badlogic.gdx.maps.tiled.objects,
|
||||||
|
com.badlogic.gdx.maps.tiled.renderers,
|
||||||
|
com.badlogic.gdx.maps.tiled.tiles,
|
||||||
|
com.badlogic.gdx.math,
|
||||||
|
com.badlogic.gdx.math.collision,
|
||||||
|
com.badlogic.gdx.net,
|
||||||
|
com.badlogic.gdx.scenes.scene2d,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.actions,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.ui,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.utils,
|
||||||
|
com.badlogic.gdx.utils,
|
||||||
|
com.badlogic.gdx.utils.async,
|
||||||
|
com.badlogic.gdx.utils.compression,
|
||||||
|
com.badlogic.gdx.utils.compression.lz,
|
||||||
|
com.badlogic.gdx.utils.compression.lzma,
|
||||||
|
com.badlogic.gdx.utils.compression.rangecoder,
|
||||||
|
com.badlogic.gdx.utils.reflect,
|
||||||
|
com.badlogic.gdx.utils.viewport,
|
||||||
|
imgui,
|
||||||
|
imgui.flag,
|
||||||
|
imgui.glfw,
|
||||||
|
imgui.gl3,
|
||||||
|
imgui.type,
|
||||||
|
net.spookygames.gdx.nativefilechooser,
|
||||||
|
love.distributedrebirth.bassboonyd,
|
||||||
|
love.distributedrebirth.bassboonyd.jmx,
|
||||||
|
love.distributedrebirth.numberxd,
|
||||||
|
love.distributedrebirth.numberxd.base2t,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part.warp,
|
||||||
|
love.distributedrebirth.numberxd.base2t.type,
|
||||||
|
love.distributedrebirth.numberxd.base2t.typexl,
|
||||||
|
love.distributedrebirth.numberxd.glyph,
|
||||||
|
love.distributedrebirth.numberxd.x4o,
|
||||||
|
love.distributedrebirth.warpme,
|
||||||
|
love.distributedrebirth.warpme.core,
|
||||||
|
love.distributedrebirth.warpme.hash,
|
||||||
|
love.distributedrebirth.warpme.sea,
|
||||||
|
love.distributedrebirth.warpme.ship,
|
||||||
|
love.distributedrebirth.unicode4d,
|
||||||
|
love.distributedrebirth.unicode4d.atlas
|
||||||
|
</Import-Package>
|
||||||
|
<Bundle-Vendor>distributedrebirth.love</Bundle-Vendor>
|
||||||
|
</instructions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</project>
|
9
gdxapp4d-app-calculator/src/chain/warp-sea.xml
Normal file
9
gdxapp4d-app-calculator/src/chain/warp-sea.xml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<root:ocean xmlns:root="http://wrap-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-root"
|
||||||
|
xmlns:link="http://warp-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-link"
|
||||||
|
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">
|
||||||
|
<link:sea name="Calculator" provider="gdxapp4d.apps" author="willemtsade">
|
||||||
|
<link:magic file="gdxapp4d-app-calculator.jar" mime="application/vnd.osgi.bundle"/>
|
||||||
|
</link:sea>
|
||||||
|
</root:ocean>
|
118
gdxapp4d-app-hewallet/pom.xml
Normal file
118
gdxapp4d-app-hewallet/pom.xml
Normal file
|
@ -0,0 +1,118 @@
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<parent>
|
||||||
|
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||||
|
<artifactId>gdxapp4d</artifactId>
|
||||||
|
<version>0.0.1-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
<artifactId>gdxapp4d-app-hewallet</artifactId>
|
||||||
|
<packaging>bundle</packaging>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||||
|
<artifactId>gdxapp4d-vrgem4</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-bundle-plugin</artifactId>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<exportScr>true</exportScr>
|
||||||
|
<instructions>
|
||||||
|
<_donotcopy>(.git)</_donotcopy>
|
||||||
|
<_dsannotations>*</_dsannotations>
|
||||||
|
<_metatypeannotations>*</_metatypeannotations>
|
||||||
|
<Import-Package>
|
||||||
|
org.osgi.framework,
|
||||||
|
org.osgi.service.packageadmin,
|
||||||
|
org.osgi.service.url,
|
||||||
|
org.osgi.service.startlevel,
|
||||||
|
org.osgi.util.tracker,
|
||||||
|
love.distributedrebirth.gdxapp4d.tos4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp,
|
||||||
|
com.badlogic.gdx,
|
||||||
|
com.badlogic.gdx.assets,
|
||||||
|
com.badlogic.gdx.assets.loaders,
|
||||||
|
com.badlogic.gdx.assets.loaders.resolvers,
|
||||||
|
com.badlogic.gdx.audio,
|
||||||
|
com.badlogic.gdx.files,
|
||||||
|
com.badlogic.gdx.graphics,
|
||||||
|
com.badlogic.gdx.graphics.g2d,
|
||||||
|
com.badlogic.gdx.graphics.g2d.freetype,
|
||||||
|
com.badlogic.gdx.graphics.g3d,
|
||||||
|
com.badlogic.gdx.graphics.g3d.attributes,
|
||||||
|
com.badlogic.gdx.graphics.g3d.decals,
|
||||||
|
com.badlogic.gdx.graphics.g3d.environment,
|
||||||
|
com.badlogic.gdx.graphics.g3d.loader,
|
||||||
|
com.badlogic.gdx.graphics.g3d.model,
|
||||||
|
com.badlogic.gdx.graphics.g3d.model.data,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.bactches,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.emitters,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.influencers,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.renderers,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.values,
|
||||||
|
com.badlogic.gdx.graphics.g3d.shaders,
|
||||||
|
com.badlogic.gdx.graphics.g3d.utils,
|
||||||
|
com.badlogic.gdx.graphics.g3d.utils.shapebuilders,
|
||||||
|
com.badlogic.gdx.graphics.glutils,
|
||||||
|
com.badlogic.gdx.graphics.profiling,
|
||||||
|
com.badlogic.gdx.input,
|
||||||
|
com.badlogic.gdx.maps,
|
||||||
|
com.badlogic.gdx.maps.objects,
|
||||||
|
com.badlogic.gdx.maps.tiled,
|
||||||
|
com.badlogic.gdx.maps.tiled.objects,
|
||||||
|
com.badlogic.gdx.maps.tiled.renderers,
|
||||||
|
com.badlogic.gdx.maps.tiled.tiles,
|
||||||
|
com.badlogic.gdx.math,
|
||||||
|
com.badlogic.gdx.math.collision,
|
||||||
|
com.badlogic.gdx.net,
|
||||||
|
com.badlogic.gdx.scenes.scene2d,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.actions,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.ui,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.utils,
|
||||||
|
com.badlogic.gdx.utils,
|
||||||
|
com.badlogic.gdx.utils.async,
|
||||||
|
com.badlogic.gdx.utils.compression,
|
||||||
|
com.badlogic.gdx.utils.compression.lz,
|
||||||
|
com.badlogic.gdx.utils.compression.lzma,
|
||||||
|
com.badlogic.gdx.utils.compression.rangecoder,
|
||||||
|
com.badlogic.gdx.utils.reflect,
|
||||||
|
com.badlogic.gdx.utils.viewport,
|
||||||
|
imgui,
|
||||||
|
imgui.flag,
|
||||||
|
imgui.glfw,
|
||||||
|
imgui.gl3,
|
||||||
|
imgui.type,
|
||||||
|
net.spookygames.gdx.nativefilechooser,
|
||||||
|
love.distributedrebirth.bassboonyd,
|
||||||
|
love.distributedrebirth.bassboonyd.jmx,
|
||||||
|
love.distributedrebirth.numberxd,
|
||||||
|
love.distributedrebirth.numberxd.base2t,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part.warp,
|
||||||
|
love.distributedrebirth.numberxd.base2t.type,
|
||||||
|
love.distributedrebirth.numberxd.base2t.typexl,
|
||||||
|
love.distributedrebirth.numberxd.glyph,
|
||||||
|
love.distributedrebirth.numberxd.x4o,
|
||||||
|
love.distributedrebirth.warpme,
|
||||||
|
love.distributedrebirth.warpme.core,
|
||||||
|
love.distributedrebirth.warpme.hash,
|
||||||
|
love.distributedrebirth.warpme.sea,
|
||||||
|
love.distributedrebirth.warpme.ship,
|
||||||
|
love.distributedrebirth.unicode4d,
|
||||||
|
love.distributedrebirth.unicode4d.atlas
|
||||||
|
</Import-Package>
|
||||||
|
<Bundle-Vendor>distributedrebirth.love</Bundle-Vendor>
|
||||||
|
</instructions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</project>
|
9
gdxapp4d-app-hewallet/src/chain/warp-sea.xml
Normal file
9
gdxapp4d-app-hewallet/src/chain/warp-sea.xml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<root:ocean xmlns:root="http://wrap-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-root"
|
||||||
|
xmlns:link="http://warp-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-link"
|
||||||
|
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">
|
||||||
|
<link:sea name="Hebrew Wallet" provider="gdxapp4d.apps" author="willemtsade">
|
||||||
|
<link:magic file="gdxapp4d-app-hewallet.jar" mime="application/vnd.osgi.bundle"/>
|
||||||
|
</link:sea>
|
||||||
|
</root:ocean>
|
|
@ -0,0 +1,30 @@
|
||||||
|
package love.distributedrebirth.gdxapp4d.app.hewallet;
|
||||||
|
|
||||||
|
import org.osgi.service.component.annotations.Activate;
|
||||||
|
import org.osgi.service.component.annotations.Component;
|
||||||
|
import org.osgi.service.component.annotations.Deactivate;
|
||||||
|
import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class HeWalletComponent {
|
||||||
|
|
||||||
|
@Reference
|
||||||
|
private SystemGdxLog log;
|
||||||
|
|
||||||
|
@Reference
|
||||||
|
private VrGem4DeskAppService deskAppService;
|
||||||
|
|
||||||
|
@Activate
|
||||||
|
void open() {
|
||||||
|
log.info(this, "Activated HeWalletComponent");
|
||||||
|
deskAppService.registrateDeskApp(new DeskAppLauncher("Hebrew Wallet", () -> new HeWalletDeskApp()));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deactivate
|
||||||
|
void close() {
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,18 +1,18 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps;
|
package love.distributedrebirth.gdxapp4d.app.hewallet;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DefaultDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.numberxd.Gê̄ldGetậl;
|
import love.distributedrebirth.numberxd.Gê̄ldGetậl;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class HebrewWalletApp extends DefaultDeskApp implements DeskAppRenderer {
|
public class HeWalletDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
public HebrewWalletApp() {
|
public void create() {
|
||||||
setTitle("Hebrew Wallet");
|
getContours().setTitle("Hebrew Wallet");
|
||||||
getContours().registrateContour(DeskAppContourSection.MAIN, this);
|
getContours().registrateContour(DeskAppContourSection.MAIN, this);
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,4 +6,113 @@
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>0.0.1-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>gdxapp4d-app-notepad</artifactId>
|
<artifactId>gdxapp4d-app-notepad</artifactId>
|
||||||
|
<packaging>bundle</packaging>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||||
|
<artifactId>gdxapp4d-vrgem4</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-bundle-plugin</artifactId>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<exportScr>true</exportScr>
|
||||||
|
<instructions>
|
||||||
|
<_donotcopy>(.git)</_donotcopy>
|
||||||
|
<_dsannotations>*</_dsannotations>
|
||||||
|
<_metatypeannotations>*</_metatypeannotations>
|
||||||
|
<Import-Package>
|
||||||
|
org.osgi.framework,
|
||||||
|
org.osgi.service.packageadmin,
|
||||||
|
org.osgi.service.url,
|
||||||
|
org.osgi.service.startlevel,
|
||||||
|
org.osgi.util.tracker,
|
||||||
|
love.distributedrebirth.gdxapp4d.tos4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp,
|
||||||
|
com.badlogic.gdx,
|
||||||
|
com.badlogic.gdx.assets,
|
||||||
|
com.badlogic.gdx.assets.loaders,
|
||||||
|
com.badlogic.gdx.assets.loaders.resolvers,
|
||||||
|
com.badlogic.gdx.audio,
|
||||||
|
com.badlogic.gdx.files,
|
||||||
|
com.badlogic.gdx.graphics,
|
||||||
|
com.badlogic.gdx.graphics.g2d,
|
||||||
|
com.badlogic.gdx.graphics.g2d.freetype,
|
||||||
|
com.badlogic.gdx.graphics.g3d,
|
||||||
|
com.badlogic.gdx.graphics.g3d.attributes,
|
||||||
|
com.badlogic.gdx.graphics.g3d.decals,
|
||||||
|
com.badlogic.gdx.graphics.g3d.environment,
|
||||||
|
com.badlogic.gdx.graphics.g3d.loader,
|
||||||
|
com.badlogic.gdx.graphics.g3d.model,
|
||||||
|
com.badlogic.gdx.graphics.g3d.model.data,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.bactches,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.emitters,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.influencers,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.renderers,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.values,
|
||||||
|
com.badlogic.gdx.graphics.g3d.shaders,
|
||||||
|
com.badlogic.gdx.graphics.g3d.utils,
|
||||||
|
com.badlogic.gdx.graphics.g3d.utils.shapebuilders,
|
||||||
|
com.badlogic.gdx.graphics.glutils,
|
||||||
|
com.badlogic.gdx.graphics.profiling,
|
||||||
|
com.badlogic.gdx.input,
|
||||||
|
com.badlogic.gdx.maps,
|
||||||
|
com.badlogic.gdx.maps.objects,
|
||||||
|
com.badlogic.gdx.maps.tiled,
|
||||||
|
com.badlogic.gdx.maps.tiled.objects,
|
||||||
|
com.badlogic.gdx.maps.tiled.renderers,
|
||||||
|
com.badlogic.gdx.maps.tiled.tiles,
|
||||||
|
com.badlogic.gdx.math,
|
||||||
|
com.badlogic.gdx.math.collision,
|
||||||
|
com.badlogic.gdx.net,
|
||||||
|
com.badlogic.gdx.scenes.scene2d,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.actions,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.ui,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.utils,
|
||||||
|
com.badlogic.gdx.utils,
|
||||||
|
com.badlogic.gdx.utils.async,
|
||||||
|
com.badlogic.gdx.utils.compression,
|
||||||
|
com.badlogic.gdx.utils.compression.lz,
|
||||||
|
com.badlogic.gdx.utils.compression.lzma,
|
||||||
|
com.badlogic.gdx.utils.compression.rangecoder,
|
||||||
|
com.badlogic.gdx.utils.reflect,
|
||||||
|
com.badlogic.gdx.utils.viewport,
|
||||||
|
imgui,
|
||||||
|
imgui.flag,
|
||||||
|
imgui.glfw,
|
||||||
|
imgui.gl3,
|
||||||
|
imgui.type,
|
||||||
|
net.spookygames.gdx.nativefilechooser,
|
||||||
|
love.distributedrebirth.bassboonyd,
|
||||||
|
love.distributedrebirth.bassboonyd.jmx,
|
||||||
|
love.distributedrebirth.numberxd,
|
||||||
|
love.distributedrebirth.numberxd.base2t,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part.warp,
|
||||||
|
love.distributedrebirth.numberxd.base2t.type,
|
||||||
|
love.distributedrebirth.numberxd.base2t.typexl,
|
||||||
|
love.distributedrebirth.numberxd.glyph,
|
||||||
|
love.distributedrebirth.numberxd.x4o,
|
||||||
|
love.distributedrebirth.warpme,
|
||||||
|
love.distributedrebirth.warpme.core,
|
||||||
|
love.distributedrebirth.warpme.hash,
|
||||||
|
love.distributedrebirth.warpme.sea,
|
||||||
|
love.distributedrebirth.warpme.ship,
|
||||||
|
love.distributedrebirth.unicode4d,
|
||||||
|
love.distributedrebirth.unicode4d.atlas
|
||||||
|
</Import-Package>
|
||||||
|
<Bundle-Vendor>distributedrebirth.love</Bundle-Vendor>
|
||||||
|
</instructions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
</project>
|
</project>
|
9
gdxapp4d-app-notepad/src/chain/warp-sea.xml
Normal file
9
gdxapp4d-app-notepad/src/chain/warp-sea.xml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<root:ocean xmlns:root="http://wrap-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-root"
|
||||||
|
xmlns:link="http://warp-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-link"
|
||||||
|
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">
|
||||||
|
<link:sea name="Notepad" provider="gdxapp4d.apps" author="willemtsade">
|
||||||
|
<link:magic file="gdxapp4d-app-notepad.jar" mime="application/vnd.osgi.bundle"/>
|
||||||
|
</link:sea>
|
||||||
|
</root:ocean>
|
|
@ -6,4 +6,113 @@
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>0.0.1-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>gdxapp4d-app-tosamp</artifactId>
|
<artifactId>gdxapp4d-app-tosamp</artifactId>
|
||||||
|
<packaging>bundle</packaging>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||||
|
<artifactId>gdxapp4d-vrgem4</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.felix</groupId>
|
||||||
|
<artifactId>maven-bundle-plugin</artifactId>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<exportScr>true</exportScr>
|
||||||
|
<instructions>
|
||||||
|
<_donotcopy>(.git)</_donotcopy>
|
||||||
|
<_dsannotations>*</_dsannotations>
|
||||||
|
<_metatypeannotations>*</_metatypeannotations>
|
||||||
|
<Import-Package>
|
||||||
|
org.osgi.framework,
|
||||||
|
org.osgi.service.packageadmin,
|
||||||
|
org.osgi.service.url,
|
||||||
|
org.osgi.service.startlevel,
|
||||||
|
org.osgi.util.tracker,
|
||||||
|
love.distributedrebirth.gdxapp4d.tos4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp,
|
||||||
|
com.badlogic.gdx,
|
||||||
|
com.badlogic.gdx.assets,
|
||||||
|
com.badlogic.gdx.assets.loaders,
|
||||||
|
com.badlogic.gdx.assets.loaders.resolvers,
|
||||||
|
com.badlogic.gdx.audio,
|
||||||
|
com.badlogic.gdx.files,
|
||||||
|
com.badlogic.gdx.graphics,
|
||||||
|
com.badlogic.gdx.graphics.g2d,
|
||||||
|
com.badlogic.gdx.graphics.g2d.freetype,
|
||||||
|
com.badlogic.gdx.graphics.g3d,
|
||||||
|
com.badlogic.gdx.graphics.g3d.attributes,
|
||||||
|
com.badlogic.gdx.graphics.g3d.decals,
|
||||||
|
com.badlogic.gdx.graphics.g3d.environment,
|
||||||
|
com.badlogic.gdx.graphics.g3d.loader,
|
||||||
|
com.badlogic.gdx.graphics.g3d.model,
|
||||||
|
com.badlogic.gdx.graphics.g3d.model.data,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.bactches,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.emitters,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.influencers,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.renderers,
|
||||||
|
com.badlogic.gdx.graphics.g3d.particles.values,
|
||||||
|
com.badlogic.gdx.graphics.g3d.shaders,
|
||||||
|
com.badlogic.gdx.graphics.g3d.utils,
|
||||||
|
com.badlogic.gdx.graphics.g3d.utils.shapebuilders,
|
||||||
|
com.badlogic.gdx.graphics.glutils,
|
||||||
|
com.badlogic.gdx.graphics.profiling,
|
||||||
|
com.badlogic.gdx.input,
|
||||||
|
com.badlogic.gdx.maps,
|
||||||
|
com.badlogic.gdx.maps.objects,
|
||||||
|
com.badlogic.gdx.maps.tiled,
|
||||||
|
com.badlogic.gdx.maps.tiled.objects,
|
||||||
|
com.badlogic.gdx.maps.tiled.renderers,
|
||||||
|
com.badlogic.gdx.maps.tiled.tiles,
|
||||||
|
com.badlogic.gdx.math,
|
||||||
|
com.badlogic.gdx.math.collision,
|
||||||
|
com.badlogic.gdx.net,
|
||||||
|
com.badlogic.gdx.scenes.scene2d,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.actions,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.ui,
|
||||||
|
com.badlogic.gdx.scenes.scene2d.utils,
|
||||||
|
com.badlogic.gdx.utils,
|
||||||
|
com.badlogic.gdx.utils.async,
|
||||||
|
com.badlogic.gdx.utils.compression,
|
||||||
|
com.badlogic.gdx.utils.compression.lz,
|
||||||
|
com.badlogic.gdx.utils.compression.lzma,
|
||||||
|
com.badlogic.gdx.utils.compression.rangecoder,
|
||||||
|
com.badlogic.gdx.utils.reflect,
|
||||||
|
com.badlogic.gdx.utils.viewport,
|
||||||
|
imgui,
|
||||||
|
imgui.flag,
|
||||||
|
imgui.glfw,
|
||||||
|
imgui.gl3,
|
||||||
|
imgui.type,
|
||||||
|
net.spookygames.gdx.nativefilechooser,
|
||||||
|
love.distributedrebirth.bassboonyd,
|
||||||
|
love.distributedrebirth.bassboonyd.jmx,
|
||||||
|
love.distributedrebirth.numberxd,
|
||||||
|
love.distributedrebirth.numberxd.base2t,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part.warp,
|
||||||
|
love.distributedrebirth.numberxd.base2t.type,
|
||||||
|
love.distributedrebirth.numberxd.base2t.typexl,
|
||||||
|
love.distributedrebirth.numberxd.glyph,
|
||||||
|
love.distributedrebirth.numberxd.x4o,
|
||||||
|
love.distributedrebirth.warpme,
|
||||||
|
love.distributedrebirth.warpme.core,
|
||||||
|
love.distributedrebirth.warpme.hash,
|
||||||
|
love.distributedrebirth.warpme.sea,
|
||||||
|
love.distributedrebirth.warpme.ship,
|
||||||
|
love.distributedrebirth.unicode4d,
|
||||||
|
love.distributedrebirth.unicode4d.atlas
|
||||||
|
</Import-Package>
|
||||||
|
<Bundle-Vendor>distributedrebirth.love</Bundle-Vendor>
|
||||||
|
</instructions>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
</project>
|
</project>
|
9
gdxapp4d-app-tosamp/src/chain/warp-sea.xml
Normal file
9
gdxapp4d-app-tosamp/src/chain/warp-sea.xml
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<root:ocean xmlns:root="http://wrap-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-root"
|
||||||
|
xmlns:link="http://warp-sea.x4o.distributedrebirth.love/xml/ns/warp-sea-link"
|
||||||
|
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">
|
||||||
|
<link:sea name="TosAmp" provider="gdxapp4d.apps" author="willemtsade">
|
||||||
|
<link:magic file="gdxapp4d-app-tosamp.jar" mime="application/vnd.osgi.bundle"/>
|
||||||
|
</link:sea>
|
||||||
|
</root:ocean>
|
|
@ -0,0 +1,34 @@
|
||||||
|
package love.distributedrebirth.gdxapp4d.app.tosamp;
|
||||||
|
|
||||||
|
import org.osgi.service.component.annotations.Activate;
|
||||||
|
import org.osgi.service.component.annotations.Component;
|
||||||
|
import org.osgi.service.component.annotations.Deactivate;
|
||||||
|
import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class TosAmpComponent {
|
||||||
|
|
||||||
|
@Reference
|
||||||
|
private SystemGdxLog log;
|
||||||
|
|
||||||
|
@Reference
|
||||||
|
private VrGem4DeskAppService deskAppService;
|
||||||
|
|
||||||
|
@Reference
|
||||||
|
private SystemGdxBootArgs bootArgs;
|
||||||
|
|
||||||
|
@Activate
|
||||||
|
void open() {
|
||||||
|
log.info(this, "Activated TosAmpComponent");
|
||||||
|
deskAppService.registrateDeskApp(new DeskAppLauncher("TosAmp", () -> new TosAmpDeskApp(bootArgs.getFileChooser())));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deactivate
|
||||||
|
void close() {
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps;
|
package love.distributedrebirth.gdxapp4d.app.tosamp;
|
||||||
|
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
@ -10,34 +10,38 @@ import imgui.flag.ImGuiSelectableFlags;
|
||||||
import imgui.flag.ImGuiTableColumnFlags;
|
import imgui.flag.ImGuiTableColumnFlags;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.GDXAppTos4;
|
import love.distributedrebirth.gdxapp4d.app.tosamp.music.MusicManager;
|
||||||
|
import love.distributedrebirth.gdxapp4d.app.tosamp.music.MusicSong;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.FontAwesomeIcons;
|
import love.distributedrebirth.gdxapp4d.vrgem4.FontAwesomeIcons;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DefaultDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppRenderer;
|
import net.spookygames.gdx.nativefilechooser.NativeFileChooser;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.music.MusicSong;
|
|
||||||
import net.spookygames.gdx.nativefilechooser.NativeFileChooserCallback;
|
import net.spookygames.gdx.nativefilechooser.NativeFileChooserCallback;
|
||||||
import net.spookygames.gdx.nativefilechooser.NativeFileChooserConfiguration;
|
import net.spookygames.gdx.nativefilechooser.NativeFileChooserConfiguration;
|
||||||
|
|
||||||
/**
|
|
||||||
* The music player ui.
|
|
||||||
*/
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class MusicPlayerApp extends DefaultDeskApp implements DeskAppRenderer {
|
public class TosAmpDeskApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private final NativeFileChooserConfiguration fileChooserConfig;
|
private final MusicManager music;
|
||||||
|
private final NativeFileChooser fileChooser;
|
||||||
|
private NativeFileChooserConfiguration fileChooserConfig;
|
||||||
|
|
||||||
public MusicPlayerApp() {
|
public TosAmpDeskApp(NativeFileChooser fileChooser) {
|
||||||
setTitle(FontAwesomeIcons.Music + " Music Player");
|
this.fileChooser = fileChooser;
|
||||||
|
this.music = new MusicManager();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void create() {
|
||||||
|
getContours().setTitle("\uf001 TosAmp");
|
||||||
getContours().registrateContour(DeskAppContourSection.MAIN, this);
|
getContours().registrateContour(DeskAppContourSection.MAIN, this);
|
||||||
getContours().registrateContour(DeskAppContourSection.FILE_NEW, new DeskAppRenderer() {
|
getContours().registrateContour(DeskAppContourSection.FILE_NEW, new DeskAppRenderer() {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void render() {
|
public void render() {
|
||||||
if (ImGui.menuItem(FontAwesomeIcons.Plus + " Add")) {
|
if (ImGui.menuItem(FontAwesomeIcons.Plus + " Add")) {
|
||||||
// GDXAppVrGem4.INSTANCE.terminal.getFileChooser().chooseFile(fileChooserConfig,
|
fileChooser.chooseFile(fileChooserConfig,
|
||||||
// NativeFileChooserCallbackAdapter.onFileChosen(v -> GDXAppVrGem4.INSTANCE.music.addBackgroundMusic(v)));
|
NativeFileChooserCallbackAdapter.onFileChosen(v -> music.addBackgroundMusic(v)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -51,7 +55,7 @@ public class MusicPlayerApp extends DefaultDeskApp implements DeskAppRenderer {
|
||||||
@Override
|
@Override
|
||||||
public void render() {
|
public void render() {
|
||||||
ImGui.text("Current Song:");
|
ImGui.text("Current Song:");
|
||||||
MusicSong currentSong = GDXAppVrGem4.INSTANCE.music.getCurrentSong();
|
MusicSong currentSong = music.getCurrentSong();
|
||||||
if (currentSong != null) {
|
if (currentSong != null) {
|
||||||
ImGui.sameLine();
|
ImGui.sameLine();
|
||||||
ImGui.text(currentSong.getName());
|
ImGui.text(currentSong.getName());
|
||||||
|
@ -59,22 +63,22 @@ public class MusicPlayerApp extends DefaultDeskApp implements DeskAppRenderer {
|
||||||
ImGui.separator();
|
ImGui.separator();
|
||||||
if (currentSong != null) {
|
if (currentSong != null) {
|
||||||
if (ImGui.button("Play")) {
|
if (ImGui.button("Play")) {
|
||||||
GDXAppVrGem4.INSTANCE.music.play(currentSong);
|
music.play(currentSong);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
ImGui.text("Play");
|
ImGui.text("Play");
|
||||||
}
|
}
|
||||||
ImGui.sameLine();
|
ImGui.sameLine();
|
||||||
if (ImGui.button("<")) {
|
if (ImGui.button("<")) {
|
||||||
GDXAppVrGem4.INSTANCE.music.prev();
|
music.prev();
|
||||||
}
|
}
|
||||||
ImGui.sameLine();
|
ImGui.sameLine();
|
||||||
if (ImGui.button(">")) {
|
if (ImGui.button(">")) {
|
||||||
GDXAppVrGem4.INSTANCE.music.next();
|
music.next();
|
||||||
}
|
}
|
||||||
ImGui.sameLine();
|
ImGui.sameLine();
|
||||||
if (ImGui.button("Stop")) {
|
if (ImGui.button("Stop")) {
|
||||||
GDXAppVrGem4.INSTANCE.music.stop();
|
music.stop();
|
||||||
}
|
}
|
||||||
int flags = ImGuiTableFlags.ScrollX | ImGuiTableFlags.RowBg | ImGuiTableFlags.BordersOuter | ImGuiTableFlags.BordersV;
|
int flags = ImGuiTableFlags.ScrollX | ImGuiTableFlags.RowBg | ImGuiTableFlags.BordersOuter | ImGuiTableFlags.BordersV;
|
||||||
ImGui.beginTable("playlist", 3, flags);
|
ImGui.beginTable("playlist", 3, flags);
|
||||||
|
@ -83,14 +87,14 @@ public class MusicPlayerApp extends DefaultDeskApp implements DeskAppRenderer {
|
||||||
ImGui.tableSetupColumn("Name");
|
ImGui.tableSetupColumn("Name");
|
||||||
ImGui.tableHeadersRow();
|
ImGui.tableHeadersRow();
|
||||||
int i=1;
|
int i=1;
|
||||||
for (MusicSong song:GDXAppVrGem4.INSTANCE.music.getBackgroundSongs()) {
|
for (MusicSong song:music.getBackgroundSongs()) {
|
||||||
ImGui.pushID(i);
|
ImGui.pushID(i);
|
||||||
ImGui.tableNextRow();
|
ImGui.tableNextRow();
|
||||||
ImGui.tableNextColumn();
|
ImGui.tableNextColumn();
|
||||||
ImGui.selectable(""+i, song.isPlaying(), ImGuiSelectableFlags.None);
|
ImGui.selectable(""+i, song.isPlaying(), ImGuiSelectableFlags.None);
|
||||||
ImGui.tableNextColumn();
|
ImGui.tableNextColumn();
|
||||||
if (ImGui.smallButton(">")) {
|
if (ImGui.smallButton(">")) {
|
||||||
GDXAppVrGem4.INSTANCE.music.play(song);
|
music.play(song);
|
||||||
}
|
}
|
||||||
ImGui.tableNextColumn();
|
ImGui.tableNextColumn();
|
||||||
ImGui.selectable(song.getName(), song.isPlaying(), ImGuiSelectableFlags.None);
|
ImGui.selectable(song.getName(), song.isPlaying(), ImGuiSelectableFlags.None);
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.music;
|
package love.distributedrebirth.gdxapp4d.app.tosamp.music;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.music;
|
package love.distributedrebirth.gdxapp4d.app.tosamp.music;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.music;
|
package love.distributedrebirth.gdxapp4d.app.tosamp.music;
|
||||||
|
|
||||||
import com.badlogic.gdx.audio.Music;
|
import com.badlogic.gdx.audio.Music;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.music;
|
package love.distributedrebirth.gdxapp4d.app.tosamp.music;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
|
|
@ -4,6 +4,13 @@
|
||||||
<entry key="1c2d010066a39d96ace8af0ecc37c72d6f79109f30939e2959befcd9ce25fc8d">../gdxapp4d-chain-sys-engine/src/chain</entry>
|
<entry key="1c2d010066a39d96ace8af0ecc37c72d6f79109f30939e2959befcd9ce25fc8d">../gdxapp4d-chain-sys-engine/src/chain</entry>
|
||||||
<entry key="f8be3b29da5b6b2cb464f781469ceede6ccfd848d158293a4cdffbc2c41a410b">../gdxapp4d-chain-sys-ocean/src/chain</entry>
|
<entry key="f8be3b29da5b6b2cb464f781469ceede6ccfd848d158293a4cdffbc2c41a410b">../gdxapp4d-chain-sys-ocean/src/chain</entry>
|
||||||
<entry key="8833aa29da5b6b2cb464f781469ceede6ccfd848d158293a4cdffbc2c41b58de">../gdxapp4d-chain-dep-osgi-scr/src/chain</entry>
|
<entry key="8833aa29da5b6b2cb464f781469ceede6ccfd848d158293a4cdffbc2c41b58de">../gdxapp4d-chain-dep-osgi-scr/src/chain</entry>
|
||||||
|
|
||||||
|
<entry key="6633aa29da5b6b2cb4bef781469cffde677fd848d158293a4cdffbc2c41b89fe">../gdxapp4d-app-hewallet/src/chain</entry>
|
||||||
|
<entry key="6633aa29da5b6b2cb4bef781469cffde677fd848d158293a4cdffbc2c41b89fe.gdxapp4d-app-hewallet.jar">../gdxapp4d-app-hewallet/target/classes</entry>
|
||||||
|
|
||||||
|
<entry key="5522aa29da5b6b2cb4befaa14aacaade6aafd848d158293a4cdffbc2c41b23bd">../gdxapp4d-app-tosamp/src/chain</entry>
|
||||||
|
<entry key="5522aa29da5b6b2cb4befaa14aacaade6aafd848d158293a4cdffbc2c41b23bd.gdxapp4d-app-tosamp.jar">../gdxapp4d-app-tosamp/target/classes</entry>
|
||||||
|
|
||||||
<entry key="ccba3b29da8b1b1cb444f381449beede3cbfd442d158293a4cdffbc3c41a31cc">../gdxapp4d-vrgem4/src/chain</entry>
|
<entry key="ccba3b29da8b1b1cb444f381449beede3cbfd442d158293a4cdffbc3c41a31cc">../gdxapp4d-vrgem4/src/chain</entry>
|
||||||
<entry key="ccba3b29da8b1b1cb444f381449beede3cbfd442d158293a4cdffbc3c41a31cc.gdxapp4d-vrgem4.jar">../gdxapp4d-vrgem4/target/classes</entry>
|
<entry key="ccba3b29da8b1b1cb444f381449beede3cbfd442d158293a4cdffbc3c41a31cc.gdxapp4d-vrgem4.jar">../gdxapp4d-vrgem4/target/classes</entry>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
|
@ -4,5 +4,9 @@
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
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">
|
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">
|
||||||
<link:sea name="System Ocean" provider="gdxapp4d.system" author="willemtsade">
|
<link:sea name="System Ocean" provider="gdxapp4d.system" author="willemtsade">
|
||||||
|
<!-- Link app-hewallet -->
|
||||||
|
<link:chain key="6633aa29da5b6b2cb4bef781469cffde677fd848d158293a4cdffbc2c41b89fe"/>
|
||||||
|
<!-- Link app-tosamp -->
|
||||||
|
<link:chain key="5522aa29da5b6b2cb4befaa14aacaade6aafd848d158293a4cdffbc2c41b23bd"/>
|
||||||
</link:sea>
|
</link:sea>
|
||||||
</root:ocean>
|
</root:ocean>
|
||||||
|
|
|
@ -28,6 +28,7 @@ import com.badlogic.gdx.graphics.g2d.freetype.FreeTypeFontGenerator.FreeTypeFont
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpBase;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpBase;
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootFactory;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxFont;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxFont;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
|
@ -53,6 +54,7 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
private NativeFileChooser fileChooser;
|
private NativeFileChooser fileChooser;
|
||||||
private File hyperdriveHome;
|
private File hyperdriveHome;
|
||||||
private File warpshipHome;
|
private File warpshipHome;
|
||||||
|
private boolean startError;
|
||||||
private BitmapFont gdxFont;
|
private BitmapFont gdxFont;
|
||||||
private Properties localOverrides;
|
private Properties localOverrides;
|
||||||
private WaterDevice warpshipDevice;
|
private WaterDevice warpshipDevice;
|
||||||
|
@ -64,6 +66,7 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
private static final String WARPSHIP_HOME = "Warpship";
|
private static final String WARPSHIP_HOME = "Warpship";
|
||||||
|
|
||||||
public GDXAppTos4Activator() {
|
public GDXAppTos4Activator() {
|
||||||
|
startError = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void BãßInit(List<String> args, int viewWidth, int viewHeight,NativeFileChooser fileChooser, SystemGdxTerminal systemGdxTerminal) {
|
public void BãßInit(List<String> args, int viewWidth, int viewHeight,NativeFileChooser fileChooser, SystemGdxTerminal systemGdxTerminal) {
|
||||||
|
@ -88,6 +91,10 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
listeners.remove(listener);
|
listeners.remove(listener);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean hasStartError() {
|
||||||
|
return startError;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void stop(final BundleContext context) {
|
public void stop(final BundleContext context) {
|
||||||
gdxFont.dispose();
|
gdxFont.dispose();
|
||||||
|
@ -106,6 +113,7 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
hyperdriveHome = new File(userHome, HYPERDRIVE_HOME);
|
hyperdriveHome = new File(userHome, HYPERDRIVE_HOME);
|
||||||
if (!hyperdriveHome.exists()) {
|
if (!hyperdriveHome.exists()) {
|
||||||
fireMessageEvent("ERROR: No Hyperdrive home.");
|
fireMessageEvent("ERROR: No Hyperdrive home.");
|
||||||
|
startError = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
warpshipHome = new File(hyperdriveHome, WARPSHIP_HOME);
|
warpshipHome = new File(hyperdriveHome, WARPSHIP_HOME);
|
||||||
|
@ -114,6 +122,7 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
}
|
}
|
||||||
if (!warpshipHome.exists()) {
|
if (!warpshipHome.exists()) {
|
||||||
fireMessageEvent("ERROR: No Warpship home.");
|
fireMessageEvent("ERROR: No Warpship home.");
|
||||||
|
startError = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
File warpShip = new File(warpshipHome, Warpᵐᵉ.WARP_SHIP);
|
File warpShip = new File(warpshipHome, Warpᵐᵉ.WARP_SHIP);
|
||||||
|
@ -123,6 +132,7 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
fireMessageEvent("warp-ship: "+warpShip);
|
fireMessageEvent("warp-ship: "+warpShip);
|
||||||
if (!warpShip.exists()) {
|
if (!warpShip.exists()) {
|
||||||
fireMessageEvent("ERROR: No warp-ship.xml found.");
|
fireMessageEvent("ERROR: No warp-ship.xml found.");
|
||||||
|
startError = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
|
@ -130,6 +140,7 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
fireMessageEvent("ERROR: "+e.getMessage());
|
fireMessageEvent("ERROR: "+e.getMessage());
|
||||||
|
startError = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
fireMessageEvent("warp-engine: "+warpshipDevice.theShip().getName());
|
fireMessageEvent("warp-engine: "+warpshipDevice.theShip().getName());
|
||||||
|
@ -188,13 +199,16 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
fireMessageEvent("ERROR: "+e.getMessage());
|
fireMessageEvent("ERROR: "+e.getMessage());
|
||||||
|
startError = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (result > 0) {
|
if (result > 0) {
|
||||||
fireMessageEvent("tos4: FAILURE BOOT ABORTED");
|
fireMessageEvent("tos4: FAILURE BOOT ABORTED");
|
||||||
} else {
|
startError = true;
|
||||||
fireMessageEvent("tos4: chains resolved.");
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fireMessageEvent("tos4: chains resolved.");
|
||||||
try {
|
try {
|
||||||
ServiceReference<?>[] refs = context.getServiceReferences( SystemWarpSea.class.getName(), "(warp.sea.name=*)" );
|
ServiceReference<?>[] refs = context.getServiceReferences( SystemWarpSea.class.getName(), "(warp.sea.name=*)" );
|
||||||
for (int i=0;i<refs.length;i++) {
|
for (int i=0;i<refs.length;i++) {
|
||||||
|
@ -203,12 +217,13 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
File waterHome = service.getWarpHome();
|
File waterHome = service.getWarpHome();
|
||||||
for (WaterSeaMagic magic:service.getWarpSea().theWater().getSeaMagics()) {
|
for (WaterSeaMagic magic:service.getWarpSea().theWater().getSeaMagics()) {
|
||||||
if ("application/vnd.osgi.bundle".equals(magic.getMime())) {
|
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 overrideBundleKey = key + "." + magic.getFile();
|
||||||
String overrideBundle = localOverrides.getProperty(overrideBundleKey);
|
String overrideBundle = localOverrides.getProperty(overrideBundleKey);
|
||||||
if (overrideBundle == null) {
|
if (overrideBundle == null) {
|
||||||
GDXAppTos4BootFactory.installAndStartBundles(context, "reference:file:"+waterHome.getAbsolutePath()+"/"+magic.getFile());
|
SystemGdxBootFactory.installAndStartBundles(context, "reference:file:"+waterHome.getAbsolutePath()+"/"+magic.getFile());
|
||||||
} else {
|
} else {
|
||||||
GDXAppTos4BootFactory.installAndStartBundles(context, "reference:file:"+overrideBundle);
|
SystemGdxBootFactory.installAndStartBundles(context, "reference:file:"+overrideBundle);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -216,6 +231,8 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
fireMessageEvent("ERROR: "+e.getMessage());
|
fireMessageEvent("ERROR: "+e.getMessage());
|
||||||
|
startError = true;
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -294,6 +311,11 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
public NativeFileChooser getFileChooser() {
|
public NativeFileChooser getFileChooser() {
|
||||||
return fileChooser;
|
return fileChooser;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Properties getLocalOverrides() {
|
||||||
|
return localOverrides;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class SystemWarpShipImpl implements SystemWarpShip {
|
public class SystemWarpShipImpl implements SystemWarpShip {
|
||||||
|
@ -322,9 +344,28 @@ public class GDXAppTos4Activator implements BundleActivator {
|
||||||
waterHome = new File(override);
|
waterHome = new File(override);
|
||||||
}
|
}
|
||||||
LOG.debug("loadWaterOcean key={} home={}",key, waterHome);
|
LOG.debug("loadWaterOcean key={} home={}",key, waterHome);
|
||||||
|
|
||||||
|
// File waterHash = new File(waterHome, Warpᵐᵉ.WARP_HASH);
|
||||||
|
// if (!waterHash.exists()) {
|
||||||
|
// logger.accept("ERROR: Missing file: "+waterHash);
|
||||||
|
// return 1;
|
||||||
|
// }
|
||||||
|
// WaterShotAddict addict = new WaterShotAddict();
|
||||||
|
// try {
|
||||||
|
// if (!addict.validateWarpChainLink(waterHome)) {
|
||||||
|
// logger.accept("ERROR: Invalid hash in: "+waterHash);
|
||||||
|
// return 1;
|
||||||
|
// }
|
||||||
|
// } catch (NoSuchAlgorithmException | X4OConnectionException | SAXException | IOException e) {
|
||||||
|
// e.printStackTrace();
|
||||||
|
// logger.accept("ERROR: "+e.getMessage());
|
||||||
|
// return 1;
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
File waterSea = new File(waterHome, Warpᵐᵉ.WARP_SEA);
|
File waterSea = new File(waterHome, Warpᵐᵉ.WARP_SEA);
|
||||||
if (!waterSea.exists()) {
|
if (!waterSea.exists()) {
|
||||||
logger.accept("ERROR: No warp-sea.xml found.");
|
logger.accept("ERROR: Missing file: "+waterSea);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
WaterOcean ocean = WaterOceanDriver.newInstance().createReader().readFile(waterSea);
|
WaterOcean ocean = WaterOceanDriver.newInstance().createReader().readFile(waterSea);
|
||||||
|
|
|
@ -8,6 +8,7 @@ import org.slf4j.LoggerFactory;
|
||||||
import com.badlogic.gdx.Gdx;
|
import com.badlogic.gdx.Gdx;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootFactory;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class GDXAppTos4Startup {
|
public class GDXAppTos4Startup {
|
||||||
|
@ -16,7 +17,7 @@ public class GDXAppTos4Startup {
|
||||||
|
|
||||||
public static Framework init(GDXAppTos4 tos4, GDXAppTos4Activator systemActivator) {
|
public static Framework init(GDXAppTos4 tos4, GDXAppTos4Activator systemActivator) {
|
||||||
LOG.info("Startup framework");
|
LOG.info("Startup framework");
|
||||||
final Framework systemBundle = GDXAppTos4BootFactory.createFramework();
|
final Framework systemBundle = SystemGdxBootFactory.createFramework();
|
||||||
final GDXAppTos4BootScreen bootScreen = new GDXAppTos4BootScreen();
|
final GDXAppTos4BootScreen bootScreen = new GDXAppTos4BootScreen();
|
||||||
|
|
||||||
systemActivator.addBootListener(bootScreen);
|
systemActivator.addBootListener(bootScreen);
|
||||||
|
@ -30,11 +31,13 @@ public class GDXAppTos4Startup {
|
||||||
LOG.debug("Startup system-activator");
|
LOG.debug("Startup system-activator");
|
||||||
systemActivator.start(systemBundle.getBundleContext());
|
systemActivator.start(systemBundle.getBundleContext());
|
||||||
|
|
||||||
|
if (!systemActivator.hasStartError()) {
|
||||||
Gdx.app.postRunnable(() -> {
|
Gdx.app.postRunnable(() -> {
|
||||||
LOG.debug("Release boot-screen");
|
LOG.debug("Release boot-screen");
|
||||||
systemActivator.removeBootListener(bootScreen);
|
systemActivator.removeBootListener(bootScreen);
|
||||||
tos4.disposeScreen(bootScreen);
|
tos4.disposeScreen(bootScreen);
|
||||||
});
|
});
|
||||||
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
package love.distributedrebirth.gdxapp4d.tos4.service;
|
package love.distributedrebirth.gdxapp4d.tos4.service;
|
||||||
|
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import net.spookygames.gdx.nativefilechooser.NativeFileChooser;
|
import net.spookygames.gdx.nativefilechooser.NativeFileChooser;
|
||||||
|
|
||||||
|
@ -13,4 +15,6 @@ public interface SystemGdxBootArgs {
|
||||||
int getWindowHeight();
|
int getWindowHeight();
|
||||||
|
|
||||||
NativeFileChooser getFileChooser();
|
NativeFileChooser getFileChooser();
|
||||||
|
|
||||||
|
Properties getLocalOverrides();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.tos4;
|
package love.distributedrebirth.gdxapp4d.tos4.service;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
@ -16,7 +16,7 @@ import org.osgi.framework.launch.FrameworkFactory;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class GDXAppTos4BootFactory {
|
public class SystemGdxBootFactory {
|
||||||
|
|
||||||
public static void installAndStartBundles(BundleContext bundleContext, String... bundleLocations) throws BundleException {
|
public static void installAndStartBundles(BundleContext bundleContext, String... bundleLocations) throws BundleException {
|
||||||
for (String location : bundleLocations) {
|
for (String location : bundleLocations) {
|
|
@ -12,7 +12,6 @@
|
||||||
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||||
<artifactId>gdxapp4d-tos4</artifactId>
|
<artifactId>gdxapp4d-tos4</artifactId>
|
||||||
<version>${project.version}</version>
|
<version>${project.version}</version>
|
||||||
<scope>provided</scope>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
<build>
|
<build>
|
||||||
|
@ -25,9 +24,7 @@
|
||||||
<exportScr>true</exportScr>
|
<exportScr>true</exportScr>
|
||||||
<instructions>
|
<instructions>
|
||||||
<_donotcopy>(.git)</_donotcopy>
|
<_donotcopy>(.git)</_donotcopy>
|
||||||
<!-- Enable processing of OSGI DS component annotations -->
|
|
||||||
<_dsannotations>*</_dsannotations>
|
<_dsannotations>*</_dsannotations>
|
||||||
<!-- Enable processing of OSGI metatype annotations -->
|
|
||||||
<_metatypeannotations>*</_metatypeannotations>
|
<_metatypeannotations>*</_metatypeannotations>
|
||||||
<Import-Package>
|
<Import-Package>
|
||||||
org.osgi.framework,
|
org.osgi.framework,
|
||||||
|
@ -109,7 +106,10 @@
|
||||||
love.distributedrebirth.unicode4d,
|
love.distributedrebirth.unicode4d,
|
||||||
love.distributedrebirth.unicode4d.atlas
|
love.distributedrebirth.unicode4d.atlas
|
||||||
</Import-Package>
|
</Import-Package>
|
||||||
<Export-Package>love.distributedrebirth.gdxapp4d.vrgem4.service</Export-Package>
|
<Export-Package>
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service,
|
||||||
|
love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp
|
||||||
|
</Export-Package>
|
||||||
<Private-Package>love.distributedrebirth.gdxapp4d.vrgem4.*</Private-Package>
|
<Private-Package>love.distributedrebirth.gdxapp4d.vrgem4.*</Private-Package>
|
||||||
<!--
|
<!--
|
||||||
<Embed-Dependency>*;artifactId=gdx;inline=true,*;artifactId=gdx-nativefilechooser;inline=true</Embed-Dependency>
|
<Embed-Dependency>*;artifactId=gdx;inline=true,*;artifactId=gdx-nativefilechooser;inline=true</Embed-Dependency>
|
||||||
|
|
|
@ -1,24 +0,0 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4;
|
|
||||||
|
|
||||||
import java.util.function.Supplier;
|
|
||||||
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DefaultDeskApp;
|
|
||||||
|
|
||||||
public final class GDXAppLauncher {
|
|
||||||
|
|
||||||
private final String name;
|
|
||||||
private final Supplier<DefaultDeskApp> launcher;
|
|
||||||
|
|
||||||
public GDXAppLauncher(String name, Supplier<DefaultDeskApp> launcher) {
|
|
||||||
this.name = name;
|
|
||||||
this.launcher = launcher;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getName() {
|
|
||||||
return name;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Supplier<DefaultDeskApp> getLauncher() {
|
|
||||||
return launcher;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,7 +1,5 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4;
|
package love.distributedrebirth.gdxapp4d.vrgem4;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||||
|
@ -9,7 +7,6 @@ import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPackageInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnPackageInfoʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.jmx.DefaultEnumInstanceᴶᴹˣ;
|
import love.distributedrebirth.bassboonyd.jmx.DefaultEnumInstanceᴶᴹˣ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxTerminal;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxTerminal;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.music.MusicManager;
|
|
||||||
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@ -20,7 +17,7 @@ public enum GDXAppVrGem4 implements DefaultEnumInstanceᴶᴹˣ<GDXAppVrGem4,GDX
|
||||||
INSTANCE;
|
INSTANCE;
|
||||||
|
|
||||||
public SystemGdxTerminal terminal;
|
public SystemGdxTerminal terminal;
|
||||||
public MusicManager music;
|
//public MusicManager music;
|
||||||
//public FontAtlas basePlane;
|
//public FontAtlas basePlane;
|
||||||
private final BãßBȍőnCoffinOpenʸᴰ<GDXAppVrGem4Keyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
private final BãßBȍőnCoffinOpenʸᴰ<GDXAppVrGem4Keyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||||
public BãßBȍőnCoffinʸᴰ<GDXAppVrGem4Keyʸᴰ> GET_BBC() { return BBC; }
|
public BãßBȍőnCoffinʸᴰ<GDXAppVrGem4Keyʸᴰ> GET_BBC() { return BBC; }
|
||||||
|
@ -31,8 +28,8 @@ public enum GDXAppVrGem4 implements DefaultEnumInstanceᴶᴹˣ<GDXAppVrGem4,GDX
|
||||||
}
|
}
|
||||||
|
|
||||||
public void init(SystemGdxTerminal terminal) {
|
public void init(SystemGdxTerminal terminal) {
|
||||||
music = new MusicManager();
|
//music = new MusicManager();
|
||||||
music.init(false);
|
//music.init(false);
|
||||||
|
|
||||||
this.terminal = terminal;
|
this.terminal = terminal;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4;
|
package love.distributedrebirth.gdxapp4d.vrgem4;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.Hashtable;
|
||||||
|
|
||||||
import org.osgi.framework.BundleActivator;
|
import org.osgi.framework.BundleActivator;
|
||||||
import org.osgi.framework.BundleContext;
|
import org.osgi.framework.BundleContext;
|
||||||
import org.osgi.framework.ServiceReference;
|
import org.osgi.framework.ServiceReference;
|
||||||
|
@ -9,10 +12,14 @@ import com.badlogic.gdx.Gdx;
|
||||||
import imgui.type.ImBoolean;
|
import imgui.type.ImBoolean;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||||
import love.distributedrebirth.bassboonyd.jmx.DefaultEnumBaseᴶᴹˣ;
|
import love.distributedrebirth.bassboonyd.jmx.DefaultEnumBaseᴶᴹˣ;
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.GDXAppTos4Activator.SystemWarpBaseImpl;
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootFactory;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxFont;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxFont;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxTerminal;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxTerminal;
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpBase;
|
||||||
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpSea;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenCredits;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenCredits;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop1;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop1;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop2;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop2;
|
||||||
|
@ -20,10 +27,12 @@ import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop3;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop4;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenHelp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenHelp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenIntroMission;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenIntroMission;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
import love.distributedrebirth.numberxd.base2t.Base2PartsFactory;
|
import love.distributedrebirth.numberxd.base2t.Base2PartsFactory;
|
||||||
import love.distributedrebirth.numberxd.base2t.Base2Terminator;
|
import love.distributedrebirth.numberxd.base2t.Base2Terminator;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.warp.TOSWarpCore;
|
import love.distributedrebirth.numberxd.base2t.part.warp.TOSWarpCore;
|
||||||
import love.distributedrebirth.numberxd.glyph.BaseGlyphSet;
|
import love.distributedrebirth.numberxd.glyph.BaseGlyphSet;
|
||||||
|
import love.distributedrebirth.warpme.sea.WaterSeaMagic;
|
||||||
import love.distributedrebirth.warpme.ship.WaterShipOcean;
|
import love.distributedrebirth.warpme.ship.WaterShipOcean;
|
||||||
|
|
||||||
public class GDXAppVrGem4Activator implements BundleActivator {
|
public class GDXAppVrGem4Activator implements BundleActivator {
|
||||||
|
@ -64,7 +73,7 @@ public class GDXAppVrGem4Activator implements BundleActivator {
|
||||||
bootScreen.bootLine(" ©Δ∞ 仙上主天 ");
|
bootScreen.bootLine(" ©Δ∞ 仙上主天 ");
|
||||||
bootScreen.bootLine("בְּרֵאשִׁית :o: יְסוֺד :o: יִשְׂרָאֵל");
|
bootScreen.bootLine("בְּרֵאשִׁית :o: יְסוֺד :o: יִשְׂרָאֵל");
|
||||||
bootScreen.bootLine("==========================");
|
bootScreen.bootLine("==========================");
|
||||||
bootScreen.bootLine("vrGEM4 Booting...");
|
bootScreen.bootLine("Boot: vrGEM⁴ - TOS⁴ - MSX⁴");
|
||||||
|
|
||||||
// ref to init
|
// ref to init
|
||||||
for (DefaultEnumBaseᴶᴹˣ<?,?> coffin:coffinInstances()) {
|
for (DefaultEnumBaseᴶᴹˣ<?,?> coffin:coffinInstances()) {
|
||||||
|
@ -132,17 +141,21 @@ public class GDXAppVrGem4Activator implements BundleActivator {
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
bootScreen.bootLine("vrGEM4: init");
|
bootScreen.bootLine("vrGEM⁴: init");
|
||||||
GDXAppVrGem4.INSTANCE.init(terminal);
|
GDXAppVrGem4.INSTANCE.init(terminal);
|
||||||
|
|
||||||
|
|
||||||
|
VrGem4DeskAppService deskAppService = new VrGem4DeskAppServiceImpl();
|
||||||
|
context.registerService(VrGem4DeskAppService.class.getName(), deskAppService, new Hashtable<String, String>());
|
||||||
|
|
||||||
bootScreen.bootLine("terminal: added screens");
|
bootScreen.bootLine("terminal: added screens");
|
||||||
Gdx.app.postRunnable(new Runnable() {
|
Gdx.app.postRunnable(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
terminal.registrateScreen(new ScreenDesktop1(bootArgs));
|
terminal.registrateScreen(new ScreenDesktop1(bootArgs, deskAppService));
|
||||||
terminal.registrateScreen(new ScreenDesktop2(bootArgs));
|
terminal.registrateScreen(new ScreenDesktop2(bootArgs, deskAppService));
|
||||||
terminal.registrateScreen(new ScreenDesktop3(bootArgs));
|
terminal.registrateScreen(new ScreenDesktop3(bootArgs, deskAppService));
|
||||||
terminal.registrateScreen(new ScreenDesktop4(bootArgs));
|
terminal.registrateScreen(new ScreenDesktop4(bootArgs, deskAppService));
|
||||||
terminal.registrateScreen(new ScreenCredits());
|
terminal.registrateScreen(new ScreenCredits());
|
||||||
terminal.registrateScreen(new ScreenHelp());
|
terminal.registrateScreen(new ScreenHelp());
|
||||||
terminal.registrateScreen(new ScreenIntroMission());
|
terminal.registrateScreen(new ScreenIntroMission());
|
||||||
|
@ -169,8 +182,36 @@ public class GDXAppVrGem4Activator implements BundleActivator {
|
||||||
}
|
}
|
||||||
if (result > 0) {
|
if (result > 0) {
|
||||||
bootScreen.bootLine("vrGEM4: FAILURE BOOT ABORTED");
|
bootScreen.bootLine("vrGEM4: FAILURE BOOT ABORTED");
|
||||||
} else {
|
return;
|
||||||
|
}
|
||||||
bootScreen.bootLine("vrGEM4: chains resolved.");
|
bootScreen.bootLine("vrGEM4: chains resolved.");
|
||||||
|
|
||||||
|
try {
|
||||||
|
ServiceReference<?>[] refs = context.getServiceReferences( SystemWarpSea.class.getName(), "(warp.sea.name=*)" );
|
||||||
|
for (int i=0;i<refs.length;i++) {
|
||||||
|
SystemWarpSea service = (SystemWarpSea) context.getService( refs[i] );
|
||||||
|
String key = service.getWarpKey();
|
||||||
|
File waterHome = service.getWarpHome();
|
||||||
|
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 = bootArgs.getLocalOverrides().getProperty(overrideBundleKey);
|
||||||
|
if (overrideBundle == null) {
|
||||||
|
SystemGdxBootFactory.installAndStartBundles(context, "reference:file:"+waterHome.getAbsolutePath()+"/"+magic.getFile());
|
||||||
|
} else {
|
||||||
|
SystemGdxBootFactory.installAndStartBundles(context, "reference:file:"+overrideBundle);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
bootScreen.bootLine("ERROR: "+e.getMessage());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Thread.sleep(2000);
|
Thread.sleep(2000);
|
||||||
} catch (InterruptedException ignored) {
|
} catch (InterruptedException ignored) {
|
||||||
|
@ -183,7 +224,6 @@ public class GDXAppVrGem4Activator implements BundleActivator {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
//TODO: add layer or ?? private <T extends BãßBȍőnCoffinStoreʸᴰ<?>,DefaultAuthorInfoʸᴰ> T[] storeInstances() {
|
//TODO: add layer or ?? private <T extends BãßBȍőnCoffinStoreʸᴰ<?>,DefaultAuthorInfoʸᴰ> T[] storeInstances() {
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4;
|
package love.distributedrebirth.gdxapp4d.vrgem4;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import org.osgi.service.component.annotations.Activate;
|
import org.osgi.service.component.annotations.Activate;
|
||||||
import org.osgi.service.component.annotations.Component;
|
import org.osgi.service.component.annotations.Component;
|
||||||
import org.osgi.service.component.annotations.Deactivate;
|
import org.osgi.service.component.annotations.Deactivate;
|
||||||
|
@ -7,6 +10,8 @@ import org.osgi.service.component.annotations.Reference;
|
||||||
|
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxLog;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemWarpShip;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
public class TestComponent {
|
public class TestComponent {
|
||||||
|
@ -19,7 +24,7 @@ public class TestComponent {
|
||||||
|
|
||||||
@Activate
|
@Activate
|
||||||
void open() {
|
void open() {
|
||||||
log.info(this, "Activated warpEngine: {}", warpShip.getWarpShip().theShip().getEngine());
|
log.info(this, "Activated22222 warpEngine: {}", warpShip.getWarpShip().theShip().getEngine());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Deactivate
|
@Deactivate
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
package love.distributedrebirth.gdxapp4d.vrgem4;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
|
|
||||||
|
public class VrGem4DeskAppServiceImpl implements VrGem4DeskAppService {
|
||||||
|
|
||||||
|
private List<DeskAppLauncher> launchers = new ArrayList<>();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<DeskAppLauncher> getLaunchers() {
|
||||||
|
return launchers;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void registrateDeskApp(DeskAppLauncher launcher) {
|
||||||
|
launchers.add(launcher);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,38 +0,0 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
|
||||||
public class DefaultDeskApp implements DeskApp {
|
|
||||||
|
|
||||||
private String title;
|
|
||||||
private String icon;
|
|
||||||
private final DeskAppContour contours;
|
|
||||||
|
|
||||||
public DefaultDeskApp() {
|
|
||||||
this.contours = new DeskAppContour();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setTitle(String title) {
|
|
||||||
this.title = title;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getTitle() {
|
|
||||||
return title;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setIcon(String icon) {
|
|
||||||
this.icon = icon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getIcon() {
|
|
||||||
return icon;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public DeskAppContour getContours() {
|
|
||||||
return contours;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,29 +0,0 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps;
|
|
||||||
|
|
||||||
import imgui.ImGui;
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DefaultDeskApp;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppContourSection;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppRenderer;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
|
||||||
public class BasicConsoleApp extends DefaultDeskApp {
|
|
||||||
|
|
||||||
public BasicConsoleApp() {
|
|
||||||
setTitle("Basic Conssole");
|
|
||||||
getContours().registrateContour(DeskAppContourSection.MAIN, new DeskAppRenderer() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void render() {
|
|
||||||
ImGui.text("10 PRINT \"The BASIC Shahada of DUNE;\"");
|
|
||||||
ImGui.text("20 PRINT \"- THERE IS NO GOD BUT @Ω仙⁴\"");
|
|
||||||
ImGui.text("30 PRINT \"- THERE IS NO RULE BUT CONSENT\"");
|
|
||||||
ImGui.text("40 PRINT \"- THERE IS NO FAILURE BUT DEATH\"");
|
|
||||||
ImGui.text("50 PRINT \"- TERRY A. DAVIS WAS THE PROPHET OF @Ω仙9⁴\"");
|
|
||||||
ImGui.text("60 PRINT \"- TERRY A. DAVIS WAS THE FIRST TRUE MENTAT\"");
|
|
||||||
ImGui.text("70 PRINT \"- TERRY A. DAVIS WAS THE BEST CODER ALIVE\"");
|
|
||||||
ImGui.text("RUN");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -19,14 +19,15 @@ import imgui.flag.ImGuiWindowFlags;
|
||||||
import imgui.type.ImBoolean;
|
import imgui.type.ImBoolean;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.ImGuiSetup;
|
import love.distributedrebirth.gdxapp4d.vrgem4.ImGuiSetup;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppScreen;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppScreenListener;
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.DeskAppController;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskTopInputProcessor;
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.DeskAppSelectionListener;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskTopScreen;
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.DeskAppInputProcessor;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskTopScreenMenu;
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.DeskTopScreen;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.DeskTopScreenMenu;
|
||||||
|
|
||||||
public abstract class AbstractScreenDesktop extends ScreenAdapter implements DeskTopScreen {
|
public abstract class AbstractScreenDesktop extends ScreenAdapter implements DeskTopScreen {
|
||||||
|
|
||||||
|
@ -34,18 +35,19 @@ public abstract class AbstractScreenDesktop extends ScreenAdapter implements Des
|
||||||
protected BitmapFont font;
|
protected BitmapFont font;
|
||||||
protected OrthographicCamera camera;
|
protected OrthographicCamera camera;
|
||||||
protected ImBoolean showImGuiDemo = new ImBoolean(false);
|
protected ImBoolean showImGuiDemo = new ImBoolean(false);
|
||||||
private DeskTopScreenMenu screenMenu;
|
private final DeskTopScreenMenu screenMenu;
|
||||||
private final DeskAppScreen deskAppScreen;
|
private final DeskAppController deskAppScreen;
|
||||||
private PerspectiveCamera cam;
|
private PerspectiveCamera cam;
|
||||||
private FirstPersonCameraController camController;
|
private FirstPersonCameraController camController;
|
||||||
private DeskTopInputProcessor inputFilter;
|
private DeskAppInputProcessor inputFilter;
|
||||||
private ModelBatch modelBatch;
|
private ModelBatch modelBatch;
|
||||||
private Array<ModelInstance> modelInstances = new Array<ModelInstance>();
|
private Array<ModelInstance> modelInstances = new Array<ModelInstance>();
|
||||||
|
|
||||||
public AbstractScreenDesktop(String name, SystemGdxBootArgs bootArgs) {
|
public AbstractScreenDesktop(String name, SystemGdxBootArgs bootArgs, VrGem4DeskAppService deskAppService) {
|
||||||
this.create(bootArgs);
|
this.create();
|
||||||
deskAppScreen = new DeskAppScreen(name);
|
screenMenu = new DeskTopScreenMenu(bootArgs, deskAppService);
|
||||||
deskAppScreen.addDeskAppListener(new DeskAppScreenListener() {
|
deskAppScreen = new DeskAppController(name);
|
||||||
|
deskAppScreen.addDeskAppListener(new DeskAppSelectionListener() {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void selectDeskApp(DeskApp deskApp) {
|
public void selectDeskApp(DeskApp deskApp) {
|
||||||
|
@ -59,10 +61,9 @@ public abstract class AbstractScreenDesktop extends ScreenAdapter implements Des
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void createModel(ModelBuilder modelBuilder, Array<ModelInstance> modelInstances) {
|
protected void createModel(ModelBuilder modelBuilder, Array<ModelInstance> modelInstances) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void create(SystemGdxBootArgs bootArgs) {
|
private void create() {
|
||||||
batch = new SpriteBatch();
|
batch = new SpriteBatch();
|
||||||
font = new BitmapFont();
|
font = new BitmapFont();
|
||||||
camera = new OrthographicCamera();
|
camera = new OrthographicCamera();
|
||||||
|
@ -71,8 +72,6 @@ public abstract class AbstractScreenDesktop extends ScreenAdapter implements Des
|
||||||
camera.update();
|
camera.update();
|
||||||
batch.setProjectionMatrix(camera.combined);
|
batch.setProjectionMatrix(camera.combined);
|
||||||
|
|
||||||
screenMenu = new DeskTopScreenMenu(bootArgs);
|
|
||||||
|
|
||||||
modelBatch = new ModelBatch();
|
modelBatch = new ModelBatch();
|
||||||
|
|
||||||
cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
|
cam = new PerspectiveCamera(67, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
|
||||||
|
@ -88,7 +87,7 @@ public abstract class AbstractScreenDesktop extends ScreenAdapter implements Des
|
||||||
camController = new FirstPersonCameraController(cam);
|
camController = new FirstPersonCameraController(cam);
|
||||||
//camController = new CameraInputController(cam);
|
//camController = new CameraInputController(cam);
|
||||||
|
|
||||||
inputFilter = new DeskTopInputProcessor(camController);
|
inputFilter = new DeskAppInputProcessor(camController);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -131,13 +130,13 @@ public abstract class AbstractScreenDesktop extends ScreenAdapter implements Des
|
||||||
if (showImGuiDemo.get()) {
|
if (showImGuiDemo.get()) {
|
||||||
ImGui.showDemoWindow(showImGuiDemo);
|
ImGui.showDemoWindow(showImGuiDemo);
|
||||||
}
|
}
|
||||||
if (appScreen != null && appScreen.getDeskAppScreen().getCurrentDeskApp() != null) {
|
if (appScreen != null && appScreen.getDeskAppController().getCurrentDeskApp() != null) {
|
||||||
int sizeFlags = ImGuiCond.Always;
|
int sizeFlags = ImGuiCond.Always;
|
||||||
ImGui.setNextWindowPos(0, 28, sizeFlags);
|
ImGui.setNextWindowPos(0, 28, sizeFlags);
|
||||||
ImGui.setNextWindowSize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight() - 28, sizeFlags);
|
ImGui.setNextWindowSize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight() - 28, sizeFlags);
|
||||||
int windowFlags = ImGuiWindowFlags.NoMove | ImGuiWindowFlags.NoResize | ImGuiWindowFlags.NoTitleBar;
|
int windowFlags = ImGuiWindowFlags.NoMove | ImGuiWindowFlags.NoResize | ImGuiWindowFlags.NoTitleBar;
|
||||||
if (ImGui.begin(appScreen.getDeskAppScreen().getCurrentDeskApp().getTitle(), windowFlags)) {
|
if (ImGui.begin(appScreen.getDeskAppController().getCurrentDeskApp().getContours().getTitle(), windowFlags)) {
|
||||||
DeskAppRenderer renderer = appScreen.getDeskAppScreen().getCurrentDeskApp().getContours().getContour(DeskAppContourSection.MAIN);
|
DeskAppRenderer renderer = appScreen.getDeskAppController().getCurrentDeskApp().getContours().getContour(DeskAppContourSection.MAIN);
|
||||||
if (renderer != null) {
|
if (renderer != null) {
|
||||||
renderer.render();
|
renderer.render();
|
||||||
}
|
}
|
||||||
|
@ -163,7 +162,7 @@ public abstract class AbstractScreenDesktop extends ScreenAdapter implements Des
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DeskAppScreen getDeskAppScreen() {
|
public DeskAppController getDeskAppController() {
|
||||||
return deskAppScreen;
|
return deskAppScreen;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,7 +10,6 @@ import com.badlogic.gdx.graphics.g2d.SpriteBatch;
|
||||||
import com.badlogic.gdx.utils.ScreenUtils;
|
import com.badlogic.gdx.utils.ScreenUtils;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.GDXAppTos4;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
|
|
|
@ -4,7 +4,6 @@ import com.badlogic.gdx.Screen;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.music.MusicSongType;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ScreenCredits extends AbstractScrollScreen {
|
public class ScreenCredits extends AbstractScrollScreen {
|
||||||
|
@ -79,11 +78,11 @@ public class ScreenCredits extends AbstractScrollScreen {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showScroll() {
|
public void showScroll() {
|
||||||
GDXAppVrGem4.INSTANCE.music.play(MusicSongType.CREDITS);
|
//GDXAppVrGem4.INSTANCE.music.play(MusicSongType.CREDITS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void hideScroll() {
|
public void hideScroll() {
|
||||||
GDXAppVrGem4.INSTANCE.music.play(MusicSongType.BACKGROUND);
|
//GDXAppVrGem4.INSTANCE.music.play(MusicSongType.BACKGROUND);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,13 +10,14 @@ import com.badlogic.gdx.utils.Array;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ScreenDesktop1 extends AbstractScreenDesktop {
|
public class ScreenDesktop1 extends AbstractScreenDesktop {
|
||||||
private Model grid;
|
private Model grid;
|
||||||
|
|
||||||
public ScreenDesktop1(SystemGdxBootArgs bootArgs) {
|
public ScreenDesktop1(SystemGdxBootArgs bootArgs, VrGem4DeskAppService deskAppService) {
|
||||||
super("Desktop1", bootArgs);
|
super("Desktop1", bootArgs, deskAppService);
|
||||||
//backgroundImage = new Texture(Gdx.files.internal("background/terrydavis-front.png"));
|
//backgroundImage = new Texture(Gdx.files.internal("background/terrydavis-front.png"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,13 +10,14 @@ import com.badlogic.gdx.utils.Array;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ScreenDesktop2 extends AbstractScreenDesktop {
|
public class ScreenDesktop2 extends AbstractScreenDesktop {
|
||||||
private Model grid;
|
private Model grid;
|
||||||
|
|
||||||
public ScreenDesktop2(SystemGdxBootArgs bootArgs) {
|
public ScreenDesktop2(SystemGdxBootArgs bootArgs, VrGem4DeskAppService deskAppService) {
|
||||||
super("Desktop2", bootArgs);
|
super("Desktop2", bootArgs, deskAppService);
|
||||||
//backgroundImage = new Texture(Gdx.files.internal("background/terrydavis-nose.png"));
|
//backgroundImage = new Texture(Gdx.files.internal("background/terrydavis-nose.png"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,13 +10,14 @@ import com.badlogic.gdx.utils.Array;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ScreenDesktop3 extends AbstractScreenDesktop {
|
public class ScreenDesktop3 extends AbstractScreenDesktop {
|
||||||
private Model grid;
|
private Model grid;
|
||||||
|
|
||||||
public ScreenDesktop3(SystemGdxBootArgs bootArgs) {
|
public ScreenDesktop3(SystemGdxBootArgs bootArgs, VrGem4DeskAppService deskAppService) {
|
||||||
super("Desktop3", bootArgs);
|
super("Desktop3", bootArgs, deskAppService);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void createModel(ModelBuilder modelBuilder, Array<ModelInstance> modelInstances) {
|
protected void createModel(ModelBuilder modelBuilder, Array<ModelInstance> modelInstances) {
|
||||||
|
|
|
@ -21,6 +21,7 @@ import com.badlogic.gdx.utils.viewport.ScreenViewport;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ScreenDesktop4 extends AbstractScreenDesktop {
|
public class ScreenDesktop4 extends AbstractScreenDesktop {
|
||||||
|
@ -36,8 +37,8 @@ public class ScreenDesktop4 extends AbstractScreenDesktop {
|
||||||
private float colorFade = 0f;
|
private float colorFade = 0f;
|
||||||
private boolean colorPositive = true;
|
private boolean colorPositive = true;
|
||||||
|
|
||||||
public ScreenDesktop4(SystemGdxBootArgs bootArgs) {
|
public ScreenDesktop4(SystemGdxBootArgs bootArgs, VrGem4DeskAppService deskAppService) {
|
||||||
super("Desktop4", bootArgs);
|
super("Desktop4", bootArgs, deskAppService);
|
||||||
shader = new UserColorShader();
|
shader = new UserColorShader();
|
||||||
shader.init();
|
shader.init();
|
||||||
font = new BitmapFont();
|
font = new BitmapFont();
|
||||||
|
|
|
@ -4,7 +4,6 @@ import com.badlogic.gdx.Screen;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.music.MusicSongType;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ScreenHelp extends AbstractScrollScreen {
|
public class ScreenHelp extends AbstractScrollScreen {
|
||||||
|
@ -62,11 +61,11 @@ public class ScreenHelp extends AbstractScrollScreen {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showScroll() {
|
public void showScroll() {
|
||||||
GDXAppVrGem4.INSTANCE.music.play(MusicSongType.INTRO);
|
//GDXAppVrGem4.INSTANCE.music.play(MusicSongType.INTRO);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void hideScroll() {
|
public void hideScroll() {
|
||||||
GDXAppVrGem4.INSTANCE.music.play(MusicSongType.BACKGROUND);
|
//GDXAppVrGem4.INSTANCE.music.play(MusicSongType.BACKGROUND);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,6 @@ import com.badlogic.gdx.Screen;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.music.MusicSongType;
|
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class ScreenIntroMission extends AbstractScrollScreen {
|
public class ScreenIntroMission extends AbstractScrollScreen {
|
||||||
|
@ -72,6 +71,6 @@ public class ScreenIntroMission extends AbstractScrollScreen {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void hideScroll() {
|
public void hideScroll() {
|
||||||
GDXAppVrGem4.INSTANCE.music.play(MusicSongType.BACKGROUND);
|
//GDXAppVrGem4.INSTANCE.music.play(MusicSongType.BACKGROUND);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
package love.distributedrebirth.gdxapp4d.vrgem4.service;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
|
|
||||||
|
public interface VrGem4DeskAppService {
|
||||||
|
|
||||||
|
List<DeskAppLauncher> getLaunchers();
|
||||||
|
|
||||||
|
void registrateDeskApp(DeskAppLauncher launcher);
|
||||||
|
}
|
|
@ -0,0 +1,26 @@
|
||||||
|
package love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
|
abstract public class AbstractDeskApp implements DeskApp {
|
||||||
|
|
||||||
|
private final DeskAppContour contours;
|
||||||
|
|
||||||
|
public AbstractDeskApp() {
|
||||||
|
this.contours = new DeskAppContour();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DeskAppContour getContours() {
|
||||||
|
return contours;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void show() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void hide() {
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,13 +1,15 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface DeskApp {
|
public interface DeskApp {
|
||||||
|
|
||||||
String getTitle();
|
|
||||||
|
|
||||||
String getIcon();
|
|
||||||
|
|
||||||
DeskAppContour getContours();
|
DeskAppContour getContours();
|
||||||
|
|
||||||
|
void create();
|
||||||
|
|
||||||
|
void show();
|
||||||
|
|
||||||
|
void hide();
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
@ -8,12 +8,21 @@ import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class DeskAppContour {
|
public class DeskAppContour {
|
||||||
|
|
||||||
|
private String title;
|
||||||
private final Map<DeskAppContourSection, DeskAppRenderer> renderers;
|
private final Map<DeskAppContourSection, DeskAppRenderer> renderers;
|
||||||
|
|
||||||
public DeskAppContour() {
|
public DeskAppContour() {
|
||||||
this.renderers = new HashMap<>();
|
this.renderers = new HashMap<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setTitle(String title) {
|
||||||
|
this.title = title;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getTitle() {
|
||||||
|
return title;
|
||||||
|
}
|
||||||
|
|
||||||
public void registrateContour(DeskAppContourSection section, DeskAppRenderer renderer) {
|
public void registrateContour(DeskAppContourSection section, DeskAppRenderer renderer) {
|
||||||
renderers.put(section, renderer);
|
renderers.put(section, renderer);
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
package love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp;
|
||||||
|
|
||||||
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
|
public final class DeskAppLauncher {
|
||||||
|
|
||||||
|
private final String name;
|
||||||
|
private final Supplier<DeskApp> launcher;
|
||||||
|
|
||||||
|
public DeskAppLauncher(String name, Supplier<DeskApp> launcher) {
|
||||||
|
this.name = name;
|
||||||
|
this.launcher = launcher;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Supplier<DeskApp> getLauncher() {
|
||||||
|
return launcher;
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,8 +1,9 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@FunctionalInterface
|
||||||
public interface DeskAppRenderer {
|
public interface DeskAppRenderer {
|
||||||
|
|
||||||
void render();
|
void render();
|
|
@ -1,20 +1,23 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskApp;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class DeskAppScreen {
|
public class DeskAppController {
|
||||||
|
|
||||||
private final String name;
|
private final String name;
|
||||||
private final List<DeskApp> deskApps;
|
private final List<DeskApp> deskApps;
|
||||||
private DeskApp currentDeskApp;
|
private DeskApp currentDeskApp;
|
||||||
private final List<DeskAppScreenListener> deskAppListeners;
|
private final List<DeskAppSelectionListener> deskAppListeners;
|
||||||
|
|
||||||
public DeskAppScreen(String name) {
|
public DeskAppController(String name) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.deskApps = new ArrayList<>();
|
this.deskApps = new ArrayList<>();
|
||||||
this.deskAppListeners = new ArrayList<>();
|
this.deskAppListeners = new ArrayList<>();
|
||||||
|
@ -43,18 +46,18 @@ public class DeskAppScreen {
|
||||||
|
|
||||||
public void setCurrentDeskApp(DeskApp currentDeskApp) {
|
public void setCurrentDeskApp(DeskApp currentDeskApp) {
|
||||||
this.currentDeskApp = currentDeskApp;
|
this.currentDeskApp = currentDeskApp;
|
||||||
for (DeskAppScreenListener listener: deskAppListeners) {
|
for (DeskAppSelectionListener listener: deskAppListeners) {
|
||||||
listener.selectDeskApp(currentDeskApp);
|
listener.selectDeskApp(currentDeskApp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addDeskAppListener(DeskAppScreenListener listener) {
|
public void addDeskAppListener(DeskAppSelectionListener listener) {
|
||||||
deskAppListeners.add(listener);
|
deskAppListeners.add(listener);
|
||||||
}
|
}
|
||||||
|
|
||||||
public final void renderMenu() {
|
public final void renderMenu() {
|
||||||
for (DeskApp app: deskApps) {
|
for (DeskApp app: deskApps) {
|
||||||
if (ImGui.menuItem(app.getTitle())) {
|
if (ImGui.menuItem(app.getContours().getTitle())) {
|
||||||
//selectScreen(....class);
|
//selectScreen(....class);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,16 +1,16 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view;
|
||||||
|
|
||||||
import com.badlogic.gdx.InputProcessor;
|
import com.badlogic.gdx.InputProcessor;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class DeskTopInputProcessor implements InputProcessor {
|
public class DeskAppInputProcessor implements InputProcessor {
|
||||||
|
|
||||||
private final InputProcessor input;
|
private final InputProcessor input;
|
||||||
private boolean filtering = false;
|
private boolean filtering = false;
|
||||||
|
|
||||||
public DeskTopInputProcessor(InputProcessor input) {
|
public DeskAppInputProcessor(InputProcessor input) {
|
||||||
this.input = input;
|
this.input = input;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskApp;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface DeskAppScreenListener {
|
public interface DeskAppSelectionListener {
|
||||||
|
|
||||||
void selectDeskApp(DeskApp deskApp);
|
void selectDeskApp(DeskApp deskApp);
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view;
|
||||||
|
|
||||||
import com.badlogic.gdx.Screen;
|
import com.badlogic.gdx.Screen;
|
||||||
|
|
||||||
|
@ -7,5 +7,5 @@ import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface DeskTopScreen extends Screen {
|
public interface DeskTopScreen extends Screen {
|
||||||
|
|
||||||
DeskAppScreen getDeskAppScreen();
|
DeskAppController getDeskAppController();
|
||||||
}
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -10,46 +10,48 @@ import imgui.type.ImBoolean;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
import love.distributedrebirth.gdxapp4d.tos4.service.SystemGdxBootArgs;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.FontAwesomeIcons;
|
import love.distributedrebirth.gdxapp4d.vrgem4.FontAwesomeIcons;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppLauncher;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps.BasicConsoleApp;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps.HebrewWalletApp;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps.MusicPlayerApp;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps.SystemBaseGlyphApp;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps.SystemBasePartApp;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps.SystemBaseUnicodePlaneApp;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps.Unicode4DApp;
|
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenCredits;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenCredits;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop1;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop1;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop2;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop2;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop3;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop3;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenDesktop4;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenHelp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.screen.ScreenHelp;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.VrGem4DeskAppService;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskApp;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppLauncher;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.apps.BasicConsoleApp;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.apps.SystemBaseGlyphApp;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.apps.SystemBasePartApp;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.apps.SystemBaseUnicodePlaneApp;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.view.apps.Unicode4DApp;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class DeskTopScreenMenu {
|
public class DeskTopScreenMenu {
|
||||||
|
|
||||||
private SystemGdxBootArgs bootArgs;
|
private SystemGdxBootArgs bootArgs;
|
||||||
private List<GDXAppLauncher> apps;
|
private VrGem4DeskAppService deskAppService;
|
||||||
|
private List<DeskAppLauncher> apps;
|
||||||
private ImBoolean fileMinimizeSelected = new ImBoolean(false);
|
private ImBoolean fileMinimizeSelected = new ImBoolean(false);
|
||||||
private ImBoolean fileCloseSelected = new ImBoolean(false);
|
private ImBoolean fileCloseSelected = new ImBoolean(false);
|
||||||
private ImBoolean tosSelfSelected = new ImBoolean(false);
|
private ImBoolean tosSelfSelected = new ImBoolean(false);
|
||||||
|
|
||||||
public DeskTopScreenMenu(SystemGdxBootArgs bootArgs) {
|
public DeskTopScreenMenu(SystemGdxBootArgs bootArgs, VrGem4DeskAppService deskAppService) {
|
||||||
this.bootArgs = bootArgs;
|
this.bootArgs = bootArgs;
|
||||||
|
this.deskAppService = deskAppService;
|
||||||
apps = new ArrayList<>();
|
apps = new ArrayList<>();
|
||||||
apps.add(new GDXAppLauncher("Basic Console", () -> new BasicConsoleApp()));
|
apps.add(new DeskAppLauncher("Basic Console", () -> new BasicConsoleApp()));
|
||||||
apps.add(new GDXAppLauncher("Sys Glyph Set", () -> new SystemBaseGlyphApp()));
|
apps.add(new DeskAppLauncher("Sys Glyph Set", () -> new SystemBaseGlyphApp()));
|
||||||
apps.add(new GDXAppLauncher("Sys Number Parts", () -> new SystemBasePartApp()));
|
apps.add(new DeskAppLauncher("Sys Number Parts", () -> new SystemBasePartApp()));
|
||||||
apps.add(new GDXAppLauncher("Sys Unicode", () -> new SystemBaseUnicodePlaneApp()));
|
apps.add(new DeskAppLauncher("Sys Unicode", () -> new SystemBaseUnicodePlaneApp()));
|
||||||
|
|
||||||
apps.add(new GDXAppLauncher("Hebrew Wallet", () -> new HebrewWalletApp()));
|
apps.add(new DeskAppLauncher("Unicode4D", () -> new Unicode4DApp()));
|
||||||
apps.add(new GDXAppLauncher("Unicode4D", () -> new Unicode4DApp()));
|
|
||||||
apps.add(new GDXAppLauncher("Music Player", () -> new MusicPlayerApp()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void renderMenu(DeskTopScreen appScreen) {
|
public void renderMenu(DeskTopScreen appScreen) {
|
||||||
DeskApp deskApp = appScreen.getDeskAppScreen().getCurrentDeskApp();
|
DeskApp deskApp = appScreen.getDeskAppController().getCurrentDeskApp();
|
||||||
|
|
||||||
ImGui.beginMainMenuBar();
|
ImGui.beginMainMenuBar();
|
||||||
renderVRGEM4Menu(appScreen);
|
renderVRGEM4Menu(appScreen);
|
||||||
|
@ -64,18 +66,18 @@ public class DeskTopScreenMenu {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void renderSelfMenu(DeskTopScreen appScreen, DeskApp deskApp) {
|
private void renderSelfMenu(DeskTopScreen appScreen, DeskApp deskApp) {
|
||||||
if (ImGui.beginMenu(deskApp.getTitle())) {;
|
if (ImGui.beginMenu(deskApp.getContours().getTitle())) {;
|
||||||
if (ImGui.menuItem(FontAwesomeIcons.FolderMinus + " Minimize", "", fileMinimizeSelected, deskApp != null )) {
|
if (ImGui.menuItem(FontAwesomeIcons.FolderMinus + " Minimize", "", fileMinimizeSelected, deskApp != null )) {
|
||||||
fileMinimizeSelected.set(false);
|
fileMinimizeSelected.set(false);
|
||||||
if (deskApp != null) {
|
if (deskApp != null) {
|
||||||
appScreen.getDeskAppScreen().setCurrentDeskApp(null);
|
appScreen.getDeskAppController().setCurrentDeskApp(null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ImGui.menuItem(FontAwesomeIcons.WindowClose + " Exit", "", fileCloseSelected, deskApp != null)) {
|
if (ImGui.menuItem(FontAwesomeIcons.WindowClose + " Exit", "", fileCloseSelected, deskApp != null)) {
|
||||||
fileCloseSelected.set(false);
|
fileCloseSelected.set(false);
|
||||||
if (deskApp != null) {
|
if (deskApp != null) {
|
||||||
appScreen.getDeskAppScreen().removeDeskApp(deskApp);
|
appScreen.getDeskAppController().removeDeskApp(deskApp);
|
||||||
appScreen.getDeskAppScreen().setCurrentDeskApp(null);
|
appScreen.getDeskAppController().setCurrentDeskApp(null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ImGui.endMenu();
|
ImGui.endMenu();
|
||||||
|
@ -163,17 +165,17 @@ public class DeskTopScreenMenu {
|
||||||
|
|
||||||
private void renderTOS4Menu(DeskTopScreen appScreen) {
|
private void renderTOS4Menu(DeskTopScreen appScreen) {
|
||||||
if (ImGui.beginMenu("仙" + " TOS⁴")) {
|
if (ImGui.beginMenu("仙" + " TOS⁴")) {
|
||||||
if (ImGui.menuItem(FontAwesomeIcons.Camera + " Main reality", "", tosSelfSelected, appScreen.getDeskAppScreen().getCurrentDeskApp() != null)) {
|
if (ImGui.menuItem(FontAwesomeIcons.Camera + " Main reality", "", tosSelfSelected, appScreen.getDeskAppController().getCurrentDeskApp() != null)) {
|
||||||
appScreen.getDeskAppScreen().setCurrentDeskApp(null);
|
appScreen.getDeskAppController().setCurrentDeskApp(null);
|
||||||
tosSelfSelected.set(false);
|
tosSelfSelected.set(false);
|
||||||
}
|
}
|
||||||
for (DeskApp app: appScreen.getDeskAppScreen().getDeskApps()) {
|
for (DeskApp app: appScreen.getDeskAppController().getDeskApps()) {
|
||||||
boolean enabled = true;
|
boolean enabled = true;
|
||||||
if (appScreen.getDeskAppScreen().getCurrentDeskApp() == app) {
|
if (appScreen.getDeskAppController().getCurrentDeskApp() == app) {
|
||||||
enabled = false;
|
enabled = false;
|
||||||
}
|
}
|
||||||
if (ImGui.menuItem(app.getTitle(), "", tosSelfSelected, enabled)) {
|
if (ImGui.menuItem(app.getContours().getTitle(), "", tosSelfSelected, enabled)) {
|
||||||
appScreen.getDeskAppScreen().setCurrentDeskApp(app);
|
appScreen.getDeskAppController().setCurrentDeskApp(app);
|
||||||
tosSelfSelected.set(false);
|
tosSelfSelected.set(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -213,9 +215,19 @@ public class DeskTopScreenMenu {
|
||||||
}
|
}
|
||||||
ImGui.separator();
|
ImGui.separator();
|
||||||
if (ImGui.beginMenu(FontAwesomeIcons.PlusSquare + " Start App")) {
|
if (ImGui.beginMenu(FontAwesomeIcons.PlusSquare + " Start App")) {
|
||||||
for (GDXAppLauncher launcher: apps) {
|
for (DeskAppLauncher launcher: apps) {
|
||||||
if (ImGui.menuItem(launcher.getName())) {
|
if (ImGui.menuItem(launcher.getName())) {
|
||||||
appScreen.getDeskAppScreen().addDeskApp(launcher.getLauncher().get());
|
DeskApp controller = launcher.getLauncher().get();
|
||||||
|
controller.create();
|
||||||
|
appScreen.getDeskAppController().addDeskApp(controller);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ImGui.separator();
|
||||||
|
for (DeskAppLauncher launcher: deskAppService.getLaunchers()) {
|
||||||
|
if (ImGui.menuItem(launcher.getName())) {
|
||||||
|
DeskApp controller = launcher.getLauncher().get();
|
||||||
|
controller.create();
|
||||||
|
appScreen.getDeskAppController().addDeskApp(controller);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ImGui.endMenu();
|
ImGui.endMenu();
|
|
@ -0,0 +1,25 @@
|
||||||
|
package love.distributedrebirth.gdxapp4d.vrgem4.view.apps;
|
||||||
|
|
||||||
|
import imgui.ImGui;
|
||||||
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public class BasicConsoleApp extends AbstractDeskApp {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void create() {
|
||||||
|
getContours().setTitle("Basic Conssole");
|
||||||
|
getContours().registrateContour(DeskAppContourSection.MAIN, () -> {
|
||||||
|
ImGui.text("10 PRINT \"The BASIC Shahada of DUNE;\"");
|
||||||
|
ImGui.text("20 PRINT \"- THERE IS NO GOD BUT @Ω仙⁴\"");
|
||||||
|
ImGui.text("30 PRINT \"- THERE IS NO RULE BUT CONSENT\"");
|
||||||
|
ImGui.text("40 PRINT \"- THERE IS NO FAILURE BUT DEATH\"");
|
||||||
|
ImGui.text("50 PRINT \"- TERRY A. DAVIS WAS THE PROPHET OF @Ω仙9⁴\"");
|
||||||
|
ImGui.text("60 PRINT \"- TERRY A. DAVIS WAS THE FIRST TRUE MENTAT\"");
|
||||||
|
ImGui.text("70 PRINT \"- TERRY A. DAVIS WAS THE BEST CODER ALIVE\"");
|
||||||
|
ImGui.text("RUN");
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view.apps;
|
||||||
|
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.ResourceBundle;
|
import java.util.ResourceBundle;
|
||||||
|
@ -7,13 +7,13 @@ import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import imgui.type.ImBoolean;
|
import imgui.type.ImBoolean;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DefaultDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.numberxd.glyph.BaseGlyphSet;
|
import love.distributedrebirth.numberxd.glyph.BaseGlyphSet;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class SystemBaseGlyphApp extends DefaultDeskApp {
|
public class SystemBaseGlyphApp extends AbstractDeskApp {
|
||||||
|
|
||||||
private final ImBoolean showBase27 = new ImBoolean(false);
|
private final ImBoolean showBase27 = new ImBoolean(false);
|
||||||
|
|
||||||
|
@ -22,8 +22,8 @@ public class SystemBaseGlyphApp extends DefaultDeskApp {
|
||||||
return bundle.getString("SystemBaseGlyphApp."+key);
|
return bundle.getString("SystemBaseGlyphApp."+key);
|
||||||
}
|
}
|
||||||
|
|
||||||
public SystemBaseGlyphApp() {
|
public void create() {
|
||||||
setTitle(getTxt("title"));
|
getContours().setTitle(getTxt("title"));
|
||||||
getContours().registrateContour(DeskAppContourSection.MAIN, new DeskAppRenderer() {
|
getContours().registrateContour(DeskAppContourSection.MAIN, new DeskAppRenderer() {
|
||||||
|
|
||||||
@Override
|
@Override
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view.apps;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -10,9 +10,9 @@ import imgui.flag.ImGuiTableFlags;
|
||||||
import imgui.type.ImBoolean;
|
import imgui.type.ImBoolean;
|
||||||
import imgui.type.ImInt;
|
import imgui.type.ImInt;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DefaultDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.numberxd.base2t.Base2PartsFactory;
|
import love.distributedrebirth.numberxd.base2t.Base2PartsFactory;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartAlt1ʸᴰ;
|
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartAlt1ʸᴰ;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartAlt2ʸᴰ;
|
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartAlt2ʸᴰ;
|
||||||
|
@ -22,7 +22,7 @@ import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
||||||
import love.distributedrebirth.numberxd.glyph.BaseGlyphSet;
|
import love.distributedrebirth.numberxd.glyph.BaseGlyphSet;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class SystemBasePartApp extends DefaultDeskApp implements DeskAppRenderer {
|
public class SystemBasePartApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
private ImInt selectedBasePart = new ImInt();
|
private ImInt selectedBasePart = new ImInt();
|
||||||
private final ImBoolean showBase10 = new ImBoolean(false);
|
private final ImBoolean showBase10 = new ImBoolean(false);
|
||||||
|
@ -34,8 +34,8 @@ public class SystemBasePartApp extends DefaultDeskApp implements DeskAppRenderer
|
||||||
return bundle.getString("SystemBasePartApp."+key);
|
return bundle.getString("SystemBasePartApp."+key);
|
||||||
}
|
}
|
||||||
|
|
||||||
public SystemBasePartApp() {
|
public void create() {
|
||||||
setTitle(getTxt("title"));
|
getContours().setTitle(getTxt("title"));
|
||||||
getContours().registrateContour(DeskAppContourSection.MAIN, this);
|
getContours().registrateContour(DeskAppContourSection.MAIN, this);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view.apps;
|
||||||
|
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.ResourceBundle;
|
import java.util.ResourceBundle;
|
||||||
|
@ -6,21 +6,21 @@ import java.util.ResourceBundle;
|
||||||
import imgui.ImGui;
|
import imgui.ImGui;
|
||||||
import imgui.flag.ImGuiTableFlags;
|
import imgui.flag.ImGuiTableFlags;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DefaultDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.unicode4d.UnicodePlaneᶻᴰ;
|
import love.distributedrebirth.unicode4d.UnicodePlaneᶻᴰ;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class SystemBaseUnicodePlaneApp extends DefaultDeskApp {
|
public class SystemBaseUnicodePlaneApp extends AbstractDeskApp {
|
||||||
|
|
||||||
private String getTxt(String key) {
|
private String getTxt(String key) {
|
||||||
ResourceBundle bundle = ResourceBundle.getBundle("love.distributedrebirth.gdxapp.Main", new Locale("en"));
|
ResourceBundle bundle = ResourceBundle.getBundle("love.distributedrebirth.gdxapp.Main", new Locale("en"));
|
||||||
return bundle.getString("SystemBaseUnicodePlaneApp."+key);
|
return bundle.getString("SystemBaseUnicodePlaneApp."+key);
|
||||||
}
|
}
|
||||||
|
|
||||||
public SystemBaseUnicodePlaneApp() {
|
public void create() {
|
||||||
setTitle(getTxt("title"));
|
getContours().setTitle(getTxt("title"));
|
||||||
getContours().registrateContour(DeskAppContourSection.MAIN, new DeskAppRenderer() {
|
getContours().registrateContour(DeskAppContourSection.MAIN, new DeskAppRenderer() {
|
||||||
|
|
||||||
@Override
|
@Override
|
|
@ -1,4 +1,4 @@
|
||||||
package love.distributedrebirth.gdxapp4d.vrgem4.desktop.apps;
|
package love.distributedrebirth.gdxapp4d.vrgem4.view.apps;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -8,18 +8,18 @@ import imgui.ImGui;
|
||||||
import imgui.ImVec2;
|
import imgui.ImVec2;
|
||||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
import love.distributedrebirth.gdxapp4d.vrgem4.GDXAppVrGem4;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DefaultDeskApp;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.AbstractDeskApp;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppContourSection;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppContourSection;
|
||||||
import love.distributedrebirth.gdxapp4d.vrgem4.desktop.DeskAppRenderer;
|
import love.distributedrebirth.gdxapp4d.vrgem4.service.deskapp.DeskAppRenderer;
|
||||||
import love.distributedrebirth.numberxd.base2t.type.V072Tong;
|
import love.distributedrebirth.numberxd.base2t.type.V072Tong;
|
||||||
import love.distributedrebirth.unicode4d.atlas.FontAtlasStore;
|
import love.distributedrebirth.unicode4d.atlas.FontAtlasStore;
|
||||||
import love.distributedrebirth.unicode4d.atlas.FontAtlasStoreGlyph;
|
import love.distributedrebirth.unicode4d.atlas.FontAtlasStoreGlyph;
|
||||||
|
|
||||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||||
public class Unicode4DApp extends DefaultDeskApp implements DeskAppRenderer {
|
public class Unicode4DApp extends AbstractDeskApp implements DeskAppRenderer {
|
||||||
|
|
||||||
public Unicode4DApp() {
|
public void create() {
|
||||||
setTitle("Unicode4D");
|
getContours().setTitle("Unicode4D");
|
||||||
getContours().registrateContour(DeskAppContourSection.MAIN, this);
|
getContours().registrateContour(DeskAppContourSection.MAIN, this);
|
||||||
}
|
}
|
||||||
|
|
2
pom.xml
2
pom.xml
|
@ -25,6 +25,8 @@
|
||||||
<module>gdxapp4d-lib-bassboonyd</module>
|
<module>gdxapp4d-lib-bassboonyd</module>
|
||||||
<module>gdxapp4d-tos4</module>
|
<module>gdxapp4d-tos4</module>
|
||||||
<module>gdxapp4d-vrgem4</module>
|
<module>gdxapp4d-vrgem4</module>
|
||||||
|
<module>gdxapp4d-app-calculator</module>
|
||||||
|
<module>gdxapp4d-app-hewallet</module>
|
||||||
</modules>
|
</modules>
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
|
|
Loading…
Reference in a new issue