rem: Drawable d = drawable;
context: paintItem(WMList *lPtr, int index, Drawable drawable, char *text, int state,          WMRect *rect){    WMView *view = W_VIEW(lPtr);    W_Screen *scr = view->screen;    Display *display = scr->display;    WMFont *font = ((state & WLDSIsBranch) ? scr->boldFont : scr->normalFont);    int width, height, x, y, textLen;    Drawable d = drawable;    width = rect->size.width;    height = rect->size.height;    x = rect->pos.x;    y = rect->pos.y;    textLen = strlen(text);#ifdef DOUBLE_BUFFER_no    x = y = 0;    d = XCreatePixmap(display, drawable, width, height, scr->depth);    if (state & WLDSSelected)        XFillRectangle(display, d, WMColorGC(scr->white), 0, 0, width, height);    else        XFillRectangle(display, d, WMColorGC(view->backColor), 0, 0, width, height);#else    if (state & WLDSSelected)	XFillRectangle(display, d, WMColorGC(scr->white), x, y, width, height);    else        //XFillRectangle(display, d, WMColorGC(view->backColor), x, y, width, height);	XClearArea(display, d, x, y, width, height, False);#endif    if (text) {        /* Avoid overlaping... */	int widthC = (state & WLDSIsBranch) ? width-20 : width-8;	if (WMWidthOfString(font, text, textLen) > widthC) {	    char *textBuf = createTruncatedString(font, text, &textLen, widthC);            W_PaintText(view, d, font,  x+4, y, widthC,		    	WALeft, scr->black, False, textBuf, textLen);	    wfree(textBuf);	} else {      	    W_PaintText(view, d, font,  x+4, y, widthC,		    	WALeft, scr->black, False, text, textLen);	}    }    if (state & WLDSIsBranch) {	XDrawLine(display, d, WMColorGC(scr->darkGray), x+width-11, y+3,		  x+width-6, y+height/2);	if (state & WLDSSelected)	    XDrawLine(display, d,WMColorGC(scr->gray), x+width-11, y+height-5,		      x+width-6, y+height/2);	else	    XDrawLine(display, d,WMColorGC(scr->white), x+width-11, y+height-5,		      x+width-6, y+height/2);	XDrawLine(display, d, WMColorGC(scr->black), x+width-12, y+3,		  x+width-12, y+height-5);    }#ifdef DOUBLE_BUFFER_no    XCopyArea(display, d, drawable, scr->copyGC, 0, 0, width, height,              rect->pos.x, rect->pos.y);    XFreePixmap(display, d);#endif}