int i;
static Dimension oldWidth, oldHeight;
static VariantClass oldVariant;
- static int oldDual = -1;
+ static int oldDual = -1, oldMono = -1;
if(!formWidget) return;
// [HGM] pieces: tailor piece bitmaps to needs of specific variant
// (only for xpm)
- if(gameInfo.variant == oldVariant) return; // and only if variant changed
+ if(gameInfo.variant != oldVariant) { // and only if variant changed
if(useImages) {
for(i=0; i<4; i++) {
}
}
}
+ }
#if HAVE_LIBXPM
+ if(appData.monoMode == oldMono)
CreateAnimVars();
#endif
+ oldMono = appData.monoMode;
}
#endif
Widget CreateMenuBar(mb)
Menu *mb;
{
- int j;
+ int j, nChar=0, nr=0, boardWidth = lineGap + BOARD_WIDTH * (squareSize + lineGap);
Widget anchor, menuBar;
Arg args[16];
char menuName[MSG_SIZ];
+ while(mb[nr].name != NULL) nChar += strlen(_(mb[nr++].name)) + 3;
+
j = 0;
XtSetArg(args[j], XtNorientation, XtorientHorizontal); j++;
XtSetArg(args[j], XtNvSpace, 0); j++;
}
else {
XtSetArg(args[j], XtNlabel, XtNewString(_(mb->name))); j++;
+ XtSetArg(args[j], XtNwidth, (boardWidth-40)*(strlen(_(mb->name)) + 3)/nChar); j++;
}
XtSetArg(args[j], XtNborderWidth, 0); j++;