Insubstantial / insubstantial

Swing look-and-feel library and assorted widgets
195 stars 57 forks source link

IllegalArgumentException problem with netbeans platform #87

Closed ghost closed 12 years ago

ghost commented 12 years ago

I am trying the set of Substance looks and feels on the netbeans platform and so far so good! Except when it came to something i guess netbeans specific.

First I applied a LAF by modifying the restore() method in the Installer.java file. It gave the appropriate LAF but not for the docks buttons. Just to clarify, the docks buttons represent the buttons users use to interact with the docks and they are mainly located at the right upper corner of a dock.

I am using Netbeans IDE 7.1 and Netbeans platform 7.1 on Windows 7, JDK 1.7

Second, when I clicked on one of the dock's buttons to minimize it, I got the following error:

java.lang.IllegalArgumentException: Renderer extends the SubstanceDefaultTableCellRenderer but does not return one in its getTableCellRendererComponent() method
    at org.pushingpixels.substance.internal.ui.SubstanceTableUI.paintCell(SubstanceTableUI.java:1015)
    at org.pushingpixels.substance.internal.ui.SubstanceTableUI.paintCells(SubstanceTableUI.java:898)
    at org.pushingpixels.substance.internal.ui.SubstanceTableUI.paint(SubstanceTableUI.java:742)
    at org.pushingpixels.substance.internal.ui.SubstanceTableUI.__org__pushingpixels__substance__internal__ui__SubstanceTableUI__update(SubstanceTableUI.java:2509)
    at org.pushingpixels.substance.internal.ui.SubstanceTableUI.update(SubstanceTableUI.java)
    at javax.swing.JComponent.paintComponent(JComponent.java:778)
    at javax.swing.JComponent.paint(JComponent.java:1054)
    at org.netbeans.swing.popupswitcher.SwitcherTable.paint(SwitcherTable.java:342)
    at javax.swing.JComponent.paintToOffscreen(JComponent.java:5221)
    at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1482)
    at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1413)
    at javax.swing.RepaintManager.paint(RepaintManager.java:1206)
    at javax.swing.JComponent._paintImmediately(JComponent.java:5169)
    at javax.swing.JComponent.paintImmediately(JComponent.java:4980)
    at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:770)
    at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:728)
    at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:677)
    at javax.swing.RepaintManager.access$700(RepaintManager.java:59)
    at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1621)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705)
    at java.awt.EventQueue.access$000(EventQueue.java:101)
    at java.awt.EventQueue$3.run(EventQueue.java:666)
    at java.awt.EventQueue$3.run(EventQueue.java:664)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:675)
    at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:162)
[catch] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Could anyone else reproduce this? How can this be solved?

Thanks

shemnon commented 12 years ago

Have you altered any renderers in netbeans to become subtance variants? The exception text indicates that you are breaking an API contract in that the object says it is a substance renderer and it is not returning a substance renderer, which is essential for the animations.

Since this appears to be a bug in the use of substance, and not a bug in substance itself, I am closing it as won't fix.

ghost commented 12 years ago

I am not sure I completely understand your reply but I believe the problem is with how Substance is interacting with the Netbeans platform. I didn't alter any renderers in Netbeans platform. I would suggest trying to reproduce the behavior since it appears like this might be a bug with either Substance or the Netbeans platform.

Regards.