X-Git-Url: http://git.subgeniuskitty.com/xmenu/.git/blobdiff_plain/f644b8bc229efaa87ac1d441918496e7e24cf29c..HEAD:/config.h diff --git a/config.h b/config.h index 6a37a74..254201c 100644 --- a/config.h +++ b/config.h @@ -1,11 +1,62 @@ -static const char *font = "-*-*-medium-*-*-*-14-*-*-*-*-*-*-*"; -static const char *background = "#FFFFFF"; -static const char *foreground = "#2E3436"; -static const char *selbackground = "#3584E4"; -static const char *selforeground = "#FFFFFF"; -static const char *separator = "#CDC7C2"; -static const char *border = "#E6E6E6"; -static int width = 130; -static int itemborder = 4; -static int menuborder = 1; -static int separatorsize = 1; +static struct Config config = { + /* font, separate different fonts with comma */ + .font = "monospace:size=9,DejaVuSansMono:size=9", + + /* colors */ + .background_color = "#FFFFFF", + .foreground_color = "#2E3436", + .selbackground_color = "#3584E4", + .selforeground_color = "#FFFFFF", + .separator_color = "#CDC7C2", + .border_color = "#E6E6E6", + + /* sizes in pixels */ + .width_pixels = 130, /* minimum width of a menu */ + .height_pixels = 25, /* height of a single menu item */ + .border_pixels = 1, /* menu border */ + .separator_pixels = 3, /* space around separator */ + .gap_pixels = 0, /* gap between menus */ + .max_items = 0, /* maximum number of items of a menu, 0 to compute based on monitor height */ + + /* text alignment, set to LeftAlignment, CenterAlignment or RightAlignment */ + .alignment = LeftAlignment, + + /* + * The variables below cannot be set by X resources. + * Their values must be less than .height_pixels. + */ + + /* geometry of the right-pointing isoceles triangle for submenus */ + .triangle_width = 3, + .triangle_height = 7, + + /* the icon size is equal to .height_pixels - .iconpadding * 2 */ + .iconpadding = 2, + + /* area around the icon, the triangle and the separator */ + .horzpadding = 8, +}; + +/* + * KEYBINDINGS + * + * Look at your /usr/include/X11/keysymdef.h (or the equivalent file + * in your system) for a list of key symbol constants, and change the + * macros below accordingly. All key symbol constants begin with the + * prefix XK_. + * + * For example, to use vim-like key bindings, set KEYSYMLEFT to XK_h, + * KEYSYMDOWN to XK_j, KEYSYMUP to XK_k, etc. + * + * Note that the regular keys like ArrowUp, ArrowDown, Tab, Home, etc + * will ALWAYS work, so you do not need to set them. + * + * If you do not want to set a key binding, keep it with the value of + * XK_VoidSymbol + */ +#define KSYMFIRST XK_VoidSymbol /* select first item */ +#define KSYMLAST XK_VoidSymbol /* select last item */ +#define KSYMUP XK_VoidSymbol /* select previous item */ +#define KSYMDOWN XK_VoidSymbol /* select next item */ +#define KSYMLEFT XK_VoidSymbol /* close current menu */ +#define KSYMRIGHT XK_VoidSymbol /* enter selected item */