summaryrefslogtreecommitdiffstats
path: root/libjava/gnu/awt
diff options
context:
space:
mode:
authorsgilbertson <sgilbertson@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-07 16:49:37 +0000
committersgilbertson <sgilbertson@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-07 16:49:37 +0000
commit2dfcb59597a2fc564033f2c0c988a08e13b16624 (patch)
tree441eea7f802c2d97678acc092a8a87d337d789ca /libjava/gnu/awt
parent00c61749d8c40660ddb439580c05ec5cba8f6a3c (diff)
downloadppe42-gcc-2dfcb59597a2fc564033f2c0c988a08e13b16624.tar.gz
ppe42-gcc-2dfcb59597a2fc564033f2c0c988a08e13b16624.zip
2005-04-07 Scott Gilbertson <scottg@mantatest.com>
* gnu/gcj/xlib/natXAnyEvent.cc (loadNext): Added timeout. * gnu/awt/xlib/XCanvasPeer.java (setBackground): Removed throw UnsupportedOperationException, fixed comments. (setFont, setForeground): Fixed comments. * gnu/awt/xlib/XEventLoop.java (postNextEvent): Changed return type to boolean. (getNextEvent): Fixed javadocs. * gnu/awt/xlib/XToolkit.java (interrupted): Removed field. (nativeQueueEmpty): Removed unused code. (iterateNativeQueue): Removed outer loop. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96029 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/gnu/awt')
-rw-r--r--libjava/gnu/awt/xlib/XCanvasPeer.java9
-rw-r--r--libjava/gnu/awt/xlib/XEventLoop.java15
-rw-r--r--libjava/gnu/awt/xlib/XToolkit.java17
3 files changed, 25 insertions, 16 deletions
diff --git a/libjava/gnu/awt/xlib/XCanvasPeer.java b/libjava/gnu/awt/xlib/XCanvasPeer.java
index 5daee59dcd7..83646b1f338 100644
--- a/libjava/gnu/awt/xlib/XCanvasPeer.java
+++ b/libjava/gnu/awt/xlib/XCanvasPeer.java
@@ -349,7 +349,8 @@ public class XCanvasPeer implements CanvasPeer
public void setBackground(Color color)
{
- throw new UnsupportedOperationException("not implemented");
+ /* default canvas peer does not keep track of background, since it won't
+ * paint anything. */
}
public void setBounds(int x, int y, int width, int height)
@@ -405,13 +406,13 @@ public class XCanvasPeer implements CanvasPeer
public void setFont(Font font)
{
- /* default canvas peer does keep track of font, since it won't
- write anything. */
+ /* default canvas peer does not keep track of font, since it won't
+ paint anything. */
}
public void setForeground(Color color)
{
- /* default canvas peer does keep track of foreground, since it won't
+ /* default canvas peer does not keep track of foreground, since it won't
paint anything. */
}
diff --git a/libjava/gnu/awt/xlib/XEventLoop.java b/libjava/gnu/awt/xlib/XEventLoop.java
index 8f7828770e8..149ee736d7c 100644
--- a/libjava/gnu/awt/xlib/XEventLoop.java
+++ b/libjava/gnu/awt/xlib/XEventLoop.java
@@ -42,15 +42,20 @@ public class XEventLoop
anyEvent.interrupt();
}
- void postNextEvent(boolean block)
+ /** If there's an event available, post it.
+ * @return true if an event was posted
+ */
+ boolean postNextEvent(boolean block)
{
AWTEvent evt = getNextEvent(block);
if (evt != null)
queue.postEvent(evt);
+ return evt != null;
}
- /** get next event. Will block until events become available. */
-
+ /** Get the next event.
+ * @param block If true, block until an event becomes available
+ */
public AWTEvent getNextEvent(boolean block)
{
// ASSERT:
@@ -62,7 +67,7 @@ public class XEventLoop
{
event = createEvent();
event = lightweightRedirector.redirect(event);
- }
+ }
return event;
}
@@ -169,7 +174,7 @@ public class XEventLoop
return null;
default:
- String msg = "Do no know how to handle event (" + anyEvent + ")";
+ String msg = "Do not know how to handle event (" + anyEvent + ")";
throw new RuntimeException (msg);
}
}
diff --git a/libjava/gnu/awt/xlib/XToolkit.java b/libjava/gnu/awt/xlib/XToolkit.java
index 1e937c23867..c6e140eb3e1 100644
--- a/libjava/gnu/awt/xlib/XToolkit.java
+++ b/libjava/gnu/awt/xlib/XToolkit.java
@@ -444,8 +444,6 @@ public class XToolkit extends ClasspathToolkit
throw new java.lang.UnsupportedOperationException ();
}
- boolean interrupted;
-
public boolean nativeQueueEmpty()
{
return eventLoop.isIdle();
@@ -453,14 +451,19 @@ public class XToolkit extends ClasspathToolkit
public void wakeNativeQueue()
{
- interrupted = true;
eventLoop.interrupt();
}
+ /** Checks the native event queue for events. If blocking, waits until an
+ * event is available before returning, unless interrupted by
+ * wakeNativeQueue. If non-blocking, returns immediately even if no
+ * event is available.
+ *
+ * @param locked The calling EventQueue
+ * @param block If true, waits for a native event before returning
+ */
public void iterateNativeQueue(java.awt.EventQueue locked, boolean block)
{
- interrupted = false;
- while (!interrupted)
- eventLoop.postNextEvent(block);
- };
+ eventLoop.postNextEvent(block);
+ }
}
OpenPOWER on IntegriCloud