From: "Gerard Lim" <rutabega20 at>
>ARGHHHHHHHHH... f***ing netscape crashed before I could hit send....twice

See previous response. :)

>However such a thing doesn't exist for COW.  The keymap and options are 
>'hardcoded', as it were, in two files:  input.c and defaults.c (correct me 
>if I'm wrong).

Not necessarily.  Some of the defaults exist elsewhere, I think like even in cowmain.c and so on.  But 90% of them are in defaults.c I believe.

The whole architecture of the client is kind of this giant big ball of mud and things just kept getting pasted on over time.

>The bottom line is I don't see an easy way of using code in the parent
>project to make setting and getting labels and values for the widgets
>easy for us.

Well theoretically one would clean up the client.  Put all the defaults gathering into defaults.c and then throw in comment tags using XML that could be parsed to accomplish this.

>Anyway, my original plan was to completely separate the GUI into two
>layers.  The GUI would do as little logic as possible---only perhaps
>to retrieve or set values in the widgets and formatting these values
>for the appropriate functions.  Advantages I think are that we can
>separate the work among us by agreeing on this interface.  Downside is
>we would probably have to redefine default keymaps and options since
>these aren't available in a header file somewhere.

Seperating the presentation layer from the logic layer is a good idea.  You could then also build a presentation layer using a web page without having to change the logic.

I've been considering building a web page to act as a front end.  I haven't gotten very far with this idea, yet, but I did build a simple web service that could be invoked using SOAP and return the Metaserver data:

Eventually here I'm going to go back through Netrek2k/xp and clean it up, and one thing I'll probably do is verify the settings are named the same as with COW.  That should help.

I need to schedule my life better, I need to finish my practical for GIAC this month, but maybe in January.