include/data.h File Reference

#include <xcb/xcb.h>
#include <xcb/randr.h>
#include <xcb/xcb_atom.h>
#include <stdbool.h>
#include "queue.h"
Include dependency graph for data.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  Rect
 Stores a rectangle, for example the size of a window, the child window etc. More...
struct  Cell
 Defines a position in the table. More...
struct  Colorpixel
 Used for the cache of colorpixels. More...
struct  Cached_Pixmap
struct  Stack_Window
 Contains data for the windows needed to draw the titlebars on in stacking mode. More...
struct  Ignore_Event
struct  keyvalue_element
 Emulates the behaviour of tables of libxcb-wm, which in libxcb 0.3.4 suddenly vanished. More...
struct  Workspace
 The concept of Workspaces is known from various other window managers. More...
struct  Binding
 Holds a keybinding, consisting of a keycode combined with modifiers and the command which is executed as soon as the key is pressed (see src/command.c). More...
struct  Autostart
 Holds a command specified by an exec-line in the config (see src/config.c). More...
struct  Assignment
 Holds an assignment for a given window class/title to a specific workspace (see src/config.c). More...
struct  Font
 Data structure for cached font information:

  • font id in X11 (load it once)
  • font height (multiple calls needed to get it).
More...
struct  Client
 A client is X11-speak for a window. More...
struct  Container
 A container is either in default, stacking or tabbed mode. More...
struct  xoutput
 An Output is a physical output on your graphics driver. More...

Typedefs

typedef struct Cell Cell
typedef struct Font i3Font
typedef struct Container Container
typedef struct Client Client
typedef struct Binding Binding
typedef struct Workspace Workspace
typedef struct Rect Rect
typedef struct xoutput Output

Enumerations

enum  direction_t { D_LEFT, D_RIGHT, D_UP, D_DOWN }
enum  {
  BIND_NONE = 0, BIND_SHIFT = XCB_MOD_MASK_SHIFT, BIND_CONTROL = XCB_MOD_MASK_CONTROL, BIND_MOD1 = XCB_MOD_MASK_1,
  BIND_MOD2 = XCB_MOD_MASK_2, BIND_MOD3 = XCB_MOD_MASK_3, BIND_MOD4 = XCB_MOD_MASK_4, BIND_MOD5 = XCB_MOD_MASK_5,
  BIND_MODE_SWITCH = (1 << 8)
}

Variables

struct Rect packed
 Stores a rectangle, for example the size of a window, the child window etc.

Typedef Documentation

typedef struct Binding Binding

Definition at line 56 of file data.h.

typedef struct Cell Cell

Definition at line 52 of file data.h.

typedef struct Client Client

Definition at line 55 of file data.h.

typedef struct Container Container

Definition at line 54 of file data.h.

typedef struct Font i3Font

Definition at line 53 of file data.h.

typedef struct xoutput Output

Definition at line 59 of file data.h.

typedef struct Rect Rect

Definition at line 58 of file data.h.

typedef struct Workspace Workspace

Definition at line 57 of file data.h.


Enumeration Type Documentation

anonymous enum
Enumerator:
BIND_NONE 
BIND_SHIFT 
BIND_CONTROL 
BIND_MOD1 
BIND_MOD2 
BIND_MOD3 
BIND_MOD4 
BIND_MOD5 
BIND_MODE_SWITCH 

Definition at line 66 of file data.h.

Enumerator:
D_LEFT 
D_RIGHT 
D_UP 
D_DOWN 

Definition at line 64 of file data.h.


Variable Documentation

struct Rect packed

Stores a rectangle, for example the size of a window, the child window etc.

It needs to be packed so that the compiler will not add any padding bytes. (it is used in src/ewmh.c for example)

Note that x and y can contain signed values in some cases (for example when used for the coordinates of a window, which can be set outside of the visible area, but not when specifying the position of a workspace for the _NET_WM_WORKAREA hint). Not declaring x/y as int32_t saves us a lot of typecasts.

Note that x and y can contain signed values in some cases (for example when used for the coordinates of a window, which can be set outside of the visible area, but not when specifying the position of a workspace for the _NET_WM_WORKAREA hint). Not declaring x/y as int32_t saves us a lot of typecasts.


Generated on 16 Apr 2010 for i3 by  doxygen 1.6.1