Is there a separate (customiseable) start up dialog available?

Hi all.

I see I can create an AppContext, or I can control whether JME displays a simple start up dialog and splash screen.

However, is there a configuration dialog available that’s separate from the start up code?

What I want to do is give the user more options, and configure an AppContext before the application starts up. If there’s a way to do this with some existing code, great, it will save me some work.

If not I guess I have to code one from scratch.

It would also be OK if I could override a method in SimpleApplication that allows me to customize the start up dialog. At least I could reuse some existing code.

Making a fancy start-up with custom UI would be great for that “finished game” look, so I’m probably missing some part of the docs where it says how to do this.

Thanks for any help you can give!

There is nothing like this. In the end it would resemble “all of swing” as the settings dialog isn’t doing much that you couldn’t easily write yourself.

I think most games will opt for in-game settings rather than the start-up dialog. I know for Mythruna, I’ve turned it off completely in the new engine.

OK, thanks for the info. This dashes my hopes, but at least I know I’m not duplicating effort. I’ll poke around the source code of SimpleApplication and see what I can steal.

Thanks for that! You saved me a bit of Googling. It’s pretty much what a thought though, a bunch of Swing code.

Just as an aside: I wonder if any of those Swing objects ever go away once JME starts running. Swing creates some static objects when it starts, including the Event Dispatch Thread and a bunch of “tool kit” objects (like java.awt.ToolKit). I wonder if these objects ever go away.

Not that it’s very important, I’m sure Swing does really take that much memory. Just kind of curious.

Prior to 1.4, the helper threads were never terminated.

Starting with 1.4, the behavior has changed as a result of the fix for 4030718. With the current implementation, AWT terminates all its helper threads allowing the application to exit cleanly when the following three conditions are true:

There are no displayable AWT or Swing components.
There are no native events in the native event queue.
There are no AWT events in java EventQueues.

That’s awesome, thanks for finding that for me.