diff options
author | Scott Gilbertson <scottg@mantatest.com> | 2003-04-19 19:54:39 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2003-04-19 19:54:39 +0000 |
commit | 9e9e204234b883d783914aa909e96c57d45ac081 (patch) | |
tree | 904af78e7c2b08b109cc574a36927a487d9db2f5 /libjava/java | |
parent | afd4910af1eeaa5bd13bed450d81761e6fb5bcca (diff) | |
download | gcc-9e9e204234b883d783914aa909e96c57d45ac081.zip gcc-9e9e204234b883d783914aa909e96c57d45ac081.tar.gz gcc-9e9e204234b883d783914aa909e96c57d45ac081.tar.bz2 |
XGraphics.java (XGraphics): Use new GC.create.
2003-04-19 Scott Gilbertson <scottg@mantatest.com>
* gnu/awt/xlib/XGraphics.java (XGraphics): Use new GC.create.
(dispose): Null metrics.
* gnu/awt/xlib/XToolkit.java (sync): Implement.
* gnu/gcj/xlib/Clip.java (dispose): Change name of native from
finalize.
(finalize): Call dispose.
* gnu/gcj/xlib/Drawable.java (gcCache): New field.
(gcCachedCount): New field.
(finalize): New method.
(putGCInCache): New method.
(getGCFromCache): New method.
* gnu/gcj/xlib/GC.java (GC): Make protected.
(clone): Get new GC from cache if possible.
(create): New static method.
(dispose): Save old GC in cache.
* gnu/gcj/xlib/natClip.cc (dispose): Check for null before
deleting.
* gnu/gcj/xlib/natGC.cc (initStructure): Call XCreateGC only if gc
is null.
* gnu/gcj/xlib/Pixmap.java (Pixmap): Use new GC.create.
* java/awt/Container.java (visitChild): Dispose gfx2 when
finished.
From-SVN: r65827
Diffstat (limited to 'libjava/java')
-rw-r--r-- | libjava/java/awt/Container.java | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/libjava/java/awt/Container.java b/libjava/java/awt/Container.java index caffc50..9ef6add 100644 --- a/libjava/java/awt/Container.java +++ b/libjava/java/awt/Container.java @@ -1,5 +1,5 @@ /* Container.java -- parent container class in AWT - Copyright (C) 1999, 2000, 2002 Free Software Foundation + Copyright (C) 1999, 2000, 2002, 2003 Free Software Foundation This file is part of GNU Classpath. @@ -1205,10 +1205,17 @@ public class Container extends Component if (clip.isEmpty()) return; Graphics gfx2 = gfx.create(); - gfx2.setClip(clip.x, clip.y, clip.width, clip.height); - gfx2.translate(bounds.x, bounds.y); + try + { + gfx2.setClip(clip.x, clip.y, clip.width, clip.height); + gfx2.translate(bounds.x, bounds.y); - visitor.visit(comp, gfx2); + visitor.visit(comp, gfx2); + } + finally + { + gfx2.dispose (); + } } void dispatchEventImpl(AWTEvent e) |