Sorry if this is not the right place to ask.
I've got a problem using JideTabbedPane (2.5.1) with tab layout policy set to WRAP_TAB_LAYOUT.
Here is a sample app:
- Code: Select all
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.SwingUtilities;
import com.jidesoft.swing.JideTabbedPane;
public class TabbedPaneTest extends JFrame
{
public TabbedPaneTest()
{
super("tabs test");
buildUI();
}
private void buildUI()
{
JPanel content = new JPanel(new BorderLayout());
JideTabbedPane tabs = new JideTabbedPane();
tabs.addTab("tab 1", new JPanel());
tabs.setTabLayoutPolicy(JTabbedPane.WRAP_TAB_LAYOUT);
tabs.setTabShape(JideTabbedPane.SHAPE_EXCEL);
content.add(tabs, BorderLayout.CENTER);
getContentPane().add(content);
setSize(300, 300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable()
{
@Override
public void run()
{
TabbedPaneTest test = new TabbedPaneTest();
test.setVisible(true);
}
});
}
}
An exception is thrown when I start the app:
- Code: Select all
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at com.jidesoft.plaf.vsnet.VsnetJideTabbedPaneUI.paintContentBorderTopEdge(Unknown Source)
at com.jidesoft.plaf.basic.BasicJideTabbedPaneUI.paintContentBorder(Unknown Source)
at com.jidesoft.plaf.basic.BasicJideTabbedPaneUI.paint(Unknown Source)
at javax.swing.plaf.ComponentUI.update(ComponentUI.java:143)
at javax.swing.JComponent.paintComponent(JComponent.java:763)
at javax.swing.JComponent.paint(JComponent.java:1027)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paint(JComponent.java:1036)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:564)
at javax.swing.JComponent.paintChildren(JComponent.java:864)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5129)
at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:277)
at javax.swing.RepaintManager.paint(RepaintManager.java:1217)
at javax.swing.JComponent.paint(JComponent.java:1013)
at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:21)
at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:60)
at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:97)
at java.awt.Container.paint(Container.java:1780)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:814)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:714)
at javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:694)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:128)
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)
The sample code works fine if I change line
- Code: Select all
tabs.setTabLayoutPolicy(JTabbedPane.WRAP_TAB_LAYOUT);
to
- Code: Select all
tabs.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
Would appreciate any input on the issue...
Thanks
ps. My PC's running Ubuntu 9.04 (Java(TM) SE Runtime Environment (build 1.6.0_13-b03))