add: XKeyboardControl kc;  if (panel->x > 0) { if(jingobeu[panel->x-1]==0){panel->x=-1;}else if(jingobeu[panel->x -1]<0){panel->x++;c=jingobeu[panel->x-1]/50;panel->x++;}else if(c==0){ kc.bell_pitch=jingobeu[panel->x-1];panel->x++;kc.bell_percent=50;c= jingobeu[panel->x-1]/50;kc.bell_duration=jingobeu[panel->x-1];panel->x++; XChangeKeyboardControl(dpy,KBBellPitch|KBBellDuration|KBBellPercent,&kc); XBell(dpy,50);XFlush(dpy);}else{c--;}}
context: logoPushCallback(void *data){    InfoPanel *panel = (InfoPanel*)data;    char buffer[512];    int i;    int len;    if (panel->x) {	if (!(panel->cycle % 4)) {	    WMPixmap *p;	    p = DoXThing(panel->wwin);	    WMSetLabelImage(panel->logoL, p);	}    } else if (panel->cycle < 30) {	RImage *image;	WMPixmap *pix;	image = RCloneImage(panel->icon);	RCombineImagesWithOpaqueness(image, panel->pic, panel->cycle*255/30);	pix = WMCreatePixmapFromRImage(panel->scr->wmscreen, image, 128);	RDestroyImage(image);	WMSetLabelImage(panel->logoL, pix);	WMReleasePixmap(pix);    }    i = panel->cycle%200;    len = strlen(panel->str);    strncpy(buffer, panel->str, i<len ? i : len);    if (i >= len)	memset(&buffer[len], ' ', i-len);    strncpy(buffer, panel->str, i<len ? i : len);    if (i >= len)	memset(&buffer[len], ' ', i-len);    buffer[i]=0;    WMSetLabelText(panel->versionL, buffer);    panel->timer = WMAddTimerHandler(50, logoPushCallback, panel);    panel->cycle++;}