i3
Public Types | Public Member Functions | Data Fields
Assignment Struct Reference

An Assignment makes specific windows go to a specific workspace/output or run a command for that window. More...

#include <data.h>

Collaboration diagram for Assignment:
Collaboration graph
[legend]

Public Types

enum  { A_ANY = 0, A_COMMAND = (1 << 0), A_TO_WORKSPACE = (1 << 1), A_TO_OUTPUT = (1 << 2) }
 type of this assignment: More...

Public Member Functions

 TAILQ_ENTRY (Assignment) assignments

Data Fields

enum Assignment:: { ... }  type
 type of this assignment:
Match match
 the criteria to check if a window matches
union {
   char *   command
   char *   workspace
   char *   output
dest
 destination workspace/output/command, depending on the type

Detailed Description

An Assignment makes specific windows go to a specific workspace/output or run a command for that window.

With this mechanism, the user can -- for example -- make specific windows floating or assign his browser to workspace "www". Checking if a window is assigned works by comparing the Match data structure with the window (see match_matches_window()).

Definition at line 352 of file data.h.


Member Enumeration Documentation

anonymous enum

type of this assignment:

A_COMMAND = run the specified command for the matching window A_TO_WORKSPACE = assign the matching window to the specified workspace A_TO_OUTPUT = assign the matching window to the specified output

While the type is a bitmask, only one value can be set at a time. It is a bitmask to allow filtering for multiple types, for example in the assignment_for() function.

Enumerator:
A_ANY 
A_COMMAND 
A_TO_WORKSPACE 
A_TO_OUTPUT 

Definition at line 364 of file data.h.


Member Function Documentation


Field Documentation

Definition at line 376 of file data.h.

Referenced by load_configuration(), and run_assignments().

union { ... } Assignment::dest

destination workspace/output/command, depending on the type

Referenced by assignment_for(), load_configuration(), manage_window(), and run_assignments().

the criteria to check if a window matches

Definition at line 372 of file data.h.

Referenced by assignment_for(), load_configuration(), and run_assignments().

Definition at line 378 of file data.h.

Referenced by load_configuration().

enum { ... } Assignment::type

type of this assignment:

A_COMMAND = run the specified command for the matching window A_TO_WORKSPACE = assign the matching window to the specified workspace A_TO_OUTPUT = assign the matching window to the specified output

While the type is a bitmask, only one value can be set at a time. It is a bitmask to allow filtering for multiple types, for example in the assignment_for() function.

Referenced by assignment_for(), load_configuration(), manage_window(), and run_assignments().

Definition at line 377 of file data.h.

Referenced by assignment_for(), load_configuration(), and manage_window().


The documentation for this struct was generated from the following file: