Right-to-left support for the ribbon in Flamingo 5.0

April 3rd, 2010

The latest 5.0dev drop of the Flamingo library (code-named Imogene) provides full right-to-left (RTL) support for the ribbon component and all its parts. Here are some screenshots of the ribbon running under iw-IL locale using the Office Blue 2007 skin from Substance core and Substance Flamingo plugin.

The first screenshot shows the full RTL ribbon in action – click to see fullsize view:
https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-thumbnail.png

You can associate rich tooltips with buttons in ribbon bands. The tooltips are shown below the main ribbon area, right aligned with the original button:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-button-tooltip.png

Command buttons placed in the ribbon can have associated simple popup menu:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-button-popup.png

The popup menu can also host a command button panel, with each button having its own rich tooltip:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-button-richpopup-tooltip.png

The screenshots above show an embedded ribbon gallery (in the middle ribbon band). A ribbon gallery can be expanded to show all the available gallery choices:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-gallery-popup.png

The ribbon usually hosts command controls – such as command buttons or ribbon galleries, which themselves contain command buttons. However, you can also put any core Swing component into the ribbon:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-wrapped-corecomponents.png

Note that you can associate an optional icon and an optional caption text with the wrapped core component.

The application menu button is shown in the top-right corner. Internally it is a command button as well, and you can associate a rich tooltip with it:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-appmenu-tooltip.png

Clicking on the application menu button shows a three-panel application menu:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-appmenu.png

You can associate a custom secondary menu group with the specific primary menu entry:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-appmenu-secondary.png

The secondary menu group can have multiple menu sections:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-appmenu-secondary2.png

You can have more than two levels in the application menu by associating a custom popup callback with the relevant secondary menu entries:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-appmenu-popup.png

Contextual task groups can be shown and hidden based on the current selection in the application. The contextual task group headers are shown in the application title bar:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-contextualgroups.png

You can place frequently use controls in the ribbon taskbar. Command buttons in the taskbar can have rich tooltips. These tooltips are shown directly below the button and are right-aligned:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-taskbar-tooltip.png

Command buttons in the ribbon taskbar can have associated popup menus:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-taskbar-popup.png

You can also associate a rich tooltip with the ribbon band expand button:

https://flamingo.dev.java.net/release-info/5.0/ribbon-rtl-bandexpandbutton-tooltip.png

This is the next major step towards full RTL support in all Flamingo components. The breadcrumb bar remains the only Flamingo component without the RTL support. It will be added after the planned internal refactoring of the breadcrumb bar to use command buttons.

To test the new functionality in your applications, you will need the following:

Note that the last two are required if you’re running your application under one of Substance skins – such as Office Blue 2007 used in all the screenshots in this entry.