i3
Barconfig Struct Reference

Holds the status bar configuration (i3bar). More...

#include <configuration.h>

Collaboration diagram for Barconfig:

Data Structures

struct  bar_colors
 

Public Types

enum  { M_DOCK = 0 , M_HIDE = 1 , M_INVISIBLE = 2 }
 Bar display mode (hide unless modifier is pressed or show in dock mode or always hide in invisible mode) More...
 
enum  { S_HIDE = 0 , S_SHOW = 1 }
 
enum  { P_BOTTOM = 0 , P_TOP = 1 }
 Bar position (bottom by default). More...
 

Public Member Functions

 TAILQ_HEAD (tray_outputs_head, tray_output_t) tray_outputs
 
 TAILQ_HEAD (bar_bindings_head, Barbinding) bar_bindings
 
 TAILQ_ENTRY (Barconfig) configs
 

Data Fields

char * id
 Automatically generated ID for this bar config.
 
int num_outputs
 Number of outputs in the outputs array.
 
char ** outputs
 Outputs on which this bar should show up on.
 
int tray_padding
 
char * socket_path
 Path to the i3 IPC socket.
 
enum Barconfig:: { ... }  mode
 Bar display mode (hide unless modifier is pressed or show in dock mode or always hide in invisible mode)
 
enum Barconfig:: { ... }  hidden_state
 
uint32_t modifier
 Bar modifier (to show bar when in hide mode).
 
enum Barconfig:: { ... }  position
 Bar position (bottom by default).
 
char * i3bar_command
 Command that should be run to execute i3bar, give a full path if i3bar is not in your $PATH.
 
char * status_command
 Command that should be run to get a statusline, for example 'i3status'.
 
char * workspace_command
 Command that should be run to get the workspace buttons.
 
char * font
 Font specification for all text rendered on the bar.
 
char * separator_symbol
 A custom separator to use instead of a vertical line.
 
bool hide_workspace_buttons
 Hide workspace buttons? Configuration option is 'workspace_buttons no' but we invert the bool to get the correct default when initializing with zero.
 
int workspace_min_width
 The minimal width for workspace buttons.
 
bool strip_workspace_numbers
 Strip workspace numbers? Configuration option is 'strip_workspace_numbers yes'.
 
bool strip_workspace_name
 Strip workspace name? Configuration option is 'strip_workspace_name yes'.
 
bool hide_binding_mode_indicator
 Hide mode button? Configuration option is 'binding_mode_indicator no' but we invert the bool for the same reason as hide_workspace_buttons.
 
bool verbose
 Enable verbose mode? Useful for debugging purposes.
 
uint32_t bar_height
 Defines the height of the bar in pixels.
 
struct Rect padding
 
struct Barconfig::bar_colors colors
 

Detailed Description

Holds the status bar configuration (i3bar).

One of these structures is created for each 'bar' block in the config.

Definition at line 290 of file configuration.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Bar display mode (hide unless modifier is pressed or show in dock mode or always hide in invisible mode)

Enumerator
M_DOCK 
M_HIDE 
M_INVISIBLE 

Definition at line 315 of file configuration.h.

◆ anonymous enum

anonymous enum
Enumerator
S_HIDE 
S_SHOW 

Definition at line 320 of file configuration.h.

◆ anonymous enum

anonymous enum

Bar position (bottom by default).

Enumerator
P_BOTTOM 
P_TOP 

Definition at line 329 of file configuration.h.

Member Function Documentation

◆ TAILQ_ENTRY()

Barconfig::TAILQ_ENTRY ( Barconfig )

◆ TAILQ_HEAD() [1/2]

Barconfig::TAILQ_HEAD ( bar_bindings_head ,
Barbinding  )

◆ TAILQ_HEAD() [2/2]

Barconfig::TAILQ_HEAD ( tray_outputs_head ,
tray_output_t  )

Field Documentation

◆ bar_height

uint32_t Barconfig::bar_height

Defines the height of the bar in pixels.

Definition at line 375 of file configuration.h.

Referenced by CFGFUN().

◆ colors

struct Barconfig::bar_colors Barconfig::colors

Referenced by CFGFUN(), and free_configuration().

◆ font

char* Barconfig::font

Font specification for all text rendered on the bar.

Definition at line 346 of file configuration.h.

Referenced by CFGFUN(), free_configuration(), and load_configuration().

◆ []

enum { ... } Barconfig::hidden_state

Referenced by CFGFUN(), and cmd_bar_hidden_state().

◆ hide_binding_mode_indicator

bool Barconfig::hide_binding_mode_indicator

Hide mode button? Configuration option is 'binding_mode_indicator no' but we invert the bool for the same reason as hide_workspace_buttons.

Definition at line 369 of file configuration.h.

Referenced by CFGFUN().

◆ hide_workspace_buttons

bool Barconfig::hide_workspace_buttons

Hide workspace buttons? Configuration option is 'workspace_buttons no' but we invert the bool to get the correct default when initializing with zero.

Definition at line 354 of file configuration.h.

Referenced by CFGFUN().

◆ i3bar_command

char* Barconfig::i3bar_command

Command that should be run to execute i3bar, give a full path if i3bar is not in your $PATH.

By default just 'i3bar' is executed.

Definition at line 335 of file configuration.h.

Referenced by CFGFUN(), free_configuration(), and main().

◆ id

char* Barconfig::id

Automatically generated ID for this bar config.

Used by the bar process to request a specific configuration.

Definition at line 293 of file configuration.h.

Referenced by CFGFUN(), CFGFUN(), cmd_bar_hidden_state(), cmd_bar_mode(), free_configuration(), IPC_HANDLER(), ipc_send_barconfig_update_event(), and main().

◆ []

enum { ... } Barconfig::mode

Bar display mode (hide unless modifier is pressed or show in dock mode or always hide in invisible mode)

Referenced by CFGFUN(), and cmd_bar_mode().

◆ modifier

uint32_t Barconfig::modifier

Bar modifier (to show bar when in hide mode).

Definition at line 324 of file configuration.h.

Referenced by CFGFUN(), and CFGFUN().

◆ num_outputs

int Barconfig::num_outputs

Number of outputs in the outputs array.

Definition at line 296 of file configuration.h.

Referenced by CFGFUN(), and free_configuration().

◆ outputs

char** Barconfig::outputs

Outputs on which this bar should show up on.

We use an array for simplicity (since we store just strings).

Definition at line 299 of file configuration.h.

Referenced by CFGFUN(), and free_configuration().

◆ padding

struct Rect Barconfig::padding

Definition at line 377 of file configuration.h.

Referenced by CFGFUN(), CFGFUN(), CFGFUN(), CFGFUN(), and dlog_padding().

◆ []

enum { ... } Barconfig::position

Bar position (bottom by default).

Referenced by CFGFUN().

◆ separator_symbol

char* Barconfig::separator_symbol

A custom separator to use instead of a vertical line.

Definition at line 349 of file configuration.h.

Referenced by CFGFUN().

◆ socket_path

char* Barconfig::socket_path

Path to the i3 IPC socket.

This option is discouraged since programs can find out the path by looking for the I3_SOCKET_PATH property on the root window!

Definition at line 312 of file configuration.h.

Referenced by CFGFUN(), and free_configuration().

◆ status_command

char* Barconfig::status_command

Command that should be run to get a statusline, for example 'i3status'.

Will be passed to the shell.

Definition at line 339 of file configuration.h.

Referenced by CFGFUN(), and free_configuration().

◆ strip_workspace_name

bool Barconfig::strip_workspace_name

Strip workspace name? Configuration option is 'strip_workspace_name yes'.

Definition at line 365 of file configuration.h.

Referenced by CFGFUN().

◆ strip_workspace_numbers

bool Barconfig::strip_workspace_numbers

Strip workspace numbers? Configuration option is 'strip_workspace_numbers yes'.

Definition at line 361 of file configuration.h.

Referenced by CFGFUN().

◆ tray_padding

int Barconfig::tray_padding

Definition at line 307 of file configuration.h.

Referenced by CFGFUN(), and CFGFUN().

◆ verbose

bool Barconfig::verbose

Enable verbose mode? Useful for debugging purposes.

Definition at line 372 of file configuration.h.

Referenced by CFGFUN(), and main().

◆ workspace_command

char* Barconfig::workspace_command

Command that should be run to get the workspace buttons.

Will be passed to the shell.

Definition at line 343 of file configuration.h.

Referenced by CFGFUN(), and free_configuration().

◆ workspace_min_width

int Barconfig::workspace_min_width

The minimal width for workspace buttons.

Definition at line 357 of file configuration.h.

Referenced by CFGFUN().


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