GtkV2 client theme support.
I've just committed a change to the GTK2 client so it now supports different
themes. There are only 2 now (Standard & Black), but should be easy to make
more. Various notes:
- The various hard coded values in the client are gone, and are now in the
themes (fonts and in some places colors). This means that if you don't install
the themes, you'll have a plainer looking client. If you do a 'make install',
it will install the themes where the client expects to find them. Your theme
preference will be stored in the gdefaults2 file, and can be changed in the
config window. If no default is specified, it defaults to the Standard theme.
- The 'Standard' theme is a theme that I wrote that tries to match the previous
hardcode values (red for cursed inventory items, matching colors for text, etc).
In addition to the Standard & Black themes, there is also a 'None' theme,
which basically means don't use any special theme - just get all values from
system wide theme. Effect on this is you won't see any colored text in the text
panes, the inventories won't differ based on magic/cursed/etc status, and stat
bars will use system default color for progressbars.
- The client does support switching between themes on the fly - no restart
needed. Even things like style of the text messages will get updated. However,
if you go to the None theme, and then go to another theme, the text messages
will still all appear in the default color - this is because when switching to
the None theme, it deletes all the color text tags, where as when switching
between actual themes, it updates the text tags with new values.
- One case where the new system is slightly lacking compared to old is compound
status on inventory items - old code had special logic for cursed & magic items
(drawn in dark navy). Given there are 5 different status of items right now, I
(Continue reading)