i3
render.h
Go to the documentation of this file.
1 /*
2  * vim:ts=4:sw=4:expandtab
3  *
4  * i3 - an improved dynamic tiling window manager
5  * © 2009 Michael Stapelberg and contributors (see also: LICENSE)
6  *
7  * render.c: Renders (determines position/sizes) the layout tree, updating the
8  * various rects. Needs to be pushed to X11 (see x.c) to be visible.
9  *
10  */
11 #pragma once
12 
13 #include <config.h>
14 
19 typedef struct render_params {
20  /* A copy of the coordinates of the container which is being rendered. */
21  int x;
22  int y;
23 
24  /* The computed height for decorations. */
26  /* Container rect, subtract container border. This is the actually usable space
27  * inside this container for clients. */
29  /* The number of children of the container which is being rendered. */
30  int children;
31  /* A precalculated list of sizes of each child. */
32  int *sizes;
34 
43 void render_con(Con *con);
44 
49 int render_deco_height(void);
void render_con(Con *con)
"Renders" the given container (and its children), meaning that all rects are updated correctly.
Definition: render.c:42
int render_deco_height(void)
Returns the height for the decorations.
Definition: render.c:27
struct render_params render_params
This is used to keep a state to pass around when rendering a con in render_con().
Stores a rectangle, for example the size of a window, the child window etc.
Definition: data.h:156
A 'Con' represents everything from the X11 root window down to a single X11 window.
Definition: data.h:613
This is used to keep a state to pass around when rendering a con in render_con().
Definition: render.h:19
Rect rect
Definition: render.h:28
int children
Definition: render.h:30
int * sizes
Definition: render.h:32
int deco_height
Definition: render.h:25