Support for XML resource files works quite well now. .xuni is not even read anymore...
commit71428fe52a1448dcb009e109b8ccce8c42705891
authordwk <dwk@b022f027-f587-4676-bc72-f0cf7b603704>
Fri, 2 Nov 2007 07:32:40 +0000 (2 07:32 +0000)
committerdwk <dwk@b022f027-f587-4676-bc72-f0cf7b603704>
Fri, 2 Nov 2007 07:32:40 +0000 (2 07:32 +0000)
tree018f45edaeabde938e88717e67a21a1b62d24bfe
parenta4f496a12be14fd98ad59654ec35b89eea068c7c
Support for XML resource files works quite well now. .xuni is not even read anymore -- all of xuni's settings come from xuni.xml. Removed most of the code in settings.c -- which is now over 400 lines shorter! resource.c underwent very extensive modifications. The data structure no longer always contains at least one element; lookup_*() functions to find data in the resource_t tree were added and used; attributes are now handled; handle_text() was modularized and some of its code used in other functions as well.

Currently, the data from xuni.xml is printed to standard output when it is freed.

main(), rather than main_loop(), is now responsible for calling the init_func_t functions. This is so that main_loop() does not have to be passed struct resource_t *settings.

The default_*() functions from settings.c are now in the source files that are in charge of that subsystem: default_font() became font.c::init_font(), default_smode() and theme and gui became graphics.c::init_*().

The resource_t settings (generated from xuni.xml) is now passed to the init_func_t functions.

Included stdlib.h in loop.c and string.h in options.c, as should be required, as those source files use functions from the specified headers, although no warning is generated without them.

Added -Wno-unused-parameter to the compiler options to disable the unused parameter warnings, as they were getting too numerous and annoying.

The file depend was rebuilt, and it needed to be.
21 files changed:
src/Makefile
src/depend
src/font.c
src/font.h
src/game.c
src/game.h
src/graphics.c
src/graphics.h
src/loop.c
src/loop.h
src/menu.c
src/menu.h
src/options.c
src/options.h
src/resource.c
src/resource.h
src/settings.c
src/settings.h
src/xuni.c
src/xuni.h
xuni.xml