Support size hints in X11
parent
afa4aef86b
commit
3d414a42a7
|
@ -28,11 +28,17 @@ USING: alien gadgets hashtables kernel math namespaces sequences ;
|
|||
[ >r create-colormap r> set-XSetWindowAttributes-colormap ] keep
|
||||
event-mask over set-XSetWindowAttributes-event_mask ;
|
||||
|
||||
: set-size-hints ( window -- )
|
||||
"XSizeHints" <c-object>
|
||||
USPosition over set-XSizeHints-flags
|
||||
dpy get -rot XSetNormalWMHints ;
|
||||
|
||||
: create-window ( loc dim visinfo -- window )
|
||||
>r >r >r dpy get root get r> first2 r> first2 0 r>
|
||||
[ XVisualInfo-depth InputOutput ] keep
|
||||
[ XVisualInfo-visual create-window-mask ] keep
|
||||
window-attributes XCreateWindow ;
|
||||
window-attributes XCreateWindow
|
||||
dup size-size-hints ;
|
||||
|
||||
: glx-window ( loc dim -- window context )
|
||||
choose-visual
|
||||
|
|
|
@ -1308,3 +1308,37 @@ FUNCTION: Status XSetStandardProperties (
|
|||
|
||||
FUNCTION: void XFree ( void* data ) ;
|
||||
FUNCTION: int XStoreName ( Display* display, Window w, char* window_name ) ;
|
||||
|
||||
: USPosition 1 0 shift ; inline
|
||||
: USSize 1 1 shift ; inline
|
||||
: PPosition 1 2 shift ; inline
|
||||
: PSize 1 3 shift ; inline
|
||||
: PMinSize 1 4 shift ; inline
|
||||
: PMaxSize 1 5 shift ; inline
|
||||
: PResizeInc 1 6 shift ; inline
|
||||
: PAspect 1 7 shift ; inline
|
||||
: PBaseSize 1 8 shift ; inline
|
||||
: PWinGravity 1 9 shift ; inline
|
||||
|
||||
BEGIN-STRUCT: XSizeHints
|
||||
FIELD: long flags
|
||||
FIELD: int x
|
||||
FIELD: int y
|
||||
FIELD: int width
|
||||
FIELD: int height
|
||||
FIELD: int min_width
|
||||
FIELD: int min_height
|
||||
FIELD: int max_width
|
||||
FIELD: int max_height
|
||||
FIELD: int width_inc
|
||||
FIELD: int height_inc
|
||||
FIELD: int min_aspect_x
|
||||
FIELD: int min_aspect_y
|
||||
FIELD: int max_aspect_x
|
||||
FIELD: int max_aspect_y
|
||||
FIELD: int base_width
|
||||
FIELD: int base_height
|
||||
FIELD: int win_gravity
|
||||
END-STRUCT
|
||||
|
||||
FUNCTION: void XSetWMNormalHints ( Display* display, Window w, XSizeHints* hints ) ;
|
||||
|
|
Loading…
Reference in New Issue