xboard-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XBoard-devel] XBoard dialogs


From: h.g. muller
Subject: Re: [XBoard-devel] XBoard dialogs
Date: Thu, 24 Feb 2011 12:35:09 +0100

Now that it has become easy to make XBoard menu dialogs,
and trivial to add or relocate items, I have been taken a close look
at how the options occur in the menus in both XBoard and WinBoard.
Until now XBoard was limited to simple Boolean options, that appeared
directly in the main Option menu. Those only meaningful in ICS mode
were then grayed out in other modes.

In WinBoard these optios have been distributed mainly over two dialogs:
Options -> General and Options -> ICS, where greying out of the item
to summon up the latter takes care of the entire group. Being a true
dialog rather than a menu, it can of caurse also contain many non-Boolean
options (which indeed it does). The General Options dialog only contans
Booleans, though.

I have been developing XBoard in the same direction now: I took all
ICS-related options and put them in a separate dialog. (This removes
a lot of code from xboard.c, for checkmarking and setting the options,
as this was separately coded for each item, rather than in a loop.)
The "general" Boolean options are still left in the main Option menu,
though. I want to raise a few questions about this:

1) Does it make sense to have  separate "General Options" dialog,
as WB has, or can we leave the Boolean options simply in the main
Option menu where they are now?
2) I encountered an item "Auto-Raise Board". For WinBoard this is
in the General Options, rather than the ICS Options dialog. But it
seems to me this is an ICS option; it was only referenced when a
board from a new game from the ICS comes in. Why was it left
in the General Options in WB? Were there plans to also use it in
other modes (e.g. when an engine moves)? Or is this just an oversight?
3) Together with all the color settings for colorization of ICS text,
there are a lot of ICS options in the latest XBoard, and the generic
popup routine does not pack them very efficiently. (I already start
to regret I took the multi-column formatting out of the Engine Settings
dialog when I cloned it to make GenericPopUp.) Should we split
it into two dialogs (e.g. add a new item "ICS Colorization" in the main
option menu), should I go back to multi-column format, or is it
still bearable as it is?
4) Would it make sense to try to reduce the amount of code in
xoptions.c by re-implementing already existing dialogs through the
generic popup (Time Control, Adjudications, Common Engine Options,
New-Variant dialog)? For some this would be quite easy, although
they probably will not be going to look any more pretty because of it.
Time Control is the trickiest, as it now involves altering functions
of existing text edits (and thus accompanying text)  depending on
which TC mode (classical, incremental) you choose (as an alternative
for greying out the unneeded ones). This might not be worth it.
But Adjudications, Common Engine and New Variant could be
quite ease (perhaps with a minor enhancement of the GenericPopUp).
The idea is that porting to other platforms (Mac) or widget sets (GTK)
might become easier if there is less code to port.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]