X-Git-Url: https://git.subgeniuskitty.com/xmenu/.git/blobdiff_plain/cdeaefaaa2dc75e59016e352fdfe5adf48190c6e..0b0faa5fc44fa095e927d1ce2ebdf96e536d5e62:/xmenu.h diff --git a/xmenu.h b/xmenu.h index 0f32fac..a85b44c 100644 --- a/xmenu.h +++ b/xmenu.h @@ -36,10 +36,12 @@ struct Config { int iconpadding; int horzpadding; - /* the values below are computed by xmenu */ + /* the values below are set by options */ + int monitor; + int posx, posy; /* rootmenu position */ + + /* the value below is computed by xmenu */ int iconsize; - int posx, posy; /* cursor position */ - int screenw, screenh; /* screen width and height */ }; /* draw context structure */ @@ -51,6 +53,7 @@ struct DC { GC gc; + FcPattern *pattern; XftFont **fonts; size_t nfonts; }; @@ -62,7 +65,6 @@ struct Item { char *file; /* filename of the icon */ int y; /* item y position relative to menu */ int h; /* item height */ - size_t labellen; /* strlen(label) */ struct Item *prev; /* previous item */ struct Item *next; /* next item */ struct Menu *submenu; /* submenu spawned by clicking on item */ @@ -70,6 +72,11 @@ struct Item { Imlib_Image icon; }; +/* monitor geometry structure */ +struct Monitor { + int x, y, w, h; /* monitor geometry */ +}; + /* menu structure */ struct Menu { struct Menu *parent; /* parent menu */ @@ -77,6 +84,8 @@ struct Menu { struct Item *list; /* list of items contained by the menu */ struct Item *selected; /* item currently selected in the menu */ int x, y, w, h; /* menu geometry */ + int hasicon; /* whether the menu has item with icons */ + int drawn; /* whether the menu was already drawn */ unsigned level; /* menu level relative to root */ Window win; /* menu window to map on the screen */ };