URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libjava/] [gnu/] [gcj/] [xlib/] [natWMSizeHints.cc] - Rev 765
Go to most recent revision | Compare with Previous | Blame | View Log
/* 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. */ #include <X11/Xlib.h> #include <X11/Xutil.h> #include <gcj/cni.h> #include <gnu/gcj/RawData.h> #include <java/lang/OutOfMemoryError.h> #include <gnu/gcj/xlib/Window.h> #include <gnu/gcj/xlib/Display.h> #include <gnu/gcj/xlib/WMSizeHints.h> void gnu::gcj::xlib::WMSizeHints::init(WMSizeHints* copyFrom) { XSizeHints* hints = XAllocSizeHints(); if (hints == 0) { jstring errorMessage = JvNewStringLatin1("XAllocSizeHints failed"); throw new ::java::lang::OutOfMemoryError(errorMessage); } if (copyFrom != 0) { XSizeHints* from = (XSizeHints*) copyFrom->structure; (*hints) = (*from); } else { // Is this necessary? hints->flags = 0; } structure = reinterpret_cast<gnu::gcj::RawData*>(hints); } void gnu::gcj::xlib::WMSizeHints::finalize() { delete structure; } void gnu::gcj::xlib::WMSizeHints::applyNormalHints(gnu::gcj::xlib::Window* window) { Display* display = window->display; ::Display* dpy = (::Display*) display->display; ::Window win = window->getXID(); XSizeHints* hints = (XSizeHints*) structure; XSetWMNormalHints(dpy, win, hints); /* FIXME, alternative? // X11 source reports XSetWMNormalHints() as an old routine. (?) XSetWMSizeHints(dpy, win, hints, display->getAtom("WM_NORMAL_HINTS")); */ } void gnu::gcj::xlib::WMSizeHints::setMinSize(jint width, jint height) { XSizeHints* hints = (XSizeHints*) structure; hints->min_width = width; hints->min_height = height; hints->flags = hints->flags | PMinSize; } void gnu::gcj::xlib::WMSizeHints::setMaxSize(jint width, jint height) { XSizeHints* hints = (XSizeHints*) structure; hints->max_width = width; hints->max_height = height; hints->flags = hints->flags | PMaxSize; }
Go to most recent revision | Compare with Previous | Blame | View Log