📄 natwmsizehints.cc
字号:
/* Copyright (C) 2000 Free Software Foundation This file is part of libgcj.This software is copyrighted work licensed under the terms of theLibgcj License. Please consult the file "LIBGCJ_LICENSE" fordetails. */#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;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -