Announcing Synthetica V3 RC1(18:48, 30. Oct. 2017)

We are pleased to announce the first release candidate of Synthetica V3.0.0.

Features

As you maybe know Synthetica V3 comes along with some great new features:

  • High-resolution support
  • Scalability support
  • JPMS (Java module system) support
  • New modern/flat styled dark theme

Synthetica Dark Theme Screenshot

Release Date

The final release is rescheduled for November 2017.

Modules

For being JPMS compatible the package structure in V3 was reorganized, which also means that V3 is no longer backward compatible. However, class names are unchanged so your preferred IDE should be able to easily update all package imports of your application. The module name of Synthetica's core library synthetica.jar is synthetica.base.

The module names of our themes are listed below - each theme library has an unique module name.

Synthetica Dark theme           ->  synthetica.theme.dark
Synthetica Plain theme          ->  synthetica.theme.plain
Synthetica BlueLight theme      ->  synthetica.theme.bluelight
Synthetica AluOxide theme       ->  synthetica.theme.aluoxide
Synthetica Classy theme         ->  synthetica.theme.classy
Synthetica BlackEye theme       ->  synthetica.theme.blackeye
Synthetica Simple2D theme       ->  synthetica.theme.simple2d
Synthetica WhiteVision theme    ->  synthetica.theme.whitevision
Synthetica SkyMetallic theme    ->  synthetica.theme.skymetallic
Synthetica MauveMetallic theme  ->  synthetica.theme.mauvemetallic
Synthetica OrangeMetallic theme ->  synthetica.theme.orangemetallic
Synthetica BlueSteel theme      ->  synthetica.theme.bluesteel
Synthetica BlackMoon theme      ->  synthetica.theme.blackmoon
Synthetica BlueMoon theme       ->  synthetica.theme.bluemoon
Synthetica SilverMoon theme     ->  synthetica.theme.silvermoon
Synthetica BlueIceMoon theme    ->  synthetica.theme.blueice
Synthetica GreenDream theme     ->  synthetica.theme.greendream
Synthetica BlackStar theme      ->  synthetica.theme.blackstar
Synthetica Standard theme       ->  synthetica.theme.standard

For proper execution without any errors/warnings make sure to pass the arguments below to the JVM.

--add-exports=java.desktop/sun.swing=synthetica.base
--add-exports=java.desktop/sun.swing.table=synthetica.base
--add-exports=java.desktop/sun.swing.plaf.synth=synthetica.base
--add-opens=java.desktop/javax.swing.plaf.synth=synthetica.base
--add-opens=java.desktop/javax.swing.plaf.basic=synthetica.base
--add-opens=java.desktop/javax.swing=synthetica.base
--add-opens=java.desktop/javax.swing.tree=synthetica.base
--add-opens=java.desktop/java.awt.event=synthetica.base
--add-exports=java.desktop/sun.awt.shell=synthetica.base
--add-exports=java.desktop/com.sun.awt=synthetica.base
--add-exports=java.base/sun.security.action=synthetica.base

Legacy Mode

Of course you are not forced to use the new module system. You can simply use our libraries as usual by specifying a classpath. However, in this case you have to use the JVM arguments below to avoid any errors/warnings.

--add-exports=java.desktop/sun.swing=ALL-UNNAMED
--add-exports=java.desktop/sun.swing.table=ALL-UNNAMED
--add-exports=java.desktop/sun.swing.plaf.synth=ALL-UNNAMED
--add-opens=java.desktop/javax.swing.plaf.synth=ALL-UNNAMED
--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED
--add-opens=java.desktop/javax.swing=ALL-UNNAMED
--add-opens=java.desktop/javax.swing.tree=ALL-UNNAMED
--add-opens=java.desktop/java.awt.event=ALL-UNNAMED
--add-exports=java.desktop/sun.awt.shell=ALL-UNNAMED
--add-exports=java.desktop/com.sun.awt=ALL-UNNAMED
--add-exports=java.base/sun.security.action=ALL-UNNAMED

Alternatively, you can put the arguments into the manifest.mf file of your application by adding the attributes below. This is the recommended method for deployment of your application. However, this works only if your application is executed as jar file in legacy mode. Web Start does not respect these entries - in this case you have to use the JVM arguments from above.

Add-Exports: java.desktop/sun.swing java.desktop/sun.swing.table java.desktop/sun.swing.plaf.synth java.desktop/com.sun.java.swing.plaf.windows java.desktop/sun.awt.shell java.desktop/com.sun.awt java.base/sun.security.action   
Add-Opens: java.desktop/javax.swing.plaf.synth java.desktop/javax.swing.plaf.basic java.desktop/javax.swing java.desktop/javax.swing.tree java.desktop/java.awt.event 

Theme Classes

All theme packages have been reorganized for being JPMS compliant (no split-packages). A complete list of available theme classes can be found below. Note: In Synthetica V3 the core library (synthetica.jar) contains Synthetica core files only, no themes. Since V3 the standard theme is not any longer part of the core library!

de.javasoft.synthetica.aluoxide.SyntheticaAluOxideLookAndFeel 
de.javasoft.synthetica.blackeye.SyntheticaBlackEyeLookAndFeel 
de.javasoft.synthetica.blackmoon.SyntheticaBlackMoonLookAndFeel 
de.javasoft.synthetica.blackstar.SyntheticaBlackStarLookAndFeel 
de.javasoft.synthetica.blueice.SyntheticaBlueIceLookAndFeel
de.javasoft.synthetica.bluelight.SyntheticaBlueLightLookAndFeel 
de.javasoft.synthetica.bluemoon.SyntheticaBlueMoonLookAndFeel
de.javasoft.synthetica.bluesteel.SyntheticaBlueSteelLookAndFeel 
de.javasoft.synthetica.classy.SyntheticaClassyLookAndFeel
de.javasoft.synthetica.dark.SyntheticaDarkLookAndFeel
de.javasoft.synthetica.greendream.SyntheticaGreenDreamLookAndFeel
de.javasoft.synthetica.mauvemetallic.SyntheticaMauveMetallicLookAndFeel
de.javasoft.synthetica.orangemetallic.SyntheticaOrangeMetallicLookAndFeel
de.javasoft.synthetica.plain.SyntheticaPlainLookAndFeel
de.javasoft.synthetica.silvermoon.SyntheticaSilverMoonLookAndFeel
de.javasoft.synthetica.simple2d.SyntheticaSimple2DLookAndFeel
de.javasoft.synthetica.skymetallic.SyntheticaSkyMetallicLookAndFeel
de.javasoft.synthetica.standard.SyntheticaStandardLookAndFeel
de.javasoft.synthetica.whitevision.SyntheticaWhiteVisionLookAndFeel
 

Product Links

Synthetica Look And Feel
Synthetica Download
Synthetica Changelog