rem: WMScreen *scr = WMWidgetScreen(panel->parent);
context: showData(_Panel *panel){    WMScreen *scr = WMWidgetScreen(panel->parent);    char *str;	int i;	CurrentFontArray = WMCreatePLDictionary(NULL, NULL);    str = GetStringForKey("WindowTitleFont");	insertCurrentFont(wstrdup(str), "WindowTitleFont");	str = GetStringForKey("LargeDisplayFont");	insertCurrentFont(wstrdup(str), "LargeDisplayFont");    str = GetStringForKey("MenuTitleFont");	insertCurrentFont(wstrdup(str), "MenuTitleFont");    str = GetStringForKey("MenuTextFont");	insertCurrentFont(wstrdup(str), "MenuTextFont");	str = GetStringForKey("ClipTitleFont");	insertCurrentFont(wstrdup(str), "ClipTitleFont");	str = GetStringForKey("IconTitleFont");	insertCurrentFont(wstrdup(str), "IconTitleFont");	/* i put this here cause it needs to be known before we paint */    readFontEncodings(panel);    str = GetStringForKey("MenuStyle");    if (str && strcasecmp(str, "flat")==0) {	panel->menuStyle = MSTYLE_FLAT;    } else if (str && strcasecmp(str, "singletexture")==0) {	panel->menuStyle = MSTYLE_SINGLE;    } else {	panel->menuStyle = MSTYLE_NORMAL;    }    str = GetStringForKey("TitleJustify");    if (str && strcasecmp(str, "left")==0) {	panel->titleAlignment = WALeft;    } else if (str && strcasecmp(str, "right")==0) {	panel->titleAlignment = WARight;    } else {	panel->titleAlignment = WACenter;    }    for (i = 0; i < sizeof(colorOptions)/(2*sizeof(char*)); i++) {	WMColor *color;	str = GetStringForKey(colorOptions[i*2]);	if (!str)	    str = colorOptions[i*2+1];	if (!(color = WMCreateNamedColor(WMWidgetScreen(panel->box), str, False))) {	    color = WMCreateNamedColor(WMWidgetScreen(panel->box), "#000000", False);	}	panel->colors[i] = color;    }	str = GetStringForKey("MultiByteText");	if (str)	{		if (strcasecmp(str, "YES")==0) {			setLanguageType(panel, True);			WMSetButtonText(panel->togMulti, "Yes");			printf("yes multi\n");			panel->MultiByteText = True;		} else if (strcasecmp(str, "AUTO") == 0) {			char *locale;			locale = setlocale(LC_CTYPE, NULL);			if(locale != NULL				&& (strncmp(locale, "ja", 2) == 0				|| strncmp(locale, "zh", 2) == 0				|| strncmp(locale, "ko", 2) == 0)) {				setLanguageType(panel, True);				WMSetButtonText(panel->togMulti, "Auto");				printf("auto multi\n");				panel->MultiByteText = True;			} else {				setLanguageType(panel, False);				WMSetButtonText(panel->togMulti, "Auto");				panel->MultiByteText = False;			}		}	} else {		char *locale;		locale = setlocale(LC_CTYPE, NULL);		if(locale != NULL		&& (strncmp(locale, "ja", 2) == 0		|| strncmp(locale, "zh", 2) == 0		|| strncmp(locale, "ko", 2) == 0)) {			setLanguageType(panel, True);			WMSetButtonText(panel->togMulti, "Auto");			printf("auto multi\n");			panel->MultiByteText = True;		} else {			setLanguageType(panel, False);			WMSetButtonText(panel->togMulti, "Auto");			panel->MultiByteText = False;		}	}	/* gotta check for Antialiasing AFTER MultiByte incase the use has both	 * to maintain behavior in Current Fonts set or i could add another if	 * statement to setLanguageType =) */	//if (WMHasAntialiasingSupport(scr)) {		WMMapWidget(panel->togAA);		if(GetBoolForKey("AntialiasedText")){		WMSetButtonSelected(panel->togAA, True);		panel->AntialiasedText = True;		} else {		WMSetButtonSelected(panel->togAA, False);		panel->AntialiasedText = False;		}	//} else {	//	WMUnmapWidget(panel->togAA);	//}    paintPreviewBox(panel, EVERYTHING);}