rem: icon->step = !icon->step; if (icon->step) { XSetForeground(dpy, scr->icon_select_gc, scr->white_pixel); XSetBackground(dpy, scr->icon_select_gc, scr->black_pixel); } else { XSetForeground(dpy, scr->icon_select_gc, scr->black_pixel); XSetBackground(dpy, scr->icon_select_gc, scr->white_pixel); }
add: icon->step--; gcv.dash_offset = icon->step; XChangeGC(dpy, scr->icon_select_gc, GCDashOffset, &gcv);
context: cycleColor(void *data){    WIcon *icon = (WIcon*)data;    WScreen *scr = icon->core->screen_ptr;    icon->step = !icon->step;    if (icon->step) {	XSetForeground(dpy, scr->icon_select_gc, scr->white_pixel);	XSetBackground(dpy, scr->icon_select_gc, scr->black_pixel);    } else {	XSetForeground(dpy, scr->icon_select_gc, scr->black_pixel);	XSetBackground(dpy, scr->icon_select_gc, scr->white_pixel);    }    XDrawRectangle(dpy, icon->core->window, scr->icon_select_gc, 0, 0,		   icon->core->width-1, icon->core->height-1);        icon->handlerID = WMAddTimerHandler(COLOR_CYCLE_DELAY, cycleColor, icon);}