A library to create, edit, save and load themes for Lemur.
lemur-themer-editor
A stand-alone GUI editor for lemur-themer.
The first project is where all the magic happens. The second project is simply a graphical UI to visualize your theme. You can make changes and see them instantly, save them, create new themes, etc…
The entire themes are saved in JSON format, images, icons, everything. This makes it extremely easy to share themes - and has the added benefit of not needing groovy-all (mainly concerning mobile-devices). For me personally on a Raspberry Pi 4B 4GB the themes loaded faster than the groovy alternative.
Creating Themes
The easiest way is using the Editor. Releases are available on github - as is the source-code.
Just double-click the .jar file or type:
If you’re on a linux distribution, be aware that most package repositories have broken the jdk into two packages:
A headless package (Including the core JVM, most of the standard library, and command line tools)
A separate desktop package that depends on the first, but adds the native interfacing to the windowing system, and java classes for the AWT/Swing system and such.
The exact phrasing may vary, but check your package manager to see what you have installed.
Though it turns out that this is the rare case when the problem can be determined without the stack trace… though the location of the problem in Jay’s library cannot be easily determined for the casual looker.
Translating that showDialog error: it’s looking for showDialog(Component, String, Color, boolean)
…that method was not added until Java 9. So Jay’s library is not compatible with Java 8.
I tried to run it using java 11:
openjdk version “11.0.8” 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
Now, that I’ve seen before. Some native code builds (the LWJGL2 package that JME provides is one) run into issues with system JDKs > 10, compiled after mid 2019 or so.
Options:
Use a JDK binary directly from adoptopenjdk, as @jayfella suggested above
Patch the editor code to use Java 8 calls only
Patch the build script to pull in JME’s LWJGL3 package, which doesn’t have this problem.