| /* Copyright (C) 2000 Free Software Foundation |
| |
| This file is part of libgcj. |
| |
| This software is copyrighted work licensed under the terms of the |
| Libgcj License. Please consult the file "LIBGCJ_LICENSE" for |
| details. */ |
| |
| package gnu.gcj.xlib; |
| |
| import gnu.gcj.RawData; |
| |
| /** |
| * Size hints for an X11 window in its normal state. This class wraps |
| * the Xlib XSizeHints stucture. |
| * |
| * @author Rolf W. Rasmussen <rolfwr@ii.uib.no> |
| */ |
| public class WMSizeHints implements Cloneable |
| { |
| public WMSizeHints() |
| { |
| init(null); |
| } |
| |
| private native void init(WMSizeHints copyFrom); |
| protected native void finalize(); |
| |
| public Object clone() { |
| try |
| { |
| WMSizeHints hints = (WMSizeHints) super.clone(); |
| // In case of an exception before the stucture is copied. |
| hints.structure = null; |
| |
| hints.init(this); |
| return hints; |
| } |
| catch (CloneNotSupportedException ex) |
| { |
| // This should never happen. |
| throw new InternalError (); |
| } |
| } |
| |
| public native void applyNormalHints(Window window); |
| |
| public native void setMinSize(int width, int height); |
| public native void setMaxSize(int width, int height); |
| |
| RawData structure; |
| } |