Release candidate for Flamingo 4.2
October 26th, 2009 | 13 Comments »I am pleased today to announce the availability of release candidate for version 4.2 of Flamingo component suite (code-named Hiolair). It is a stabilization release that adds a few minor features and fixes all known bugs.
Here is the list of minor features added in release 4.2:
- Support for placing small command buttons in ribbon galleries
- Option to specify the callback for populating the default content of ribbon application menu
- Command buttons support no icon / no text mode
- Emitting full bounding box coordinates in SVG transcoder
- Support for changing the expand listener of ribbon bands
- Better tracing of inconsistent ribbon resize policies
If you want to test the ribbon in your applications, you would need the following (the last two only for applications running under Substance look-and-feel):
- The latest 4.2RC drop of Flamingo (code-named Hiolair)
- The latest 6.0dev drop of Substance (code-named Sonoma)
- The latest 6.0dev drop of Substance Flamingo plugin
You are more than welcome to take Flamingo 4.2RC for a ride and report any problems in the project mailing lists, forums or issue tracker. The final release is scheduled for November 2. Only bugs will be fixed until that date.
To see Flamingo ribbon in action, run the following WebStart demo:
The demo above works for the core look-and-feels. To see the ribbon under Substance, run the following WebStart demo:
Here are a few screenshots showing the new features in 4.2RC:

![]()
![]()


Related posts:
- Release candidate for Flamingo 4.1 I am pleased today to announce the availability of release candidate for version 4.1 of...
- Release candidate for Flamingo 3.1 I am happy to announce release candidate for version 3.1 (code-named Eilinora) for Flamingo component...
- Release candidate for Flamingo 4.0 I am extremely pleased today to announce the availability of release candidate for version 4.0...
- Release candidate for Flamingo 3.0 The release candidate for version 3.0 of Flamingo component suite (code-named Deirdre) is available. The...
Got an error when launching the first webstart link:
Java Web Start 1.6.0_14
Using JRE version 1.6.0_14-b08 Java HotSpot(TM) Server VM
User home directory = /home/matt
—————————————————-
c: clear console window
f: finalize objects on finalization queue
g: garbage collect
h: display this help message
m: print memory usage
o: trigger logging
p: reload proxy configuration
q: hide console
r: reload policy configuration
s: dump system and deployment properties
t: dump thread list
v: dump thread stack
0-5: set trace level to
—————————————————-
Reading certificates from 41858 https://flamingo.dev.java.net/webstart/flamingo-tst.jar | /home/matt/.java/deployment/cache/6.0/38/62672726-5ea2e713.idx
Reading certificates from 52786 https://flamingo.dev.java.net/webstart/flamingo.jar | /home/matt/.java/deployment/cache/6.0/29/2a2830dd-5494a475.idx
Exception in thread “AWT-EventQueue-0″ java.lang.IllegalStateException: Inconsistent preferred widths
Ribbon band ‘Find (toggle) has the following resize policies
org.jvnet.flamingo.ribbon.resize.CoreRibbonResizePolicies$Mirror with preferred width 163
org.jvnet.flamingo.ribbon.resize.CoreRibbonResizePolicies$Mid2Low with preferred width 80
org.jvnet.flamingo.ribbon.resize.IconRibbonBandResizePolicy with preferred width 88
org.jvnet.flamingo.ribbon.resize.CoreRibbonResizePolicies$Mid2Low with pref width 80 is followed by resize policy org.jvnet.flamingo.ribbon.resize.IconRibbonBandResizePolicy with larger pref width
at org.jvnet.flamingo.utils.FlamingoUtilities.checkResizePoliciesConsistency(FlamingoUtilities.java:575)
at org.jvnet.flamingo.ribbon.AbstractRibbonBand.setRibbonTask(AbstractRibbonBand.java:566)
at org.jvnet.flamingo.ribbon.RibbonTask.(RibbonTask.java:90)
at test.ribbon.BasicCheckRibbon.configureRibbon(BasicCheckRibbon.java:1105)
at test.ribbon.BasicCheckRibbon$39.run(BasicCheckRibbon.java:1801)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
And this error when launching the second:
Reading certificates from 8728 https://substance-flamingo.dev.java.net/webstart/substance-flamingo-tst.jar | /home/matt/.java/deployment/cache/6.0/23/113701d7-722c4e5a.idx
Reading certificates from 13108 https://substance-flamingo.dev.java.net/webstart/substance-flamingo.jar | /home/matt/.java/deployment/cache/6.0/47/3854482f-430d8d4a.idx
Reading certificates from 77030 https://substance.dev.java.net/webstart/substance-tst.jar | /home/matt/.java/deployment/cache/6.0/9/61595789-1503f4f4.idx
Reading certificates from 170462 https://substance.dev.java.net/webstart/substance.jar | /home/matt/.java/deployment/cache/6.0/9/6a8714c9-19af5a48.idx
Reading certificates from 19058 https://substance.dev.java.net/webstart/substance-tools.jar | /home/matt/.java/deployment/cache/6.0/36/5500f324-223d04e1.idx
JNLP JREDesc in Component ignored: https://substance.dev.java.net/webstart/substance-all.jnlp
Reading certificates from 41858 https://flamingo.dev.java.net/webstart/flamingo-tst.jar | /home/matt/.java/deployment/cache/6.0/38/62672726-5ea2e713.idx
Reading certificates from 52786 https://flamingo.dev.java.net/webstart/flamingo.jar | /home/matt/.java/deployment/cache/6.0/29/2a2830dd-5494a475.idx
Reading certificates from 95580 https://flamingo.dev.java.net/webstart/svnkit.jar | /home/matt/.java/deployment/cache/6.0/22/6fe7c216-61d8a111.idx
Reading certificates from 357570 https://flamingo.dev.java.net/webstart/batik/batik-all.jar | /home/matt/.java/deployment/cache/6.0/37/77e34c25-58883fde.idx
Reading certificates from 29186 https://flamingo.dev.java.net/webstart/batik/js.jar | /home/matt/.java/deployment/cache/6.0/38/176c33e6-26546509.idx
Reading certificates from 78292 https://flamingo.dev.java.net/webstart/batik/xerces_2_5_0.jar | /home/matt/.java/deployment/cache/6.0/10/bb34f4a-4fdb6fa9.idx
Reading certificates from 28348 https://flamingo.dev.java.net/webstart/batik/xml-apis.jar | /home/matt/.java/deployment/cache/6.0/29/53f7959d-3551fe6f.idx
Reading certificates from 15512 https://flamingo.dev.java.net/webstart/batik/xml-apis-ext.jar | /home/matt/.java/deployment/cache/6.0/4/1dd61e84-41cd8a18.idx
JNLP JREDesc in Component ignored: https://flamingo.dev.java.net/webstart/flamingo-all.jnlp
Substance-Flamingo-BuildStamp: October 14, 2009 21:50:44 PDT
Substance-BuildStamp: October 25, 2009 22:31:36 PDT
Flamingo-BuildStamp: October 25, 2009 16:27:38 PDT
Look-and-feel change from null to Metal
Look-and-feel change from Metal to Substance Office Blue 2007
PanelUI : org.pushingpixels.substance.internal.ui.SubstancePanelUI
Exception in thread “AWT-EventQueue-0″ java.lang.NoClassDefFoundError: org/pushingpixels/trident/callback/TimelineCallback
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at javax.swing.SwingUtilities.loadSystemClass(SwingUtilities.java:1848)
at javax.swing.UIDefaults.getUIClass(UIDefaults.java:665)
at javax.swing.UIDefaults.getUI(UIDefaults.java:737)
at javax.swing.UIManager.getUI(UIManager.java:1017)
at javax.swing.JList.updateUI(JList.java:508)
at javax.swing.JList.(JList.java:403)
at javax.swing.plaf.basic.BasicComboPopup$1.(BasicComboPopup.java:467)
at javax.swing.plaf.basic.BasicComboPopup.createList(BasicComboPopup.java:467)
at javax.swing.plaf.basic.BasicComboPopup.(BasicComboPopup.java:313)
at org.pushingpixels.substance.internal.utils.combo.SubstanceComboPopup.(SubstanceComboPopup.java:56)
at org.pushingpixels.substance.internal.ui.SubstanceComboBoxUI.createPopup(SubstanceComboBoxUI.java:451)
at javax.swing.plaf.basic.BasicComboBoxUI.installUI(BasicComboBoxUI.java:234)
at org.pushingpixels.substance.internal.ui.SubstanceComboBoxUI.__org__pushingpixels__substance__internal__ui__SubstanceComboBoxUI__installUI(SubstanceComboBoxUI.java)
at org.pushingpixels.substance.internal.ui.SubstanceComboBoxUI.installUI(SubstanceComboBoxUI.java)
at javax.swing.JComponent.setUI(JComponent.java:673)
at javax.swing.JComboBox.setUI(JComboBox.java:236)
at javax.swing.JComboBox.updateUI(JComboBox.java:245)
at javax.swing.JComboBox.init(JComboBox.java:210)
at javax.swing.JComboBox.(JComboBox.java:176)
at test.ribbon.BasicCheckRibbon.getFontBand(BasicCheckRibbon.java:1643)
at test.ribbon.BasicCheckRibbon.configureRibbon(BasicCheckRibbon.java:1102)
at test.substance.ribbon.NewCheckRibbon.configureRibbon(NewCheckRibbon.java:59)
at test.substance.ribbon.NewCheckRibbon$3.run(NewCheckRibbon.java:167)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.lang.ClassNotFoundException: org.pushingpixels.trident.callback.TimelineCallback
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at com.sun.jnlp.JNLPClassLoader.findClass(JNLPClassLoader.java:257)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
… 33 more
Matt,
Thanks for reporting this. Can you post the first one to the project forums / mailing list, along with the full information on your OS? The second one just needs trident.jar added to the JNLP (new dependency in Substance 6.0dev) – i should’ve checked this before posting.
Thanks
Kirill
Sure, will do it tomorrow
New message about it here:
https://flamingo.dev.java.net/servlets/ProjectForumMessageView?forumID=3339&messageID=32235
Congratulations for this work.
I am quite amazed by this component. Looks as good as Offices’ or even better.
great work , how u find time to do all this is stuff is amazing…
keep it up…
[...] Grouchnikov has been his usual busy self, writing four blog posts covering news about a new release candidated for Flamingo 4.2, and progress in the Substance look and feel. In particular, he has been focusing on text [...]
!! Thanks for the Ribbon Component, great work Kirill
In 4.2 the “Inconsistent preferred widths” exception can reproduced.
xception in thread “AWT-EventQueue-0″ java.lang.IllegalStateException: Inconsistent preferred widths
Ribbon band ‘Wizard has the following resize policies
org.jvnet.flamingo.ribbon.resize.CoreRibbonResizePolicies$Mirror with preferred width 54
org.jvnet.flamingo.ribbon.resize.CoreRibbonResizePolicies$Mid2Low with preferred width 54
org.jvnet.flamingo.ribbon.resize.IconRibbonBandResizePolicy with preferred width 61
org.jvnet.flamingo.ribbon.resize.CoreRibbonResizePolicies$Mid2Low with pref width 54 is followed by resize policy org.jvnet.flamingo.ribbon.resize.IconRibbonBandResizePolicy with larger pref width
- Create a RibbonBand with 1 CommandButton
- If RibbonBand name is longer than commandButton name > exception
THIS DONT WORK
ribbonBandWizard = new JRibbonBand(“Wizard”, new EmptyResizableIcon(16));
List resizePolicies = new ArrayList();
resizePolicies.add(new CoreRibbonResizePolicies.Mirror(ribbonBandWizard.getControlPanel()));
resizePolicies.add(new CoreRibbonResizePolicies.Mid2Low(ribbonBandWizard.getControlPanel()));
resizePolicies.add(new IconRibbonBandResizePolicy(ribbonBandWizard.getControlPanel()));
ribbonBandWizard.setResizePolicies(resizePolicies);
ribbonBandWizard.startGroup();
buttonStartWizard = new JCommandButton(“Start”, new EmptyResizableIcon(16));
buttonStartWizard.setActionKeyTip(“SW”);
buttonStartWizard.addActionListener(getRibbonActionListener());
ribbonBandWizard.addCommandButton(buttonStartWizard, RibbonElementPriority.TOP);
THIS WORK
ribbonBandWizard = new JRibbonBand(“Wizard”, new EmptyResizableIcon(16));
List resizePolicies = new ArrayList();
resizePolicies.add(new CoreRibbonResizePolicies.Mirror(ribbonBandWizard.getControlPanel()));
resizePolicies.add(new CoreRibbonResizePolicies.Mid2Low(ribbonBandWizard.getControlPanel()));
resizePolicies.add(new IconRibbonBandResizePolicy(ribbonBandWizard.getControlPanel()));
ribbonBandWizard.setResizePolicies(resizePolicies);
ribbonBandWizard.startGroup();
buttonStartWizard = new JCommandButton(“Start (Longer than band)”, new EmptyResizableIcon(16));
buttonStartWizard.setActionKeyTip(“SW”);
buttonStartWizard.addActionListener(getRibbonActionListener());
ribbonBandWizard.addCommandButton(buttonStartWizard, RibbonElementPriority.TOP);
tested under Windows7 ans Vista
greetings….
Daniel,
This is the expected behavior. You can read more about this rule. If you have any additional questions on this topic, please continue the conversation on the project forums or mailing lists.
Thanks
Kirill
some one know where can i find flamingos pom because i want to use falmingo with maven
thx
Flamingo does not have support for Maven.
Thanks
Kirill
do you know if some version of flamingo have support for maven?
Flamingo does not support Maven.
Thanks
Kirill