Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ImageIcon paint problem in JDK 1.4 on Linux/X

0 views
Skip to first unread message

Andy Krieg

unread,
Apr 24, 2002, 5:32:39 PM4/24/02
to
I am porting an application that has been in production for a couple of
years from JDK 1.2.2 to JDK 1.4.0. It runs on Linux 6.0 and X-Windows.
I have found that the screens that contain an ImageIcon object, do not
paint properly. The screen will appear to be empty, but actually has
components in it that haven't painted. If you click on the 'live'
components, they will paint. The ImageIcons are never displayed though.

Here is a typical error trace reported when displaying a screen with an
ImageIcon:

java.lang.InternalError: not implemented yet
at sun.awt.X11SurfaceData.getRaster(X11SurfaceData.java:155)
at
sun.java2d.loops.OpaqueCopyAnyToArgb.Blit(CustomComponent.java:67)
at
sun.java2d.loops.GraphicsPrimitive.convertFrom(GraphicsPrimitive.java
:452)
at sun.java2d.loops.MaskBlit$General.MaskBlit(MaskBlit.java:186)
at sun.java2d.loops.Blit$GeneralMaskBlit.Blit(Blit.java:170)
at sun.java2d.pipe.DrawImage.blitSurfaceData(DrawImage.java:627)
at
sun.java2d.pipe.DrawImage.renderSurfaceData(DrawImage.java:355)
at
sun.java2d.pipe.DrawImage.clipAndRenderSurfaceData(DrawImage.java:333
)
at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:64)
at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:48)
at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:715)
at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2782)
at
sun.awt.image.ImageRepresentation.drawToBufImage(ImageRepresentation.
java:726)
at sun.java2d.pipe.DrawImage.copyImage(DrawImage.java:722)
at sun.java2d.pipe.ValidatePipe.copyImage(ValidatePipe.java:147)
at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2782)
at sun.java2d.SunGraphics2D.drawImage(SunGraphics2D.java:2772)
at javax.swing.ImageIcon.paintIcon(ImageIcon.java:322)
at
javax.swing.plaf.basic.BasicLabelUI.paint(BasicLabelUI.java:152)
at javax.swing.plaf.ComponentUI.update(ComponentUI.java:142)
at javax.swing.JComponent.paintComponent(JComponent.java:537)
at javax.swing.JComponent.paint(JComponent.java:804)
at javax.swing.JComponent.paintChildren(JComponent.java:643)
at javax.swing.JComponent.paint(JComponent.java:813)
at javax.swing.JComponent.paintChildren(JComponent.java:643)
at javax.swing.JComponent.paint(JComponent.java:813)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:552)
at javax.swing.JComponent.paintChildren(JComponent.java:643)
at
javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4742)
at
javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4688)
at javax.swing.JComponent.paint(JComponent.java:794)
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:1123)
at sun.awt.RepaintArea.paint(RepaintArea.java:180)
at
sun.awt.motif.MComponentPeer.handleEvent(MComponentPeer.java:339)
at java.awt.Component.dispatchEventImpl(Component.java:3586)
at java.awt.Container.dispatchEventImpl(Container.java:1437)
at java.awt.Window.dispatchEventImpl(Window.java:1566)
at java.awt.Component.dispatchEvent(Component.java:3367)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:445)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchTh
read.java:190)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThre
ad.java:144)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:130)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:98)

Has anyone else encountered this? Is there a workaround?

Andy Krieg

unread,
Apr 24, 2002, 6:18:23 PM4/24/02
to

Juergen Kreileder

unread,
Apr 25, 2002, 11:13:45 AM4/25/02
to
Andy Krieg <an...@merge.com> writes:

> I am porting an application that has been in production for a couple
> of years from JDK 1.2.2 to JDK 1.4.0. It runs on Linux 6.0 and
> X-Windows. I have found that the screens that contain an ImageIcon
> object, do not paint properly. The screen will appear to be empty,
> but actually has components in it that haven't painted. If you
> click on the 'live' components, they will paint. The ImageIcons are
> never displayed though.
>
> Here is a typical error trace reported when displaying a screen with
> an ImageIcon:
>
> java.lang.InternalError: not implemented yet
> at sun.awt.X11SurfaceData.getRaster(X11SurfaceData.java:155)

See http://developer.java.sun.com/developer/bugParade/bugs/4517321.html


Juergen

--
Juergen Kreileder, Blackdown Java-Linux Team
http://www.blackdown.org/java-linux.html
Run Java 2 SE v1.3.1 on your iPAQ:
http://www.handhelds.org/pipermail/ipaq/2001-June/007221.html

0 new messages