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 /* This is used to keep a state to pass around when rendering a con in render_con(). */
14 typedef struct render_params {
15  /* A copy of the coordinates of the container which is being rendered. */
16  int x;
17  int y;
18 
19  /* The computed height for decorations. */
21  /* Container rect, subtract container border. This is the actually usable space
22  * inside this container for clients. */
24  /* The number of children of the container which is being rendered. */
25  int children;
26  /* A precalculated list of sizes of each child. */
27  int *sizes;
29 
38 void render_con(Con *con, bool render_fullscreen);
39 
40 /*
41  * Returns the height for the decorations
42  */
43 int render_deco_height(void);
int * sizes
Definition: render.h:27
Stores a rectangle, for example the size of a window, the child window etc.
Definition: data.h:141
Rect rect
Definition: render.h:23
A 'Con' represents everything from the X11 root window down to a single X11 window.
Definition: data.h:544
struct render_params render_params
void render_con(Con *con, bool render_fullscreen)
"Renders" the given container (and its children), meaning that all rects are updated correctly...
Definition: render.c:42
int deco_height
Definition: render.h:20
int children
Definition: render.h:25
int render_deco_height(void)
Definition: render.c:27