* See file LICENSE for license information.
*
*/
-#include <xcb/xcb.h>
#include "data.h"
#include "tree.h"
* creating the workspace if necessary (by allocating the necessary amount of
* memory and initializing the data structures correctly).
*
+ * If created is not NULL, *created will be set to whether or not the
+ * workspace has just been created.
+ *
*/
-Con *workspace_get(const char *num);
+Con *workspace_get(const char *num, bool *created);
#if 0
/**
/** Switches to the given workspace */
void workspace_show(const char *num);
+/**
+ * Focuses the next workspace.
+ *
+ */
+void workspace_next();
+
+/**
+ * Focuses the previous workspace.
+ *
+ */
+void workspace_prev();
+
#if 0
/**
* Assigns the given workspace to the given screen by correctly updating its
*/
void ws_force_orientation(Con *ws, orientation_t orientation);
+/**
+ * Called when a new con (with a window, not an empty or split con) should be
+ * attached to the workspace (for example when managing a new window or when
+ * moving an existing window to the workspace level).
+ *
+ * Depending on the workspace_layout setting, this function either returns the
+ * workspace itself (default layout) or creates a new stacked/tabbed con and
+ * returns that.
+ *
+ */
+Con *workspace_attach_to(Con *ws);
+
#endif