This window is mainly a tool to assist developers but it can also be used by end users to run simple scripts, there are some example code snippets that can be used here.
For developers, system console provides more detailed error information and allows you to try out, and play with, scripts that you may later on use in your jAlbum skins. Note logging errors to the the system console can be controlled by setting the logging level in Preferences/General or by skin developers sending their own diagnostic messages directly to the console.
The window is split into two panels, both searchable with CMD/CNTRL + F:
jAlbum has three scripting engines under the hood that enables developers to extend jAlbum's functionality in various ways. You can either script in a Java-like scripting languages called Groovy and BeanShell, or use JavaScript. Other languages can be added by adding the .jar file for the relevant language to jAlbum's "lib" or "ext" folder.
Scripts are executed when skins are loaded (onload scripts), when album making starts (init scripts) and during album making (scriptlets inside the template pages of skins). Scripts are also executed whenever the user selects an external tool (see Tools->External tools)
You have access to the basic jAlbum implicit objects such as engine and window
Sample expressions (Java/BeanShell):
4*(3+2); // Basic calculations engine.getSkin(); // Use of implicit object for (AlbumObject ao : selectedObjects) System.out.println(ao); // Iterate over selected objects window.messageBox("You can interact with any Java object");
Read more on extending jAlbum in our Developer centre.
The Thread selection option is an aid in testing out Java Swing and JavaFX based user interfaces. JavaFX requires that all interaction with JavaFX UI components happen on the JavaFX thread.
If jAlbum ever seems to hang in a CPU consuming state then open the system console and hit the "Dump threads" button. Then press CMD/Cntrl + C, to open jAlbum's 'config' folder and look for a file called 'thread-dump.txt'. Post a bug in the bugs forum and attach the thread-dump.txt file, along with any other relevant information - like jAlbum and OS versions, skin being used and what you last did.