2 * ion/ioncore/sizehint.h
4 * Copyright (c) Tuomo Valkonen 1999-2006.
6 * Ion is free software; you can redistribute it and/or modify it under
7 * the terms of the GNU Lesser General Public License as published by
8 * the Free Software Foundation; either version 2.1 of the License, or
9 * (at your option) any later version.
12 #ifndef ION_IONCORE_SIZEHINT_H
13 #define ION_IONCORE_SIZEHINT_H
18 INTRSTRUCT(WSizeHints);
20 DECLSTRUCT(WSizeHints){
28 int min_width, min_height;
29 int max_width, max_height;
30 int width_inc, height_inc;
34 } min_aspect, max_aspect;
35 int base_width, base_height;
38 extern void xsizehints_to_sizehints(const XSizeHints *xh,
41 extern void xsizehints_sanity_adjust(XSizeHints *hints);
43 extern void sizehints_clear(WSizeHints *hints);
45 extern void sizehints_adjust_for(WSizeHints *hints, WRegion *reg);
47 extern void sizehints_correct(const WSizeHints *hints, int *wp, int *hp,
48 bool min, bool override_no_constrain);
50 extern int xgravity_deltax(int gravity, int left, int right);
51 extern int xgravity_deltay(int gravity, int top, int bottom);
52 extern void xgravity_translate(int gravity, WRegion *reg, WRectangle *geom);
54 #endif /* ION_IONCORE_SIZEHINT_H */