]> git.sur5r.net Git - i3/i3/blobdiff - include/render.h
Merge branch 'release-4.16.1'
[i3/i3] / include / render.h
index 94084489d3331c7b6c1fd491e69002d778aa3ca7..2b2c8dad74b291347144e9dc9189da570cb9c695 100644 (file)
@@ -1,9 +1,36 @@
 /*
  * vim:ts=4:sw=4:expandtab
+ *
+ * i3 - an improved dynamic tiling window manager
+ * © 2009 Michael Stapelberg and contributors (see also: LICENSE)
+ *
+ * render.c: Renders (determines position/sizes) the layout tree, updating the
+ *           various rects. Needs to be pushed to X11 (see x.c) to be visible.
+ *
  */
+#pragma once
 
-#ifndef _RENDER_H
-#define _RENDER_H
+#include <config.h>
+
+/**
+ * This is used to keep a state to pass around when rendering a con in render_con().
+ *
+ */
+typedef struct render_params {
+    /* A copy of the coordinates of the container which is being rendered. */
+    int x;
+    int y;
+
+    /* The computed height for decorations. */
+    int deco_height;
+    /* Container rect, subtract container border. This is the actually usable space
+     * inside this container for clients. */
+    Rect rect;
+    /* The number of children of the container which is being rendered. */
+    int children;
+    /* A precalculated list of sizes of each child. */
+    int *sizes;
+} render_params;
 
 /**
  * "Renders" the given container (and its children), meaning that all rects are
@@ -15,4 +42,8 @@
  */
 void render_con(Con *con, bool render_fullscreen);
 
-#endif
+/**
+ * Returns the height for the decorations
+ *
+ */
+int render_deco_height(void);