Flamingo ribbon component: latest additions and future plans
The last entry on Flamingo component suite talked about addition of contextual task groups, dynamic changes to in-ribbon galleries and reworked documentation. Over the past couple of weeks i have been working on the ribbon application title bar and formulating the future plans for the component itself.
The application title bar is a ribbon-specific feature that allows putting extra ribbon content on the title pane of the frame. In Office 2007 the application title bar contains the quick access toolbar and the headers of contextual task groups. Flamingo’s counterpart of quick access toolbar is the taskbar and up until now it has been placed to the left of the task toggle buttons. In addition, the contextual task group headers were not shown at all.
Putting content on the title pane requires close cooperation with the look-and-feel implementation, and as such is only available under Substance look-and-feel (interested developers are welcome to take a look at the code to see how this can be extended to other third-party LAFs that support decorated mode). Here are a few screenshots that show the new functionality in action.
The first screenshot shows the ribbon component with the taskbar automatically placed on the left hand side of the title pane. The taskbar has a few command buttons, one of them with a popup menu (click for the full size view):
The next screenshot shows the ribbon component with two visible contextual task groups. Note how the group headers are painted on the title pane and force the title text to be clipped:
The last screenshot shows the same component with one of the contextual tasks selected:
Here is what you need to use this functionality in your application:
- The latest 3.1dev drop of Flamingo.
- The latest 5.0dev drop of Substance.
- The latest 5.0dev drop of Substance Flamingo plugin.
- Use the new org.jvnet.flamingo.ribbon.JRibbonFrame class.
The last point brings me to the future plans for the ribbon component. This is still work in progress that is targetting the next release (4.0), but you can already try it under the latest 3.1dev branch. The JRibbonFrame is going to be the only way to have a ribbon in your frame. It extends the JFrame and enforces that a JRibbon component is always in the BorderLayout.NORTH position. Under the hood, it also allows third-party look-and-feels (such as Substance) to “relocate” the taskbar to the title pane and paint the contextual task group headers. Going forward, the JRibbon class will have package-protected constructor. This will be part of 4.0 release to ensure easier transition to the new approach.
The plans for release 4.0 include providing the missing functionality from the Office 2007 Command Bar, including:
- Application title bar for other look-and-feels. The taskbar and contextual task group headers will be placed there (except when the application is running under Substance or other look-and-feels that will provide support for placing them on the frame title pane).
- Main application menu button.
- Pluggable resizability policies.
- Minimizing the ribbon.
- Horizontal scrolling for content under small widths.
- Better support for placing core controls and button groups in ribbon bands.
- Key tips.
- Screen tips (AKA rich tooltips).
To try the new title bar functionality in action, click the WebStart button below and use the “Group” checkboxes in the bottom control panel to show / hide the contextual task groups.