diff options
author | Scott Gilbertson <scottg@mantatest.com> | 2005-07-15 16:07:18 +0000 |
---|---|---|
committer | Scott Gilbertson <sgilbertson@gcc.gnu.org> | 2005-07-15 16:07:18 +0000 |
commit | e27d6202c07dbc70172733fcf6e79cb2ffe9a56c (patch) | |
tree | 36d9688009aa0d1293f407c7660e7901e7986ce0 /libjava/gnu/gcj | |
parent | 27811bfe0a0bd1ff8ad3b361318df9f80fdae79c (diff) | |
download | gcc-e27d6202c07dbc70172733fcf6e79cb2ffe9a56c.zip gcc-e27d6202c07dbc70172733fcf6e79cb2ffe9a56c.tar.gz gcc-e27d6202c07dbc70172733fcf6e79cb2ffe9a56c.tar.bz2 |
XCanvasPeer.java (attributes): New field.
2005-07-15 Scott Gilbertson <scottg@mantatest.com>
* gnu/awt/xlib/XCanvasPeer.java (attributes): New field.
(eventMask): New field.
(XCanvasPeer(Component)): Use attributes field.
(setBackground): Implemented.
(setEventMask): Process mask only if changed.
* gnu/awt/xlib/XEventLoop.java (class): Iplement Runnable.
(eventLoopThread): New field.
(XEventLoop(Display,EventQueue)): Start eventLoopThread.
(interrupt): Removed.
(run): New method.
* gnu/awt/xlib/XEventQueue.java (getNextEvent): Process Container
and Component events.
* gnu/awt/xlib/XFramePeer.java (processingConfigureNotify): New
field.
(configureNotify): Set and clear processingConfigureNotify.
(setBounds): Process only if processingConfigureNotify is false.
(toBack): Implemented.
(toFront): Implemented.
* gnu/awt/xlib/XGraphics.java (setColor): Ignore null color.
* gnu/awt/xlib/XGraphicsConfiguration.java (getPixel): Ignore null
color.
* gnu/awt/xlib/XToolkit.java (nativeQueueEmpty): Always return true.
(wakeNativeQueue): Do nothing.
(iterateNativeQueue): Do queue.wait if blocking.
* gnu/gcj/xlib/Font.java (loadFont): New method.
(loadFontImpl): Renamed native method, was loadFont.
* gnu/gcj/xlib/Window.java (toFront): New method.
(toBack): New method.
* gnu/gcj/xlib/natFont.cc (loadFontImpl): Renamed method, was
loadFont.
* gnu/gcj/xlib/natWindow.cc (toBack): New method.
(toFront): New method.
* gnu/gcj/xlib/natXAnyEvent.cc (loadNext): Removed timeout.
From-SVN: r102057
Diffstat (limited to 'libjava/gnu/gcj')
-rw-r--r-- | libjava/gnu/gcj/xlib/Font.java | 16 | ||||
-rw-r--r-- | libjava/gnu/gcj/xlib/Window.java | 2 | ||||
-rw-r--r-- | libjava/gnu/gcj/xlib/natFont.cc | 2 | ||||
-rw-r--r-- | libjava/gnu/gcj/xlib/natWindow.cc | 14 | ||||
-rw-r--r-- | libjava/gnu/gcj/xlib/natXAnyEvent.cc | 5 |
5 files changed, 33 insertions, 6 deletions
diff --git a/libjava/gnu/gcj/xlib/Font.java b/libjava/gnu/gcj/xlib/Font.java index cd2fff9..74985b9 100644 --- a/libjava/gnu/gcj/xlib/Font.java +++ b/libjava/gnu/gcj/xlib/Font.java @@ -34,7 +34,21 @@ public final class Font extends XID structure = struct; } - static native RawData loadFont(Display display, String lfdNamePattern); + static RawData loadFont(Display display, String lfdNamePattern) + { + RawData returnValue = null; + try + { + returnValue = loadFontImpl (display,lfdNamePattern); + } + catch (XException e) + { + // Throw a descriptive exception, including the font pattern + throw new XException ("Font not found: " + lfdNamePattern); + } + return returnValue; + } + static native RawData loadFontImpl(Display display, String lfdNamePattern); static native int getXIDFromStruct(RawData structure); diff --git a/libjava/gnu/gcj/xlib/Window.java b/libjava/gnu/gcj/xlib/Window.java index ae3dbfd..3ff3657 100644 --- a/libjava/gnu/gcj/xlib/Window.java +++ b/libjava/gnu/gcj/xlib/Window.java @@ -73,6 +73,8 @@ public class Window extends Drawable public native void map(); public native void unmap(); + public native void toFront(); + public native void toBack(); protected boolean owned = false; diff --git a/libjava/gnu/gcj/xlib/natFont.cc b/libjava/gnu/gcj/xlib/natFont.cc index 54ac655..cd5d87c 100644 --- a/libjava/gnu/gcj/xlib/natFont.cc +++ b/libjava/gnu/gcj/xlib/natFont.cc @@ -16,7 +16,7 @@ details. */ #include <gnu/gcj/xlib/Font.h> #include <gnu/gcj/xlib/XException.h> -gnu::gcj::RawData* gnu::gcj::xlib::Font::loadFont(Display* display, +gnu::gcj::RawData* gnu::gcj::xlib::Font::loadFontImpl(Display* display, jstring lfdNamePattern) { ::Display* dpy = (::Display*) display->display; diff --git a/libjava/gnu/gcj/xlib/natWindow.cc b/libjava/gnu/gcj/xlib/natWindow.cc index 6600795..62cd086 100644 --- a/libjava/gnu/gcj/xlib/natWindow.cc +++ b/libjava/gnu/gcj/xlib/natWindow.cc @@ -77,6 +77,20 @@ void gnu::gcj::xlib::Window::setAttributes(WindowAttributes* attributes) // no fast fail } +void gnu::gcj::xlib::Window::toBack() +{ + ::Display* dpy = (::Display*) (display->display); + ::Window window = xid; + XLowerWindow(dpy, window); +} + +void gnu::gcj::xlib::Window::toFront() +{ + ::Display* dpy = (::Display*) (display->display); + ::Window window = xid; + XRaiseWindow(dpy, window); +} + void gnu::gcj::xlib::Window::map() { ::Display* dpy = (::Display*) (display->display); diff --git a/libjava/gnu/gcj/xlib/natXAnyEvent.cc b/libjava/gnu/gcj/xlib/natXAnyEvent.cc index 26d3b60..0bef563 100644 --- a/libjava/gnu/gcj/xlib/natXAnyEvent.cc +++ b/libjava/gnu/gcj/xlib/natXAnyEvent.cc @@ -69,14 +69,11 @@ jboolean gnu::gcj::xlib::XAnyEvent::loadNext(jboolean block) int xfd = XConnectionNumber(dpy); int pipefd = pipe[0]; int n = (xfd > pipefd ? xfd : pipefd) + 1; - struct timeval timeout; - timeout.tv_usec = 100000; // 100ms timeout - timeout.tv_sec = 0; fd_set rfds; FD_ZERO(&rfds); FD_SET(xfd, &rfds); FD_SET(pipefd, &rfds); - int sel = _Jv_select (n, &rfds, NULL, NULL, &timeout); + int sel = _Jv_select (n, &rfds, NULL, NULL, NULL); if (sel > 0) { if (FD_ISSET(xfd, &rfds)) |