Bug #4731
closedDocumentation Customize on directors and parameters gives ClassCastException
0%
Description
If you right click Documentation => Customize on a director or parameter you get a ClassCastException.
Updated by Christopher Brooks over 14 years ago
This problem occurs in Kepler, but not in Vergil.
The stack trace indicates the problem is in KeplerDocApplicationSpecializer.
The issue here is that a Director is actually an Attribute, not an Entity.
java.lang.ClassCastException: ptolemy.domains.ct.kernel.CTMixedSignalDirector
at org.kepler.gui.KeplerDocApplicationSpecializer.createEditingPanel(KeplerDocApplicationSpecializer.java:522)
at org.kepler.gui.KeplerDocApplicationSpecializer.editDocumentation(KeplerDocApplicationSpecializer.java:286)
at ptolemy.vergil.basic.CustomizeDocumentationAction$1._execute(CustomizeDocumentationAction.java:146)
at ptolemy.kernel.util.ChangeRequest.execute(ChangeRequest.java:171)
at ptolemy.kernel.util.NamedObj.executeChangeRequests(NamedObj.java:732)
at ptolemy.kernel.util.NamedObj.requestChange(NamedObj.java:1757)
at ptolemy.actor.CompositeActor.requestChange(CompositeActor.java:1533)
at ptolemy.kernel.util.NamedObj.requestChange(NamedObj.java:1740)
at ptolemy.vergil.basic.CustomizeDocumentationAction.actionPerformed(CustomizeDocumentationAction.java:150)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1882)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2202)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.AbstractButton.doClick(AbstractButton.java:334)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1050)
at apple.laf.CUIAquaMenuItem.doClick(CUIAquaMenuItem.java:119)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1091)
at java.awt.Component.processMouseEvent(Component.java:5602)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3129)
at java.awt.Component.processEvent(Component.java:5367)
at java.awt.Container.processEvent(Container.java:2010)
at java.awt.Component.dispatchEventImpl(Component.java:4068)
at java.awt.Container.dispatchEventImpl(Container.java:2068)
at java.awt.Component.dispatchEvent(Component.java:3903)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4256)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3936)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3866)
at java.awt.Container.dispatchEventImpl(Container.java:2054)
at java.awt.Window.dispatchEventImpl(Window.java:1801)
at java.awt.Component.dispatchEvent(Component.java:3903)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Updated by Aaron Aaron over 14 years ago
I've changed KeplerDocApplicationSpecializer to ignore dealing with ports on non-entities. This seems to do the trick.