- draw_multirow(brush, geom->x+x, y, l->itemh, l->strs[i],
- (l->iteminfos!=NULL ? &(l->iteminfos[i]) : NULL),
- geom->w-x, ciw, wrapw,
- (i==l->selected_str ? selstyle : style));
+ if(mode>=0 ||
+ l->selected_str==i ||
+ LISTING_DRAW_GET_SELECTED(mode)==i){
+
+ if(i==l->selected_str)
+ grbrush_set_attr(brush, selattr);
+
+ draw_multirow(brush, geom->x+x, y, l->itemh, l->strs[i],
+ (l->iteminfos!=NULL ? &(l->iteminfos[i]) : NULL),
+ geom->w-x, ciw, wrapw);
+
+ if(i==l->selected_str)
+ grbrush_unset_attr(brush, selattr);
+ }