Company News

<< Previous PageNext Page >>

SyntheticaAddons maintenance release V1.8.1 is available(15:01, 14. Mar. 2013)

The maintenance release SyntheticaAddons V1.8.1 is available and provides some minor performance improvements and bug fixes. For more details take a look at the changelog.

 
Related Links

Synthetica BlueLight Highlights(10:34, 11. Mar. 2013)

The Swing Look and Feel Synthetica V2.17 comes along with a new theme called Synthetica BlueLight Look and Feel. Below you'll find a short summary of the highlights.

  • Window Shape and Background Texture - The BlueLight theme provides a rounded rectangle shape for windows with background texture and a nice gradient fill.

Window Shape and Texture

  • Text Shadow Effects - As you can see in the screenshot below a subtle text shadow effect is used for some components.

Text Shadow Effect

  • Animation for Default Buttons - A glow animation effect appears for the default button.

  • Button Glow on Hover - Another nice glow effect appears when the mouse is moved over a button. The foreground color appears inversed on hover.

  • Special Shape for Toplevel PopupMenus - For toplevel popup menus a special shape with a triangle for the selected menu entry is used.

TopLevel PopupMenu Shape

  • Fade-In Animation and Shadow Effect for Popups - Popups (even ComboBox popups) appear with a fade-in effect and a shadow effect around the popup.

  • Focus Aware CellRenderer - In BlueLight all default renderers are focus aware.

The SyntheticaTunes mockup application demonstrates all features of the BlueLight theme - feel free to give it a try Synthetica BlueLight Tunes Demo.

Links

Synthetica V2.17 and SyntheticaAddons V1.8 is released!(15:51, 07. Mar. 2013)

We are pleased to announce the release of Synthetica V2.17.0 and SyntheticaAddons V1.8.0. Please find all major improvements below - a complete list of changes can be found at Synthetica changelog and SyntheticaAddons changelog.

New Synthetica Features

Synthetica BlueLight Theme Screenshot

  • Fade-In support for popup menus.
  • Panel background painter support for active and inactive windows.
  • Selected state support for JTree node icons.
  • TitledBorder painter supports content fill.
  • Improved hover support for scrollbars.
  • Improved support for horizontal popup menus.
  • WinKey support to restore maximized windows by shortcut WinKey+VK_DOWN.
  • FileChooser - newly created directory entries will be selected.
  • JTabbedPane - new UI-property to specify size for scroll buttons.
  • Updated themes - SyntheticaAluOxide, SyntheticaClassy, SyntheticaSimple2D.

New SyntheticaAddons Features

  • Support for SyntheticaBlueLight theme.
  • New components for toplevel menus with a collapsible horizontal content area - XMenuBar, XMenu, XSubmenu, XMenuItem.
  • New simple layout manager to layout components horizontally - HorizontalLayout.
  • JYTaskPane - new UI-property to collapse on mousePressed instead of mouseClicked.
  • TaskPaneContainer - new UI-properties to set opacity and image painter stretch policy.
  • DropDownButton - added hover and pressed state support for arrow icon.
  • SimpleDropDownButton - added hover and pressed state support for arrow icon.
  • ToolBar - added hover and pressed state support for arrow icon.
  • SwitchButton - new UI-property to specify alpha value for disabled switch text.
  • Updated SwingX library (V1.6.5-1).
Product Links

Synthetica maintenance release V2.16.2 is available(12:27, 21. Dec. 2012)

The maintenance release Synthetica V2.16.2 is available. This is a bug fix release only - for more details take a look at the changelog.

 
Related Links

Synthetica maintenance release V2.16.1 is available(11:39, 30. Oct. 2012)

The maintenance release Synthetica V2.16.1 is available. The release fixes some bugs and supports the features below - for more details take a look at the changelog.

New Synthetica Features

  • Added system property support "synthetica.font" and "synthetica.fontsize" to specify font and fontsize without coding (i.e. useful for NetBeans RCP applications).
  • New client property for JMenuItem ("Synthetica.menuItem[.hover].arrowIcon") to set an additional icon - i.e. as indicator for an event (see screenshot below).

menuIcon

 
Related Links

Synthetica V2.16 and SyntheticaAddons V1.7.1 is released!(10:29, 18. Sep. 2012)

We are pleased to announce the release of Synthetica V2.16.0 and SyntheticaAddons V1.7.1. The complete list of changes can be found at Synthetica changelog and SyntheticaAddons changelog.

New Synthetica Features

  • Window shape support for Mac OSX (Java7u8 and above only)
  • Mac specific key-bindings are now customizable
  • New JPopupMenu UI-property to respect toplevel menu width and max. icon width
  • New method to clear painter cache manually
  • Added JTabbedPane#setBackgroundAt(index) support
  • Updated themes: AluOxide, BlackEye, Classy, Simple2D

New SyntheticaAddons Features

  • JYTabbedPane - double-click support for scroll buttons to scroll to the first/last tab
  • JYSwitchButton - improved alignment for the BlackEye theme
Product Links

Window Decoration, Part 6 - TitlePane Layout(10:29, 02. May. 2012)

Everybody knows the commonly used title panel layout for frames which is used by most desktop applications - see sketch below.

regular title pane

The screenshot below demonstrates how it can look in a real application with the SyntheticaAluOxide theme.
Note: In the screenshot the title panel background is not distinguishable from the toolBar even if the toolBar isn't part of the title panel. The visual behavior depends on the active theme.

SyntheticaTunes screenshot

In Synthetica V2.15 we support an additional layout called SECONDARYMENU which is useful to make an application more unique. The sketch below outlines the title panel elements. As you can see the menu button is spanned across two rows and a user component can be directly set for the second row.

Lets take a closer look at each step to enable this layout/style for the SyntheticaTunes application. The first step is to create a custom XML-file which holds the new window style. Because in most cases you want to change the appearance for the main frame only, Synthetica supports specifying a separate style for a named window.

<!--
*******************************************************************************
MainFrame style
*******************************************************************************
-->
  <style id="MainFrame">
    <defaultsProperty key="Synthetica.rootPane.titlePane.title.visible.MainFrame" type="boolean" value="false" />
    <defaultsProperty key="Synthetica.rootPane.titlePane.layoutStyle.MainFrame" type="string" value="SECONDARYMENU" />
    <defaultsProperty key="Synthetica.rootPane.titlePane.showMenuBarInTitlePane.MainFrame" type="boolean" value="true" />
    <defaultsProperty key="Synthetica.rootPane.titlePane.clipMenuBarWidth.MainFrame" type="boolean" value="true" />
    
    <defaultsProperty key="Synthetica.rootPane.titlePane.title.alignment.MainFrame" type="integer" value="11" />
    <defaultsProperty key="Synthetica.rootPane.titlePane.menuButton.alignment.MainFrame" type="integer" value="11" />
    <defaultsProperty key="Synthetica.rootPane.titlePane.iconifyButton.alignment.MainFrame" type="integer" value="11" />
    <defaultsProperty key="Synthetica.rootPane.titlePane.toggleButton.alignment.MainFrame" type="integer" value="11" />
    <defaultsProperty key="Synthetica.rootPane.titlePane.closeButton.alignment.MainFrame" type="integer" value="11" />
    
    <defaultsProperty key="Synthetica.rootPane.titlePane.menuBar.insets.MainFrame" type="insets" value="4 8 0 0"/>
    <defaultsProperty key="Synthetica.rootPane.titlePane.menuButton.insets.MainFrame" type="insets" value="0 0 0 0"/>
    <defaultsProperty key="Synthetica.rootPane.titlePane.iconifyButton.insets.MainFrame" type="insets" value="2 0 0 0"/>
    <defaultsProperty key="Synthetica.rootPane.titlePane.toggleButton.insets.MainFrame" type="insets" value="2 0 0 0"/>
    <defaultsProperty key="Synthetica.rootPane.titlePane.closeButton.insets.MainFrame" type="insets" value="2 0 0 2"/>
  </style>

The most important settings are in the first four entries - the rest covers alignment (set to top - GridBagConstraints.NORTH) and insets. In the next step we have to load the XML-file when the look and feel is set.

UIManager.setLookAndFeel(new SyntheticaAluOxideLookAndFeel(){
      @Override
      protected void loadCustomXML() throws ParseException
      {
        loadXMLConfig("/resources/custom.xml");
      }
    });

To apply the style to the window set the window name and update the rootPaneUI.

setName("MainFrame");
getRootPane().updateUI();

The menu button is ued for the application logo - for this take a lookup for the button and set the logo as icon.

JButton b = (JButton)SyntheticaLookAndFeel.findComponent("RootPane.titlePane.menuButton", this);
b.setIcon(new ImageIcon(this.getClass().getResource("/resources/icons/menuButton.png")));

The menu bar is set a usual - only the tool bar has to be set in a specific way.   

setJMenuBar(new AppMenuBar());    
toolBar = new TunesToolBar();
toolBar.setFloatable(false);
((SyntheticaTitlePane)((SyntheticaRootPaneUI)getRootPane().getUI()).getTitlePane()).setUserComponent(toolBar);

That's all, the new appearance is more unique and gives your app a cool, modern look. Note: With the new style the application header needs a bit more horizontal space but less vertical space - this fits pretty well with current display ratios (16:9, 16:10).

SyntheticaTunes screenshot tweaked

WebStart Demo

The complete application source code is available for SyntheticaAddons customers only and can be downloaded from the SyntheticaAddons download page.

Sometimes you have to keep the menu bar at it's regular position i.e. to use the whole herizontal space. This can be simply achieved by setting the UI-property "Synthetica.rootPane.titlePane.showMenuBarInTitlePane" to false - see custom XML. The result is also appealing but of course needs some extra vertical space.

SyntheticaTunes Screenshot regular menubar

Related Posts

<< Previous PageNext Page >>