[All of these changes were wrought on the Dell.]
commit31f6147d74258242469a55a8e2e6480c4bd26faf
authordwk <dwk@b022f027-f587-4676-bc72-f0cf7b603704>
Mon, 30 Jul 2007 22:45:04 +0000 (30 22:45 +0000)
committerdwk <dwk@b022f027-f587-4676-bc72-f0cf7b603704>
Mon, 30 Jul 2007 22:45:04 +0000 (30 22:45 +0000)
tree975f06960426a08c5bdcf200213c2a2ba67d239f
parent493f7944af6b92df712f2edeeef45e8888e91e22
[All of these changes were wrought on the Dell.]

Nearly completely wrote the settings-file loading. It is able to
determine which section a line belongs to, check for correct variables,
and determine the data type of a value (null, int, double, char, string,
string_t, etc). Error reporting always indicates which line number
messed it up, but the messages are often terse.

Implemented a varargs log_printf() (which writes to xuni.log as well as
stderr), to make error reporting from settings.c easier.

The default settings file can be written out again, but so far that's
the only settings-file-writing code.

Removed the text-blitting code from paint_box(). It's now much cleaner
and does what its name suggests. The text blitting has been moved to
paint_centred_text() and paint_textbox_text(). As a result of this,
textboxes now display the right size cursor (and not just always 16
pixels tall); they display a cursor even when there is no text in the
textbox; and they only display the cursor if the textbox is selected.

Also, pressing <enter> inside a textbox unselects it. (It's the same as
pressing escape right now.)

menuhover images are now being loaded from gui/menuhover. This needs to
change, or the themes need to go into a separate folder, otherwise you
can't have a theme called menuhover.

"Load existing game" was changed to "Load saved game".

Much effort was put into debugging the app-active bugs. So far only
tests have been completed on the Dell, but it seems very random. (This
is, however, SDL 1.2.8.) It's been fixed by checking the active status
every time an event is received. This is slow, however, and hopefully
can be avoided in the future.

After another annoying buffer-overrun bug which was fixed by make clean
; make run, the Makefiles were updated and a gccmm target added (plus
automm.bat and automm.sh), which will assist in keeping the Makefiles
updated. I should really look into automake.
Makefile
Makewin
game.c
graphics.c
graphics.h
loop.c
menu.c
options.c
settings.c
xuni.c
xuni.h