Due to the good work of Joshua we now have SVG images available that can be directly used with XBoard, for some 50 piece themes. We also have dozens of diferent PNG images with textures for board squares, as well as many whole-board images. The issue is how to distribute these.
I have made some preliminary attempts to divide up the available material into packages. I posted some tentative designs for how such packages could look at http://hgm.nubati.net/xb_pieces.tar.gz http://hgm.nubati.net/xb_textures.tar.gz http://hgm.nubati.net/xb_xiangqi.tar.gz These packages come with a MakeFile, which has install and uninstall targets for placing the files in the proper location in XBoard's private datadir tree (like /usr/local/share/games/xboard/themes/textures), as well as a 'dist' target to pack the files in a tar ball for distribution. Piece themes are placed in ~~/themes/<theme_name>/*.svg, textures in ~~/themes/textures/*.png or ~~/themes/textures/<type>/*png, and settings files in /themes/conf, much like the pieces and textures included with the standard install go. The source files for these theme packages have been added as a new branch 'themes' to the XBoard git repository (currently only at http://winboard.nl ). The xb_pieces package contains the more conventional piece designs like Alpha and Meridia. The themes branch currently holds two other packages, xb_pieces_fancy and xb_pieces_exotic, with progressively more unconventional designs. The file chooser used when browsing for a new theme only shows some 20 files/folders, which would require a lot of scrolling fro someone who installs all themes. So it might provide easier access when we introduce an extra level of organization, ~~/themes/<theme_type>/<theme_name>/*.svg, where theme_type could even sub-divide a package. (E.g. the xb_pieces package could contain sub-folders 'fat-pawn' and 'skinny-pawn', while xb_exotic could have 'cartoons' and 'abstract'.) This would minimize scrolling at the expense of extra double-clicking to eter a sub-directory during piece-theme selection. One could also argue that the preview facilities XBoard now offers are good enough to dump all themes into one folder, as scrolling is not such an annoyance when you do not have to leave the folder and return (thereby losing the old scroll position). The main issue is this, however: if we are going to host such packages on the GNU servers, does it still make sense to package the traditional Xiangqi and Shogi themes with the XBoard standard install? Or would it be better to have packages xb_xiangqi and xb_shogi amongst the theme packages, which then could be installed only by people who actually want to play these gaes in traditional oriental (kanji) represent- ation, rather than with the 'default' (western pictogram) theme? The xb_xiangqi package I made essentially contains the same stuff as we now distribute with the standard XBoard install. (We added one new whole-board image using transparency.) If we would have more dedicated Xiangqi piece designs they could go in that package too, as we would do for xb_shogi (where we also have two Chu-Shogi designs, as well as Tori-Shogi and Wa-Shogi pieces). Another question is how we should direct people to the download for piece and board themes. Should there be a new 'download piece themes' menu entry in the Help menu that directs them to a download page? Or should we make a button or link for that in the Board dialog? Finally there is the issue of whether we should use the new -installTheme command-line option in the install script of the theme packages to automatically create entries for the installed stuff in the 'Themes' listbox of the View->Board dialog. The pieces and textures packages contain 'half-themes' rather than themes, and a lot of them, which would flood the listbox (which can hold only 15 themes without scrolling). So the current trial packages do not crate such entries. For the xb_xiangqi package I have it create a single entry for the 'recommended' traditional Xiangqi theme, but this is truly a complete theme, as it sets both board and pieces. What would be the best policy for automatic creation of Theme entries in the listbox? Would it be desirable to implement a way of automatically creating collapsible groups in this listbox, so that theme packages could create such groups of entries (thus reducing demand on precious listbox space, and removing the reluctance to create entries), or add them to an existing group?
