- entries[i-1].title=NULL;
- entries[i-1].flags=0;
- if(extl_table_getis(tab, i, "submenu_fn", 'f', &fn)){
- entries[i-1].flags|=WMENUENTRY_SUBMENU;
- extl_unref_fn(fn);
- }else if(extl_table_getis(tab, i, "submenu", 't', &sub)){
- entries[i-1].flags|=WMENUENTRY_SUBMENU;
- extl_unref_table(sub);
+ WMenuEntry *ent=&entries[i-1];
+
+ ent->title=NULL;
+ ent->flags=0;
+
+ gr_stylespec_init(&ent->attr);
+
+ if(extl_table_geti_t(tab, i, &entry)){
+ char *attr;
+ ExtlTab sub;
+ ExtlFn fn;
+
+ if(extl_table_gets_s(entry, "attr", &attr)){
+ gr_stylespec_load_(&ent->attr, attr, TRUE);
+ free(attr);
+ }
+
+ if(extl_table_gets_f(entry, "submenu_fn", &fn)){
+ ent->flags|=WMENUENTRY_SUBMENU;
+ extl_unref_fn(fn);
+ }else if(extl_table_gets_t(entry, "submenu", &sub)){
+ ent->flags|=WMENUENTRY_SUBMENU;
+ extl_unref_table(sub);
+ }
+
+ if(ent->flags&WMENUENTRY_SUBMENU)
+ gr_stylespec_set(&ent->attr, GR_ATTR(submenu));
+
+ extl_unref_table(entry);