/*
* xoptions.c -- Move list window, part of X front end for XBoard
*
- * Copyright 2000, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+ * Copyright 2000, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc.
* ------------------------------------------------------------------------
*
* GNU XBoard is free software: you can redistribute it and/or modify
}
void
-LoadListBox (Option *opt, char *emptyText)
+LoadListBox (Option *opt, char *emptyText, int n1, int n2)
{
static char *dummyList[2];
dummyList[0] = emptyText; // empty listboxes tend to crash X, so display user-supplied warning string instead
void
HighlightText (Option *opt, int start, int end, Boolean on)
{
+ if(on)
+ XawTextSetSelection( opt->handle, start, end ); // for lack of a better method, use selection for highighting
+ else
+ XawTextSetSelection( opt->handle, 0, 0 );
}
void
if(list[0] == NULL) return NULL; // avoid empty menus, as they cause crash
menu = XtCreatePopupShell(opt->name, simpleMenuWidgetClass, parent, NULL, 0);
- for (i=0; 1; i++)
+ for (i=0; 1; i++)
{
char *msg = fromList ? list[i] : mb[i].string;
if(!msg) break;
};
void
-AddHandler (Option *opt, int nr)
+AddHandler (Option *opt, DialogClass dlg, int nr)
{
XtOverrideTranslations(opt->handle, XtParseTranslationTable(translationTable[nr]));
}
SubstructureRedirectMask | SubstructureNotifyMask,
&xev);
- XFlush(xDisplay);
+ XFlush(xDisplay);
XSync(xDisplay, False);
}
currentOption = dialogOptions[dlg=data>>16]; data &= 0xFFFF;
oldSh = shells[dlg]; shells[dlg] = sh; // bow to reality
if (data == 30000) { // cancel
- PopDown(dlg);
+ PopDown(dlg);
} else
if (data == 30001) { // save buttons imply OK
if(GenericReadout(currentOption, -1)) PopDown(dlg); // calls OK-proc after full readout, but no popdown if it returns false
XtSetArg(args[j], XtNdisplayCaret, False); j++;
XtSetArg(args[j], XtNresizable, True); j++;
XtSetArg(args[j], XtNinsertPosition, 9999); j++;
- XtSetArg(args[j], XtNstring, option[i].type==Spin || option[i].type==Fractional ? def :
+ XtSetArg(args[j], XtNstring, option[i].type==Spin || option[i].type==Fractional ? def :
engineDlg ? option[i].textValue : *(char**)option[i].target); j++;
edit = last;
option[i].handle = (void*)
}
void
-FileNamePopUpGTK(char *label, char *def, char *filter, FileProc proc, Boolean pathFlag, char *openMode, char **openName, FILE **openFP)
+FileNamePopUpWrapper (char *label, char *def, char *filter, FileProc proc, Boolean pathFlag, char *openMode, char **openName, FILE **openFP)
{
Browse(BoardWindow, label, (def[0] ? def : NULL), filter, False, openMode, openName, openFP);
}
-