NOW IN MIT/X LICENSE
[xmenu] / xmenu.h
diff --git a/xmenu.h b/xmenu.h
index 2405a8b..a85b44c 100644 (file)
--- a/xmenu.h
+++ b/xmenu.h
@@ -36,10 +36,12 @@ struct Config {
        int iconpadding;
        int horzpadding;
 
        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 iconsize;
-       int posx, posy;           /* cursor position */
-       int screenw, screenh;       /* screen width and height */
 };
 
 /* draw context structure */
 };
 
 /* draw context structure */
@@ -51,6 +53,7 @@ struct DC {
 
        GC gc;
 
 
        GC gc;
 
+       FcPattern *pattern;
        XftFont **fonts;
        size_t nfonts;
 };
        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 */
        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 */
        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;
 };
 
        Imlib_Image icon;
 };
 
+/* monitor geometry structure */
+struct Monitor {
+       int x, y, w, h;         /* monitor geometry */
+};
+
 /* menu structure */
 struct Menu {
        struct Menu *parent;    /* parent menu */
 /* menu structure */
 struct Menu {
        struct Menu *parent;    /* parent menu */
@@ -77,6 +84,7 @@ 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 */
        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 */
        int drawn;              /* whether the menu was already drawn */
        unsigned level;         /* menu level relative to root */
        Window win;             /* menu window to map on the screen */