]> git.xonotic.org Git - xonotic/netradiant.git/commitdiff
cleanup: move old stuff to oldstuff/
authorThomas Debesse <dev@illwieckz.net>
Tue, 23 Jul 2019 04:28:16 +0000 (06:28 +0200)
committerThomas Debesse <dev@illwieckz.net>
Wed, 7 Aug 2019 23:45:36 +0000 (01:45 +0200)
also move in the old COMPILING file that was deleted in 8ac6cfa

We may decide later what to do with them

43 files changed:
.patchsets [deleted file]
CONTRIBUTORS [deleted file]
ChangeLog [deleted file]
ChangeLog.idsoftware [deleted file]
DoxyConfig [deleted file]
Doxyfile [deleted file]
branch-manager [deleted file]
conftest.cpp [deleted file]
cross-Makefile.conf [deleted file]
generic_cpp.py [deleted file]
generic_h.py [deleted file]
generic_module.py [deleted file]
install-dlls-fedora.sh [deleted file]
install-dlls.sh [deleted file]
install-dylibs.sh [deleted file]
merge-from-zerowing.sh [deleted file]
mingw-Makefile.conf [deleted file]
mingw-Makefile.inc [deleted file]
mingw-fedora-Makefile.conf [deleted file]
mingw-radiantdeps-Makefile.inc [deleted file]
oldstuff/.patchsets [new file with mode: 0644]
oldstuff/COMPILING [new file with mode: 0644]
oldstuff/CONTRIBUTORS [new file with mode: 0644]
oldstuff/ChangeLog [new file with mode: 0644]
oldstuff/ChangeLog.idsoftware [new file with mode: 0644]
oldstuff/DoxyConfig [new file with mode: 0644]
oldstuff/Doxyfile [new file with mode: 0644]
oldstuff/branch-manager [new file with mode: 0755]
oldstuff/conftest.cpp [new file with mode: 0644]
oldstuff/cross-Makefile.conf [new file with mode: 0644]
oldstuff/generic_cpp.py [new file with mode: 0644]
oldstuff/generic_h.py [new file with mode: 0644]
oldstuff/generic_module.py [new file with mode: 0644]
oldstuff/install-dlls-fedora.sh [new file with mode: 0755]
oldstuff/install-dlls.sh [new file with mode: 0755]
oldstuff/install-dylibs.sh [new file with mode: 0755]
oldstuff/merge-from-zerowing.sh [new file with mode: 0755]
oldstuff/mingw-Makefile.conf [new file with mode: 0644]
oldstuff/mingw-Makefile.inc [new file with mode: 0644]
oldstuff/mingw-fedora-Makefile.conf [new file with mode: 0644]
oldstuff/mingw-radiantdeps-Makefile.inc [new file with mode: 0644]
oldstuff/uncrustify.cfg [new file with mode: 0644]
uncrustify.cfg [deleted file]

diff --git a/.patchsets b/.patchsets
deleted file mode 100644 (file)
index cebd1b5..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-master = https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/branches/1.5
-revisions_applied = 1-327
-
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
deleted file mode 100644 (file)
index cee478d..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-GtkRadiant past contributors and credits
-last update: 01/15/2001
-
-GtkRadiant 1.5 development:
--------
-Thomas "namespace" Nitschke spam@codecreator.net
-Stefan "Shaderman" Greven
-"Topsun"
-SmallPileofGibs spog@planetquake.com
-"Tr3b"
-
-Small contributions and improvements for 1.5
---------
-Eric "eb" Barth
-
-Loki
-----
-Leonardo Zide leo@lokigames.com
-Mike Phillips (Loki QA)
-Bernd Kreimeier (overall coordination)
-
-QER.com
--------
-TTimo timo@idsoftware.com
-^Fishman (Pablo Zurita) fish@gamedesign.net
-RR2DO2 rr2do2@q3f.com
-SmallPileofGibs spog@planetquake.com
-
-Curry plugin
-------------
-Mike "mickey" Jackman
-Tim "Maj" Rennie
-
-PrtView plugin, various bug fixes and q3map guru
-------------------------------------------------
-Geoffrey DeWan
-
-Gensurf plugin
---------------
-David Hyde
-
-PicoModel
----------
-seaw0lf with assist by ydnar
-
-Q3Map2
-------
-Randy 'ydnar' Reddig
-
-Updated shader files, textures, entities.def, keyboard shortcut list
-overall testing and feedback
-----------------------------
-Jean-Francois "Eutectic" Groleau
-
-Improvements and bug fixing
----------------------------
-Jan Paul "MrElusive" van Waveren
-Robert Duffy
-Forest "LordHavoc" Wroncy-Hale
-Nurail
-AcidDeath
-Chronos
-Michael Schlueter
-Jamie Wilkinson
-Robert "Tr3B" Beckebans
-
-Web
----
-Dave "Bargle" Koenig
-Jason "Wolfen" Spencer
-Shawn "EvilTypeGuy" Walker
-
-Thanks to John Hutton, AstroCreep and W2k for web help
-
-FAQ
----
-Equim and Wex
-
-
-Testing/Feedback
----
-Black_Dog, d0nkey, Fjoggis, Jago, jetscreamer, gibbie, Godmil, Gom Jabbar,
-Mindlink, mslaf, necros, Promit, Ravo, RPG, scampie, sock, sponge, thiste,
-voodoochopsticks, Zwiffle
-
-
-Misc
-----
-Thanks to everyone on the beta mailing list and
-irc.telefragged.com #qeradiant for testing and feedback.
-Updated icons by AstroCreep!
-Bitch-slapping by RaYGunn!
-Last minute bugs by SPoG! (SPoG--)
diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644 (file)
index 40bd4d0..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,279 +0,0 @@
-2009-04-26 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: minimap generation for Nexuiz
-       * q3map2: better progress indicators
-
-2009-04-23 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: misc_model spawnflag 64 turns off normal smoothing
-       * q3map2: improved output of vis
-
-2009-04-21 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: more MAX_MAP_VISIBILITY
-
-2009-04-15 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: new toolbar bitmaps by sev
-
-2009-04-13 Rudolf Polzer divVerent(at)alientrap.org
-       * all: fix some MSVC compile errors
-
-2009-04-10 Rudolf Polzer divVerent(at)alientrap.org
-       * all: add WarsowPack
-       * q3map2: add alias _shadeangle to _smoothnormals
-       * q3map2: fix crash in reading RBSP files
-
-2009-04-09 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: fix font size handling
-
-2009-04-08 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: force disable composition on Vista (should fix "white 3D window" issues)
-
-2009-04-05 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: fix ViewSide command (no longer does the same as ViewTop)
-       * q3map2: generate origin brushes when decompiling
-       * q3map2: allow more portals per leaf, to help with -bsp -deep
-
-2009-04-04 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: -bsp -deep also including detail brushes into the BSP tree at lowest priority, should give higher fps while increasing compile time and BSP size
-       * q3map2: fix crash when decompiling to .map
-
-2009-04-03 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: -vis -mergeportals speeding up vis a lot, while not making vis much worse
-
-2009-04-02 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: portable radiant: when a subdir "settings" exists where radiant.exe resides, config is stored there so you can take it with you on a USB stick
-
-2009-04-01 Rudolf Polzer divVerent(at)alientrap.org
-       * all: compile fix on Win64
-
-2009-03-31 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: merged feature -bsp -altsplit (27), alternate way to weight BSP splits, should give higher fps in original Q3 engine (needs testing)
-       * q3map2: also compare shaders when comparing surfaces for sorting (27)
-       * q3map2: misc_model spawnflag 32 copies vertex alpha from color, for terrain blending on models (27)
-
-2009-03-29 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: _ls key shorthand for _lighmapscale (VorteX)
-       * q3map2: -samplescale switch (VorteX)
-       * q3map2: in dq and prophecy games, func_wall casts shadows by default (VorteX)
-       * q3map2: some more prints (VorteX)
-       * q3map2: q3map_floodlight <red> <green> <blue> <distance> <brightness> <power> shader keyword (VorteX)
-       * q3map2: more MAX_TW_VERTS (VorteX)
-       * q3map2: _patchMeta 1 entity keyword (VorteX)
-       * q3map2: q3map_deprecateShader <newershader> shader keyword (VorteX)
-       * q3map2: tangentspace deluxemaps (-deluxemode 1) (VorteX)
-       * q3map2: _smoothnormals entity key to easier set shadeangle (VorteX)
-       * q3map2: -keeplights switch in -light (VorteX)
-       * q3map2: spawnflag 32 on light: unnormalized color (VorteX)
-       * q3map2: spawnflag 64 on light: distance falloff (VorteX)
-       * q3map2: option -gridscale, -gridambientscale (VorteX)
-
-2009-03-27 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: fix a crash on "regroup entities"
-
-2009-03-25 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: editable keyboard shortcuts
-
-2009-03-23 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: avoid a crash if a surface is huge
-
-2009-03-20 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: command line option -celshader
-       * q3map2: let Q_mkdir create all parent directories too
-       * q3map2: fix some crashes
-
-2009-03-16 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: command line option -fs_homebase
-
-2009-03-13 Rudolf Polzer divVerent(at)alientrap.org
-       * all: support objs without material groups
-
-2009-03-11 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: detect being installed inside Q2World
-
-2009-03-08 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: indicate the direction of the clip plane in the 2D view
-
-2009-03-11 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: detect being installed inside Nexuiz
-
-2009-03-09 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: OS X compile fixes
-
-2009-03-04 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: -global-Key Value and -gamename.game-Key Value options to set
-         config settings from the command line
-
-2009-02-25 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: fix two bugs in tjunction fixing
-       * q3map2: -lightmapdir option
-       * q3map2: eliminate MAX_MAP_PLANES limit
-
-2009-02-23 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: -scale -tex ("no texture lock while scaling")
-
-2009-02-15 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: non-uniform -scale x y z
-
-2009-02-10 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: remove LOTS of limits
-
-2009-02-08 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: put the command line parameters into a worldspawn key
-         _q3map2_cmdline; currently not yet supported for -onlyents
-
-2009-02-07 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: use gtk default font instead of defined ones for linux/windows
-         which could happen to be not installed (merged from uforadiant)
-
-2009-02-06 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: OS X icon by airscout
-
-2009-01-15 Rudolf Polzer divVerent(at)alientrap.org
-       * all: more fixes for OS X
-
-2009-01-14 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: use %f format for angles, prevents weird looking angles
-
-2009-01-09 Rudolf Polzer divVerent(at)alientrap.org
-       * all: lots of fixes for compiling on OS X
-
-2009-01-07 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: handle ALL key binds properly using GDK methods
-
-2009-01-03 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: fix the translation of entities used by mirroring or scaling
-
-2009-01-02 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: command "regroup entities", allows moving brushes in/out of
-         entities
-
-2009-01-01 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: "clone selection" no longer changes targetnames by default.
-         Hold shift while pressing space to do change them as before.
-       * all: handle "origin" keys for brush entities (more consistency, should
-         break no maps)
-
-2008-12-10 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: properly handle the [ and ] keys on german layout
-       * q3map2: fix dotProduct2scale to match the documentation
-
-2008-11-28 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: -dirty: don't treat skybox surfaces as solid for dirtmapping;
-         prevents Quake 2-ish "dark near skybox" effect.
-
-2008-11-21 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: applied win32 font and build fix by ingar
-
-2008-11-20 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: extend some more limits but just by a bit this time to not
-         let memory usage rise too high
-       * radiant: fix finding the .mtl file for .obj models
-
-2008-11-18 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: get rid of the MAX_MAP_DRAW_VERTS limit (the array already was
-         dynamic anyway); allows creating BSPs of over 400 MB in size ;)
-
-2008-11-10 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: draw targeting arrows also for target2, etc. keys even in Q3
-         map mode; this is good for Nexuiz which now supports target, target2,
-         target3 and target4.
-
-2008-11-07 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: fix buffer overruns because of using the realpath function
-         with an insufficient buffer; there might be more of these in the code
-         base
-
-2008-10-27 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: -convert -format ase -shadersasbitmap convert mode that writes
-         the shader names in the *BITMAP field in the .ase. That way, the .ase
-         files work without changing as mapobjects.
-
-2008-10-12 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: fix the deluxemap contribution from ambient lighting. minLight
-         is still broken with deluxemapping. If you must use minLight, combine it
-         with 1/2 or 1/4 of its amount in ambient.
-
-2008-09-30 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: fix deluxemap when lit from the wrong side as good as possible
-         by ignoring the deluxemap contribution. Now the invariant "deluxemap
-         vector points away from the surface" should hold. Avoids sudden black
-         spots when deluxemapping.
-
-2008-09-26 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: turn the Urban Terror vis nudge and triangle check into options
-         -extravisnudge and -trianglecheck, as they break some Nexuiz maps.
-         Evaluate the usefulness of these options later.
-       * q3map2: make sure the intermediate .bsp when bouncing always is loadable
-         into the game (by unparsing the entities, so if gridsize got modified,
-         that change gets written too)
-
-2008-09-23 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: print a warning if the specified samplesize cannot be used with
-         the current lightmap size
-
-2008-09-22 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: add dotProduct2scale alphamod
-       * q3map2: add -minsamplesize command line option to override lightmapscale
-         specified in map files
-
-2008-09-19 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: add a "Strafe Mode" option
-       * radiant: ctrl-tab now focuses all XYZ views in the three-part view (as
-         that is what the user is likely to want there)
-       * radiant: make rotate/scale dialogs non-modal
-
-2008-09-18 Rudolf Polzer divVerent(at)alientrap.org
-       * radiant: handle missing anisotropy extension; fixes display bug on
-         Windows XP software renderer
-       * radiant: make logging kick in earlier
-       * radiant: add svn release to the version number
-
-2008-09-15 Rudolf Polzer divVerent(at)alientrap.org
-       * all: added a Makefile to build GtkRadiant; this replaces scons and
-         python install.py
-       * all: got rid of libmhash dependency, using mdfour.c from DarkPlaces
-         instead
-       * q2data: remove RSA security copyrighted md4.c, using mdfour.c from DP
-         instead as a drop-in replacement
-       * all: get rid of version.h and aboutmsg.h, instead set the version in the
-         Makefile
-       * all: support cross compiling using mingw32
-
-2008-09-13 Rudolf Polzer divVerent(at)alientrap.org
-       * q3map2: update to ZeroRadiant's q3map2
-       * q3map2: added lightmap exposure feature: -exposure 4.2 (Urban Terror)
-       * q3map2: check whether a lightmap sample is actually in the triangle
-         (Urban Terror)
-       * q3map2: nudge light sample origin by 1qu away from planes (Urban Terror)
-       * q3map2: floodlight: usage is "_floodlight" "red green blue distance
-         intensity", default "240 240 255 1024 128"; works somewhat similar to
-         dirtmapping (Urban Terror); uses a switch -lowquality
-       * q3map2: added -debugnormals feature (Urban Terror)
-       * q3map2: fix -convert -format map decompiling (note: outputs map in
-         "Alternate Texture Projection" format); no longer messes up texcoords
-       * q3map2: added -game nexuiz to use good default paths for Nexuiz
-       * q3map2: added -game quakelive to enable in-game adverts
-       * q3map2: fix incorrect plane snapping often causing holes in terrain
-       * q3map2: spawnflags on misc_model: 8 extrudes with original normals, 16
-         extrudes with up/down normals (terrain), default: extrudes with axial
-         normals (like before)
-       * q3map2: fix obvious (and reported, and patch sent in) bug when importing
-         models when the normals were pointing in a 45 degrees direction
-       * q3map2: when importing models, allow "surfaceparms structural". This
-         also turns off any plane snapping, as it is intended for caulk brushes
-         inside a model
-       * q3map2: added parameters -ne to set normal epsilon, and -de to set
-         distance epsilon (to customize plane snapping)
-       * q3map2: fix q3map_lightRGB (Urban Terror)
-       * q3map2: add a build script to cross compile q3map2 to Win32
-       * radiant: when displaying normals on a model, scale them to 8 unit size
-         on the output (so "modelscale" can be used without LOTS of lines on the
-         screen)
-       * radiant: also support "killtarget" as target key for drawing the
-         targeting lines
-       * radiant: "expand selection to whole entities" now also selects the
-         entity ITSELF; result: Ctrl-Alt-E Space makes a NEW entity now, instead of
-         just duplicating the brush (old behaviour caused bugs in maps with copied
-         func_ladders)
-       * picomodel: support .obj format as exported by Blender, with a .mtl file
-         defining the shader names for each material; to export using Blender,
-         enable "Materials" and "Material Groups" in the .obj export dialog
-       * all: bump version to 1.5.0-div0
diff --git a/ChangeLog.idsoftware b/ChangeLog.idsoftware
deleted file mode 100644 (file)
index 47deae2..0000000
+++ /dev/null
@@ -1,8216 +0,0 @@
-This is the changelog for developers, != changelog for the end user 
-that we distribute with the binaries. (see changelog)
-
-28/06/2007 (dunkfordyce@gmail.com)
-- fixed mnemonics for MRU list
-- fixed find functionality
-- added option to always use caulk texture for new brushes
-- fixed(?) a small bug in install.py that was trying to copy msvc files on linux
-
-28/06/2007
-- Added material-support to brushexport-plugin (Shaderman)
-
-26/04/2007
-- Disabled auto-search for texbrowser and entityinspector even when the option
-  is turned on in the gtkrc
-
-26/04/2007
-- Fixed q3map2 lightbounce bug (by Unknown)
-
-26/04/2007
-- Fixed another texcompression bug
-
-25/04/2007
-- Fixed texcompression beeing disabled after each restart
-- Fixed gtk-searchpopup in treeviews
-
-15/04/2007
-namespace
-- Fixed brushexport2 output float-format (Shaderman)
-
-27/03/2007
-namespace
-- Fix: Added missing xml-writer pop-calls
-- Ported mapxml plugin to Doom3
-- mapxml now exports brushes with its vertices
-
-19/03/2007
-namespace
-- Fix: Selection is now deleted when creating a patch out of it (aumüller / namespace)
-
-08/03/2007
-namespace
-- Win32 compile fix (woekele)
-
-07/03/2007
-namespace
-- Updated UFA:Plugin (mattn2)
-
-04/03/2007
-namespace
-- Reverted Q3 translucency fix since it randomly made brushes
-  fully transparent in Doom3 mode.
-
-04/03/2007
-namespace
-- Final update for installerfiles (Shaderman / namespace)
-- Removed installer.py validation checks since they are incompatible with Vista
-- Updated msiquery module to python 2.5
-- Added msiquery module for python 2.5
-
-03/03/2007
-namespace
-(THIS IS A TRANSITIONAL REVISION, DO NOT USE, WAIT FOR UPDATED DEPS)
-- Fixed weird msvcrt bugs caused by dbghelp.dll
-- Activated new radiant icon on Linux (Topsun)
-- First update for installerfiles (Shaderman)
-- New MODT for q3map2 :)
-- tiny changes
-
-28/02/2007
-namespace
-- Radiant is now Vista compatible (Aero must be disabled)
-- Updated all radiant dependencies (gtk is now 2-2.10)
-  New dependency packages can be found here
-http://zerowing.idsoftware.com/files/radiant/developer/1.5/gtkradiant-1.5-dependencies-1.0.zip
-  or here
-http://www.codecreator.net/radiant/gtkradiant-1.5-dependencies-1.0.zip
-- Removed Win32 filechooser
-   - Fixes crashes caused by utf-8 encoded filenames
-   - Fixes Vista "SaveAs"-Bug
-- Converted all projects to Visual Studio 2005
-- Codefixes for vc2k5 compiler
-- Removed old unused projectfiles for Visual Studio 6
-- Simplified dependency filestructure
-- Simplified install.py
-- Updated CONTRIBUTORS list
-
-26/01/2007
-namespace
-- SnapPlane reenabled by namespace because of multiple reports of
-  q3map2-crashes which were triggered by this patch.
-
-24/01/2007
-namespace
-- Added Undo/Redo-Toolbarbuttons (Shaderman)
-- Fixed Bug #1078 (sogined)
-
-18/01/2007
-namespace
-- Weird shiftvalues are now hidden to the user, shiftvalues will
-  stay in ]-shader_size;shader_size[ range for display.
-  For the sake of floatingpoint precision, it would be nice
-  to keep the internal values in that range too, but thats "nice to have".
-- Fixed missing librarypaths in ufoai-plugin
-  
-18/01/2007
-LordHavoc
-- disabled SnapPlane because it slightly corrupts collision brushes from
-  embedded model triangles
-
-17/01/2007
-namespace
-- Fixed "jumping" texcoords when switching to a shader with different size
-- (Todo) Toolbar: add button for refresh-models. (Shaderman)
-- Aniso fix (Shaderman)
-- Translucency fix (Shaderman)
-
-05/01/2007
-namespace
-- UFO:Alien Invasion Plugin (mattn2)
-- Fix: Filtering models in ET doesn't filter misc_gamemodels (Shaderman)
-
-25/12/2006
-namespace
- - Brushplugin Version 2.0, supports multiple collapse modes and a materialignore list (namespace)
- - Camera movement speed changes. Increase speed = SHIFT+KP_PLUS, decrease speed = SHIFT+KP_MINUS.
-   New option to link the strafe speed to camera movement speed (default: linked). (Shaderman)
- - Fixed bug in sample plugin (Shaderman)
- - Merry Christmas
-
-17/12/2006
-namespace
- - Radiant warzow-support (Topsun + Warzow-Mappers)
-
-15/12/2006
-namespace
- - Inverted bevel can be used with end caps (Topsun)
- - Removed needless .pdb files from win32 installer (Topsun)
- - Fixed .ase picomodel loader to load shaders again (Shaderman)
- - Removed translucent brushes fix because of wrong rendering behaviour on Linux
- - New cool(!) radiant icon by eb
-
-13/12/2006
-namespace
-- Added tremoulus-support to q3map2
-
-08/12/2006
-namespace
-- Entity names are now drawn for group entities in Doom3 and Quake 3 mode (namespace)
-- Fixed translucent brushes becoming invisible when selected (Shaderman)
-
-06/11/2006
-namespace
-- (TODO) Texture sizes sometimes vary wildly. New texture browser option: View -> Fixed Size.
-  Code parts taken from DarkRadiant. (Shaderman)
-- Added new texture browser option: View -> Hide Image Missing. (Shaderman)
-- Fixed new D3 lights don't have a light_radius key. (Shaderman)
-- Fixed hotkey collision (paste to camera/view menu). New View shortcut = ALT+W. (Shaderman)
-- Fixed .wad MMB 3d view texture selection bug. (Shaderman)
-
-04/11/2006
-namespace
-- Added warzow-support to q3map2
-
-12/10/2006
-namespace
-- Updated help menu web links (removed map-center.com, added ETB documentation) (Shaderman)
-- Added check for existing worldspawn if a new one should be added with the entity menu (Shaderman)
-- Fixed Entity -> Ungroup (Topsun)
-- Fixed hotkey collision ALT+M (filter botclip/Modify menu). New Modify shortcut = ALT+O (Shaderman)
-- Updated Window Layout images (Shaderman)
-- Fixed (TODO) XYWindow: save show-workzone option (Shaderman)
-- Fixed (TODO) Toolbar: add shortcut to tooltips for toolbar buttons (Shaderman)
-- Fixed (TODO) GUI: detachable submenus (Shaderman)
-
-09/10/2006
-namespace
-- Added option to toggle the camera window stats on/off (Shaderman)
-  (view --> show --> show stats)
-
-
-08/10/2006
-namespace
-- Fix for bug 1106 - .wad files don't get listed in the textures menu (Shaderman)
-  (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1106)
-- Added initial support for Prey (Shaderman)
-- Fixed entity inspector sliders to always show (Shaderman)
-- Added NOTES subsection to the entity inspector listing .def "editor_usage*" values (Shaderman)
-
-07/10/2006
-namespace
-- Added "select inside" and "select touching"
-  Both functions now work with multiple selectionbrushes, allowing complex
-  selection operations.
-- Added entries for the selectionfunctions in "Edit" and the main toolbar.
-
-06/10/2006
-namespace
-- Changed ETB not to show any texture if a tag search doesn't match anything (Shaderman)
-- Added View -> Filter -> "Invert filters/Reset filters" function (Shaderman)
-- Fixed (TODO) Textures: remove "shaders only" option for doom3 (Shaderman)
-- Fixed show shaders / shader only / shader info for doom3 and .wad file games (Shaderman)
-
-03/10/2006
-namespace
-- Fix for Bug 1113 (Topsun)
-  (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1113)
-
-03/10/2006
-namespace
-- Changed ETB tag toolbar to a notebook with tag/texture pages (Shaderman)
-- Added a context menu (add/delete/rename tag) to the ETB tag tree view (Shaderman)
-- Added new win32 installer HOWTO (Shaderman/Topsun)
-
-01/10/2006
-namespace
-- Added missing xml files for win32 installer
-
-30/09/2006
-namespace
-- Fixed Etb saving custom tags to global tagfile (Shaderman/namespace)
-- Fixed postbuild step for brushexport, shaderplug and sunplug (Shaderman)
-- Added installersupport for new files and plugins (Shaderman)
-
-30/09/2006
-namespace
-- Added LocalLcPath to plugin interface
-- Added enhanced Texturebrowser (ETB) by Shaderman
-- Added shaderplug by Shaderman, accompanies the ETB
-- Added xmltagging lib by Shaderman, accompanies the ETB
-- Added new icons for ETB, Console, Entityinspector and Lighteditor
-- Fixed minor warning in Sunplug Project
-- Fixed PATH_MAX namecollision in ptrview plugin on Linux
-- Final fix for 64 bit patch.h issue
-
-
-
-12/09/2006
-namespace
-- Fixed 64 Bit issue in patch.h, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1109
-  for details
-
-11/09/2006
-namespace
-- Fixed unnecessary warnings, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1108
-  for details
-
-11/09/2006
-namespace
-- Added sunplug (Mapcoordinator-plugin for ET) by Topsun
-  ET only: setting mapcoordsmins and mapcoordsmaxs in the worldspawn
-  Tester: Shaderman
-- Added brushexport Plugin by namespace
-  Exports selected brushes as wavefront object.
-  Tester: Shaderman
-
-11/09/2006
-namespace
-- Fixed compile error on x86_64, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1105
-  for details.
-
-09/09/2996
-namespace
-- Added strafing for the camerawindow while holding ctrl
-- Additional forward movement can be enabled by pressing shift during strafe
-
-22/08/2006
-SPoG
-- Added VFS support for locating the archive a file was loaded from.
-- Changed Doom3 entity definition parser to gracefully handle parse errors.
-- Fixed crash when loading entity definitions in quake4 1.3 point release.
-
-13/08/2006
-SPoG
-- Disabled 'detail' content flag checkbox in quake2 Surface Inspector.
-
-22/07/2006
-SPoG
-- Fixed doom3 func_static with model not appearing to move when dragged. 
-- Changed ASE model loader to parse material names the same way as DoomEdit.
-- Fixed title of wait-dialog when loading a model.
-- Fixed doom3 func_static with blank 'model' key being invisible.
-- Changed doom3 func_static model creation to replace selected models.
-- Added support for loading both .ent and .def files at the same time.
-
-09/07/2006
-Shaderman
-- Updated win32 libxml2 package to 2.6.24.
-namespace
-- Ported win32 stack-backtrace to use new DebugHelp API.
-- Added stack-backtrace functionality for Linux/OSX.
-
-11/06/2006
-SPoG
-- Fixed arbitrary rotation X and Y axes appearing to be transposed.
-
-04/06/2006
-SPoG
-- Fixed crash when deleting items from Build menu.
-
-03/06/2006
-SPoG
-- Changed doom3 entity creation to add model key for brush-entities.
-- Fixed crash in Save Region.
-- Fixed detail brushes being turned structural when texture is set.
-
-29/05/2006
-SPoG
-- Changed default doom3 light_radius to be taken from the entity-definition.
-- Fixed error when entering and exiting camera freemove with LMB pressed.
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1090
-
-13/05/2006
-LordHavoc
-- Added -fPIC for Linux builds to support x86_64.
-- Removed static-linked libstdc++ hack for non-final builds.
-- Removed gcc explicit linking hack for non-final builds.
-- Added workaround for gcc static-member-pointer-as-template-argument bug.
-- Fixed bobtoolz linux compile errors.
-- Added Nexuiz and Darkplaces support.
-SPoG
-- Changed 'inconsistent vertex count' assert to be non-fatal.
-- Changed 'failed to remove accelerator' assert to be non-fatal.
-- Fixed crash due to broken module dependencies.
-- Fixed default settings for Build Monitoring.
-- Fixed nudge-selection when using the drag tool mode.
-- Added support for patches in texture-painting tool.
-
-30/04/2006
-SPoG
-- Fixed memory leak in signals library.
-- Ported bobtoolz to use new module APIs.
-
-01/04/2006
-SPoG
-- Added key-observer interface to entity module API.
-- Rewrote callback library to add support for return-values.
-- Added minimal API to support bobtoolz plugin.
-- Refactored brush for-each functions to take Functor instead of Visitor.
-- Added signals library.
-
-31/03/2006
-SPoG
-- Changed doom3 light creation to use size of selected brushes.
-
-20/03/2006
-SPoG
-- Fixed crash when resetting preferences after startup failure.
-- Fixed crash on next-leak-spot with build-monitoring enabled.
-- Fixed doom3/quake4 blended-decal rendering when toggling lighting mode.
-- Fixed fit-texture with rotated texture transforms.
-
-20/03/2006
-SPoG
-- Changed Copy/Paste to work on face textures if any faces are selected.
-- Fixed GTK_WIDGET_REALIZED assert when selecting entities (linux).
-
-28/02/2006
-namespace, SPoG
-- Added drag-resizing for doom3/quake4 light_radius boxes.
-
-25/02/2006
-SPoG
-- Fixed objects sometimes dissappearing when at high zoom level in Ortho views.
-
-24/02/2006
-SPoG
-- Added GPL text to win32 installer.
-- Fixed gtk wimp theme not working after using gtkthemeselector.
-
-21/02/2006
-namespace
-- Added command to toggle lighting/textured modes, shortcut F3.
-
-20/02/2006
-SPoG
-- Fixed crash when disabling lighting for a second time.
-
-19/02/2006
-SPoG
-- Fixed crash when loading invalid ASE models.
-
-11/02/2006
-SPoG
-- Added install.py script.
-- Updated COMPILING instructions.
-- Fixed transparency rendering on quake3 shaders.
-- Fixed hint/caulk filtering for Jedi Academy shaders.
-
-04/02/2006
-SPoG
-- Added Radiant Manual shortcut to win32 installation.
-- Added 'use alternative texture projection' option to prefs.
-- Fixed caching bug causing import-map to not reload modified maps.
-- Added blended-decal rendering for doom3 and quake4.
-
-30/01/2006
-SPoG
-- Added expand-selection-to-entities with default shortcut ctrl+alt+e.
-- Fixed crash in gtk file-chooser with some versions of GTK+.
-
-29/01/2006
-SPoG
-- Changed create-group-entity to re-select brushes after creation.
-
-26/01/2006
-SPoG
-- Changed far-clip-plane setting to increase exponentially with distance.
-- Fixed selected entities moving when drag-resizing brushes.
-- Changed patches to be selectable from the back in wireframe views.
-- Speed improvements for transform-selection code.
-
-25/01/2006
-SPoG
-- Added default-texture-scale option to preferences.
-- Added default-grid-spacing option to preferences.
-
-23/01/2006
-Shamus
-- Fixed editing of doom3/quake4 faces with negative texture scale factors.
-
-22/01/2006
-SPoG
-- Fixed shortcut for toggle-far-clip.
-- Fixed broken link in 1.5 user docs.
-
-10/01/2006
-SPoG
-- Changed script parser to ignore comments that start in the middle of tokens.
-- Added support for editor_int/editor_string keys in doom3 entity definitions.
-- Changed doom3/quake4 .mtr and .guide searching to look in subfolders.
-- Added experimental support for doom3/quake4 projected lights.
-
-20/12/2005
-SPoG
-- Added support for quake4 .guide material templates.
-- Fixed GCC4 compile errors with anonymous enums.
-- Added light_radius and light_center GUI to doom3 entity inspector.
-
-10/12/2005
-SPoG
-- Added support for loading and saving Quake4 map format.
-- Added support for built-in shader images such as _noFalloff.
-- Added experimental code to render projected lights.
-- Added support for loading quake4 entity definitions.
-- Fixed picomodel bug loading .lwo files with texture names >64 in length.
-
-22/10/2005
-SPoG
-- Fixed minor memory leak in zip-archive reader.
-
-21/10/2005
-SPoG
-- Fixed model rotation using free-rotation tool.
-- Fixed behaviour of angle/rotation keys for Doom3 entities.
-- Added entity angle-editing for entities that display a model.
-- Stopped size-info being drawn if selection has zero size.
-- Added support for 'angle' key on doom3 entities.
-
-20/10/2005
-SPoG
-- Fixed minor one-time memory leak in build-shader-list.
-- Added functional free-scale tool.
-- Improved precision preservation for free-rotation and free-scale tools.
-- Fixed misc_model rotation using free-rotation tool.
-
-09/10/2005
-SPoG
-- Added entity angle-editing using rotate-tool or rotation toolbar buttons.
-- Fixed start-on-primary-monitor (win32).
-- Fixed camera-view freelook when window is on secondary monitor (win32).
-
-05/10/2005
-paxed
-- Added texture-lock toolbar button.
-SPoG
-- Added stack-trace output to all debug popup messages (win32).
-- Fixed vertex/edge selection behaviour on undoing brush edits.
-- Changed doom3 light centre rendering to use a point instead of a box.
-- Changed map and shader parsers to gracefully handle bad data.
-
-24/09/2005
-SPoG
-- Fixed crash when importing a file after deleting the world entity.
-- Changed copy/paste/import to select world brushes instead of world entity.
-- Added win32-specific stack-trace logging support.
-
-31/08/2005
-SPoG
-- Fixed clipper removing brushes on incorrect side of clip-plane when flipped.
-
-21/08/2005
-SPoG
-- Optimised light-dragging.
-- Changed connect-entities to not break existing connections where possible.
-
-24/07/2005
-SPoG
-- Fixed q3 entity definition for item_health_small.
-
-02/07/2005
-SPoG
-- Fixed build menu becoming empty if editing of default menu is cancelled.
-
-01/07/2005
-SPoG
-- Fixed snap-planes-to-integer preference not being saved.
-
-26/06/2005
-SPoG
-- Changed doom3 light_radius box to draw flat-shaded translucent in camera view.
-- Fixed progress window not being shown when loading maps.
-- Refactored shortcut handling to make focussed widgets override global shortcuts.
-  Allows using ctrl+c to copy console text, undo/redo without main-window focus.
-
-23/06/2005
-SPoG
-- Fixed crash when handling assert/error before gtk_init.
-- Changed Help menu to display only the help menu relevant to the current game.
-
-21/06/2005
-SPoG
-- Fixed double-maps-directory when using non-native file open dialog on win32.
-- Changed find/replace-textures window to update when selecting textures with MMB.
-- Fixed handling of non-UTF-8 wad-names in textures menu.
-
-20/06/2005
-SPoG
-- Changed home-path prefix to be optional on linux/osx for q1/q2.
-- Changed OpenGL module to work correctly with GL_VERSION 2.0.0.
-- Fixed spawnflags in Enemy Territory entity definitions.
-- Added missing Enemy Territory entity types.
-
-19/06/2005
-SPoG
-- Changed clipper-point selection/rendering to behave the same at all zoom levels.
-- Changed clipper-point selection to always pick the closest point to the cursor.
-- Fixed clipper colour not being updated until after restarting.
-- Fixed QE tool not deselecting edges when left-clicking on a vertex without shift.
-- Fixed grid rendering with grid settings other than 8-unit.
-- Fixed textures menu always behaving as if show-shaderlist-only is enabled.
-
-18/06/2005
-SPoG
-- Added saving of camera render mode preference.
-- Changed default camera render mode to Textured for Doom3.
-- Changed default texture render mode to Trilinear.
-
-17/06/2005
-SPoG
-- Ported Team Arena entity definitions to xml format.
-- Added xml q3 entity-definitions to win32 and linux setups.
-
-14/06/2005
-SPoG
-- Fixed QE-tool component-drag selecting components of unselected brushes.
-
-13/06/2005
-SPoG
-- Changed clipper mode and component-editing modes to be mutually exclusive.
-- Changed camera A/Z/D/C keys to obey "discrete movement" checkbox.
-- Added support for up/down movement in freelook mode.
-- Fixed clipper-tool-uses-caulk option.
-- Added prompt for engine path at startup if not found.
-
-12/06/2005
-SPoG
-- Added entity-inspector GUI support for func_button/func_door direction attribute.
-- Added angle/model/sound GUI to entity-inspector for old-style entity-definitions.
-- Added clipper-plane rendering using stippled back-face-culled polygon.
-- Fixed entity-inspector failing to handle non-ascii characters in entity keys.
-
-11/06/2005
-SPoG
-- Fixed entity-inspector window position changing while hidden.
-
-09/06/2005
-SPoG
-- Fixed region-set-selected for model entities.
-
-08/06/2005
-SPoG
-- Added option to enable or disable snapping brush planes to integer on map load/save.
-- Added 0.125 grid.
-- Changed grid rendering to always show major/minor grid colours whatever the zoom level.
-- Increased maximum zoom level for XY views.
-
-06/06/2005
-SPoG
-- Added 'File > Refresh models' - reloads models that have changed outside Radiant.
-
-05/06/2005
-SPoG
-- Fixed model files not being closed after being read.
-- Fixed build menu dialog not saving changes to build commands.
-- Changed build menu to save xml only if changed by user.
-- Fixed CSG-merge.
-- Reduced CSG-merge tolerance for misaligned brushes.
-Michael Kluskens
-- Updated STVEF default build menu to version 2 format.
-- Updated STVEF game configuration file and removed synapse.config.
-
-02/04/2005
-SPoG
-- Changed HashTable insert/remove operations to not invalidate iterators.
-- Changed ReferenceCache realise/unrealise to take advantage of new HashTable behaviour.
-- Refactored containers to use std::swap.
-- Refactored bitfield.h.
-Tr3B
-- Fixed endianness for .lwo loading on linux.
-- Extended q3map2 mathlib functionality.
-
-28/03/2005
-SPoG
-- Specialised filters list for doom3 entity/material types.
-- Added ASE-loader support for shader names specified as a bitmap absolute-path.
-- Fixed monitored-compile debug-feedback display.
-- Added TGA-loader support for vertical and horizontal flipping.  
-- Enabled auto-generation of smooth normals for all LWO models.
-
-27/03/2005
-Tr3B
-- Fixed map-xml module.
-- Added support for qer_trans keyword in doom3 materials.
-
-08/03/2005
-SPoG
-- Added GUI updates during map load and engine-path/game-dir changes.
-- Fixed main window being hidden behind another application on closing a floating window.
-
-07/03/2005
-SPoG
-- Fixed crash when selecting the root node in the entity-list window.
-- Fixed detail flag saving for quake3 map format.
-
-06/03/2005
-SPoG
-- Optimised type-casts for scene-graph type system.
-- Disabled substitution of 'unspecified' for entity key values that match the default.
-- Refactored module-system api - added globalModuleServer().
-- Fixed rotation origin for doom3 func_static models.
-
-05/03/2005
-SPoG
-- Added support for doom3 model-entity 'skin' key.
-- Added noshadows/nospecular/nodiffuse/falloff doom3 light keys to entity-inspector.
-
-04/03/2005
-SPoG
-- Added camera move up/down one floor.
-- Added support for 'unspecified' contents/flags/value for Quake2 brush faces.
-
-26/02/2005
-SPoG
-- Added auto-complete for shader attributes in entity inspector.
-- Added support for doom3-material heightmap to normalmap conversion.
-
-22/02/2005
-SPoG
-- Fixed missing prefix attribute in quake game configuration file.
-- Added auto-completion for find/replace-textures texture-name entries.
-- Removed redundant buttons and options in find/replace-textures window.
-
-21/02/2005
-SPoG
-- Added auto-completion for surface-inspector texture-name entry.
-
-20/02/2005
-SPoG
-- Fixed failure to load shaders containing '.' such as Heretic II model skins.
-- Removed unused legacy cmdlib functions.
-- Added support for fractional repeat values to brush-fit-texture.
-
-19/02/2005
-SPoG
-- Changed entity-connect-selected to use the parent entity of a selected brush.
-- Added q2map and bspc to installation packages.
-Jamie Wilkinson
-- Fixed path to q2map in quake2 build-menu.
-
-13/02/2005
-SPoG
-- Fixed crash in 'Misc > Find Brush' when searching for a non-existent brush.
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1059
-- Limited the maximum number of sides of a prefab brush-cone to 32.
-
-11/02/2005
-SPoG
-- Changed display of angled box-entities to show un-rotated bounding boxes.
-
-10/02/2005
-SPoG
-- Disabled rotation of light entities for games other than Doom 3.
-
-09/02/2005
-David Constanzo
-- Fixed episode flag names on Quake item_sigil and func_episodegate entities.
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1056
-- Added detailed description of Quake item_sigil and func_episodegate entities.
-SPoG
-- Fixed position of light-entity names.
-- Fixed q3map2 feedback xml streams containing non-UTF-8 text.
-- Optimised Locale<->UTF-8 text conversion.
-
-08/02/2005
-SPoG
-- Fixed selecting a texture not resetting the current selected texture-projection.
-- Added handling of OpenGL drivers that don't implement all reported extensions. 
-
-07/02/2005
-SPoG
-- Added support for multi-byte UTF-8 characters in xml content (not markup).
-- Added UTF-8 support in entity-inspector, prefs dialog, recent-files menu, console.
-- Fixed potentially misaligned objects.
-
-05/02/2005
-SPoG
-- Added rendering of entity names for non-group entities.
-- Removed context-dependent opengl calls before opengl context is created.
-
-04/02/2005
-SPoG
-- Fixed crash when printing extended-ascii text in the console.
-- Added conversion of extended-ascii text to utf8 for gtk text-buffer widgets.
-
-03/02/2005
-David Constanzo
-- Fixed typo in Quake entity-definitions.
-SPoG
-- Fixed undo of brush-set-structural and brush-make-structural.
-- Refactored image-loader module api.
-- Added full support for Quake II and Heretic II surface-flags in surface-inspector.
-- Fixed crash in patch-inspector for games other than doom3.
-
-01/02/2005
-SPoG
-- Changed shader-list and entity-definition searching to also search base-dir.
-
-29/01/2005
-SPoG
-- Fixed title of floating entities/console/textures window.
-- Fixed destruction of floating windows on shutdown.
-- Added shortcut handling when entity-inspector/texture-browser are active.
-David Constanzo
-- Fixed crash while auto-saving snapshots.
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1049
-
-28/01/2005
-SPoG
-- Added rendering of fixed S/T tesselation on doom3 patches.
-- Changed creation of doom3 func_static entities to prompt for a model.
-- Fixed zero-sized primitives being rendered for culled entity-connection-lines.
-
-25/01/2005
-SPoG
-- Added support for setting fixed S/T tesselation on doom3 patches.
-- Changed patch inspector to be completely non-modal.
-
-24/01/2005
-SPoG
-- Added support for rotating lights using the rotation tool.
-
-23/01/2005
-SPoG
-- Fixed crash on startup with texture-subsets enabled.
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1045
-- Added support for doom3 lights combined with brushes and patches.
-- Added support for doom3 light_origin on lights.
-- Added support for doom3 light_rotation and rotation key on lights.
-
-22/01/2005
-SPoG
-- Fixed crash when accessing links from help menu.
-- Fixed broken links in help menu.
-- Added game-specific docs to win32 setup.
-- Changed q3 connect-entities to preserve existing targetname key.
-- Changed q3 connect-entities to generate targetname key based on target classname.
-
-21/01/2005
-SPoG
-- Moved information in synapse.config into .game files.
-- Added api versioning for module-system.
-
-20/01/2005
-SPoG
-- Fixed keys/values for brush entities not being editable unless parent is selected.
-- Fixed brush-entities not being deleted when the last child brush is deleted.
-- Fixed scenarios where worldspawn is not the first entity in the map.
-
-19/01/2005
-SPoG
-- Fixed numerical instability in brush winding-generation.
-
-16/01/2005
-SPoG
-- Added Jedi Academy support to linux installer.
-- Fixed main-window jumping to front during autosave.
-- Fixed saving of empty brushes.
-Jame Wilkinson
-- Fixed build errors when compiling for big-endian target.
-
-15/01/2005
-SPoG
-- Fixed launching q3map2 from build-menu on linux/osx.
-- Added version checking of generated config files.
-- Fixed key-up events being missed while holding ctrl/shift/alt.
-- Fixed texture-compression support.
-Jago
-- Changed q1 trigger_relay and trigger_counter to be point entities.
-
-11/01/2005
-SPoG
-- Changed brush-save to not write non-contributing faces.
-- Fixed rendering artifacts on outlines of selected box-entities.
-
-10/01/2005
-SPoG
-- Added patch-cap-cylinder.
-
-09/01/2005
-SPoG
-- Fixed texture-browser scroll-to-selected-texture.
-- Added brush face texture painting.
-
-08/01/2005
-SPoG
-- Fixed ungroup-selected-entities.
-- Added 'Entity' menu.
-- Removed items unrelated to entity-creation from xy-window right-click menu.
-- Fixed minor memory leaks in core.
-- Removed code that ignores empty alpha-channel in tga loader.
-- Fixed memory leak in model module.
-- Fixed memory leaks in picomodel library: ase and lwo loaders.
-- Changed default tool to 'QE' tool.
-
-04/01/2005
-SPoG
-- Changed start-on-primary-screen default to 'true' with multiple screens.
-- Added enter/escape as shortcuts for OK/Cancel buttons on modal dialogs.
-- Disabled mouse-chase scrolling in XY window when drag-selecting.
-- Fixed xlink I/O warnings on linux.
-- Removed light-creation 'intensity' dialog in doom3 config.
-- Changed the default vertical size of the shortcut-list window to 400. 
-- Fixed patch-creation with zero-sized workzone.
-- Fixed crash when rendering doom3 light_radius box.
-
-03/01/2005
-SPoG
-- Added arbfp1/arbvp1 vertex/fragment program lighting support.
-- Fixed colour-selection dialog not going away after OK/Cancel.
-- Fixed tangent/bitangent calculation on degenerate patches.
-- Added resizing of patches with QE tool.
-
-02/01/2005
-SPoG
-- Added stippled hidden-line rendering for rotate/translate manipulators.
-- Refactored high-level camera/orthographic rendering functions.
-- Fixed failure to load models with back-slashes in path.
-- Improved peformance of doom3 lighting with large models.
-
-01/01/2005
-SPoG
-- Changed entity renderering to draw connections for culled entities.
-- Fixed runtime errors on shutdown after cycling between lighting/textured.
-- Fixed 'Cancel' button in modal dialogs behaving like 'OK' button.
-- Changed 'clip' brush filtering to use shader parameters instead of names.
-- Added rendering of origin-point for selected model entities.
-- Fixed doom3 light-interaction updates for model entities.
-
-31/12/2004
-SPoG
-- Removed menu-splitting functionality.
-- Refactored entity-class menu construction.
-- Replaced const_reference with ConstReference.
-- Renamed string_t to CopiedString.
-- Changed code using Str::Format and Str::operator+= to use StringOutputStream.
-- Refactored shortcut command parsing code.
-- Changed light entity rendering to show light_radius box only in doom3 config.
-- Added 2x overbrightening for doom3 lighting preview.
-
-16/12/2004
-SPoG
-- Changed default doom3 light_radius to 300.
-- Fixed initial value of doom3 light_center.
-- Reduced frequency of gui updates during map load.
-
-13/12/2004
-SPoG
-- Fixed crash in monitored-compile feedback dialog.
-
-12/12/2004
-SPoG
-- Added visualisation of halflife texture-projection format.
-- Added texture-lock for halflife texture-projection format.
-- Changed brush-texture-lock default to enabled for doom3 and halflife.
-
-11/12/2004
-SPoG
-- Refactored script-tokeniser.
-- Fixed doom3 lighting on ATI cards.
-- Added support for list attributes in entity definitions.
-- Added utf8-normalisation on text printed to console.
-- Fixed missing default_build_menu.xml in halflife game config.
-
-10/12/2004
-SPoG
-- Fixed missing commas in entity-inspector comments.
-- Added support for default values in entity-definitions.
-
-09/12/2004
-SPoG
-- Enabled doom3 realtime lighting preview.
-
-05/12/2004
-SPoG
-- Fixed gcc compile warnings in patch.cpp.
-- Added q1 and q2 support to linux installer.
-
-02/12/2004
-SPoG
-- Added highlighting of entity-list nodes that have selected descendants.
-
-29/11/2004
-SPoG
-- Fixed xy-window failing to update after map-load.
-
-28/11/2004
-SPoG
-- Fixed error on shutdown when game-select dialog is disabled.
-- Added surface/light-interaction debugging mode.
-- Added per-plane light-culling for brush faces.
-- Added support for bump shaders using 'blend' layer keyword.
-- Added support for light-shaders.
-- Fixed edge/border clamping on light-attenuation textures.
-- Added 'Lighting' camera render-mode for doom3 config.
-
-25/11/2004
-SPoG
-- Fixed right-click-menu on linux.
-
-13/11/2004
-SPoG
-- Changed light-entity to draw radii only when selected.
-
-07/11/2004
-SPoG
-- Fixed shortcuts for creating n-sided brush-prisms.
-
-19/10/2003
-SPoG
-- Fixed user-customisable shortcuts support.
-
-16/10/2003
-SPoG
-- Added restore-main-window call when a modal-dialog dialog-box is shown.
-
-13/10/2003
-Jamie Wilkinson
-- Fixed SConstruct cpu detection on Power Macintosh.
-- Added more verbose warning settings for gcc builds.
-SPoG
-- Changed buffered-text-input-stream API to not use magic EOF value.
-
-06/10/2004
-Jamie Wilkinson
-- Fixed debug-break on non-x86 platforms.
-
-05/10/2004
-SPoG
-- Fixed new doom3 entities not being given unique names.
-
-02/10/2004
-SPoG
-- Fixed autosave causing the main-window to jump to the front.
-- Fixed window-title when changing view direction in floating-windows layout.
-- Added status information to wait dialogs.
-- Changed map-save to overwrite/refresh files modified/deleted outside radiant.
-- Changed component selection in QE tool to treat near-equal points as one.
-- Added texture browser window to View menu.
-- Changed white overlay in camera-window to draw hidden lines in 75% grey.
-- Reduced point-size for vertex/edge/face handles by 2/3.
-
-25/09/2004
-SPoG
-- Added component-editing for curves on doom3 entities.
-- Added normalisation of translation for texture-lock on doom3 brushes.
-- Added update of surface inspector for texdef changes caused by texture-lock.
-- Changed floating-windows layout to centre all ortho views on center-xy-views.
-- Stopped autosave from saving unmodified maps after first-time load.
-Shamus
-- Textool improvements.
-
-21/09/2004
-Michael Schlueter
-- Changed file-chooser dialogs to use GtkFileChooser.
-
-20/09/2004
-SPoG
-- Added basic rendering for 'curve_CatmullRomSpline' on doom3 entities.
-
-19/09/2004
-SPoG
-- Added basic rendering for 'curve_Nurbs' on doom3 entities.
-
-18/09/2004
-SPoG
-- Added doom3 entity-definition editor_usage* key support.
-- Added doom3 entity-definition editor_* key info to entity-inspector comments.
-- Added specialised attribute-entry in entity-inspector for boolean attributes.
-- Fixed crash in find-brush when entering the index of a fixed-size entity.
-- Added support for rendering doom3 'targetN' -> 'name' entity connections.
-- Changed connect-entities to use 'targetN' and 'name' keys on doom3 entities.
-- Improved handling of brushes with near-duplicate planes.
-- Fixed crash in snap-to-grid on brushes with non-contributing faces.
-
-17/09/2004
-Michael Schlueter
-- Fixed gcc build errors.
-SPoG
-- Fixed stability problems with doom3 brush-entities.
-
-16/09/2004
-SPoG
-- Added automatic renaming of entity target/name keys for paste and import-map.
-
-13/09/2004
-SPoG
-- Fixed rotation/mirror toolbar buttons using wrong axes in certain situations.
-- Fixed incorrect filter settings display in filters menu.
-- Added automatic renaming of entity target/name keys when cloned.
-- Fixed quake2 support.
-
-12/09/2004
-SPoG
-- Added shortcut support for all menu commands and toolbar buttons.
-- Fixed patch shader-name saving for doom3 patches created by user.
-
-10/09/2004
-SPoG
-- Fixed patch-cap-endcap and patch-cap-reverse-endcap.
-
-09/09/2004
-SPoG
-- Fixed status-bar labels showing 'Label' at startup.
-- Fixed textures-menu grouping bug.
-- Fixed mirroring on brushes with doom3 plane-defs.
-
-08/09/2004
-SPoG
-- Changed patch-cap-selected to prompt for cap type only once.
-- Fixed infinite-loop in patch-cap-selected.
-- Changed autosave to only save if the map has changed since the last autosave.
-- Changed "file exists, overwrite?" to go back to the file-chooser if 'no' is selected.
-
-07/09/2004
-Michael Schlueter
-- Removed unused source files - qsysprintf, gtkfilesel.
-- Changed linux exectuable-path resolution to use '/proc/self/exe'.
-- Changed 'file exists, overwrite?' prompt to default to 'no'.
-
-06/09/2004
-SPoG
-- Fixed crash when handling duplicate shader definitions.
-- Fixed crash on startup after changing game-type (sp/mp).
-- Changed compute-axis-base to be more stable in degenerate cases.
-Michael Schlueter
-- Cleaned up loki_path stuff.
-Shamus
-- Added textool rotation manipulator.
-
-01/09/2004
-Michael Schlueter
-- Changed linux installer to copy *.game files from game-packs instead of generating them.
-
-29/08/2004
-SPoG
-- Moved doom3 shader parsing into a separate function.
-- Fixed saving of visibility of yz-side and xz-front in floating-windows layout.
-- Added inheritance of doom3 entityDef 'editor_* *' keys.
-- Added support for doom3 entityDef 'editor_* *' keys other than 'editor_var'.
-- Changed entity-inspector attributes panel to be scrollable.
-- Changed shaders module to load *.mtr for doom3 instead of using shaderlist.
-- Improved doom3 material parsing.
-- Fixed crash loading maps containing patches with large numbers of control points.
-- Changed face-selection in camera view to use polygon test.
-- Changed face-selection-mode rendering in camera view to cull back-faces.
-- Changed shaders module to use diffusemap on doom3 shaders with no qer_editorimage.
-
-28/08/2004
-SPoG
-- Fixed undefined-behaviour bug causing a crash with gcc optimisation.
-- Fixed opengl extension support on linux.
-- Added support for half-life .fgd entity-definitions.
-- Fixed loading of half-life maps with texture-names containing '{'.
-
-26/08/2004
-SPoG
-- Updated win32 install to use gtk+-2.4.7 and gtk-wimp-0.6.2.
-- Removed 'unknown model type: ""' and 'Texture load failed: ""' errors.
-- Changed pivot-point calculation to use entity-origin for fixed-size entities.
-- Fixed errors drawing selection-rectangle in floating-windows layout.
-- Fixed shortcuts becoming disabled in floating-windows layout.
-- Removed snap-to-integer on entity angle/angles/scale keys.
-- Fixed dragging of doom3 brush-entities.
-Michael Schlueter
-- Fixed gcc compiler error and warnings.
-- linux installer fixes.
-
-25/08/2004
-Michael Schlueter
-- Changed linux build system to copy '$GAME.game/*' for installer.
-- Changed linux installer to use 1.5's module set.
-- Removed optimisation from linux build to fix optimiser-related crash.
-- Added Doom3 support to linux installer.
-SPoG
-- Changed texdef export to not snap shift/rotate to integer.
-
-17/08/2004
-SPoG
-- Fixed texture-browser height update bug.
-- Changed texture-browser to show only the texture-set selected from the menu.
-- Fixed bug loading quake maps.
-
-16/08/2004
-SPoG
-- Fixed shortcuts for shift/rotate/scale-texture on patches.
-- Fixed patch-inspector rows/cols combos not being cleared between selections.
-- Changed entity/brush counts to use counters instead of polling every second.
-- Changed archivewad module to check lump types and ignore non-miptex files.
-- Added support for worldcraft/hammer half-life map format.
-
-15/08/2004
-SPoG
-- Added doom3 md5mesh loader.
-- Added support for doom3 entityDef 'model' key.
-- Changed textures-menu to show/load only shaders in the form 'textures/<menu-item>/*'.
-- Fixed texture-browser height calculation bug.
-- Added support for doom3 entityDef 'editor_var *' key.
-- Fixed support for patchDef3 subdivision settings.
-
-14/08/2004
-Chronos
-- Added doom3 light_radius and light_center rendering.
-SPoG
-- Disabled default-shaders for doom3.
-- Added one-click dragging of vertices/edges/faces on brushes and patches.
-- Fixed detail flag being lost on brush-clone or save-as.
-
-12/08/2004
-SPoG
-- Fixed workzone being invalidated when a brush is deleted.
-- Fixed pivot updates when switching from translate-tool to rotate-tool.
-- Fixed crash in misc_model.
-- Changed file_dialog to show '*.*' when pattern is not specified.
-- Added undo support for patch-inspector XYZUV tweaking.
-- Removed 'Apply'/'Done' buttons from patch-inspector.
-
-11/08/2004
-redfella
-- Converted RTCW entities.def to xml format.
-SPoG
-- Added support for "name" key for doom3 entities.
-
-10/08/2004
-SPoG
-- Added support for loading text files from VFS archives.
-
-09/08/2004
-SPoG
-- Changed .map writer to always use decimal notation for floats.
-- Added filtering of monster_clip/full_clip/player_clip.
-- Added support for inheritance in doom3 entity-definitions.
-- Fixed doom3 patchDef2 material-name import/export.
-
-06/08/2004
-SPoG
-- Doom3 support:
-  - Map load/save.
-  - Materials parsing.
-  - entityDef parsing.
-  - Fixed brush-primitives texturing bug.
-  - Added texture-lock for brush-primitives texturing on all transforms.
-  - Added support for model/rotation/origin keys on func_ entities.
-- Added DDS image module.
-
-03/08/2004
-SPoG
-- Fixed copy/paste copying all brushes of an entity when only one is selected.
-- Fixed discrete-camera-movement shortcuts becoming disabled after using freemove-camera.
-
-27/07/2004
-Shallow
-- Converted ET entities.def to xml format.
-
-26/07/2004
-SPoG
-- Fixed SI when not in face-selection mode.
-- Changed patch-create-prefab to use current workzone.
-- Changed engine attribute to be optional in game-description.
-
-24/07/2004
-SPoG
-- Changed module server to support wildcard modules.
-- Cleaned up docs/developer, added README.
-- Removed old TODO.
-
-23/07/2004
-Shamus
-- Initial version of textool.
-MindLink
-- Fixed const bug for vs.net 2005 compiler.
-
-22/07/2004
-SPoG
-- Fixed copy/paste and export-selected failing to export stuff.
-
-19/07/2004
-SPoG
-- Updated win32 setup scripts for q1 entity definitions.
-
-18/07/2004
-SPoG
-- Updated win32 setup scripts.
-- Fixed bug loading 8-bit bmp with <256 palette entries.
-- Added support for loading textures from arbitrary locations.
-- Changed shaders module to load notex/shadernotex from bitmaps/ in .bmp format.
-- Fixed bugs in brush-primitives texdef code.
-
-17/07/2004
-SPoG
-- Added STV:EF support to win32 installer.
-- Moved hardcoded game-specific configuration stuff into .game files.
-
-16/07/2004
-SPoG
-- Fixed crash bug in brush edge/vertex/face selection.
-
-15/07/2004
-SPoG
-- Moved .def files from <enginepath>/<basegame>/scripts/ to <radiantpath>/<gamefilename>/<game>/.
-- Changed entity inspector UI to be driven by entities xml.
-
-14/07/2004
-SPoG
-- Fixed map load/save in brusb-primitives mode.
-- Added files required to run in brush-primitives mode.
-- Added support for changing engine-path while a map is loaded.
-
-
-11/07/2004
-SPoG
-- Changed entity inspector to support custom UI for each entity-class.
-
-10/07/2004
-SPoG
-- Added support for experimental xml version of .def format.
-- Rewrote token parser.
-- Rewrote .def parser.
-- Fixed failure to read show-workzone preference.
-- Refactored quake3 entities module.
-
-03/07/2004
-SPoG
-- Changed QE-style Drag tool to move as well as resize.
-- Fixed shortcuts becoming disabled.
-- Fixed loading file types with upper-case extensions.
-
-30/06/2004
-AcidDeath
-- Added support for plugin submenus.
-
-27/06/2004
-SPoG
-- Added build-menu-command editing.
-- Fixed texture-object reshuffle caused by changing gamma.
-- Refactored vfs/shaders/renderstates/eclass/texturemenu unrealise/realise systems.
-
-26/06/2004
-SPoG
-- Added printf-formatting support to output streams.
-- Added error/warning printing to xml parser.
-- Changed build-menu xml format to allow easier editing.
-- Added sample plugin.
-
-25/06/2004
-SPoG
-- Changed paste and import-map to select pasted/imported entities and world brushes.
-
-24/06/2004
-SPoG
-- Changed create-entity API to use eclass instead of classname.
-- Changed nodes with unknown entity types to use a group-entity if the node has children.
-
-18/06/2004
-SPoG
-- Changed image-loaders interface to use a file object instead of VFS.
-- Changed model-loader interface to support in-place model reloading.
-- Changed picomodel-loader module to support configuration of suppported model types in synapse.config.
-- PicoModel: added support for loading models from an abstract input stream.
-
-14/06/2004
-SPoG
-- Refactored texture browser.
-- Removed GLWindow.
-- Fixed mousewheel movement in camera window.
-
-13/06/2004
-SPoG
-- Added load-entire-wad from textures menu in Quake/HL mode.
-- Fixed bug with writing negative integers to .map format.
-- Fixed texture-browser hide-unused to show only in-use shaders. 
-- Fixed texture-browser scrollbar positioning and origin-clamping.
-- Fixed prompting to save unchanged new maps.
-- Changed unsaved-changes message box default to "Yes, save" instead of "OK, don't save".
-- Changed all message boxes to appear centrally.
-- Removed minimize/maximize buttons from all message boxes.
-
-12/06/2004
-SPoG
-- Disabled shortcut keys during drags.
-- Fixed window updates for edge/vertex multi-selection.
-- Added apply/cancel on enter/escape for texture-browser filter entry.
-- Changed undo system to use explicit start/finish pair to specify undoable operations.
-- Changed undo system to print undoable command after command completion instead of before.
-- Added printing of movement parameters for translate/rotate manipulator drags.
-- Changed brush-subtract to not delete the selection after subtracting.
-- Fixed texture browser to not display textures if only in-use by nodes in the undo-queue.
-- Fixed another workzone-update performance issue causing area-selection to be slow.
-- Added code to brush build-B-Rep to handle duplicate edges.
-
-10/06/2004
-SPoG
-- Added lazy evaluation of local->world transforms and world-space AABBs.
-- Added shortcut key for translate mode, default 'W'.
-- Added toolbar buttons for edge/face/vertex modes.
-- Changed Escape shortcut to deselect-components if components are selected.
-
-02/06/2004
-SPoG
-- Fixed performance bug with workzone updates not being lazily evaluated.
-- Fixed brush edge-graph bug by removing degenerate winding edges.
-
-01/06/2004
-SPoG
-- Added mode information to status bar.
-- Added console feedback describing undoable commands executed.
-- Fixed assertion failures on updating degenerate edge/vertex selections.
-- Fixed detail brushes turning structural when clipped.
-
-31/05/2004
-SPoG
-- Added support for more than one edge/vertex selected per brush.
-
-29/05/2004
-SPoG
-- Refactored groupdialog - decoupled notebook from console/textures/entity pages.
-- Fixed crash in patch tesselator.
-- Fixed floating windows startup crash.
-- Fixed null texture name for patches.
-
-28/05/2004
-SPoG
-- Hide arrows on translate manipulator when obscured by square part.
-- Workaround for main window not being brought to front when a floating window is closed.
-- Fixed rendering of selected components of degenerate brush faces.
-- Fixed double typedef in picomodel.
-- Fixed bug in allocator stuff.
-- Fixed up clipper tool button state.
-- Added workzone updates when selection bounds change.
-- Fixed transient setting on floating inspector windows.
-
-27/05/2004
-Tr3b
-- Fixed gcc build errors.
-SPoG
-- Fixed crash bug in game selection dialog.
-
-26/05/2004
-SPoG
-- Cleaned up project settings.
-- Changed autosave/snapshots to only save modified maps.
-- Refactored build menu.
-
-23/05/2004
-SPoG
-- Fixed minor picomodel ase loader smoothing-groups bug.
-
-19/05/2004
-SPoG
-- Allocator system improvements, fixed warnings
-
-18/05/2004
-SPoG
-- PicoModel: added support for per-vertex smoothing-group, used in generation of normals.
-- PicoModel ASE loader: added support for per-face 'MESH_SMOOTHING' id.
-- PicoModel: changed normal generation code to create smooth normals across texcoord/colour discontinuities.
-- Fixed cosmetic menu bug.
-- Fixed file handle leak in tga loader.
-- Added experimental allocator system.
-
-15/05/2004
-Tr3b
-- Fixed gcc build errors.
-
-11/05/2004
-SPoG
-- Fixed version.h custom build step on win32
-- Refactored preferences dialog to eliminate dependencies on other modules.
-- Redesigned preferences dialog ui layout.
-
-06/05/2004
-SPoG
-- Refactored texture browser.
-
-05/05/2004
-SPoG
-- Upgraded win32 gtk2 version to 2.4.1.
-- Migrated from GtkCombo to GtkComboBox.
-- Texture browser improvements.
-- Fixed malloc/free mismatch bug.
-
-05/05/2004
-SPoG
-- Refactored surface inspector and texture browser.
-
-02/05/2004
-Nurail
-- Added imageq2 module with support for quake2 and heretic2 texture formats: wal, m8, m32.
-
-30/04/2004
-SPoG
-- Changed texture window not to auto-scroll when selecting faces.
-- Changed surface inspector to apply shader seperately from shift/scale/rotate.
-- Changed selected face tracking to use separate selection list.
-
-26/04/2004
-SPoG
-- Added per-file change tracking - only modified (unsaved) files are saved by SaveMap().
-
-18/04/2004
-SPoG
-- Fixed texture-increment-matches-grid.
-- Changed selecting a texture to only change the shader on the selected brushes.
-- Changed 'Axial' button in surface inspector to reset the texdef for selected brushes/faces.
-- Removed MAX_TEXTUREDIRS limit.
-
-11/04/2004
-SPoG
-- OS library module added to wrap calls to rename/unlink/access/stat.
-- OpenGL-view selection tests constrained to current window.
-- Cleaned up OpenURL.
-- Added jk2 and sof2 support to win32 installer.
-
-09/04/2004
-TTimo
-- update the OSX setup / .info generation code
-
-08/04/2004
-SPoG
-- Added integer quantisation for brush edge/vertex drags to fix FP-drift on planes.
-TTimo
-- fix for scons 0.95
-- re-enable Python >= 2.1 version check
-- OSX 10.3: remove obsolete dlsym_auto_underscore (bug #920)
-- OSX: disable q2 tools build (broken thread code)
-
-07/04/2004
-SPoG
-- Moved profile.cpp into a separate static library.
-
-06/04/2004
-SPoG
-- Refactored preferences to be more modular.
-- Fixed preferences being corrupted if a crash occurs during preference saving.
-- Refactored window position saving.
-- Fixed bug in radio button creation in preferences dialog.
-
-24/03/2004
-SPoG
-- Changed surface inspector to unfocus after pressing escape or return, to enable shortcuts.
-- Added refresh of surface inspector for shift/scale/rotate-texdef shortcuts.
-- Fixed bug causing some operations to be applied twice.
-
-21/03/2004
-SPoG
-- Added depth-test and normalisation for translate-manipulator rendering.
-- Added basic clipper-preview rendering.
-
-18/03/2004
-SPoG
-- Added maya-style arrow-heads to translate manipulator.
-- Changed square part of translate manipulator to be viewplane-oriented.
-- Changed square part of translate manipulator to take priority for selection.
-
-15/03/2004
-SPoG
-- Added recalculation of pivot-point when grid size changes.
-- Changed win32 SHGetFolderPath to link with shfolder.lib instead of shell32.lib.
-- Fixed failure to recover brushes from an invalid state.
-
-14/03/2004
-SPoG
-- Improved event handling to make manipulator-dragging smoother in complex scenes.
-- Refactored camera window camera-movement handling.
-
-06/03/2004
-SPoG
-- Fixed vertex/edge undo failing to update selected-vertex position.
-
-29/02/2004
-SPoG
-- Re-enabled next-xy-view in floating windows mode.
-- Reinstated light-radius rendering.
-- Added Wolfenstein support to win32 setup.
-
-24/02/2004
-SPoG
-- Changed create-brush-prism to use correct dimension for prism radius.
-- Changed freelook selection to use window-centre position.
-
-22/02/2004
-SPoG
-- Optimised undo for adding/removing scenegraph nodes.
-- Changed entity-list view to sort the tree by name.
-
-18/02/2004
-SPoG
-- Moved default shaderlist to <AppPath>/<GameFileName>/<GameName>/default_shaderlist.txt
-- Moved user shaderlist to <AppData>/<Version>/<GameFileName>/<GameName>/shaderlist.txt
-
-11/02/2004
-SPoG
-- Refactored clipboard copy/paste code to allow re-use.
-
-10/02/2004
-SPoG
-- Fixed false-positive-intersection bug in CSG subtract algorithm.
-
-07/02/2004
-SPoG
-- SceneGraph: Refactored per-instance functionality.
-- Fixed intermittent culling bug caused by bad bounding boxes.
-- Fixed missing ToggleCubicClip shortcut.
-- Removed modal buttons from Surface Inspector.
-- Changed Surface Inspector keys:
-  - Escape: revert not-yet-committed values to previous state.
-  - Enter: commit not-yet-committed values immediatly.
-- Changed Surface Inspector to update when selection changes.
-
-31/01/2004
-SPoG
-- Cleaned up functional.h template usage with typedefs.
-- Fixed autosave path.
-- Added q1 component to installer.
-- Added radiant_manual component to installer.
-- Added q3-example-maps package to installer.
-
-29/01/2004
-SPoG
-- Added error reporting for module system initialisation failure.
-- Added MSI package creation tools in setup/win32.
-  note: requires MSI SDK binaries in http://zerowing.idsoftware.com/radiant-files/msi/msitools.zip
-- Added initial version of scripts to build basic win32 setup.
-
-26/01/2004
-SPoG
-- Added storing EnginePath for each game in local.pref.
-- Added EnginePath editing to prefs dialog.
-- Added vfs shutdown/init when gamename changes.
-- Added vfs shutdown/init when enginepath changes.
-
-25/01/2004
-SPoG
-- Fixed filtering updates.
-- Moved default bsp menu to <AppPath>/<GameFileName>/default_build_menu.xml
-- Moved user bsp menu to <AppData>/<Version>/<GameFileName>/build_menu.xml
-- Moved synapse.config to <AppPath>/<GameFileName>/synapse.config
-- Moved game-specific .xlink files to <AppPath>/<GameFileName>/*.xlink
-
-25/01/2004
-SPoG
-- Redesigned filter system:
-  - Filtered status updated when filterable attributes change.
-  - Supports per-brush-face filtering.
-- Removed long-dead project-settings stuff:
-  - Moved gamemode and gamename storage into local.pref temporarily.
-  - Moved bsp commands over to a new format, disabled gui editing for now.
-
-20/01/2004
-SPoG
-- Changed win32 Application Data path lookup to use win32 API instead of getenv.
-
-14/01/2004
-SPoG
-- Fixed main menu mnemonics.
-- Fixed crash on exit after viewing pointfile.
-
-13/01/2004
-SPoG
-- Fixed not always resetting 
-component-mode when selection is cleared.
-
-11/01/2004
-Tr3B
-- Added parse/write support for BrushDef3 and PatchDef3.
-  Requires editing synapse.config to enable.
-SPoG
-- Rearranged menus:
-  File = new/open/import/export
-  Edit = manipulate scene hierarchy and selection
-  View = toggle entityinspector/entitylist/surfaceinspector/camera/xy
-    edit camera/xy parameters
-    filters/hideshow/region
-  Modify = transform scene elements
-  Build = bsp menu
-- Fixed Brush-Primitives support:
-  Requires editing synapse.config to enable.
-  Supports load/save of BP mapfiles, and editing BP texdefs in surface inspector
-  (Not yet possible to convert between formats).
-  
-15/12/2003
-SPoG
-- Changed user-prefs to be stored in user-profile directory on win32.
-
-14/12/2003
-SPoG
-- Fixed entitylist window visibility tracking.
-- Implemented find/replace-shader for patches.
-- Changed get-texture-from-selected to update find/replace-shader dialog.
-- Implemented reparent-selected for more than one selected node.
-- Added checks to stop assignment of invalid texture names.
-- Fixed uninitialised texture-compression setting.
-- Fixed bsp menu.
-
-------- spog_branch merged to trunk
-
-10/12/2003
-SPoG
-- Ported imagehl module.
-- Ported imagepng module.
-
-03/12/2003
-SPoG
-- Changed brush winding generation to use use double precision planes.
-- Fixed tracking of modifier key state.
-
-29/11/2003
-SPoG
-- Replaced mathlib with c++ vector/matrix library.
-- Added expression-templates for common vector/matrix operations.
-
-21/11/2003
-SPoG
-- Refactored component-selection stuff.
-- Ported m4x4_t library to c++ Matrix4.
-
-16/11/2003
-SPoG
-- Changed shortcuts.ini to be written automatically.
-- Moved more prefs into specific modules.
-- Changed c++ NULL usage to 0 for maximum portability.
-
-11/11/2003
-SPoG
-- #include cleanup.
-- Added debug output/assert for module initialisation.
-
-09/11/2003
-SPoG
-- Refactored status bar stuff.
-- Refactored window updates to use closures.
-- General cleanup and refactoring.
-
-08/11/2003
-SPoG
-- Increased priority of window redraw events.
-- Ported model module to new module system.
-
-07/11/2003
-SPoG
-- Refactored window updates.
-
-05/11/2003
-SPoG
-- Changed menubar/toolbars to be non-detachable.
-- Fixed empty-undos created when left-clicking in XY window.
-- Refactored camera modelview/projection matrix updates. 
-- Moved application-specific code out of mainframe.cpp.
-- Reinstated brush/entity count in statusbar.
-
-04/11/2003
-SPoG
-- Reinstated instant status-bar updates.
-
-30/10/2003
-SPoG
-- Fixed crosshair cursor in clipper mode.
-
-29/10/2003
-SPoG
-- Changed camera to maintain valid projection/modelview matrices.
-- Moved manipulator-transform update from frustum class to selection system.
-- Removed frame-rate dependency in 3d-window freelook.
-
-27/10/2003
-SPoG
-- Smoothed out xy-window mouse-chasing.
-- Changed mouse-chasing to occur 16 pixels inside the window edges.
-- Changed xy-window to maintain valid projection/modelview matrices.
-- Fixed invalid workzone generated when deselecting with no selection.
-
-26/10/2003
-SPoG
-- Ported changes from trunk between rev 3818 and rev 4036.
-
-25/10/2003
-SPoG
-- Refactored xy-window mouse event handling.
-
-22/10/2003
-SPoG
-- Fixed freelook focus-out event.
-- Changed selection mouse event handling to use modifiers on button-release.
-
-21/10/2003
-SPoG
-- Refactored all mouse event handling for camera window.
-- Changed menus/toolbars/accelerators to use anonymous closures.
-
-20/10/2003
-SPoG
-- Fixed get-pointer-in-screen-coordinates on win32.
-- Changed patch prefs to use preference-system module.
-- Fixed selection of side-on faces.
-- Changed brush rendering to avoid glPushClientAttrib - workaround for ATI driver issue.
-
-19/10/2003
-SPoG
-- Changed VFS directory initialisation to occur after module initialisation.
-- Changed load-preferences to occur after module initialisation.
-- Added preference-system module.
-- Changed undo prefs to use preference-system module.
-- Restored splash screen with non-intrusive behaviour.
-- Cleaned up main-toolbar creation.
-- Fixed floating windows behaviour when main window is minimised.
-- Changed shader-list parsing to use new script tokeniser.
-- Changed deprecated code using GtkPixmap to use GtkImage.
-- Removed bitmap-loading from core.
-- Removed pc-speaker beep on map-save.
-
-17/10/2003
-SPoG
-- Fixed crash when trying to undo on an empty undo queue.
-- Refactored gtkdlgs, using helper functions to create common widgets.
-- Changed Dialog class to use std::list for data.
-
-13/10/2003
-SPoG
-- Refactored entity inspector.
-- Removed miscellaneous unused functions.
-- Refactored qe3 header.
-- Moved texture-window preferences into texwindow.cpp.
-
-12/10/2003
-SPoG
-- Moved layout-mode dependant code into main-frame creation.
-- Replaced prefs system with new import/export system.
-- Fixed gcc3.3 build errors.
-
-11/10/2003
-SPoG
-- Moved unnecessary methods from MainFrame into free functions.
-- Removed unsupported toolbar buttons and menu items.
-- Changed misc->gamma to not require restart.
-- Fixed unmaximised window-size when loading main window maximised.
-- Fixed saving of rotate increment preference.
-
-10/10/2003
-SPoG
-- Fixed keyboard shortcuts intercepting input to texture-subsets text-entry.
-
-09/10/2003
-SPoG
-- Fixed gcc3 build errors, compiled and tested on linux.
-
-08/10/2003
-SPoG
-- Fixed brush snap-to-grid creating huge coordinate values.
-- Fixed minor bug in selection menu.
-
-07/10/2003
-SPoG
-- Cleaned up MainFrame.
-- Added quantisation of plane pts when dragging.
-- Fixed create-empty-brush bug.
-
-06/10/2003
-SPoG
-- Moved control of camera keyboard-accelerators into camera window module.
-
-05/10/2003
-SPoG
-- Separated keyboard-accelerators from menu items, using functors.
-- Completed factoring out HandleCommand.
-
-04/10/2003
-SPoG
-- Changed 4-way-split mode to automatically reposition separators when window size changes.
-- Fixed gtk error in floating-entity/textures/console window.
-- Fixed position of console horizontal pane separator.
-
-03/10/2003
-SPoG
-- Work-in-progress factoring out HandleCommand.
-
-02/10/2003
-SPoG
-- Fixed pink icons on main window on win32.
-- Replaced g_bIgnoreCommands with signal block/unblock.
-- Refactored MainFrame startup.
-
-01/10/2003
-SPoG
-- Fixed entity-window redraw on selection change.
-- Moved control over VFS init/shutdown to module system.
-- Fixed failure to release translucency render-states.
-- Added support for realise/unrealise of all opengl texture objects.
-- Refactored startup/shutdown logic.
-  Changed quit commands to do nothing but call gtk_main_quit().
-  Added code after gtk_main() to destroy stuff.
-- Changed 25ms timeout-handler to an idle-handler for window updates.
-  (reduces redraw-request response time on fast machines)
-- Moved gl-shutdown control to glwidget.
-  Textures are realised/unrealised when the shared context is created/destroyed.
-- Fixed lack of a valid gl context when unrealising gl textures.
-
-30/09/2003
-SPoG
-- Added support for translucent entity rendering.
-
-29/09/2003
-SPoG
-- Changed all global modules to use GlobalModule helper templates.
-- Ported qgl.c to c++.
-- Changed win32 project to dynamic-link with opengl32.lib.
-
-28/09/2003
-SPoG
-- Added new experimental xml preference import/export system.
-- Refactored dialog base class:
-  Moved common dialog-element-creation code into helper functions.
-  Changed UpdateData to use per-element callback functions.
-- Refactored preferences dialog.
-
-26/09/2003
-SPoG
-- Reversed winding order for circle primitives.
-
-25/09/2003
-SPoG
-- Fixed slow selection response in large maps.
-
-21/09/2003
-SPoG
-- Added sharing of global modules within a client.
-- Added quake map module and wal image module.
-- Ported mip image module and hlw image module.
-- Cleaned up imagehl module.
-- Fixed crash in pcx image module.
-- Rewrote md3 model module.
-- Ported mdl, md2 and mdc model modules.
-- Added filtering of q1/q2 clip brushes.
-- Added ati-crash-workaround rendering path.
-- Upgraded to gtk+-2.2.4 on win32:
-  Fixed capslock affecting shortcut-keys.
-- Upgraded to gtkglext-1.0.4 on win32.
-- Fixed copy/paste.
-- Added shortcut-key support to entity treeview.
-
-17/09/2003
-SPoG
-- Fixed failure to call vfsFreeFile on an empty buffer.
-- Fixed calling convention for dlls in new module system.
-- Changed map.cpp to support maps without a worldspawn entity.
-- Fixed crash on attempting to clone a map root.
-- Added filter-update calls after loading or cloning stuff.
-- Fixed reference cache failing to save a file.
-
-16/09/2003
-SPoG
-- Refactored client-side module system code for direct module access.
-- Changed shaders, vfs, model, brush, patch and entity module interfaces
-  to use abstract base class.
-- Removed unused functions from shaders and vfs interfaces.
-
-15/09/2003
-SPoG
-- Removed synapse dependencies for win32 makefiles.
-- Added find-first-module-of-type helper function.
-
-14/09/2003
-SPoG
-- Added new lightweight module system:
-  Initialises each module the first time it is requested.
-  Does not allow configurations with cyclic runtime dependencies.
-  Provides templates for simple type-safe client-side implementation.
-  Requires no client-side linkage.
-- Split radiant API into multiple APIs:
-  core, textures, scenegraph, selection, renderstate, filters, filetypes.
-- Ported radiant, core, mapq3, mapxml, md3model, entity, shaders, image,
-  vfspk3, archivewad, archivepak, archivezip to new module system.
-
-11/09/2003
-SPoG
-- Removed edge and vertex integer-snapping during selection.
-
-10/09/2003
-SPoG
-- Replaced map in referencecache.cpp with a hashtable.
-- Changed ReferenceCache interface to take a path string,
-  which can be either absolute or relative.
-
-08/09/2003
-SPoG
-- Cleaned up qertypes.h - split into multiple files.
-- Moved texdef stuff into itexdef.h.
-- Fixed shutdown destruction order bug. 
-
-07/09/2003
-SPoG
-- Refactored texwindow.cpp.
-  Moved texture management code into textures.cpp.
-  Added textures api.
-  Replaced globals from texwindow.h with accessor functions.
-- Cleaned up shaders module.
-  Removed color-shader stuff.
-  Rewrote shader-activation logic to use textures API.
-  Removed appshaders API.
-- Refactored shutdown logic.
-  Moved non-mainframe shutdown stuff into Radiant_Shutdown().
-  Added deferred render-state realisation.
-- Fixed failure to create gl contexts in 16-bit mode for latest nvidia drivers.
-- Changed hashtable template to use traits parameter
-  for case-insensitive hasher and keyequal functions.
-- Removed unused functions from qerplugin API.
-
-02/09/2003
-SPoG
-- Refactored code to remove global-object accesses:
-  Passing global objects as parameters to functions.
-- Refactored texwindow.
-- Moved synapse server out of pluginmanager.
-  Changed pluginmanager to handle nothing but IPlugin stuff.
-
-01/09/2003
-SPoG
-- Refactored scenelib.h, split into multiple files.
-- Refactored #includes related to scenelib.h.
-- Refactored preferences for xywindow and camwindow.
-- Refactored references to g_pParentWnd in xywindow and camwindow.
-
-30/08/2003
-SPoG
-- Ported changes from trunk since 17/08/2003.
-- Ported all changes from bug800-spog_branch (vfs rewrite and q1 support).
-
-29/08/2003
-SPoG
-- Refactored component-selection stuff.
-- Fixed selection-tracking bug in patches.
-
-28/08/2003
-SPoG
-- Added support for line-strips to Selectors.
-- Fixed selection for entity treeview.
-- Refactored external-resource loading.
-
-20/08/2003
-SPoG
-- Fixed snap-to-grid in edge and vertex modes.
-- Added a default model to use when a model load fails.
-
-19/08/2003
-SPoG
-- Changed snap-to-grid to vastly reduce the possibility of creating an invalid plane.
-
-17/08/2003
-SPoG
-- Ported changes from trunk since 01/08/2003.
-
-12/08/2003
-SPoG
-- Changed entity key/value tracking to only track keys already added to the entity.
-- Fixed bug causing undo system to track scene changes during a queue-flush operation.
-
-12/08/2003
-SPoG
-- Fixed bug in project settings bsp-commands display.
-- Fixed empty undos being created by rotation buttons.
-- Fixed rotation pivot for rotation buttons.
-
-09/08/2003
-SPoG
-- Added property svn:eol-style=native to all text files.
-- Added property evn:eol-style=CRLF to all dsp and dsw files.
-- Partially ported bobtoolz to use new spog_branch module APIs.
-- Removed Sys_UpdateScene.
-- Added Map_Name() for access to currentmap variable.
-- Added initial drag-n-drop support for graph tree-model.
-
-01/08/2003
-SPoG
-- Fixed uninitialised refcount in entity key class.
-- Fixed memory leak in shader parsing.
-- Added reference-counting holder for worldspawn node.
-- Moved string class and utilities into a new header in libs dir.
-- Fixed external-file-resource cache to use case-insensitive name compare on win32.
-- Fixed shaders to use case-insensitive name compare.
-- Fixed shader module to display SHADER_NOT_FOUND when appropriate.
-- Changed the default texture name to "NULL" instead of SHADER_NOT_FOUND.
-- Changed move-into-entity to perform parent-selection-to-last-selected-node.
-- Added a new implementation of GtkTreeModel operating directly on the scenegraph.
-- Fixed disable-screen-updates to queue update requests instead of ignoring them.
-- Merged from trunk (tag head-cvs2svn-2).
-
-22/07/2003
-SPoG
-- Changed scale/flip-selection to use the manipulator as a pivot point.
-- Added OnShutdown callback for CSynapseClient, used in entity module.
-- Fixed console updates when loading maps/models.
-
-20/07/2003
-SPoG
-- Added renderer support for qer_alphatest and qer_cull.
-- Merged 'picomodule' module into 'model' module.
-- Added rendering of area-selection rectangle.
-
-19/07/2003
-SPoG
-- Merged from trunk.
-
-18/07/2003
-SPoG
-- Disabled deleting classname key in entity inspector window.
-- Cleaned up some stuff in selection system.
-- Added basic versions of std::mem_fun and std::bind1st to function-object library.
-
-10/07/2003
-SPoG
-- Implemented connect-entities.
-
-09/07/2003
-SPoG
-- Completed local-space rotation manipulator.
-- Fixed cloning objects within a misc_model subgraph.
-- Fixed crash bug in loading certain models.
-
-06/07/2003
-SPoG
-- Added function-object library header, similar to boost::function.
-- Changed undo system to improve performance.
-- Refactored entity inspector implementation.
-
-22/06/2003
-SPoG
-- Refactored selection observing stuff.
-- Changed shader parsing to use new tokeniser.
-- Changed implementation of entities to use generic container.
-- Refactored entity wrapper system.
-- Fixed undo on delete/reset entity keys.
-
-21/06/2003
-SPoG
-- Added rendering of target/targetname connection lines.
-- Moved entity and eclass stuff out of qertypes.h into ientity and ieclass.
-- Refactored entity_t to hide it behind Entity interface.
-- Removed global project settings entity.
-- Cleaned up bsp-command editing in project settings dialog.
-
-17/06/2003
-SPoG
-- Fixed back-face-culling for selections by working in screen-space.
-
-16/06/2003
-SPoG
-- Added workaround for nvidia driver opengl vertex arrays bug.
-
-15/06/2003
-SPoG
-- Refactored Patch implementation.
-- Refactored scene graph system to allow multiple graph instances.
-
-13/06/2003
-SPoG
-- Added snap-selected-components-to-grid for faces edges and vertices.
-
-11/06/2003
-SPoG
-- Improved normal-quantisation code.
-
-10/06/2003
-SPoG
-- Changed renderer vertex types to be struct instead of typedef'd array.
-- Added experimental quantisation of normals.
-
-05/06/2003
-SPoG
-- Fixed intermittent crash in face-fit-texture.
-- Changed patch rendering to display components only in vertex mode.
-
-02/06/2003
-SPoG
-- Added nameable interface for scene graph nodes.
-- Fixed undo for set-detail and set-structural.
-- Added rendering of arrow for angled entities.
-
-01/06/2003
-SPoG
-- Fixed handling of invalid planes during brush b-rep build.
-- Refactored brush copy-construction/assignment.
-- Fixed lack of rebuild after removing empty faces.
-- Added lightjunior entity display.
-- Fixed display of spawnflags/info for selected entity.
-- Fixed update of entity window on setting spawnflags.
-- Fixed botclip filtering.
-- Fixed uninitialised alpha channel on jpg images by ignoring alpha.
-
-31/05/2003
-SPoG
-- Cleaned up undo calls in brush and patch implementation.
-- Changed brush implementation to defer rebuilds until needed.
-- Fixed undo for find/replace shader.
-- Refactored brush implementation, removed empty-face list.
-- Fixed crash on loading unrecognised entities containing brushes.
-- Fixed crashes in renderer caused by state-stack underflow.
-- Fixed handling of invalid and duplicate planes during brush editing.
-- Fixed failure to save brush faces during save-as.
-- Refactored brush data members.
-
-28/05/2003
-SPoG
-- Fixed crash on selecting stuff from entity list window.
-
-27/05/2003
-SPoG
-- Fixed window title after save-as.
-
-22/05/2003
-SPoG
-- Refactored selection system interface slightly.
-- Removed old brushwrapper stuff.
-- Fixed clipper-split-selection to keep both parts selected.
-
-21/05/2003
-SPoG
-- Added select-faces-by-shader.
-- Fixed find/replace-shader.
-
-19/05/2003
-SPoG
-- Fixed rotation on misc_model.
-
-13/05/2003
-SPoG
-- Fixed lack of undo on create-n-sided-brush.
-
-29/04/2003
-SPoG
-- Fixed per-face find/replace and per-face nudge rotation.
-
-25/04/2003
-SPoG
-- Fixed find-brush.
-- Changed rotation buttons to use perfect precision for 90-degree rotations.
-
-24/04/2003
-SPoG
-- Added find-dir-for-relative-filename and find-dir-for-absolute-filename to vfs.
-- Changed resource manager to handle per-mod resources using vfs.
-- Changed resource manager to allow resources with absolute paths.
-- Fixed selection-test behaving like an ellipse instead of a rectangle.
-
-23/04/2003
-SPoG
-- Changed selection test to choose closest-to-cursor over closest-to-camera.
-
-22/04/2003
-SPoG
-- Fixed reference counting on shaders loaded from a texture directory.
-- Fixed show-in-use and show-all shaders.
-- Fixed undo for patch-set-shader.
-- Changed shaders module to use STL map container instead of CShaderArray.
-- Fixed SelectAllOfType for entities and patches.
-- Cleaned up unused functions in shaders API.
-- Decoupled selecting a texture in texture window from applying a texture to selection.
-
-21/04/2003
-SPoG
-- Fixed memory leaks in image loaders, texdef_t, csg subtract, picomodel module.
-- Fixed uninitialised memory references in renderer, texdef_t, eclass loader, undo system.
-- Refactored tga loader.
-- Cleaned up image module, enabled pcx and bmp loaders.
-
-17/04/2003
-SPoG
-- Fixed shift-texture on selected brush faces.
-- Changed brush b-rep algorithm to have higher tolerance for similar planes.
-- Changed brush b-rep algorithm to always produce a valid connectivity graph.
-- Added setting/getting shader for patches.
-
-16/04/2003
-SPoG
-- Fixed tracking of in-use shaders (though undo queue still keeps shader references).
-- Changed brush faces to store state in undo-system cleanly.
-- Fixed flush & reload shaders and sleep/wake.
-- Ensured that shaders are never leaked.
-- Fixed bool conversion warnings.
-
-15/04/2003
-SPoG
-- Added clamping of planepts on export to nearest 65536th of 1 unit.
-- Changed m4x4 rotation functions to use double-precision for angles in radians.
-- Changed m4x4 quaternion rotation to use double-precision internally.
-- Changed float printing to use %g instead of %f (strips trailing zeros).
-
-13/04/2003
-SPoG
-- Fixed brush import failing to update bounding boxes.
-
-11/04/2003
-SPoG
-- Refactored Brush class into Brush, BrushInstance and BrushNode.
-- Fixed various flaws stopping brush b-rep algorithm from being 100% reliable.
-
-02/04/2003
-SPoG
-- Changed manipulator to move to position of selected brush components.
-
-01/04/2003
-SPoG
-- Fixed xml parser failing to resolve predefined entities.
-
-31/03/2003
-SPoG
-- Fixed asserts in brush manipulation when creating invalid brushes.
-- Removed automatic update of current texdef.
-- Added Get Texture and Set Texture to textures menu.
-
-29/03/2003
-SPoG
-- Fixed array template failing to free zero-sized allocations.
-- Changed clipper mode to behave as a component-editing-mode.
-- Removed right-click-to-drop-clip-point - use X and leftclick instead.
-
-28/03/2003
-SPoG
-- Changed scene graph to sort objects in ascending order of creation time.
-
-27/03/2003
-SPoG
-- Fixed bug in clone-selection causing only first selected brush to be cloned.
-- Optimised select-all for brush/patch components.
-- Changed edge/face/vertex toggles to toggle correctly.
-
-26/03/2003
-SPoG
-- Removed win32/x dependencies from gl interface.
-- Removed win32/glib dependencies from core interface.
-- Replaced void* in gtk helper functions with forward-declared GtkWidget.
-- Changed gtk helper functions to return enumerated values instead of win32 IDOK.
-- Removed WINAPI macro for __stdcall from all interfaces.
-- Removed unnecessary dependencies from core stdafx/qe3 header.
-
-25/03/2003
-SPoG
-- Changed class-level render states to be static for Brush and Patch.
-- Refactored brush implementation - breaking it up into smaller parts.
-- Added refcounted ptr template to track refcounts.
-- Fixed refcount bug introduced by new clone-selection.
-- Fixed warnings in brush implementation.
-- Cleaned up plugin interface header inclusion.
-
-24/03/2003
-SPoG
-- Fixed crash on building unbounded brushes in release build.
-- Changed assertion failures to be non-fatal in release build.
-- Moved OS-specific gl headers into separate files.
-- Moved app-shaders interface into a separate file.
-- Cleaned up dependencies for brush implementation.
-
-23/03/2003
-SPoG
-- Added per-instance selection of patch vertices.
-- Fixed per-instance vertex selection rendering on multiple instances.
-- Refactored patch/brush render code.
-- Changed manipulator transforms to convert to local space before applying.
-- Fixed selection test for picomodule meshes.
-- Fixed selection test winding order for triangles.
-- Fixed update of window title on new-map and load-map.
-- Changed selection to work with exactly side-on faces.
-- Refactored instance implementation to reduce code bloat.
-- Fixed map export always exporting root.
-
-21/03/2003
-SPoG
-- Fixed external resource tracking to preserve uppercase characters in names.
-- Changed clone-selection to not use global copy/paste.
-
-20/03/2003
-SPoG
-- Changed map-save to save all saveable files that the map references.
-
-16/03/2003
-SPoG
-- Moved hashtable and hashfunc into libs.
-- Cleaned up renderer interface and selection interface.
-- Refactored frustum testing class.
-
-12/03/2003
-SPoG
-- Moved winding-specific stuff from brush obj to winding obj.
-- Refactored filter subsystem to remove dependency on entity/brush/patch.
-
-07/03/2003
-SPoG
-- Fixed crash when clicking cancel from patch cap-dialog.
-- Changed selection tests to ignore back-facing faces.
-
-05/03/2003
-SPoG
-- Fixed failure to release cloned scene graph nodes.
-- Fixed selection manager failing to release render states.
-- Fixed eclass system failing to release render states.
-
-04/03/2003
-SPoG
-- Fixed writing-past-end of vertex arrays in brush rendering.
-- Fixed releasing data stored in undo system when deleting undoables.
-- Fixed crash in misc_model when model fails to load.
-- Fixed undo for clone/rotate/flip/nudge/set-texture operations.
-- Cleaned up surface dialog.
-
-01/03/2003
-SPoG
-- Changed clipper split-selection to keep result selected.
-- Cleaned up and finalised picomodule, adding to cvs.
-
-28/02/2003
-SPoG
-- Cleaned up entity list window.
-- Fixed crash on freeing a map while entity list node is selected.
-- Fixed crash on clone/copy of externally referenced brushes.
-- Added multiple-selection support to entity list.
-- Added updating entity list selection display on selection changes.
-
-26/02/2003
-SPoG
-- Added stl_warnings include.
-- Fixed tracking of map-modified-since-last-saved.
-
-24/02/2003
-SPoG
-- Fixed missing map-release when map-load fails.
-- Changed map-rename (save-as) to flush undo queue.
-- Fixed bug in exporting selections.
-
-23/02/2003
-SPoG
-- Fixed redo on changing misc_model "model" key.
-
-22/02/2003
-SPoG
-- Changed undo interface to factor out global undo system.
-
-21/02/2003
-SPoG
-- Started cleaning up Map subsystem.
-
-20/02/2003
-SPoG
-- Added 'clone subgraph' feature to core, using direct xml import/export.
-- Added 'save' feature to reference cache.
-- Added scope timer object.
-- Changed scene graph interface to allow setting scene root.
-- Changed core to use reference cache to track current map.
-- Removed mapmodel module.
-- Fixed relative paths for loading maps as misc_model.
-
-19/02/2003
-SPoG
-- Changed model/map modules to register their file types on load.
-- Added map module manager to support unlimited map loader modules.
-
-18/02/2003
-SPoG
-- Changed vertex buffer template to support resizing.
-- Changed vertex buffer search algorithm to iterate instead of recurse.
-
-17/02/2003
-SPoG
-- Fixed sorting bug with render-states.
-- Fixed colour state when disabling gl_color_array.
-- Fixed unterminated loop in scenegraph traversal.
-- Fixed freeing project entity twice on shutdown (infinite loop).
-- Fixed failing to destroy the scene graph on exit (oops).
-
-07/02/2003
-SPoG
-- Added updating current texdef when a face is selected.
-- Fixed crash when creating a brush with duplicate planes.
-
-06/02/2003
-SPoG
-- Fixed various issues with 'save region'.
-- Changed default current texdef to use game-specific scale.
-- Changed brush creation to use current texdef.
-- Changed clipper to use current texdef.
-- Fixed bug in selection counting for patch control points.
-
-05/02/2003
-SPoG
-- Fixed reversed solid-selection-outline preference.
-- Finished factoring out face_t.
-- Added script token writer interface for map export.
-- Changed map export interface to use script token writer.
-
-04/02/2003
-SPoG
-- Added depth-buffer-write enable/disable feature to renderer.
-- Changed Pointfile class to use renderer.
-- Continued factoring out face_t.
-
-03/02/2003
-SPoG
-- Fixed temporary objects leaving dangling references in the undo system.
-- Changed import-map to not modify existing selection.
-
-02/02/2003
-SPoG
-- Fixed frustum culling for transformed nodes.
-- Fixed hide/filter/region to work independently.
-- Added highlighting of selected brush faces in component mode.
-- Fixed bug detecting thin area-selection if dragged down or left.
-- Renamed brush_type to Brush.
-- Renamed face_type to Face.
-- Started factoring out face_t.
-
-01/02/2003
-SPoG
-- Improved edge and vertex manipulation.
-- Removed unnecessary graph traversals for rendering/selection.
-
-31/01/2003
-SPoG
-- Merged changes since last merge from merge-1_2_10-post to spog_branch.
-- Merged changes since last merge from HEAD to spog_branch.
-- Tagged HEAD after merging as 'merge-spog_branch-post'.
-- Added walker to merge sibling worldspawns.
-- Merged changes to Construct for PPC from trunk.
-- Fixed over-enthusiastic worldspawn merging.
-- Fixed misc_model "angle" key setting pitch instead of yaw.
-- Fixed entity set-key-value changing scene-graph topology.
-
-30/01/2003
-SPoG
-- Added subgraph traversal feature to scenegraph traversal.
-
-29/01/2003
-SPoG
-- Changed scene graph implementation to allow nested traversals.
-
-28/01/2003
-SPoG
-- Fixed angles key order for misc_model.
-
-27/01/2003
-SPoG
-- Fixed typo causing set-texture-of-selection to behave incorrectly.
-
-26/01/2003
-SPoG
-- Replaced all tabs with spaces in CHANGES.
-- Fixed entity bounds updates for 'light'.
-- Fixed code that doesn't conform to c++ standard as enforced by gcc.
-
-24/01/2003
-SPoG
-- Added missing file: icharstream.h.
-- Fixed bug with synchronisation of brush-face instance data.
-- Added .map format import/export interfaces.
-- Removed last remnants of IBrush.
-- Removed IPatch.
-- Moved walkers defined in in mainframe.cpp to appropriate places.
-
-23/01/2003
-SPoG
-- Changed scenegraph traversals to use a compiled graph.
-
-20/01/2003
-SPoG
-- Changed selection interface to hide per-instance data.
-- Added streaming tokeniser for .map format.
-- Changed mapq3 module to use streaming tokeniser.
-- Added xml stream interface for input and output.
-- Added xml stream parser based on libxml2 SAX.
-- Changed mapxml module to use xml stream input.
-- Changed brush and patch to use xml stream input.
-- Added xml stream writer.
-- Changed mapxml module to use stream output.
-- Changed brush and patch to use xml stream output.
-
-
-16/01/2003
-SPoG
-- Disabled pivot updates while selection is being manipulated.
-- Changed pivot calculation to use instanced world-bounding-box.
-- Fixed crash bug in PositionView.
-
-14/01/2003
-SPoG
-- Merged with branch merge-1_2_10-post at tag spog_merge_merge-1_2_10-post
-- Removed 10k+ lines of unused #if 0 code.
-- Removed unused declarations in qe3.h.
-- Removed brush and face types from qertypes.h.
-- Removed plugin API stuff dependant on brush type.
-- Added per-instance selection for brush faces.
-
-08/01/2003
-SPoG
-- Added selection counters for primitive/component modes.
-- Added face-drag mode (default shortcut key = F).
-- Added face-centre-point rendering/selection/editing.
-
-07/01/2003
-SPoG
-- Changed selection to work per-instance.
-
-06/01/2003
-SPoG
-- Changed selector interface to allow per-entity selection tests.
-
-06/12/2002
-SPoG
-- Added selection-test and selector objects to clean up selection system.
-- Unified key modifiers for selection in both primitive and component modes.
-- Added mapmodel module to load .map and .xmap as misc_model.
-
-02/12/2002
-SPoG
-- Added debug rendering of a selection test.
-- Fixed bugs in triangle/line clipper, making selection work properly.
-- Refactored selection system interface.
-- Added undo for texture nudge.
-- Fixed minor render-state bug.
-
-29/11/2002
-SPoG
-- Optimised wireframe drawing of brushes with back-face culling.
-- Optimised brush-winding generation.
-- Changed winding generation to be more robust with large world extents.
-- Fixed crashes with unbounded-face and degenerate-edge cases.
-
-20/11/2002
-SPoG
-- Completed rotation manipulator.
-- Added translation manipulator for the default editing mode.
-- Changed XY mouse-chaser speed to depend on distance mouse moved outside window.
-
-15/11/2002
-SPoG
-- Added initial version of maya-style manipulators - rotation manipulator.
-
-07/11/2002
-SPoG
-- Fixed false asserts in Brush ConstructPrefab.
-- Undo system optimisation - uses binary-sorted container to speed up finding already-added objects.
-- Fixed crash when transforming objects which don't support edit_interface.
-- Fixed clone command to nudge the selection after cloning.
-- Fixed clipper to remove brushes that are completely behind the clip plane.
-
-06/11/2002
-SPoG
-- Brushes: cleaned up per-face operations to use face visitor pattern.
-- Fixed setting brush face texdef, with fully functioning undo on individual brush faces.
-
-04/11/2002
-SPoG
-- Refactored renderer to two objects, camera and XY renderer - XY uses entity shaders.
-- Experimental pivot object.. work-in-progress.
-- Modified scene-graph instance-caching to maintain multiple instances within nodes.
-- Fixed undo bug, deleting a void* doesn't call the destructor.
-- Rewrote filters system to work with scene graph system.
-- Cleaned up quake entity module to provide same functionality as before.
-- Refactored render-state cache to use generic hashtable and reference-cache templates.
-
-19/10/2002
-SPoG - spog_branch - experimental - work-in-progress
-- added scene graph library: defines interfaces, generic graph node types,
-  re-usable systems for traversals, traversal paths, node containers,
-  multiple-instance caching of world-space-transforms/bounding-volumes/visibility.
-- added scene graph traversals to replace all traversals of 'active_brushes',
-  'selected_brushes', 'filtered_brushes' and 'entities' linked-lists.
-- added view module: view-volume-culling system acting on the scene graph,
-  uses scene heirarchy to minimise culling tests per frame.
-- added opengl-state module: sorts opengl-state objects (shaders) to minimise
-  opengl state changes during rendering.
-- added renderer module: culls objects outside the view volume,
-  gathers non-culled renderable objects from the scene graph,
-  keeps track of state during traversal, adds renderable objects to correct opengl-state.
-- added selection module: sets view volume to the selection box/ray, culls
-  objects outside the view volume, gathers non-culled selectable objects
-  from the scene graph (entity/primitive/component),
-  selects gathered objects (select/toggle/cycle) or moves things if already-selected.
-- added patch module: encapsulates a patch as a scene graph node,
-  optimised patch tesselation.
-- added brush module: encapsulates a brush as a scene graph node,
-  adapts multiple-brush operations to use the scene graph.
-- adapted entity module: encapsulates an entity as a scene graph node/subtree,
-  shares common code between different visualised entity types.
-- adapted model module: encapsulates a model as a scene graph node/subtree.
-- added undo module: completely new compact infinite-undo-system,
-  operates on undoable objects, uses minimal-state data to store objects,
-  uses refcounting to undo "deleted" objects.
-
-TODO: cleanup: many simple things are still broken or not functioning in the right way..
-see !\todo items in the code (not all are documented yet though).
-Selection module probably needs refactoring some more - perhaps split off the move-already-selected stuff.
-The dependencies are still pretty bad.. need to refactor stdafx.h/qertypes.h.
-Some of the above modules are not really modules, they're static-linked to the core, but could easily be dynamic-linked.
-The interfaces to brushes and entities still expose brush_t and entity_t for backwards-compatibility.
-NOTE: some todos are #if 0 because their functionality is (or will be) replaced by the new systems.
-
------- branch point - spog_branch
-
-30/08/2003
-SPoG
-- Ported changes from trunk.
-
-17/08/2003
-SPoG
-- Ported changes from trunk.
-- Added quake pack to win32 setup scripts.
-- Fixed crash in RunBsp.
-
-17/05/2003
-SPoG
-- Renamed stream interfaces with C and I prefix.
-- Shoehorned bytestream into idatastream.
-- Moved member classes out of IArchive, replaced with member typedefs.
-- Renamed filesystem, path, dynamic string, file input stream with C and I prefix.
-- Documented filesystem, path, dynamic string, file input stream.
-- Cleaned up game-specific encapsulation classes a little.
-
-16/05/2003
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=815
-  found out about string_t that slept through my reviews
-
-Updated list of broken stuff on this branch:
-
-- include/bytestream.h: remove this file, extend idatastream.h header
-from the code conventions:
-  include/ directory:
-  This directory is holding the API header files for the synapse modules (plus a few build control and version related headers)
-  All headers that describe synapse APIs should start with an i: ishader.h igl.h 
-
-  The few files in include/ that don't start with a lowercase i are specific files for build control and configuration.
-  Regular developement never creates non i-prefixed files in include/
-  
-the merge with IDataStream goes like this (note the corrected class names):
-class IInputStream
-class IOutputStream
-
-class IDataStream : public IInputStream, IOutputStream
-
-class ISeekableStream
-class ISeekableInputStream : public IInputStream, public ISeekableStream
-class ISeekableOutputStream : public IOutputStream, public ISeekableStream
-
-typedef unsigned int size_type; goes away, use size_t
-
-- include/iarchive.h
-
-renamed VisitorFunc to IArchiveVisitor
-move it out of IArchive class (keep it in iarchive.h though)
-from code conventions:
-  Don't declare classes inside classes. Makes the code harder to read and isn't useful to anything.
-
-- remove libs/bytestreamutils.h
-put that functionality into the IStream stuff / idatastream.h stuff
-anything you retrieve from an IStream should be endian-correct
-
-- libs/filestream.h
-I'd rather see a header without embedded code, and a .cpp file for it
-
-- libs/fs_filesystem.h libs/fs_path.h
-those totally lack documentation about what they are doing
-same as above. way too much embedded code. makes things harder to maintain. implement in a .cpp
-and as usual, name the classes correctly, C and I prefixes
-
-- gamespecific_t: rename correctly to CGameSpecific
-I like the idea of gathering all hardocded game-specific behaviours inside one same class.
-But is it really the topic of bug800?
-
-- gamespecific_executable_t: rename correctly to CGameSpecificExecutable
-shouldn't this be merged with CGameSpecific?
-
-12/05/2003
-SPoG
-- Fixed win32 build error (win32 has no <dirent.h>).
-- Added dir_good() check to handle failure of dir_open() in posix DIR wrapper.
-- Renamed dynamic_string_t and path_t to DynamicString and UnixPath respectively.
-- Removed unnecessary use of 'inline' and 'virtual' keywords in class definitions (bad habit).
-- Documented archive interface.
-
-09/05/2003
-TTimo
-- some easy fixes to get it to startup on Linux
-- tagging the current source as bug800-spog, preparing rollback
-
-
-SPoG
-- Added an implementation of IArchive to do OS filesystem access.
-- Changed vfspk3 to use above implementation for OS filesystem access.
-- Added const qualifiers to vfsGetFullPath and everything dependant on it.
-- Changed vfsGetFileList to use "*" to indicate all-files instead of a NULL pointer.
-- Extended IArchive interface to allow for extra filesystem functionality.
-  Added method to check if a file exists quickly.
-  Added method to traverse the filesystem with control on start-dir and depth of recursion.
-- Defined implementation requirements for IArchive.
-  An archive contains a heirarchy of directories and files, and may contain empty directories.
-  An archive can be traversed in directory order.
-  Directories can be distinguished from files during a traversal.
-  Directory paths will always end with a separator.
-  File entries can be opened as an IArchiveFile.
-  IArchiveFile provides a simple non-seekable input stream which can only be read forwards.
-  Any number of files may be opened and read from an archive simultaneously.
-  An archive may be released while one or more files are still open, the files will remain valid until released.
-- Changed archivepak, archivezip and archivewad to implement all IArchive requirements.
-- Factored common code from archive implementations out into new lib/headers:
-  fs_filesystem.h: a templated filesystem container, with iterators and efficient traversal.
-  fs_path.h: a dynamic filesystem path object, with separator checking and efficient memory management.
-  ibytestream.h: abstract interfaces for input byte streams.
-  bytestream.h: utilities operating on abstract input byte streams.
-  filestream.h: a c++ wrapper for stdc FILE object, implementing a seekable input stream.
-- Added a new pkzip-reader implementation, designed to be orthogonal to the compression library used.
-- Added a zlib input stream object, which decompresses data from an abstract byte stream on the fly.
-- Removed archivezip code copy/pasted/hacked from zlib and unzip.c, replaced by pkzip-reader and zlib input stream.
-- Changed vfsLoadFile to return 0 for a zero-sized file, only returning -1 if it failed to load the file.
-- Removed halflife-specific disabling of shader-loading, thereby allowing common-hydra.shader to work.
-- Added archivezip, archivewad and archivepak to win32 setup scripts.
-- Updated win32 setup scripts for halflife media.
-- Updated cons scripts for archivezip, archivewad and archivepak.
-- Added printing of warnings when vfs functions are given invalid input paths.
-
-
--------- branchpoint: "bug800-spog_branch"
-
-
-30/08/2003
-SPoG
-- Ported changes from trunk since branch point.
-
-11/08/2003
-SPoG
-- Split qe3.h up into multiple headers.
-- Cleaned up use of win32 symbols:
-  WINAPI macro for module functions removed.
-  GUID for module interfaces replaced by string.
-  boolean replaced by bool.
-  MB_OK etc gui defines replaced by enumerations.
-- Removed plugin stuff deprecated by synapse from qerplugin.h.
-- Cleaned up use of glib symbols:
-  guint32, gdouble, gboolean typedefs removed from non-glib-dependent code.
-  TRUE/FALSE replaced by c++ bool true/false.
-- Removed all "extern" function declarations.
-- Removed dependency on MainFrame from preferences.h.
-- Moved synapse server and pluginmanager instances to pluginmanager.cpp.
-- Split pluginmanager.cpp into three parts:
-  Radiant's synapse client stuff in plugin.cpp.
-  Implementation of brush/entity/patch-handles stuff in pluginapi.cpp.
-  Synapse server init/shutdown in pluginmanager.cpp.
-- Added forward-declarations to avoid including other headers.
-- Replaced CString usage with Str;
-- Removed unused brush-scripts stuff.
-- Cleaned up patch-vertex-area-selection logic.
-- Removed very old code chunks that were commented or #if 0.
-- Replaced project-entity with a dedicated key/value string map.
-
----- branch point - spog-cleanup
-
-06/12/2003
-SCDS_ReyalP
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=930
-  shortcuts to change texture window scale
-
-02/12/2003
-SCDS_ReyalP
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=913
-  fix for single monitor window positioning save
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=924
-  fixes to CenterXYView shortcut, correctly bound to Shift+Control+Tab now
-TTimo
-- add a 'q3map2' command line to win32_install.py, factorize and remove win32_install_q3map2.py
-
--- linux 1.3.14 test build 1
-
-29/11/2003
-TTimo
-- heretic2 has no q2map. linux setup tries to install and breaks
-  removed faulty setup line
-- cleaned more Linux setup fuckage caused by q2/her2
-  a tip: rm -rf build install before building and testing a new setup
-
-28/11/2003
-ydnar
-- full SCC purge of the vs.net project files (for real this time)
-- added seperate Q3Map2 build targets
-- added seperate Q3Map2 post-build Python script
-- _skybox entity support
-- _skybox and _decal in entities.def (Q3)
-
--- win32 1.3.14 test build 1
-
-28/11/2003
-djbob
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=899
-  bobtoolz update (icon functionality is in menu too)
-djbob & TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=842
-  migration of the win32 build system to vs.net/VC7
-  new libxml and libpng packages are required:
-  http://zerowing.idsoftware.com/libxml/
-  http://zerowing.idsoftware.com/libpng/
-  updated win32_install.py for new names and paths
-TTimo
-- assraped the vcproj with sed to remove Scc entries
-SCDS_ReyalP
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=88
-  2D background image plugin
-TTimo
-- putting together win32 setup updates for 1.3.14
-  msvcr70.dll goes in core directory
-  bkgrnd2d plugin content
-  changed file paths (libxml/libpng)
-  .xlink for new JA content
-
-27/11/2003
-TTimo
-- using a central scons.signatures file for checksums
-- version bump to 1.3.14
-- a libxml-related build bug in qe3.cpp on Debian sid
-- it looks like Sid no longer has inflate_mask exported from /usr/lib/libz.so
-  switched the mask to be defined in our source
-  this may be a problem on other distros, and on holy box (Woody)
-SCDS_ReyalP
-- bug 921 and 922, Z floating window fixes
-- bug 926, hullcaulk, hintskip, subtlehint
-EvilTypeGuy
-- bug 505 - select all faces with a given texture
-
-19/11/2003
-ydnar
-- clipper tool plane points default to 1st selected patch mesh
-
-17/11/2003
-TTimo
-- upgraded server to subversion 0.33
-
--- released 1.3.13
-
-10/11/2003
-SCDS_reyalP
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=917
-  floating windows startup crash
-
-09/11/2003
-TTimo
-- fix M4_GAME_ET ( OSX setup )
-AstroCreep
-- cleaned up JA shader scripts
-
-01/11/2003
-ydnar
-- Merged ASE submaterial/subobject code from BirdDawg
-- Made Q2/Heretic2 tools not use precompiled headers to eliminate Win32 compilation errors
-- Added glColor4ubv() support to the GL function table
-- Changed PicoModel rendering to use glColor4ubv() instead of 4 divides and pass-by-value glColor4f()
-- Fixed bug 900 by setting alpha to 255 explicitly in image module, rather than 3 input components,
-  which was borking Q3Map2 jpeg loading, and thus compiles
-
-24/10/2003
-TTimo
-- bump to 1.3.13
-Anders
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
-new osx patch, fixes strip bug in setup. merging setup patches to a single file
-SCDS_reyalP
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=900
-Some jpegs get garbaged alpha channel
-
-22/10/2003
--- merge https://zerowing.idsoftware.com:666/radiant/GtkRadiant/branches/Release-1.3.12/
-  19/10/2003
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
-    scons BUILD=info to generate a tarball and it's .info
-
-  18/10/2003
-  Spog
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=888
-    patch for 16 bit RGBA support in glwidget
-
-  -- released 1.3.12 Linux
-
-  14/10/2003
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=879
-    fixed hellish dlclose issue only occuring with holy builds
-
-  -- released 1.3.12 win32
--- end merge
-Arnout
-- added epsilon testing to hashtable compares to eliminate almost-identical vertices
-- pico surfaces now use the normals from LWO vertices
-
-21/10/2003
-Arnout
-- added hashtable for faster vertex matching during LWO surface generation
-- model rendering now uses DrawElements and will use vertex colours in wireframe/flats shade mode 
-
-20/10/2003
-Arnout
-- added LWO support to picomodel.
-    shader names are derived from surface name
-    only geometry from layer 0 is used
-- added support for 'vertical flipped' TGAs
-
-19/10/2003
-Arnout
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=893
-  fixed starton primary monitor
-  fixed mouse pointer setting on win32 to properly translate gdk's offset coordinate system in windows' one
-  
--- released 1.3.12 win32
-
-11/10/2003
-Spog
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=865
-  fix texture subsets
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=889
-  misc update, missing JA system textures
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=824
-  fixed .pref file trashing
-Nurail
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=881
-  BSP monitoring disabled by default in Q2
-
-09/10/2003
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=883
-  more JA pack: shaders and mapextras.pk3 textures
-- fix Q2 win32_install.py to put the tools at the right spot
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=878
-  correctly support PNG images with an alpha channel
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=885
-  fix console to refresh during a texture directory load
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=739
-  fix weird Shift + Control + Z causing a Redo in non-floating window mode
-
-07/10/2003
-Nurail & TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
-  Q2 tools, added -fs_basepath. Need corresponding setup and .proj updates
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=875
-  fixed broken surface properties in Q2 surface plugin
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
-  more fixes, build paths in scons, take out INSTALL config on command line (not functional + not need)
-  added Q2 tools back to Linux setup
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
-  using "*" as the shaders minor in surface plugin
-- updated makeself copy to the latest from icculus.org cvs
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=574
-  sprite plugins, tweak to make it functional for all games
-- updated Q2 tools .dsp
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=876
-  more Jedi Academy setup work and content
-  moving imagepng.dll module to the core, as now both Sof2 and JA need it
-  sample maps reorg, new siege_hoth_sample.map
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=874
-  a lot more models - using a dynamic File Group in IS to cope with that
-- Q2 IS setup fix, was not properly putting stuff in baseq2/
-  IS setup: tweak to Q2 tools stuff
-
-06/10/2003
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
-  Q2 setup needs to be cleaned up and unified between win32 and Linux
-  using INSTALL_Q2 and TOOLS_Q2 in SCons script to install the Q2 tools
-  fixed the setup build dependencies to reference the Q2 tools targets
-  moved the Q2 specific modules imagewad and vfspak to q2/modules
-
-05/10/2003
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=871
-  updating the gtk2 version to 2.2.4
-  adding an SVN module with the Gtk2 developer package: checkout gtk2-win32
-  updating IS to the new files
-  sed'ing the .dsp to replace src-gtk2 by gtk2-win32
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=609
-  Q2 tools: comment out dupe strupr on win32
-  update IS setup to missing Q2 stuff ( vfspak and tools )
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=866
-  Fixed Camera inspector window not refreshing. Was a missing top level gtk_widget_show call
-
-03/10/2003
-Nurail
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=609
-  quake2 tools build scripts
-  Linux setup updates - Q2 game pack in Linux setup
-TTimo
-- scan through all URL links in game.xlink to update them
-- added JA links (Raven and MapCenter forums)
-
-30/09/2003
-TTimo
-- update all synapse.config, win32 .dsw and install_win32.py for new surface module
-- Jedi Academy and Quake II game packs in IS setups
-- hardcoded hacks in editor core for JA, copied over from JKII
-- bug #867, disable sleep by default
-- q3map2 bug fix
-
-Nurail
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=862
-  Q2's 'no patch' stuff
-
-29/09/2003
-TTimo
-- OSX: fixup setup.xml.in
-
--- merge bug856 back into trunk
-16/09/2003
-Nurail
-- new patch + win32 stuff for surface module
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=804
-  refactored the XML synapse.config handling:
-    better detection of invalid XML file
-    less code, factorized to CSynapseClient::ConfigXML
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=828
-  fixing bobtoolz 'shaders' major loading issues
-  added '*' minor. to be used with lots of caution. only if the given major will have a single API such as 'shaders'
-  also, map module was missing a VFS entry in non-HL configs. that's bad karma, using a minor "*" instead
-  NOTE: on a lot of modules we could be using a '*' entry instead of having lines in synapse.config
-- took out obsolete md3model
-
-15/09/2003
-Nurail
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=856
-  quake2 surface module
-
-07/09/2003
-Nurail & TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=856
-  a surface inspector module to customize per-game API
-  removing DO_SURFACEPLUGIN define (enabled implicitely)
-  removing bSurfacePropertiesPlugin (true implicitely)
-  remove SI_SetActiveInRadiant, it's always on by default
-  why was USE_UNDOTABLE_DEFINE taken out? - put back in
-  removed DBG_PLUGIN define and related code, that stuff is from way back and no longer relevant
-  cleanup QERApp_FreeShaders in shader module from DO_SURFACEPLUGIN stuff
-  the WINAPI stuff in interfaces is not needed, that's an old remnant. Cleaned up
--- end merge bug856 back into trunk
-
-19/09/2003
-Justin Blur
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=785
-  fix ~/.radiant permission bug
-Nurail & TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=849
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=851
-  win32 updates for the new modules and install_win32.py
-
-16/09/2003
-Nurail & Hydra
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=848
-  q2 map format minor
-
-08/09/2003
-Tr3B
-- imagepng.so / PNG format support in Linux
-  NOTE: atm no official supported Linux game by GtkR uses this
-
-07/09/2003
-Nurail
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=851
-  imagewal.so module / wal image format
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=840
-  md2 support in picomodel
-
-06/09/2003
-Nurail & TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=848
-  renaming mapq3.so to map.so
-  added hooks for Q2 map format load/save to single map module (minor mapq2)
-Nurail
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=849
-  vfspak port to synapse and updates
-
-04/09/2003
-SPoG
-- Fixed crash in RunBsp caused by passing an invalid pointer to printf.
-- Changed console to wrap long lines instead of using horizontal scrollbar.
-
-30/08/2003
-Anders & TTimo
-- OSX setup, new patch to make scons SETUP=1 produce a .run
-- don't put bspc Linux binary in the setup
-
-30/08/2003
-Anders & TTimo
-- OSX setup, new patch to make scons SETUP=1 produce a .run
-- don't put bspc Linux binary in the setup
-
-26/08/2003
-Anders
-- more scons OSX, start on setup stuff
-
-25/08/2003
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=855
-  make 'move into worldspawn' work again
-Anders Gudmundson & TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
-  OSX scons build system
-
-24/08/2003
-ydnar
-- Removed "test.cpp" from radiant.dsp (merge artifact?)
-- Added ddslib to radiant.dsw
-- Correctly set lib deps for q3map2.dsp for ddslib
-- [bug 852] Increased buffers from 260 bytes on Win32 to 4096 bytes
-
-TTimo
-- bump to ver 1.3.12
-- EnsurePythonVersion broke in 0.91 (commented out)
-
-David Hogue
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=844
-  q3data Linux. q3data can read .ase and turn them into .md3
-
-23/08/2003
-ydnar
-- Added ddslib to repository, based on nvidia sample code, cleaned up a bit
-  straight C, loads DXT1, DXT3 and DXT5 format DDS textures.
-
-22/08/2003
-TTimo
-- https://zerowing.idsoftware.com:666/viewsvn/
-- Arnout's commit email script - try #2
-  the commit script doesn't handle viewsvn root remaps (radiant instead of radiant.svn)
-  adding a prefix to the report
-
-04/08/2003
-TTimo
-- conversion from CVS to Subversion:
-repository convert completed (with revml)
-module repositories glued together in a single one
-hooking email commit scripts and backup scripts
-- Python >= 2.1 required instead of 2.2
-
-01/08/2003
-SPoG
-- Changed gl widget to request maximum available depth buffer precision.
-- Changed all uses of deprecated GtkCList and GtkCTree to use GtkTreeView/Model.
-- Fixed directory handle leakage in synapse module search.
-- Fixed dir_dialog always returning NULL for Textures -> Load Directory.
-
-23/07/2003
-SPoG
-- Ported focus_out_event handlers in gensurf to gtk2 signals system.
-- Fixed failure to load models for entities other than misc_model.
-- Fixed crash in model module shutdown caused by mismatched resource capture/release.
-
-22/07/2003
-TTimo
-- fix q3map2 .dsp for correct glib-2.0 includes (common/vfs.c)
-- camera plugin installs to core now (RTCW and ET)
-- fixups to the merged setup stuff
-- patched cvsreport to provide explicit diff for some files #2
-- fix to work with scons 0.90 / added LIBPREFIX ('lib') where needed
-  https://sourceforge.net/tracker/?func=detail&atid=398971&aid=766975&group_id=30337
-SPoG
-- Fixed crash in cmdlib ExtractFileBase when source filename is an empty string.
-
-20/07/2003
-TTimo
-- SCons scripts for the ported plugins: bobtoolz, camera, prtview, gensurf
-- ET Linux setup script + new plugins
-- q3map2.x86 is installed and wrapped through a q3map2 script (libstdc++ LD_LIBRARY_PATH)
-- update ChangeLog and credits
-- put back the GTKRAD_DIR in .fgl
-
-19/07/2003
-SPoG
-- Tagged trunk before merge as bug537-merge-3.
-- Tagged branch port_gtk2_20030307 as gtk2-merge-final.
-- Merged changes since tag bug537-merge-2 into trunk.
-- Removed gtk dependency from plugin toolbar interface.
-- Ported prtview, bobtoolz and gensurf to gtk2.
-
-18/07/2003
-Anders Gud
-- OSX build fix
-
-16/07/2003
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=814
-  merging ET support code into to trunk
-- cvsreport 0.3.0 - http://www.nongnu.org/cvsreport/
-  rolling out this ver since old cvsreport setup broke
-- fixup to build on Linux (including fixing plugin builds)
-
--- release-1_3_8-ET
-
-02/07/2003
-TTimo
-- new setup build, with patches and updates from SD
-- local fixing of bobtoolz dependency against libcmd, and itoolbar.h gtk header bustage
-
-19/06/2003
-TTimo
-- missing plugins. add them to .dsw for default build, add them to IS setup:
-  camera, gensurf, bobtoolz, prtview
-- fixup bobtoolz code for VC6. for(int i=0 causing duplicate definition errors
-- removed pk3man from IS (we no longer distribute/maintain it)
-  TODO: cvs remove the IS files for it
-- re-enabled plugins in build by default, disabled curry and textool
-  TODO: following error when bring up About box of bobtoolz:
-  BobToolz::ERROR->Failed To Load Exclusion List: C:\Program Files\GtkRadiant-ET-1.3\plugins\bobtoolz.dllbt\bt-el2.txt
-
-18/06/2003
-TTimo
-- add ET game pack. from Arnout's full dump of editor source + game pack data
-  trunk tagged at ET-tag for this
-- Dlg_SdAskCorePath:
-    szDir   = "C:\\Program Files\\GtkRadiant-ET-1.<<RADIANT_MAJOR>>";
-
-09/06/2003
-ydnar
-- Added Q3Map2 keys/entities to Quake 3 entities.def
-- Removed obsolete vlight keys from Quake 3 entities.def
-- Added MD5 functionality to mathlib, from:
-  http://sourceforge.net/projects/libmd5-rfc/
-
-------- merged changes since tag bug537-merge-2 from branch port_gtk2_20030307 to trunk
-
-TTimo
-- try checkin on branch see if cvsreport 0.3.0 will verbose it
-
-08/07/2003
-SPoG
-- Fixed recent-files list for file names containing underscores.
-
-07/07/2003
-SPoG
-- Fixed crash and file-type bugs in gtk file-dialog.
-TTimo
-- converted the setup code from perl to python
-- added copy over of libgcc_s and libstdc++, and LD_LIBRARY_PATH in the wrapper script
-
-06/07/2003
-SPoG
-- Changed console popup menu to include cut/copy/paste as well as clear.
-
-05/07/2003
-SPoG
-- Fixed the way surface-inspector dialog responds to escape key.
-
-04/07/2003
-TTimo
-- linux building / SCons
-  0.90 is broken, use 0.14 for now. added version check
-  adding scons SETUP=1 option to spawn setup build
-  enable back vfswad in scons
-  TODO: grab Conscript-setup, convert it to python in build_setup function
-
-02/07/2003
-TTimo
-- building a win32 setup, using -gtk2 suffix (game packs in Radiant-1.3-gtk2 and core in GtkRadiant-1.3-gtk2)
-SPoG
-- Ported vfswad to gtk2.
-- Fixed memory leak in vfspk3 directory search.
-- Added vfswad to win32_install.py.
-
-09/06/2003
-TTimo
-- tagging setup/ as gtk2_setup_rollback
-  rolling back trunk setup code to the branch to build an experimental release
-- merge trunk to branch:
--- tagged HEAD with bug537-merge-2
--- merge HEAD between bug537 and bug537-merge-2 into the branch --
-  31/05/2003
-  TTimo
-  - grab back vfswad code that I forgot in bug 800 rollback
-  - add prtview back to the project, fix it to build (#817)
-
-  27/05/2003
-  djbob
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=817
-    prtview fixes, upgrade to synapse
-
-  -- release-1_3_8
--- end merge HEAD between bug537 and bug537-merge-2 into the branch --
-- freshly merged in vfswad is broken
-- freshly merged in prtview is broken
-- q3radiant.dsp -> GtkRadiant.dsp, outputs GtkRadiant.exe
-- removed vc5 dsps
-SPoG
-- Updated win32 setup stuff to use gtk2 dlls.
-- Modified setup.pl to run correctly (tested on cygwin perl 5.6).
-
-08/06/2003
-TTimo
-- Linux:
-  check gcc 3.x, better ldd check
-  add gcc version to about message
-  kill old cons stuff
-- added q3map2.x86 scons build  
-- header conflict libs/cmdlib.h tools/quake3/common/cmdlib.h
-  grepped through q3map2 source to change #include "cmdlib.h" to common/cmdlib.h
-- killed more cons files remnants
-SPoG
-- Improved error reporting for win32 setup system.
-- Fixed errors reported when running setup scripts.
-- Fixed scale of xor selection rectangle in XY window.
-
-07/06/2003
-SPoG
-- Fixed X Window System error when entering freelook on *nix.
-
-06/06/2003
-SPoG
-- Fixed copy/paste on *nix.
-- Changed copy/paste on *nix to use GtkClipboard api.
-- Changed copy/paste on win32 to be non-window-specific.
-- Further cleaned up MainFrame::Create.
-- Changed freelook to use gdk_window_get_origin instead of gdk_window_get_root_origin to place the cursor.
-
-05/06/2003
-SPoG
-- Fixed grey statusbar in 4-way-split mode.
-- Redirected gtk messages before creating main window.
-- Removed unused XYFriend hack from camwindow.
-
-04/06/2003
-TTimo
-- win32_install.py settings loaded/saved from site.conf
-
-02/06/2003
-TTimo
-- fixed python running with no output. Make sure VC6 finds native Python before any cygwin Python
-  look at the Directories settings in Tools > Options to either kill the c:\cygwin\bin path, or have Python path first
-- renamed dupe files to avoid header collision and general confusion between entity and model
-- added win32_install.py to perform post-build install (need to load the configuration paths from a non-cvs stored site.conf file)
-
-01/06/2003
-TTimo
-- bind gen.dsp to makeversion.py
-- added a run_python.bat to check for python presence and execute
-
-27/05/2003
-TTimo
-- write makeversion.py module - hook it up to SCons build - cleaner, easier to use
-- comment out vfswad build lines. source is still not in tree (bug 800 aftermath I think)
-
-18/05/2003
-SPoG
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
-  Changed Sys_FPrintf_VA to immediately process console events during map load.
-  Changed startup to create main window after QE_Init().
-  Fixed loading last map on startup.
-  Fixed crash on exit.
-  Fixed colour dialog.
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
-  have to delay merging back to trunk. 
-  have a behaviour problem between debug and release builds.
-  while debug is fine, release is screwed (see bug item)
-
--- tagged HEAD with bug537
--- merge HEAD between merge-gtk2-20030413 and bug537 into the branch -----
-  11/05/2003
-  Dan Olofson & TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=812
-    workaround for ATI drivers bug (polygon backfaces)
-    use Preferences > 2D Display/rendering > ATI cards with broken drivers
-  Riant
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=806
-    updated synapse.config for SoF2 png
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=805
-    dir_dialog is broken - is only used in prefab path prompt
-
-  -- release-1_3_7
-
-  14/04/2003
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=801
-    moved "ignoring sprite for entity.." to be a _DEBUG only thing
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=802
-    fixed models not drawing on win32. was a setup bug
-  - OSX setup build updates - added dependency against libpng3-shlibs
-  - added openurl.sh to open urls on *nix (with setup updates)
-  Riant  
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=803
-    RTCW - default_project.proj in setup
-
-  13/04/2003
-  Michael Schlueter & EvilTypeGuy
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=684
-    imagepng building under Linux
-  Riant & TTimo  
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=797
-    fixed texture compression support
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=799
-    regen project file from template on version upgrade
-    updated all default_project.proj to have "version" "1"
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=798
-    missing modules/bitmaps/model_reload_entity.bmp from Linux setup
--- end merge HEAD between merge-gtk2-20030413 and bug537 into the branch -----
-  
-17/05/2003
-TTimo
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
-  http://www.qeradiant.com/wikifaq/index.php?Gtk2%20build%20notes
-  went through the new dll dependencies, listed required files preparing for a single zip package
-  updated all the project files to rely on src-gtk2/
-
-13/04/2003
-SPoG
-- Tagged HEAD with 'merge-gtk2-20030413' and merged HEAD --> port_gtk2_20030307.
-
-12/04/2003
-SPoG
-- Added gtk-2.x libraries to win32 setup.
-- Changed win32 setup to use 'dynamic' file-groups, making it possible to add files without
-  modifying installshield scripts.
-- Modified win32/setup.pl to copy setup data to dynamic file-group directories.
-
-30/03/2003
-TTimo
-- added scons scripts. the scons engine is included in the tree. you just need to have python
-  have ldd -r safe check on .so  
-  TODO:
-  - make sure it's gcc3
-  - check OSX
-  - add q3map2 build
-
-29/03/2003
-TTimo
-- tracked and fixed the startup bomb on Debian sid:
-  `pkg-config gtk+-2.0 --libs`
-  -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
-  http://www.gnu.org/manual/ld-2.9.1/html_chapter/ld_2.html#SEC3
-  --export-dynamic
-    When creating a dynamically linked executable, add all symbols to the dynamic symbol table. 
-    The dynamic symbol table is the set of symbols which are visible from dynamic objects at run time. 
-    If you do not use this option, the dynamic symbol table will normally contain only those symbols 
-    which are referenced by some dynamic object mentioned in the link. If you use dlopen to load 
-    a dynamic object which needs to refer back to the symbols defined by the program, rather than 
-    some other dynamic object, then you will probably need to use this option when linking the program 
-    itself.
-  this causes symbol confusion, shaders.so's g_ShaderTable suddenly resolves to the core's g_ShaderTable
-  one is a 'shaders' API, the other an 'appshaders' .. everything gets badly mixed up
-  added a check in the cons script, using `pkg-config gtk+-2.0 --libs-only-L` `pkg-config gtk+-2.0 --libs-only-l`
-  (same for gtkglext)
-    
-28/03/2003
-TTimo
-- propagate jpeg compile fix from bug750 branch
-- use PKG_CONFIG_PATH when building radiant/ (alternate gtkglext-1.0)
-- on OSX, you need gtk+2-dev package, and pkgconfig, atk1
-  build gtkglext from source http://gtkglext.sourceforge.net
-
-17/03/2003
-TTimo
-- updated the build system to glib2/gtk2/gtkglext
-  atm it compiles and starts on my dev box (Debian Sid)
-  but doesn't reach end of initialization, hangs on
-   q = (qtexture_t*)g_hash_table_lookup (g_ShadersTable.m_pfnQTexmap (), stdName);
-   in shaders.cpp QERApp_Try_Texture_ForName
-  need to have the gtk2 dev packages, and libgtkglext1-dev
-
-12/03/2003
-SPoG
-- Replaced alpha-blended area-selection rect with XOR rect.
-- Fixed YX/XZ/YZ toggle in floating windows layout.
-- Cleaned up xor rectangle code.
-
-11/03/2003
-SPoG
-- Fixed console scroll-to-last-text-inserted.
-- Fixed console error/warning colours.
-- Refactored or removed WIN32-specific gtk-related stuff.
-- Removed win32 SetCapture/ReleaseCapture on GLWindow.
-- Removed win32 gtk_main_iteration calls in glwindow mousemoved.
-- Cleaned up start-on-primary-monitor stuff.
-- Changed main window to use standard save/load window position/size.
-- Replaced deprecated gtk_widget_set_uposition with gtk_window_move.
-- Removed win32/X gl functions from igl.
-- TODO: replace/remove deprecated gtk_widget_usize.
-
-10/03/2003
-SPoG
-- Changed fonts in win32 rc file to 8pt tahoma.
-- Fixed flat-grey gui in Regular layout mode.
-- Changed main-window save/restore maximized to use gtk API.
-- Fixed button_press_event handling on console/entity/entitylist windows.
-
-09/03/2003
-SPoG
-- Fixed crash on shutdown after changing floating-z-window preference.
-- Removed win32_realize_floating hack.
-- Refactored MainFrame::Create to make it more readable.
-- Fixed key_press_event handlers for entity/surface/patch dialogs.
-- Fixed delete_event handlers for dialogs derived from Dialog class.
-
-08/03/2003
-SPoG
-- Fixed viewport for entity window comment text.
-- Fixed x-shrinking for entity window comment text.
-- Fixed menu underscore shortcut hack in MRU list.
-- Changed groupdialog to connect switch_page signal after creating all pages. 
-- Changed gl widget to use gtkglext/pango to create fonts.
-- Cleaned up gtkglext glwidget implementation.
-- Reduced border size on toolbar widgets.
-- Replaced font with font_name in win32 rc file.
-- Added viewports for all scrolled text boxes.
-- Fixed entities/textures/console window title update when page is changed.
-- Fixed floating windows not being transient to main window (don't want them on taskbar).
-
-07/03/2003
-SPoG
-- Created a new branch for the port to gtk 2.x. 
-- Fixed menu underscore shortcuts to use gtk_label_new_with_mnemonic.
-- Fixed global keyboard shortcuts by using mainframe_keypress.
-- Fixed use of deprecated gtk_color_selection_get_color.
-- Removed use of deprecated gtk_paned_set_gutter_size.
-- Replaced deprecated gtk_widget_draw with gtk_widget_queue_draw.
-- Replaced deprecated gtk_object_get/set_data with g_object_get/set_data.
-- Replaced deprecated gdk functions with 2.x equivalents.
-
-
------ branch port_gtk2_20030307 ------
-
-
-13/04/2003
-Michael Schlueter & EvilTypeGuy
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=684
-  imagepng building under Linux
-Riant & TTimo  
-- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=797
-  broken texture compression support
-
-
-
-31/01/2003
-SPoG
-- bug #752 - Construct fix for ppc, patch applied.
-
-26/01/2003
-TTimo
-- bug #750 - revamp of the setup stuff on Linux
-  (under way, see bug for progress - feel free to help!)
-- reworked the cons scripts, setup is hooked in to cons now
-  also, added gcc version select on command line, using Cons_gcc.pm utility
-
-22/01/2003
-TTimo
-- merged merge-1_2_10-post back to trunk
-
-
-===============================================================
--- merging release-1_2_9 -> merge-post-1_2_10 into trunk
-   trunk before merge is tagged pre-merge-1_2_10
-===============================================================
-
-22/01/2003
-TTimo
-- finished up the TODO items, turned into bug items or dropped them. branch is ready to move back in to trunk
-
-18/01/2003
-TTimo
-- fixed ID_SELECTION_MERGE
-
-17/01/2003
-TTimo
-- fixups
-  FlushReloadSelectedToolbarButton -> CFlushReloadSelected
-  incorrect naming: RadiantToolbarModuleManager -> CRadiantToolbarModuleManager
-  ToolbarButton -> IToolbarButton, and C* implementations
-  http://www.qeradiant.com/wikifaq/admin.php?Code%20Conventions
-
-14/01/2003
-ydnar
-- Minor Cons fix for OS X (bug 729)
-
-13/01/2003
-ydnar
-- GtkRadiant now builds on OS X, Linux, and Win32 out of the same tree
-- OSX build uses gtkfileselect-linux now, as the Darwin version was broken/old
-  fixme: change this to use OS X open dialog box or something?
-- Minor fixes to a few files to fix gcc warnings
-- Model module now builds on OS X and Linux, using Synapse properly
-- PicoModel change to invert T coordinate on ASE models
-- Q3Map2 change to export ASE models with T coordinate flipped
-- Misc Q3Map2 changes
-
-09/01/2003
-ydnar
-- Updated Construct with Darwin/OS X ld flags for 4MB stack size
-- Misc Q3Map2 updates (2.3.35-dev)
-
-05/01/2003
-ydnar
-- "angles" key now properly ordered, to work with current mathlib
-  (also changed in Q3Map2)
-
-31/12/2002
-ydnar
-- PicoModel: Minor fix to MDC loader (naming/define)
-- Q3Map2: 2.3.34-pre-1 updates
-- MapXML dsp unix->dos newlines
-
-29/12/2002
-SPoG
-- Merged q3map2-texturing prefs key.
-- Merged vfs check for gamemode project key.
-
-27/12/2002
-TTimo
-- fix GetTickCount stuff
-- added q3map2 cons script
-- fixed Linux build
-
-23/12/2002
-SPoG
-- Added model cache API, moved model cache implementation from entity module to core. 
-- Added file-type registry API, replaced core file-type manager with registry.
-- Changed model module to register supported file types with core registry.
-- Removed or #ifdef'd non-functional code from model module.
-- Added support for misc_gamemodel and model_static to entity module.
-- Cleaned up entity module's on-epair-changed API.
-- Moved light-entity-specific code to a seperate file in entity module.
-- Cleaned up file dialog interface - specify file-type-lists with a string.
-
-22/12/2002
-SPoG
-- Ported camera plugin to synapse, adding support for camera and ui APIs.
-
-20/12/2002
-SPoG
-- Fixed default prefs setting for selected-brushes-camera, gridmajor-alt and gridminor-alt.
-- Merged CEntityEclassModel::Draw in entity module.
-- Ported imagepng module to synapse.
-- Fixed warning for CamDragMultiSelect preference bool used as int.
-
-19/12/2002
-SPoG
-- Fixed white-textures bug caused by texture compression preferences.
-- Ported light-radius rendering to 1.3 entity module.
-
-18/12/2002
-SPoG
-- Merged win32 project files, with the exception of camera plugin.
-- Ported model module to synapse API.
-- Redesigned toolbar API to remove gtk-dependency from toolbar plugins.
-- Refactored window-position preference save/load.
-
-17/12/2002
-TTimo
-- kick doxygen generation for branch merge-1_2_10-post
-
-15/12/2002
-TTimo
-- having the linux version compile and start again. took out numerous elements while merging, built a list of TODO stuff
-  the main thing to do being to bring the win32 build back up too, then to go through TODO list and fix stuff
-  until the win32 version runs too, I check this in to a seperate branch merge-1_2_10-post
-- There is quite a massive update in mainframe.cpp switch case for all events.
-  Looks like it's just a reordering of stuff, but it looks bad in the diffs.
-- added m_MapReg pattern
-
-- At some point, I'm thinking that forcing correct TAB/SPACE conversion on the server end would be a good thing to have.
-  Nazisticly forcing the formatting sounds like the only viable solution.
-
-               11/12/2002
-               RR2DO2
-               - #418, mdc load and display (RTCW)
-               - #597, CenterCamera shortcut
-               Use Ctrl+Shift+TAB to center the views onto the current camera location
-               - #714, bitmap loading fixes and speedups
-               - #715, fixed Alt+Shift cycle/drill select to work with brush-based entities
-               EvilTypeGuy
-               - #718, fix compilation warnings
-               Riant
-               - #707, fixed HM mode in STV:EF
-
-               10/12/2002
-               EvilTypeGuy
-               - Fix gcc3 compilation warning
-               EvilTypeGuy and X-Man
-               - Fix OpenURL so browser launching works on XDarwin (Mac) systems.
-
-               8/12/2002
-               RR2DO2
-               - #710, AssignSound pattern
-               - #711, SoF2 model_static drawing
-               - #713, sync 2d and 3d rendering of models
-               - #238, apply 0..1 T range when Fitting a patch (instead of 0..-1 previously)
-               - #633, Add ability to change default color in 3D window Misc > Colors > Camera background
-               ydnar
-               - Q3Map 2.3.33 (see changes.q3map2.txt)
-               - Quake 3 + TA common.shader updates (q3map_terrain, hint)
-
-               3/12/2002
-               TTimo
-               - merging Stable-1_2-Apple into Stable-1_2
-               - why INSTALL.TXT? re-used INSTALL, updated to point to wiki
-               - why the -machinedump test against i386-redhat-linux? removed
-               - using $is_darwin flag instead of $gcc_machine tests in the build scripts:
-               gotta leave some room for a Linux ppc build, and darwin x86
-               exporting it for use in sub scripts
-               - the addition of ccache support broke some Apple SConstruct patches to $ENV{PATH}, fixing
-               merged version is compiling fine on Debian Sid
-               checking in on a branch, need to validate win32 build and OSX build before applying in Stable-1_2
-
-               -- release-1_2_11
-
-               30/11/2002
-               TTimo
-               - added seaw0lf to credits
-               - ydnar's changelog.q3map2, added to global.xlink and Linux setup
-               - 1.2.11 version tag
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=699
-               updated IS setup for q3map_terrain keyword
-               also fixed details in STVEF media
-               Arnout
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=569
-               http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=698
-               fixed drill select, Ctrl bug in vertex mode, and updated changelog.txt
-
-               29/11/2002
-               TTimo
-               - 1.2.11-rc1
-               - update changelog credits links for release
-               - update linux setup, putting EULA and new README instructions  
-
-               28/11/2002
-               ydnar
-               - Removed redundant 'p' from "developers"
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=637 - fixed
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=694 - fixed
-               - Updated to Q3Map 2.3.32
-               - Added epsilon to texture plane choose code to eliminate numerical
-               inconsistencies on brush faces slanted at 45 degree angles (bug 637)
-               - Fixed bug in lightmap export after lighting when map contains 0 BSP lightmaps
-               - Adjusted some light tracing constants to fix certain brush/patch seam shadows
-               - Tinkered with skylight code again
-               - Fixed bug where lightgrid would be black if level was compiled with -nogrid
-               - Fixed -approx code to work in floating-point space, using _minlight
-               - Fixed bug where vertex light code was using invalid pvs data to create
-               light list for surface, leading to incorrect vertex lighting
-               - Fixed related bug in anti-light-leak code that was causing brush faces to go
-               black (bug 694)
-               - New: _minlight sets _minvertexlight and (new) _mingridlight automatically
-               - New: _mingridlight key to set minimum grid lighting
-
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=637
-               added preference setting in Preferences > BSP monitoring
-               added an item on the wiki
-
-               27/11/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
-               picomodel-based model.dll module (new model.dll, removed md3module.dll)
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=664
-               media/setup updates for q3map2 support
-               added modified quakev3.qe4, bumped internal version to 4 for all games
-               SOF2 and JKII were forcing BSP monitoring off because of sof2map, now only printing a warning
-               added -rename to SOF2 BSP phase
-               Q3 & RTCW new templates are working
-               haven't tested the STVEF & SOF2 versions
-               updated IS setup scripts to make sure quakev3.qe4 is updated in nightly release
-               (not needed on Linux, we will be doing a full release)
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
-               updated win32 setup to provide right model.dll stuff
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=621
-               typo was causing memory error
-
-               RR2DO2 & TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
-               more model fixes, fixed the Linux build to build model.so
-               added search path to modules/ for bitmaps
-               model reload, patch and bitmap
-
-               26/11/2002
-               RR2DO2
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=569
-               area select - Alt+Shift for area select (complete tall)
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=621
-               broken undo creating ghost undo entities (and trashes memory)
-               partly fixes the issue, it's a memory error still
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=659
-               updates to RTCW camera plugin - works in 4 view mode
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
-               more fixes to plugin API
-
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=638
-               libpng in the core DLLs instead of SoF2 (for q3map2 dependencies)
-               putting q3map2 binary with the Core Binaries
-
-               25/11/2002
-               TTimo
-               - added ccache support to cons build system - http://ccache.samba.org/
-
-               21/11/2002
-               ydnar
-               - minor bugfix to PicoModel ASE material loader
-               - Q3Map2 updated to 2.3.31 (Splash Damage)
-               - Stitching the edges of lightmaps on patches that wrap around (cyls and cones)
-                       so the seam is no longer visible
-               - The -patchmeta switch works better now, the patches are still stored in the
-                       BSP for collision, but are pre-tesselated into nonplanar meta surfaces for
-                       more efficient rendering
-               - Better, more uniform lightmap sample position finding on patch meshes
-               - Moved q3map_tcMod and q3map_alphaMod processing to the final phase
-               - New: q3map_skylight AMOUNT ITERATIONS to replace surfacelight on sky surfaces
-                       for much faster and more uniform sky illumination
-               - Fixed bug in PicoModel ASE material parsing code
-               - Fixed a few seam/lightmap precision/projection errors
-               - Increased MAX_SHADER FILES to 1024 and fixed overrun error when more than that
-                       number of shaders was listed in shaderlist.txt
-               - Increased a few compiler maximums for larger maps
-               - New: -np N switch on BSP phase, works like -shadeangle, in that it forces all
-                       planar shaders to be nonplanar with the shading angle specified
-               - New: -nohint switch on BSP phase, omits hint brushes from compile for testing
-               - New: -debugaxis switch on light mode. Colors lightmaps based on their lightmap
-                       axis (which direction the lightmap was projected on)
-               - New: -debugorigin switch on light mode. Colors lightmaps based on the luxel
-                       origin relative to the raw lightmap's bounding box
-               - New: -debugcluster switch on light mode. Colors lightmaps based on the pvs
-                       cluster the luxel falls into
-               - New: -convert switch to convert BSP to ASE file (experimental)
-               - New: q3map_lightmapmergable directive to allow terrain to be mapped onto a
-                       single lightmap page for seamless terrain shadows    
-
-               18/11/2002
-               TTimo
-                       - fixed pk3man build system to work with new cons layout
-                       - fixing linux setup system to work with new cons layout
-                       Linux 1.2.11 will be a full setup, much easier that way
-                       - update makeself to the latest (and best) version
-                       - add q3map2 to Linux setup. goes in core (g_strAppPath)
-                       NOTE: has a dynamic dependency to libpng
-                       - pk3man still has issues with the zlib code that's been thrown in it
-                       unresolved which I don't have time to look at
-                               since we plan to drop pk3man in 1.3, dropping it now is just as good
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=644
-                       detect GOTY install     from registry and use it as default path
-
-               13/11/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=639
-               reworked to have the UI in game settings dialog
-               (this is strictly win32 thing, if that broke Linux build, then fix the typos)
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=630
-               mouse AngleSpeed setting was getting clobbered. fixed and upped the max values
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=623
-               applied a fix, rolls back the values when the compression formats are not supported
-               fix ain't very clean, if we have to deal with extensions some more, we need to deal with the settings persistance better
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=624
-               updated the setup code for town_*.shader (both in full setup and update)
-               updated files in WolfPack
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=672
-               using a QE4_VERSION define, added a message if there's a project template with wrong version
-
-               12/11/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=671
-               guard junk.txt path between " "
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
-               fix to CommitBrushHandleToEntity stuff
-
-               RR2DO2
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=660
-               previously you could select patch control points when patch selected + vertex edit (V) in 2D view. Works in camera view now
-
-               12/11/2002
-               TTimo
-               - nudging zerowing to trigger Stable-1_2-Apple doxygen generation
-               http://zerowing.idsoftware.com/doxygen/
-
-               11/11/2002
-               TTimo
-               - http://ttimo.net/web/anjuta
-               modified the .prj to work with the cons patches (linked dirs)
-               still way experimental
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
-               fixing linking for radiant.x86
-
-               10/11/2002
-               RR2DO2
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=669
-                       patch inspector bug - fixed
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
-                               fucked up change in the plugin API caused breakage of several plugins
-               still have to fix bobtoolz http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=665
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=661
-                       Undolevels not set properly
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=660
-                               drag selection to the camwindow for patches in controlpoint edit mode
-                               (not sure about the actual shortcuts, Ctrl+Alt on my current Linux setup)
-
-               TTimo
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=657
-                       mark map modified on editing entity keys
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
-                       added the correct link and ldflags statements to have static linking everywhere
-                               didn't check gcc 3 build, check correct static on Debian Sid and holy box
-                               has a $staticstdcxx in Construct to toggle On/Off if needed
-
-               09/11/2002
-               TTimo
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
-               reworking the cons building. support for gcc2 and gcc3
-                       cons -- gcc=<gcc-name>
-                               read gcc version and configure accordingly
-                               changed _NO_STLPORT to Q_NO_STLPORT
-                               independant BASE_CFLAGS and BASE_CXXFLAGS
-                               correcting usage of CC/CXX for c/cpp source and linking
-                               fixed missing -lz in vfspk3.so
-                               changed the way we build curry.so, works from the GtkRadiant tree now
-                               (NOTE: gcc 3.2 build of curry.so spews quite a few warnings)
-                               tweaked the way we do -fno-rtti -fno-exception
-
-               04/11/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=638
-               .qe4 version 4, udpated q3's .qe4 template, update setup to put q3map2 in the right place
-                       bumped version to 1.2.11-test for test setups
-
-               03/11/2002
-               ydnar
-               - fixed bug in jpeg loading code (4 components instead of 3 for RGB images, mh)
-               - updated PicoModel to 0.8.8 and Q3Map2 sundry fixes (2.3.29):
-               - Merged with latest CVS, fixed minor issues with matrix order
-               - Fixed minor Sys_FPrintf/Sys_Printf substitution typo in Q3Map2
-               - Expanded debug colors to 12 for debugging surface meshes
-               - PicoModel: fixed ASE loader to support > 1 texture coordinate per-vertex,
-               so more models supported correctly, also loading vertex normals
-               - PicoModel: md3 shader names are now cleaned. Suffixes (such as .tga or .jpg)
-               are stripped, and \ path separators are changed to /
-               - New: Add :q3map to the end of any shader name, and it will be interpreted as
-               the named shader minus :q3map. Example:
-               textures/shaderlab/concrete:q3map -> textures/shaderlab/concrete
-               One potential use is the -approx feature to collapse lightmapped  surfaces
-               into vertexlit surfaces, saving lightmap space/memory
-               - New: q3map_clipModel -- does what you think it does, sort of. This code ix
-               really experimental, and should *only* be used on large models such as terrain
-               (not small decorative models). This code will be evolving. Note: the shader's
-               surfaceparms are inherited by the magic clip brush, so if you have nonsolid
-               in your model's shader that uses q3map_clipModel, then the brush will also
-               be nonsolid
-
-               03/11/2002
-               TTimo
-               - cleaning up some cons stuff, checking that the setup building process is still good on Linux
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
-               updated Linux setup to put the bitmap
-
-               02/11/2002
-               ydnar
-               - PicoModel: replaced stricmp with _pico_stricmp
-
-               02/11/2002
-               ydnar
-               - PicoModel: added obj.c and ms3d.c, removed wfobj.c
-
-               02/11/2002
-               ydnar - seaw0lf
-               - Updated Q3Map2 to 2.3.29 sources
-               2.3.29
-                       - Merged with latest CVS, fixed minor issues with matrix order
-               2.3.28
-               - Bug 654 (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=654):
-               Fixed problem where brush faces, drawsurfaces, and surfaceparms weren't living
-               together in perfect harmony (terrain surfaceparms now inherited by brushes)
-               - Nodraw fog works now, albeit when you're underneath, surfaces above don't get
-               fogged properly. Could be good for foggy water where you want the above-water
-               portions to only be occluded by the water surface
-               - Bug 656 (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=656):
-               Number of lightgrid points displayed (byte size is currently out of proportion
-               due to internal storage format) when Q3Map is called with the -info switch
-               - Fixed wack surface merging bug where code would attempt to merge triangles not
-               adjacent to the current set, causing bad lightmap projections on nonplanar
-               surfaces
-               - Fixed tiny 1-character bug in 2d lightmap texture allocator where adjacent
-               luxels were being checked for occlusion rather than the actual source luxel
-               2.3.27
-               - Fixed minor bug in scriplib bugfix where the last character in a file wasn't
-               being read.
-               - Fixed bug where 0-area or bogus triangles were causing crash in MapRawLightmap
-               if they used a shader with a normalmap (thanks ShadowSpawn)
-               - Fixed bug where lightmaps were getting hosed levelwide on a prerelease version
-               of 2.3.27
-               - Fixed bug where lightmaps were getting knackered on models and certain patches
-               - Merged latest PicoModel version from seaw0lf, adding support for ASE and WF OBJ
-               models (preliminary)
-               - Increased MAX_MAP_PLANES to 0x40000 (~256k)
-               2.3.26
-               - Now using GtkRadiant's libpng and zlib config (linked as DLLs)
-               - Fixed bug in script parser where repeat calls to GetToken() were causing
-               memory corruption
-               - Fixed SOF2 -rename bug
-               - When using -game sof2 or -game jk2, the -flares argument is implied
-               - Added -noflares argument to disable the above behavior
-               - Added support for flares on entities. Use one of the following keys:
-               "_flare" "1" -- use default flare (different for each game)
-               "_flareshader" "path/to/flareshader" -- use a specific flare shader
-               Note: This only matters in SOF2/JK2 now. Make a light targetted (a spotlight)
-               to get it to aim the correct direction, otherwise it defaults to pointing 
-               downward. You cannot have omnidirectional flares
-               - Lightgrid size is automatically increased to accomodate large maps. The
-               MAX_MAP_LIGHTGRID error will never happen again
-               - Update PicoModel to 0.8.7 sources
-               - ASE support
-                       - Alias|Wavefront OBJ support
-                       - <modelname>.remap shader remapping suport
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=655
-               handle grayscale jpegs gracefully
-               - mathlib: fixed VectorClear(), got rid of braces
-               - scriplib: fixed double-free memory corruption bug
-               - radiant: added new color scheme to emulate Lightwave/Maya/3DS Max
-
-               02/11/2002
-               TTimo
-               - too many issues with build system reading system's libjpeg.h instead of libs/libjpeg.h
-               renamed libs/libjpeg.h to libs/radiant_libjpeg.h, updated sources
-
-               29/10/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=639
-               running from a network share - saving prefs per-user
-
-               27/10/2002
-               TTimo
-               - merged in some more m4x4 code for q3map2
-               - fixed unresolved code in picomodel (strlwr / strnicmp)
-               - reworked the tools building to build both q3map and q3map2 without trouble
-
-               25/10/2002
-               ydnar
-               - q3map2 and picomodel source, initial checkin to Stable-1_2 branch (does not compile yet, tweaking to be done)
-
-               23/10/2002
-               TTimo
-               - camera.dll goes into $(RTCWRADIANTDIR)/plugins instead of $(RTCWRADIANTDIR)/modules
-               fixed up camera compile (exports)
-                       added camera bitmap (plugin toolbar)
-
-               21/10/2002
-               TTimo
-               - quickfix to the build (typo)
-               - changed dynamic linking on Linux to look for libGL.so.1 by default
-               fixes "all textures are blank" Linux bug with NVidia cards
-                       (you still have to have a working NVidia GL installation though, xlibmesa-dev on Debian screws things up)
-               - checked in modified q3 .qe4   with q3map2 menu (see bug #638)
-
-               09/10/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
-               reworked the plugin toolbar to rely on interface instead of straight exports
-               cleaned up the botclip monsterclip Brush_Draw filtering, added proper selection filtering (Brush_Ray)
-               merged bug-622 back into Stable-1_2, bug-622 branch is dead now
-
-               06/09/2002  
-               James Monroe - RR2DO2 - TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=619
-               light globes, applying patch by RR2DO2 built from the initial light globe code
-               - note to self: indent -kr -nut -st -ts2 -i2
-
-               RR2DO2 - TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
-               massive patch update from SD's GtkRadiant
-               - camera plugin: new bitmap
-               fixed Linux install path for camera plugin to wolf/plugins
-               - fixed various warnings in camera build gcc / Linux  
-               - fixed pref crash if plugin toolbar disabled  
-               - fixed Gtk-WARNING on bad cast in AddPlugInToolbarItem
-               - renamed the new select to 'Use paint-select in camera view:' in prefs
-               (camera paint-select, should be our default name for this)
-
-               NEW: you can 'paint select' in the camera view: 'camera paint-select'
-               press shift and move the mouse over the camera view to paint over brushes you want to select
-               configurable in prefs to enable / use Shift key, or use 'classic mode' ctrl+alt
-
-               NEW: light radius drawing
-               Added in-editor light envelope drawing. Outer circle is max envelope, 
-               inner fullbright radius. Optional classic mode emulates the similar drawing 
-               from Rituals and Ravens tools (not q3map correct, easier for the level designer 
-               to understand/legacy).
-
-               NOTE: 'angles' is q3map2 only
-               NOTE: could manipulate angles directly from the views (2d and 3d with some handles)
-
-               NOTE TO SELF: 
-               <TTimo> hey guys .. just a quick question if you don't mind .. I'm trying to track a Gtk-WARNING .. is there a way to make those apps cause a break to track them easily ?
-               <andersca> just run your app with --g-fatal-warnings
-
-               TODO: add new bitmap to win32 & linux setups
-               TODO: don't use exports for the plugin toolbar, use entry functions
-               do something like CPlugIn::InitBSPFrontendPlugin
-               TODO: botclip is broken with the new Brush_Ray code  
-
-               initial ChangeLog for the patch:
-
-               28-09-2002
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Added 'angles' support for models (misc_model/misc_gamemodel).
-                       + Prevented pivot drawing of model from scaling and rotating.
-                       + Cleaned up the dropdown boxes in the preferences a bit (all use 
-               tables now, so not multiline).
-                       + Added 'Classic Key Setup' option to camera paint select configuration, this 
-               drag-selects with ctrl+alt instead of shift.
-                       + Changed XYWnd::PositionView to position on the center of the 
-               selection, not on the mins.
-
-               27-09-2002
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Added in-editor light envelope drawing. Outer circle is max envelope, 
-               inner fullbright radius. Optional classic mode emulates the similar drawing 
-               from Rituals and Ravens tools (not q3map correct, easier for the level designer 
-               to understand/legacy).
-
-               26-09-2002
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Upped MAX_TEXTUREDIRS to 256 (from 128).
-
-               25-09-2002
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Fixed patches not being drawn in XY window with colour of parent 
-               entity.
-                       + Made paste to camera snap destination spot snap to grid.
-
-               18-09-2002
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Changed Select_Reselect to be much faster.
-
-               12-09-2002
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Fixed curve point drag-selection area not showing properly in XY 
-               views.
-                       + Fixed size info breaking over 9999.9 units.
-                       + Fixed AllocateSelectedPatchHandles not setting patchesmode to 
-               ESelectedPatches.
-                       + Changed the horizontal and vertical tc shift spin control to have a 
-               limit of 8192.
-                       + Moved SPoG's implementation of redisperse cols to a seperate function 
-               and reinstated the old code.
-                       + Added 'Paste to Camera', shortcut Alt+V, which pastes the contents of 
-               the clipboard to the current camera origin.
-                       + Added centerview functionality to 4 window mode. Ctrl+tab will focus 
-               on the selection, or if non existant, on the camera.
-
-               11-09-2002
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Made sure settings set in savedinfo.bin get initialized to their 
-               proper defaults.
-                       + Added botclip filter (filters *botclip* and *monsterclip*).
-
-               10-09-2002
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Removed .reg from normal map saving, can only save as region 
-               using 'Save region'.
-                       + Added outline style cycling (j) cycle between z buffered outlines and 
-               selected colour rendering.
-                       + Added colour dialog to pick the colour of selected surfaces in the 
-               camwindow.
-                       + Third coordinate for clip points now gets set to the center of the 
-               selection.
-                       + Changed arbitrary rotation dialog to accept negative angles as well.
-                       + Changed texture alignment dialog to accept values up to 2 decimal 
-               points.
-                       + Fixed entity inspector to say 'Textures:' in the window title.
-                       NOTE: still broke in floating window mode
-                       + Changed entity inspector so that tab doesn't clear the epair value 
-               field anymore, so it retains the value while jumping to it.
-                       + Disabling camera paint-select now returns selection behaviour for groups to 
-               the old behaviour as well (shift+click selects whole group).
-                       + Changed load_plugin_bitmap to load bitmaps from g_strAppPath if 
-               g_strGameToolsPath fails.
-                       + Added plugin toolbar and api.
-                       + Fixed m_pfnCommitBrushHandleToEntity, wasn't creating brushes 
-               properly (well, not at all really).
-
-               Older changes:
-                                       Arnout <rr2do2@splashdamage.com>
-                       + Added misc_gamemodel drawing.
-                       + Ported camera paint-select over from 1.3.
-                       + Fixed statusbar display of text (removed a bunch of \n's).
-                       + Added area selection in 3d view for patches.
-
-               30/09/2002
-                       TTimo
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=556
-                               quickfix crash bug
-
-               27/09/2002
-                       TTimo
-                       - more CORERADIANTDIR cleanup (q3data)
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=602
-                               added cascading to the entity submenu (doesn't cascade the main menu, only the sub ones, NPC_* for instance)
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=556
-                               with clip and caulk filtered out, won't be selected anymore in camera view (i.e. selecting invisible faces)
-                               added SF_CAMERA to the flags in the selection process
-                               cleanup up various ugly syntaxes in the selection code:
-                               don't ever do if (flags == SF_SINGLEFACE) on a bitmask and assert that the other flags will always be NULL
-                                       don't do arithmetic on bitmasks:
-                                               if ( (flags & SF_ENTITIES_FIRST) && t.brush == NULL)
-                       return Test_Ray (origin, dir, flags - SF_ENTITIES_FIRST);
-                       is WRONG
-                                               using flags & ~SF_ENTITIES_FIRST is the appropriate way
-
-               23/09/2002
-               Riant
-               - new IS scripts to go with recent media updates
-                       Riant & TTimo
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=615
-                               reworked the fix to use "caulk_shader" in .game
-                               updated IS .rul script to generate special values for Sof2 and JKII
-
-               21/09/2002
-               Riant
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=595
-               more texture compression, dialog and settings
-               Michael Schlueter  
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=592
-               fixes to the Linux build system, exclusive q3 or wolf working now
-
-               22/08/2002
-               EvilTypeGuy
-               - Fix @*$&)@)$$ memory leak of my own doing, yes it's really been in there this long.
-               This should help memory usage drastically, especially when flushing & reloading
-               the same sets of textures, GtkRadiant's memory usage no longer becomes heinous.
-
-               14/08/2002
-               EvilTypeGuy
-               - Fix build on some linux boxen by including qertypes.h for proper boolean type declaration
-
-               -- release-1_2_10
-
-               16/08/2002
-               TTimo
-               - STVEF media update finalized (some .def)
-               - 1_2 Core Update for shader manual update
-               - in JKII, typo with nar_shader? replaced by nar_shaddar, with proper support in update too
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
-               Q3/TA media update with cleaned up shaders
-               - validated the update content by a diff between 1.2.9 + 1.2.10-update and 1.2.10 full  
-               - added a DO_NIGHTLY_BOOL to setup.rul AND a warning during setup about update content for games that are not installed
-               - built 1.2.10-sof2, SoF2 full install
-
-               15/08/2002
-               Michael Schlueter
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=590
-               added the option to build a Linux setup with the debug binaries
-
-               TTimo  
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
-               cleaned up shaders, done nightly setup update on Linux
-               updated Linux nightly for 1.2 to use /usr/local/games/GtkRadiant-1.2 as default base
-               - using version 1.2.10-update. Full Sof2 setup will be 1.2.10-sof2
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=426
-               don't straffe when using Ctrl+Shift(+Alt)
-               - camera.so RTCW plugin in Linux setup
-               - quickfix to non-initialized var in camera code
-               - awfull piece of work that had been completely left out, nightly elements for JK2 and STVEF
-               added JKII media update and STVEF media update (for the DIR_GAME elements)
-               JKII nightly is finalized
-
-               14/08/2002
-               TTimo
-               - fixed a missing file
-                       - Linux build quickfix
-               - fixed silly rendering bug
-               - added pref to force texture compression off (hey why would you do that??)
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=466
-               fixed MAX_POINTS_ON_WINDING overflow in q3map (and relevant code to handle in radiant)
-
-               13/08/2002
-               TTimo
-               - cleared up notexture (dead code)
-               - cleaned up QERApp_LoadTextureRGBA gamma table init
-               - having a shot at 1.3 texture compression
-               sees the extension, binds the texture with the currect setting
-               but rendering is fucked .. someone explain?
-
-               08/7/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=586
-               search and destroy Q3Radiant -> Radiant
-
-               07/7/2002
-               SCDS_reyalP
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
-               wolf_entities.def update
-
-               riant
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=548
-               STV:EF updates
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
-               SOF2 updates
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=584
-               JKII updates
-
-               06/7/2002
-               Riant
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
-               Sof2 patches and IS setup    
-               TTimo
-               - game pack prompt asking about STVEF, fixed
-               - mp_examples was leaked and non lighted, fixed
-               - imagepng.dll goes into Sof2 install / modules, and not in DIR_CORE
-               - libpng12.dll needs installed only with Sof2 pack (added 'SOF2 Pogram DLL')
-               default texture scale is 0.125  
-
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=582
-               nomipmap -> nomipmaps in shader manual  
-               - removed libs/pak, this was still being linked in to Radiant, but not used at all  
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=580
-               .PK3 are recognized along .pk3 files (strcmp ->strcasecmp)
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
-               added the RTCW camera plugin to IS setup
-
-               Michael Schlueter
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=581
-               GL warning fix      
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=567
-               GL font display fixes (mostly Linux)
-               applied the changes with some tweaking
-
-               31/6/2002
-               TTimo
-                       - compiling the camera plugin on Linux:
-                       move the GUID and other misc compatibility definitions to include/misc_def.h
-                               GetTickCount being used in camera.so, this is from radiant/missing.cpp (unresolved)
-                               -> use QGetTickCount instead (in main function table)
-
-               30/6/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
-               cleaned the .shader from 'light 1' statements
-               updated the IS script for the updated .shader
-
-               17/6/2002
-               TTimo
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
-               Sof2 support, PNG format
-               wrote imagepng module, dynamic dependencies to zlib and libpng
-               changes in the core:
-               some hardcoded to "sof2.game" for png interface loading and extensions
-               in GetTextureExtension, killed outdated support for texture plugins
-               if ! "sof2.game", png is not loaded, support disabled
-               http://zerowing.idsoftware.com/libpng/
-               correctly configured for VC build (post build steps and dependencies)
-               is required on win32 to build imagepng
-               - added m_pfnGetGameFileName to the main function table (was needed for png stuff)
-               - cleaned up the QERApp_LoadTextureRGBA path
-               using (unsigned char* pPixels, int nWidth, int nHeight)
-               cleaning up internal access path
-               RR2DO2
-               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
-               camera plugin for RTCW
-               TTimo: wrote the .dsp, post build steps etc.
-               IMPORTANT: you need to have RTCWRADIANTDIR env variable pointing to the RTCW Radiant files
-               (default C:\Program Files\Return To Castle Wolfenstein\Radiant)
-
-
-               12/6/2002
-               RR2DO2
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=299
-                       MP/SP pk3 filtering in VFS
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
-                       .camera support: splines library, camera plugin
-                               TTimo: portability fixups, cons build, guarding pragma, __cdecl BOOL
-                               virtual functions but non-virtual destructor
-                                       declaration with no type
-                                       int idCameraFOV::start - control reaches end of non-void, making it void
-                                       enumeration not handled in switch
-                                       no _MAX_PATH, the portable one is PATH_MAX
-                                       implicit declaration of int _fullpath
-                                       for(int i = 0; ..
-                                       struct _IO_FILE has no member named '_bufsiz'
-                                       stricmp -> Q_stricmp
-                                       attempt at implementation in .h file (InitIglToQgl)
-                               camera stuff still vastly broken (particularly on Linux), need to check in because of new fixes incoming        
-                       djbob   
-                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=17
-                       quick fix to spawnflags getting corrupted when multiple entities selected
-                               (doesn't completely solve the problems we have with spawnflags yet though)
-
-===============================================================
-END -- merging release-1_2_9 -> merge-post-1_2_10 into trunk - END
-===============================================================
-
-12/12/2002
-  Hydra
-  - #197, HL support update
-
-11/12/2002
-  TTimo
-  - added cmdlib dependency to mapq3.so (fixes unresolved)
-
-25/10/2002
-  Hydra
-  - vfsGetFullPath() can now (optionally) search PK3/WAD files
-  - Half-life map loading is now un-borked (my original patch worked
-    but some conditional code in the patch was incorrectly applied.
-    That, coupled with the missing vfsFileExists and vfsFindFile replacements)
-  - A patch to imagehl/lbmlib.cpp/LoadIDSP() was missed out, causing all sprite
-    models to be reverse-rendered (due to an inverted alphamask)
-  - Renamed HydraToolz to HydraToolz-HL as it's half-life specific
-    changed project files and renamed all appropriate files and directories
-    (for the merge, just delete contrib/hydratoolz and apply the diff)
-
-  - Comments on previous notes:
-
-    - TODO: need to rationalize where the modules are placed and identify HL specific modules
-      (this affects the build system / post build step too)
-      imagehl and spritemodel are halflife specific and can be placed in
-        either $coreradiantdir/modules or $hlradiantdir/modules
-        I've updated the .dsp files so that they are copied to $coreradiantdir/modules
-        spritemodel can actually be used for other engines, not just HL so it makes sense
-        to keep it in $coreradiantdir/modules
-      hydratoolz is a half-life specific plugin and must go in $hlradiantdir/modules as it
-        is NOT to be used for any other engines.  I've also updated the "about text" to
-        reflect this.
-
-14/08/2002
-  EvilTypeGuy
-  - fix build process for textool plugin on some Linux boxen by including qertypes.h
-
-11/06/2002
-  TTimo
-  - spritemodels in build system
-  - applying HL setup patch (att 270, bug 197)
-    - the templating went one filename seperator too far, causing all *.fgl to be modified .. 
-      fixed so that we only have the relevant changes
-    - modules added to main Executable Files, TODO for later will need to identify what is HL specific
-    - .game generation: don't want enginename yet, gamename is ok
-    - updated HL .game generation for eclass_singleload and no_patch   
-    - update hydratoolz location in setup
-    - update maphl in synapse.config
-
-07/06/2002
-  TTimo
-  - realized that \func doesn't work in doxygen, should be \fn (updated everywhere)
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
-    applying the HL patch (see original list of changes below)
-    - ugly eclass API changes
-      eclassfgd/plugin.cpp.rej, eclass API changes involved, a bunch of .rej
-      SupportsMultiple tries to send configuration information from the eclass format file module to the eclass manager
-      dropping it, using a proper configuration node instead (eclass_singleload)
-    - added "no_patch" prop to disable patch support
-      the patch toolbar prompts are only present in prefs if there is patch support
-      otherwise everything is force-disabled
-    - PFN_VFSFINDFILE PFN_VFSFILEEXISTS:
-      one of the problems we have is that the 'manager' code and file format code are in the same module
-      (i.e. vfspk3 / vfswad: two formats, but the manager part is pretty much the same)
-      vfsFindFile(relative filename):
-        this worked by searching through the list of loaded pk3/wad files for the file
-        then trying to search through the search directories
-        - wasn't properly documented about what it does / how is the search performed
-        - not consistent with existing code, duplicate of vfsGetFullPath for the most part
-          can't be added to the VFS API as-is, it would confuse the interface
-        - usage of vfsFindFile in the code doesn't justify the way it proceeds for search
-        foxing it, replacing by calls to vfsGetFullPath
-      vfsFileExists(relative filename):
-        returns wether a file exist, can be flagged to search in pk3/wad or straight filesystem
-        - this is a duplicate / particular case of vfsGetFileCount
-        foxing it too, we need to extend and update vfsGetFileCount instead
-    - mapq3: the changes completely fucked q3 map parsing
-      need reorganization. same module provides parsing for all .map based formats
-      we use wrappers around the actual calls and globals in the module to select formats
-      MAPVERSION_Q2 and MAPVERSION_Q1 don't need to be there yet, they are not supported
-      MAPVERSION_HL means WC >= 2.2
-      (when introduced, MAPVERSION_Q2 would be Q2 or qer+hl plugin (same))
-      MAPVERSION_HL uses "maphl" minor name (instead of mapq2)
-      cleaned up the Q3 read/write code that got broken
-      cleaned up various commenting/hack that deal with Q2!=HL format .. we'll see about Q2 when we actually do it
-      bad cut and paste from cmdlib code, using actual dependency to cmdlib instead (see below for some cmdlib updates)
-    - took out all SafeRead SafeWrite code from cmdlib, removed annoying cmdlib dependency to Error function
-      all file access go through VFS module, the cmdlib 07/06/2002 15:47file code was way old  
-    - radiant/points.cpp pointfile code changes (that's used only for non-monitored compiling now)
-    - applied patch 267 (hydratoolz fixes)
-    - commented out some bworldcraft flagged stuff in mapq3/parse.cpp
-    - updated the .dsw .dsp to compile and copy HL stuff  
-    - TODO: need to rationalize where the modules are placed and identify HL specific modules
-    - TODO: seems to be a synapse crash when unloading plugins (hydratools)
-      (looks like I didn't look at the plugin unload code yet actually)  
-    - TODO: make sure HL setup puts eclass_singleload="1" and no_patch="1" 
-    - TODO: WATCHBSP_KEY and TEXTURE_KEY hardcoded for HL need cleanup
-    - TODO: imagehl duplicates some image functionality
-      imagehl is supposed to be only for HL-specific image formats
-      it 'adds' the required formats to the stuff that image makes available for everyone already
-    - TODO: HL doesn't have a BSP menu!  
-    - TODO: rename mapq3/ into map/, the map module handles all .map formats
-    - TODO: it's likely that we only need a vfs/ module instead of vfspk3/ and vfspak/
-      think about it, see if we really act on this (or do we need to abstract the manager and some file format modules)
-    - TODO: HL synapse.config needs to use maphl
-    - TODO: wtf is enginename="quake2" in hl.game
-    - TODO: I don't have a sample HL map to play with, so I didn't test the changes against
-
-05/06/2002
-  TTimo
-  - fixups to make 1.3 start (Q3 mode)
-  - turned off C++ exception support in the modules/plugins, as we don't use it
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=543
-    exit properly if missing chunks in synapse.config, don't crash
-      
-  Hydra
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=558
-    fix for version check in release build
-
-  ======================================================================================
-  -- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
-     HL support patch
-  ======================================================================================
-  04/6/2002
-    Hydra
-    - Patched in some CVS changes and fixed a little issue with the
-      new entity file loader code.
-  
-  28/5/2002
-    Hydra
-    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=544
-      Selected Entity Bounding Box obscured by brushes fix.
-    - Moved the "wad" keypair creation code from the Map module into
-      a new plugin called HydraToolz, this means that wad keypair is
-      done manually by the user, as in fact it should be.  (as the
-      order of the wads is actually important).
-    - Fixed a problem with the wads in the wad list being re-ordered.
-  
-  27/5/2002
-    Hydra
-    - Created an inital implementation of a sprite model plugin.
-      According to the powers that be, it seems creating a model
-      plugin is hackish.
-      It works ok, but there is no way to attach models (sprites if you will)
-      to non-fixedsize entities (like func_bombtarget)
-      Also, I can't get the alpha map stuff right so I had to invert the alpha
-      mask in the spr loader so that 0xff = not drawn pixel.
-  
-  17/5/2002
-    Hydra
-    - "Wad" keypairs are now used when loading a map and speeds up map loading
-      significantly. This sorts out quite a few issues that could otherwise occur.
-    - Map loader now uses textures from wads listed in the the "wad" keypair first.
-    - Added a texture name mapping cache system to the .map loader
-      this significantly improves load times of maps that don't store texture
-      names along with paths (e.g. "mytexture" not "mytextures/mytexture".)
-    - Added vfsFileExists() to the vfs table (for above) and added it to
-      vfspk3 and vfswad
-    - Map loading and saving times are printed to the console.
-    - Wad file names from the "wad" key pair are logged to the console when
-      a map is loaded
-    - The user is informed if the textures loaded were not found in the
-      wad files in the "wad" keypair.
-    - The user is informed if the textures was not found in any wad file at all
-      (Q2/HL only, the shader module still gives you similar information for other
-      games when a shader activation fails)
-  
-  
-  8/5/2002
-    Hydra
-    - Added basic support in mapq3 for reading maps saved by Worldcraft 2.2+
-      in .map format (It uses [ ]'s round some of the texture co-ordinates)
-      TODO: do we need to be able to save a map in this format too ?
-    - Added support for loading ZHLT style point files (*.lin)
-    - Added wad filename information when loading textures.
-      (This helps take the ambiguity out of which wad files textures come from,
-      so that we can correctly setup the worldspawn "wads" e-pair manually.)
-      Note: This will be removed when the "wads" worldspawn key is built by radiant.
-    - added vfsFindFile() to vfs table.
-    - VFSWAD: vfsLoadFile() no longer ignores paths when loading textures
-      (this was by design, but the design has changed for the better)
-    - When loading a Quake2 map file, vfsFindFile() is used to find the actual path of
-      the shader/texture being loaded.
-      This fixes all the weird issues that crop up when we were able to use non
-      wad-relative texture names (<shader>) and wad-relative(<wadname>/<shader>).
-      (such as having an image loaded twice in memory.)
-      We also now get the correct shader name in the suface inspector too.
-      Note: not sure if this code should stay in the map parser, or wether it should
-      be moved to where shaders are first initialised.
-      Note: maybe this needs to be when a halflife map is loaded, not specifically a
-      quake2 map file.
-    - added EClass_SupportsMultiple to the EClass loader API.
-      Note: this is poop.  FGD files can be additive but radiant makes it so they can't be.
-      This function would not be needed if the eclass loader itself took care of the init,
-      rather then the manager taking care of the init.  Also note that if the loader were
-      to take care of the init then FGD files *CAN* be additive, as it's not down to the
-      format of the FGD files.  However, it'll do for the moment because all the supplied
-      FGD files that come with halflife and it's mods are meant to be used one at a time.
-    - removed support for having an additional (not external) eclass loader.
-      Just ifdef'd for now, grep for USEADDITIONALECLASSLOADER.
-      We never mix entity definition formats and synapse.config allows us to just have the
-      right one and also there is no mechanism for setting g_bHaveEClassExt anymore.
-    - Texture subset on by default for halflife.
-    - default texture scale is now set to 1 instead of 0.5 for halflife.
-      (needs to be 1 for q1/q2 too)
-    - patch toolbar disabled by default for halflife and it's also disabled
-      in the preferences so it can't be turned back on)
-      (needs to be 1 for q1/q2 too)
-    - bsp monitoring disabled by default for halflife
-    - When you drop a light entity the epair "_light" is used instead of "light" (halflife specific)
-    - removed -fs_game additions to the map compiler commands; ZHLT doesn't support it.
-    - saving of contents/flags/values in q2 format maps disabled (ZHLT doesn't like em !#?!)
-      TODO: re-enable for Q2 (but not halflife) format maps when we can
-      can figure out what game/engine combo we're using from within a module
-    - configured mapq3 to have dynamic VFS API too
-    - Added halflife shaderlist.txt parsing back in, it's actually useful
-      afterall (for editor shaders).
-  ======================================================================================
-  -- end HL support patch
-  ======================================================================================
-  
-01/06/2002
-  TTimo
-  - merging 1.2.7 -> 1.2.9 changes into 1.3, merge notes:
-    - the win32 .dsp are a bit different, using the $(CORERADIANTDIR) post build commands now
-    - merged in the JKII/STVEF hardcoded chunks, should probably check that everything is still fine on that end
-      was setting the "dir" epair in project files intead of "gamename" like all other games?
-      (which should really be "fs_game" anyway, I wonder who decided to call it "gamename")
-    - rebuilt a setup. we have a problem with RADIANT_MAJOR RADIANT_MINOR it seems
-    TODO: setup needs to use GtkRadiant-1.<MAJOR> as basename in start menu, and base for installation
-    C:\Program Files\GtkRadiant-1.3 and C:\quake3\Radiant-1.3 etc. for the game packs
-    TODO: add HL setup chunks!
-
-===============================================================
--- merging release-1_2_7 -> release-1_2_9 into 1.3
-===============================================================
-28/5/2002
-  TTimo
-  - final fixes for Linux 1.2.9 setup
-
-27/5/2002
-  TTimo
-  - bug 521, q3 entities.def trigger_hurt fix
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=542
-  default texture scale is configured in .game
-  defaults to 0.5 (q3/wolf) if nothing specified, under the prop "default_scale"
-  removed the item from the prefs dialog too
-  updated the nightly setup to put the proper param in JKII .game
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=509
-  changing texture window scale changes selected brushes texture
-  re-selecting the previous texture can be done, but is a bit tedious to write
-  made sure we deselect before re-init of the tex window view
-  - fixed linux setup code bug. won't be any update, only a full release on linux
-
-26/5/2002
-  TTimo
-       - parallel cons working at last! was a problem with the targets list ('Default' command)
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=515
-       using the eclass extents for the box if model can't be found
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=435
-       changed the submenu cascading params to avoid the overlap (we fit less stuff now obviously)
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=540
-       that sigchld handler is only used on Linux to report the run times
-       since we are rewriting the whole BSP code stuff, we can drop this for now
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=538
-       removed that prompt and display
-       - we build radiant.x86 in cons scripts, updated the setup code
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
-       updated the setup script to install new wolf_entities.def
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=302
-       added q3map2 URL to global.xlink, updated Linux setup
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=465
-       printing q3map version info through the net stream
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=539
-       fixed various media, some related code, and Linux setup
-  - fixed watchbsp.cpp "jk2.game", was breaking game spawn for wolf (needed else if)
-       
-       SCDS_reyalP
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=504
-       fixed bobtoolz vis viewer to work with RTCW (BSP version)
-       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
-       update of the Wolf entities file
-
-25/5/2002
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=164
-  corruption on exit, tried to look some more. Cleaned up some source, need looking at Gtk code closer
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=536
-  cleaned up SHADER_NOT_FOUND SHADER_NOTEX internals some more
-  added a clean error exit in case this happens, fixed a crash that would happen anyway (Patch_LODMatchAll)
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=394
-  cleanup/sanitize of the pattern filtering code, it was ugly. did some doxygen documentation
-  fixed part of the print XY code, more broken stuff showed up, dropping it
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=503
-  region compiling was indeed fucked, spog b0rkage
-  fixed so that it works again
-  denying compile with camera out of the region
-  reworked SelectBrush to deal with regioning and select the right brushes
-
-24/5/2002
-  TTimo
-  - Linux build fix
-
-23/5/2002
-  Riant & TTimo
-  - STVEF patch and setup scripts
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=516
-  moved error handling code to it's own file radiant/error.cpp
-  compiled with UNICODE define (that's why I had to isolate), and process the error string
-  so that Gtk can print it (that's only relevant to win32)
-
-22/5/2002
-  TTimo
-  - quickfix, cleanup of the console verbosity
-
-11/5/2002
-  TTimo
-  - final IS script updates for JKII game pack, version 1.2.8-jk2
-  - fixed a bad karma #ifdef _DEBUG chunk in Texture_NextPos (causing crash of release build)
-  - added web url support in .xlink files (strstr on http://)
-
-10/5/2002
-  TTimo
-  - cleaned the build step copy from $(QUAKE3RADIANTDIR) to $(CORERADIANTDIR)
-  - system shaders auto-load: display 'system' in the prefs
-  - force BSP monitoring off in jk2 mode
-  - cleaned up web update check, added HL (3) and Jedi Knight II (number 4) (on the web database too)
-  - updated IS setup script for mapextras.pk3
-  Riant
-  - system shaders auto-load in prefs
-  Raven
-  - mapextras.pk3 as replacement for system.pk3 (system editor textures)
-
-8/5/2002
-  Riant
-  - game pack and patches for JKII support
-  TTimo
-  - .game additions to specify .shader path (shaderlist and shader scripts)
-    NOTE: if we ever use q3map for JKII compiles, that would need to be propagated
-  - reworked the shaderlist to list all the included shaders
-  - built a system.pk3 pack for textures/system/ and textures/radiant/ (misses a few pieces still)
-  - MP / SP mapping mode toggle, SP ignores mp_*.def MP ignores sp_*.def
-  - fs_basepath does not get added during BSP command expansion for JKII mode
-  - more verbose on script location and junk.txt location when monitored compile is disabled
-    (the BSP compilation WANTS to be rewritten, it's getting VERY URGENT)
-  - JKII game back IS setup lands
-
-7/5/2002
-  TTimo
-       - using radiant.x86 as Linux target (instead of radiant, didn't fit with the setup procedure)
-       - bumped version tag
-       - TODO: bug #453 code needs backported from 1.3
-
-6/5/2002
-  TTimo
-  - fixed typo in plugins/mapq3/write.cpp Map_Write
-  g_count_entities = 0; instead of g_count_brushes
-  - more fixes which showed up while merging this with 1.3
-
--- release-1_2_7 ----------- tagged and Stable-1_2 merging into trunk
-
-02/5/2002
-  Gef
-  - added filtering on unselect for newly created brushes/entities (bugzilla: #374)
-  SPoG
-  - added undo for pasted/cloned brushes
-
-============================================================
--- end release-1_2_7 -> release-1_2_9 merge
-============================================================
-
-15/05/2002
-  TTimo
-  - rewrote the ref count code cleanly, added some elements to design and todo
-  - wrote the core shutdown code of synapse, 1.3 exits cleanly without crashing (well, in most cases it seems)
-
-10/05/2002
-  TTimo
-  - began writing proper unloading and shutdown of synapse (see libs/synapse/docs/unload.txt) 
-    design doc started, non active modules are unloaded after startup
-    need win32 implementation of ReleaseSO
-  - quickfix on win32 (ReleaseSO)
-  
-07/05/2002
-  SPoG
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=512
-  - cleaned up strHomeMaps and strFSBasePath stuff
-    prompts for maps, models, sounds etc are fs_game-dependant
-
-  ===========================================================================
-  -- merging Stable-1_2 between Stable-1_2-tag and release_1_2_7 into trunk
-  merge ChangeLog
-  =============================================================================
-  07/05/2002
-       - using RADIANT_MAJOR_VERSION and RADIANT_MINOR_VERSION for the version info, this was conflicting with synapse
-       
-       - m_strHomeMaps
-       http://zerowing.idsoftware.com/viewcvs/viewcvs.cgi/GtkRadiant/include/qertypes.h.diff?r1=1.27&r2=1.28&only_with_tag=MAIN
-       http://zerowing.idsoftware.com/archives/gtkradiant/2002-February/002170.html
-       posted on the ML, bringing it back in from 1.2
-       
-       setup scripts:
-         easily merged, as the 1.3 scripts have not been touched mostly
-       
-       qe3.cpp conflict:
-         1.2 tweaks stuff in the QE_*Project* functions
-               1.3 has them mostly commented out
-               applying manually where relevant
-               the project settings stuff is very different, and the changes can't be applied as is
-               given the fixes I had to do in 1.2, I'd expect the current 1.3 version to be fairly broken
-               a complete kill and rewrite of the prefs/project stuff might be our option anyway
-               http://zerowing.idsoftware.com/archives/gtkradiant/2002-May/003038.html
-       qe3.cpp QE_InitVFS conflict:
-         1.3 has some changes when creating the files in a new userprefix (ex. ~/.q3a/baseq3/scripts /maps /maps/prefabs etc.)
-               merged by hand, probably needs to be checked
-       qe3.cpp OpenDialog SaveAsDialog conflict:
-         commented out in 1.3, getting rid of it completely
-       
-       preferences.cpp conflict:
-         1.2 adds CUSTOMSHADEREDITOR_KEY pref
-               1.3 uses a completely different syntax for prefs
-       preferences.cpp conflict:
-               prefab path pref changes conflict with 1.3 pref syntax
-               applying changes manually to 1.3 codebase
-       
-       pmesh.cpp conflict:
-               1.2 adds pref to group / not group patch thickening
-               1.3 changes the way we manipulate entities around that code
-               merged manually, would be worth checking that the thicken pref works
-       
-       pluginmanager.cpp conflicts: synapse completely changes that part
-       on relevant 1.2 thing is the removal of pfnRadiant_Free
-       
-  map.cpp Map_ImportEntities conflict
-               1.3 has bug 453 map conversion promt that was not backported to 1.2 (caused merge to conflict a bit)
-               usin 1.3 code and checking 1.2 changes manually
-  
-       using radiant.x86 as Linux target (instead of radiant, didn't fit with the setup procedure)
-  
-       06/05/2002
-       not merging in .dsw .dsp
-       an eclass.cpp fixed moved to eclass_def.cpp
-       mainframe.cpp is always a bitch to merge, sent several mail comments to list about conflicts that arose
-         MainFrame::OnFileSaveas needed some updates that were not in the diff (correct default prompt)
-               (same for MainFrame::OnFileSaveregion)
-               MainFrame::OnFileNewproject conflicts a bit, changes have been made in 1.2 and 1.3
-               changes in 1.2 seem more crucial, using the 1.2 version, and patched the 1.3 manually over it
-                 (might need to be checked, bug #506)
-      
-       TODO: need to check for parasite g_free that I added back from the file dialog    
-  
-  propagated ChangeLog from Stable-1_2
-  =============================================================================
-       02/5/2002
-         Gef
-         - added filtering on unselect for newly created brushes/entities (bugzilla: #374)
-         SPoG
-         - added undo for pasted/cloned brushes
-         TTimo
-         - shift+left click to open shader editor no longer selects the texture on the way
-           (this was unstable, pCurrentShader could become NULL somehow)
-         - editpad bindings were completely broken
-           attempts to make it work again failed
-               taking it out
-               changed the prefs, on win32 you select between internal shader editor or win32 .shader binding
-               we have lost the ability to jump to a given line, if someone has a good solution for line jumping, let me know
-         - one more fix to the MAJOR / MINOR safe checks stuff
-         - bug #500: oooogly, I removed a line which I should not have :)
-
-       01/5/2002
-         TTimo
-         - "Save selected.." load/save in fs_game sensitive directory too
-         - removed a bunch of unused/broken project settings items
-         removed most of them actually .. project settings are .. ahem
-         - added an optional 'go to url' button in gtk_MessageBox
-
-       30/4/2002
-         Gef
-         - fixed lod drawing of selected patches when patches are filtered
-
-       29/4/2002
-         TTimo
-         - bugzilla #467
-           make patch inspector deny space textures
-           make mapq3 write code drop space textures
-         - bugzilla #132
-           removed remotebasepath and texturepath
-               rewrote the Textures > Load Directory (which was kinda relying on texturepath)
-         - bugzilla #355
-           uploading editpad zip to qeradiant.com misc/ in files section, replacing the win32 message about editpad
-           added editpad quote in qer.com totd
-         - fixing the map load/save dialogs to work correctly with mod settings on win32 (was done on Linux and still broken on win32)
-
-
-       26/4/2002
-         Gef
-         - fixed patches losing their shader if outside region when calling flush/reload 
-           (bugzilla: #492)
-         - blocked textures with spaces from loading in Texture_ShowDirectory with a warning
-           (bugzilla: #467)
-         - fixed a dud shader (liquids.shader -> textures/liquids/ripplewater2_back) didn't have
-           the textures/liquids prefix
-
-       25/4/2002
-         Gef
-         - fixed a broken image link in the shader manual (bugzilla: #486)
-         - changed prtview to use ~/.radiant/<version>/prtview.ini instead of 
-           ~/.q3a/radiant/prtview.ini on linux
-         - fixed prtview loading/saving config (bugzilla: #424)
-         TTimo
-         - removed QERApp_RadiantFree from the function table
-         we can malloc and free across modules configured correctly for the CRT (Common Runtime DLLs)
-         cleaned up related broken malloc / free strategy in the plugins (vfsLoadFile uglyness)
-         - added main build date and version to curry / pk3man / prtview
-
-       23/4/2002
-         SmallPileOfGibs
-         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=229
-         flush and reload was affecting texturing of selected brushes
-         TTimo
-         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=489
-         File > Check for update menu item, jumps to the website and checks for update
-         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=431
-         win32 part, RADIANT_MAJOR RADIANT_MINOR written out by setup
-         - more stuff on File > New Project and common mod setup issues (not finished yet)
-
-       22/4/2002
-         TTimo
-         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=431
-         reworking a bit the installer stuff
-         wrote the version checking
-         needs testing on win32 (RADIANT_MAJOR and RADIANT_MINOR are required in the install now)
-
-       21/4/2002
-         TTimo
-         - trying more seriously to get a new nightly out
-         updating the ChangeLog for current 1.2.7 from this file
-         cleanups, browsing through the bugs to close/update/fix
-         - http://zerowing.idsoftware.com/bugzilla/showattachment.cgi?attach_id=197
-         I kinda fixed that myself already, going through the diff and applying the missing stuff
-         creating the prefabs/ dir in QE_InitVFS
-         - added a line about the games dialog / auto-select at startup in the dialog frame
-
-       15/4/2002
-         TTimo
-         - cleaning some old commented out map load code
-         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=477
-         on Linux:
-           - strHomeMaps was init without taking care of m_strFSGame
-           - SaveAsDialog was not using strHomeMaps
-           NOTE: should strHomeMaps be spcific to Linux, or we will do better if we unify
-         need similar checks on win32
-
-       13/4/2002
-         TTimo
-         - kicking the source to generate new doxygen on zerowing
-
-       09/4/2002
-         Gef
-         - setting the sel_mode accordingly when (i)nverting selection, verts were being drawn when 
-           they shouldn't have been
-
-       05/4/2002
-         Gef
-         - fix File/New Project for mods so it doesn't fail if the dir exists (bugzilla: #459)
-         - add Linux-isms for New Projects & read/write permissions...
-           note: for a total conversion, basepath needs to be manually set
-         - prevent opening multiple internal shader editor dialogs
-         - added preference for using a custom shader editor
-         - set horizontal scrollbar to be automatic instead of never for entity keyval list (bugzilla: #4)
-         - added a call to Select_Reselect() in XYWnd->OnViewEntity() to make sure its modifying the 
-           current selection (bugzilla: #436)
-         - fixed entity dialog passing events through to main window (bugzilla: #454) return values
-           were backwards
-         - patching in the .pfb extension adding stuff (bugzilla: #259)
-         - fixed thickened patches not being grouped (bugzilla: #226). this was supposed to be happening
-           anyway, the entity create code was called before the patches were selected
-
-       02/4/2002
-         EvilTypeGuy
-         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=457
-         add entity #X and brush #X comments back to saved .map files
-
-       24/3/2002
-         Hydra & TTimo
-         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=444
-         only show empty alpha channel warning if the tga texture is actually 32 bit
-         (24 bit would always have empty alpha, the warning was useless in this case)
-
-       19/3/2002
-         Gef
-         http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=217
-         - Set show value to true for angle and movement velocity sliders in preferences
-         - Increased the maximum value of angle velocity from 6 to 100
-
-       18/3/2002
-         SPoG
-         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=419
-               fixed File->Save with region active acts the same as File->SaveRegion for ents
-
-
-  end merge  
-  =============================================================================
-
-16/4/2002
-  SPoG
-  - fixed MDC_XYZ_SCALE value
-
-12/4/2002
-  SPoG
-  - fixed win32 compile error - vc6 being nitpicky
-  - fixed refcount init on CSynapseAPIManager
-  - cleaned up md3model win32 project file
-
-9/4/2002
-  Gef
-  - added nudging for selected brush and patch vertices (bugzilla: #240)
-  - added selected brush vertex highlighting
-  - sorted all the ID_'s in HandleCommand alphabetically to make it easier to track things down
-  - setting the sel_mode accordingly when (i)nverting selection, verts were being drawn when 
-    they shouldn't have been
-
-5/4/2002
-  EvilTypeGuy & djbob
-  - patched in djbob's grid minor/major color settings for gridsize < 1
-    http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=24
-
-1/4/2002
-  TTimo
-  - configured md3model to have dynamic VFS API too
-  - cleaned up texwindow.cpp texture extension loop
-  - updated current HL media with hl's synapse.config
-    http://zerowing.idsoftware.com/stuff/HL-media-0401.zip
-  - checking in new synapse.config for Q3/RTCW
-  - fixed win32 project files, removed hltoggle.h
-  - bumped version to 1.3.3
-  
-31/3/2002
-  TTimo
-  - XML runtime configuration of synapse
-  uses a synapse.config in the gametools path, we can add a line in the .game to specify the file later on
-  - various cleanups and removal of dead code
-  - Linux build system: sanitized CFLAGS, libxml, STLPort and glib include path all in the toplevel Construct file
-  - removed the 'cons -- halflife' option, the binaries are unified again
-  - cleaned up image loading
-
-
-29/3/2002
-  TTimo
-  - patching in Hydra's code for Half-Life, builds and runs on Linux, need to quickfix on win32 now
-  - build system on Linux: some things are still hardcoded into the core, you need a different core
-    for Q3/RTCW or HL for now. do ./cons -- halflife to build HL mode (build trees are seperate)
-  - there is no media / install procedure yet, but a zip with what you may need for install is available:
-    http://zerowing.idsoftware.com/stuff/HL-media-0329.zip
-  - cvs added all the new files
-  - patched various things from the patches, don't have a precise list
-    cleaned up the interface requests, isolated HL specific between TMP_HALFLIFE defines
-    removed 'tga' from imagehl, two modules providing the same API has unexpected results
-    
-  TODO: the image loading is the main problem right now. We should not have any place that scans the 
-  extensions, this is done internally to the image load manager? texwindow.cpp does enumeration of the
-  minors too .. but that may be legal in this case.
-  
-  TODO: synapse config at runtime through XML (rather big piece)
-
-  - fixing build on win32
-  bad coding practices: 'for (GSList *choicelst = ..'
-  added a quick hack include/hltoggle.h for easy switch q3/rtcw or hl compile
-    (remaining hardcoded stuff is temporary)
-
-
-28/3/2002
-  Gef
-  - added linux pthreads support to tools
-  - removed old terrain.c and lightv.c from q3map2 Conscript
-
-27/3/2002
-  Gef
-  - updated cons for q3map 2
-  - minor q3map2 fixes for linux compile errors/warnings
-  - minor warning fix in map.cpp
-  SPoG
-  - changed entity_addtolist to add entities to end of list instead of beginning
-  - added eclass_forname to eclassmanager interface
-  - fixed setting eclass before model-update for entities loaded from map
-  - fixed setting bounding box for models after model-update
-  ydnar - q3map2
-  - fixed crash on -connect and other gremlins related to argument processing
-  - removed flag that prevented Castle's maps from compiling
-
-
-27/3/2002
-
-  Hydra
-
-  Important Changes:
-
-  - Added VFSWAD modules for extracting textures from WAD files.
-  - Added ImageHL for loading textures contained in WAD files
-  - Updated shaders source code so that you can produce ShadersHL.dll
-    (single minor using #ifdefs)
-  - MapQ3 source updated so that it can load and save q2 format maps
-    provides a multiple minors.
-  - Added EClassFGD for loading FGD definition files
-    (I documented this code quite well, if you're interested...)
-  - Added support for iconsprite() settings in the FGD loader, we set
-    eclass_t->skinpath with the name of the sprite
-    TODO: write a sprite model plugin.
-
-  Fixes:
-
-  - Fixed incorrect line numbers being reported when script files had // comments in them
-  - Removed EClass_Create from the EClass manager _EClassManagerTable
-  - Replaced all occurences of "textures/radiant/notex" in shaders.cpp with a define.
-  - Fixed a crash in shaders.cpp when there was no default texture.
-  - Fixed a possible issue with g_bCancel_Map_LoadFile
-  - Added a crash fix for uninitialised patchMesh_t->pSymbiot
-
-  Core Changes Required for HalfLife Support:
-
-  - Set MAX_FLAGS to 16 to support Halflife's extra spawnflags, adjusted
-    entity inspector to display the new spawnflags, updated FGD loader
-    to load them correctly (previously it only loaded the ones with values <8)
-    (Done without breaking the old Q2 code that was commented out)
-  - Added GetTokenExtra to the _ScripLibTable
-  - Kludged texwindow.cpp to allow loading extension other than "tga" and "jpg"
-    TODO: ttimo, we need something in synapse to help with this.
-  - Plugin manager requests different API's depending on .game file used.
-    TODO: this needs to be done on a PER GAME basis, not PER .GAME FILE.
-  - Shaderlist.txt is not parsed on startup if hl.game is used.
-    TODO: this needs to be done on a PER ENGINE basis, not PER GAME.
-
-  Cosmetic Changes:
-
-  - Changed MAPQ3's minor_name from "map" to "mapq3" (also adds "mapq2" as a minor)
-  - Changed XMAP's minor_name from "xmap" to "mapxml"
-  - Changed VFS's minor_name from "quake3" to "pk3", more inline with VFSWAD now.
-  - Changed file/Load to file/Import on the menus
-  - When a shader (Q3/HL) is not found a message is displayed in the console
-    (only once for each shader that is not found).  This is so the user can
-    quickly get a list of missing textures/shaders.
-
-26/3/2002
-  ydnar
-  - initial q3map 2.0 source import
-    new tools/quake3/q3map2 directory
-         common/qfiles.h and common/surfaceflags.h modified
-         affects q3map 1.x too, bumped MAX_MAP_BRUSHSIDES to 0x40000
-         will need to write the build scripts and compile on Linux too
-  SPoG
-  - Re-added dialog prompting user to convert/change-mode/abort when map BP mode
-    conflicts with project settings
-  - large entity/models update
-  +++ include/ientity.h   25 Mar 2002 11:37:54 -0000
-    entity module
-      - interface cleanup
-      - common #defines for easy transition
-  +++ include/igl.h       25 Mar 2002 11:37:55 -0000
-    opengl module
-      - Vertex Arrays support
-  +++ include/imodel.h    25 Mar 2002 11:37:57 -0000
-    model module
-      - interface cleanup
-  +++ libs/mathlib.h      25 Mar 2002 11:37:59 -0000
-    vector macros - cleanup
-    m4x4
-      - documentation of matrix layout
-      - interface for utility functions for axis-angle and quaternion rotations
-      - interface for new utilities for specifically transforming points/normals 
-    aabb
-      - interface for faster aabb-ray test without finding intersection point
-      - interface for utility to calculate an aabb to contain a transformed aabb 
-  +++ libs/mathlib/bbox.c 25 Mar 2002 11:38:01 -0000
-      - cleanup of use of qboolean
-      - implementation of fast aabb-ray-test
-      - implementation of aabb-for-transformed-aabb
-  +++ libs/mathlib/m4x4.c 25 Mar 2002 11:38:02 -0000
-      - implementation of utility for rotation matrix from axis-angle/quaternion
-      - cleanup of implementation of matrix multiplication functions (optimise for in-order array traversal)
-      - implementation of new utilities for specifically transforming points/normals
-  +++ libs/mathlib/ray.c  25 Mar 2002 11:38:02 -0000
-      - replace use of m4x4_transform_vec3 with new point/normal specific utils
-  +++ plugins/mapq3/plugin.cpp    25 Mar 2002 11:38:06 -0000
-      - rename g_EntityTable using #define in ientity.h
-  +++ plugins/mapq3/plugin.h      25 Mar 2002 11:38:06 -0000
-      - rename g_EntityTable using #define in ientity.h
-  +++ plugins/mapxml/xmlparse.cpp 25 Mar 2002 11:38:06 -0000
-      - buffer-safe dtd path construction (without using string class, in case of unknown bugs)
-  +++ plugins/md3model/Conscript  25 Mar 2002 11:38:06 -0000
-      - remove entity-module files from md3model conscript 
-  +++ plugins/md3model/md3model.cpp       25 Mar 2002 11:38:07 -0000
-      - implementation of generic quake-style-model class CModel
-      - implementation of CModel-derived md3/mdc classes
-  +++ plugins/md3model/md3model.dsp       25 Mar 2002 11:38:08 -0000
-      - remove entity-module files from md3model dsp
-  +++ plugins/md3model/md3model.h 25 Mar 2002 11:38:08 -0000
-      - interface for generic quake-style-model class CModel
-      - interface for CModel-derived md3/mdc classes
-  +++ plugins/md3model/md3surface.cpp     25 Mar 2002 11:38:09 -0000
-      - implementation of generic quake-style-model class CSurface
-      - implementation of CSurface-derived md3/md2/mdl/mdc classes
-  +++ plugins/md3model/md3surface.h       25 Mar 2002 11:38:09 -0000
-      - interface for generic quake-style-model class CSurface
-      - interface for CSurface-derived md3/md2/mdl/mdc classes
-  +++ plugins/md3model/plugin.cpp 25 Mar 2002 11:38:10 -0000
-      - provide support to synapse for loading md3/mdc/mdl/md2 models, and mdl images
-  +++ plugins/md3model/plugin.h   25 Mar 2002 11:38:10 -0000
-      - interface for loading md3/mdc/mdl/md2 models, and mdl images 
-  +++ radiant/brush.cpp   25 Mar 2002 11:38:18 -0000
-      - #ifdef remove Group/Brush-Patch-Epair related stuff
-      - const correctness for ValueForKey interface const change
-      - add bounding-box update for models in Brush_Build
-      - remove old brush parsing/writing stuff
-      - remove old eclass-model loading/displaying stuff
-      - enable vertex arrays on light drawing
-      - moved brush is-selected? utility to brush.cpp
-  +++ radiant/brush.h     25 Mar 2002 11:38:18 -0000
-      - comment out interface for old brush parse/write stuff
-      - comment out interface for brush epair stuff
-  +++ radiant/brush_primit.cpp    25 Mar 2002 11:38:20 -0000
-      - remove old brush-primitives parsing/writing stuff
-  +++ radiant/camwindow.cpp       25 Mar 2002 11:38:23 -0000
-      - moved brush-bbox update for models to brush.cpp:Brush_Build
-      - bugfix for material colour setting when drawing models
-  +++ radiant/eclass.cpp  25 Mar 2002 11:38:24 -0000
-      - removed old eclass-model checking/loading stuff
-      - added const checking for Eclass_ForName interface
-  +++ radiant/entity.cpp  25 Mar 2002 11:38:26 -0000
-      - REMOVE THIS FILE
-  +++ radiant/entity.h    25 Mar 2002 11:38:26 -0000
-      - REMOVE THIS FILE
-  +++ radiant/groupdialog.cpp     25 Mar 2002 11:38:29 -0000
-      - change entity creation to not use Entity_Create (function was removed)
-      - commented groups stuff
-  +++ radiant/gtkdlgs.cpp 25 Mar 2002 11:38:36 -0000
-      - const correctness for ValueForKey
-  +++ radiant/gtkmisc.cpp 25 Mar 2002 11:38:39 -0000
-      - added filetype patterns for mdc/mdl/md2
-  +++ radiant/main.cpp    25 Mar 2002 11:38:41 -0000
-      - const correctness fixes
-  +++ radiant/mainframe.cpp       25 Mar 2002 11:38:59 -0000
-      - change selection -> merge entity and selection -> separate from entity to go through mainframe class
-      - implementation of mainframe functions for selection -> merge entity and selection -> separate from entity
-      - made entity grouping and detail/structural settings undoable
-      - commented out old groups stuff
-  +++ radiant/mainframe.h 25 Mar 2002 11:39:01 -0000
-      - interface for mainframe functions for selection -> merge entity and selection -> separate from entity
-  +++ radiant/map.cpp     25 Mar 2002 11:39:04 -0000
-      - const correctness fixes
-  +++ radiant/pluginmanager.cpp   25 Mar 2002 11:39:08 -0000
-      - removed model table
-      - stopped requesting model table from synapse
-      - request undo table from synapse
-      - commented out support for IEpairs stuff - NOTE: to be integrated with entity module
-      - fill interface table for opengl vertex array support 
-      - fill interface table for undo
-  +++ radiant/pmesh.cpp   25 Mar 2002 11:39:18 -0000
-      - cleanup patch cap and patch thicken to create entities using entity module interface (without Entity_Create)
-      - removed old patch parse/write stuff
-      - #ifdef'd out patch epair/groups stuff
-  +++ radiant/qe3.cpp     25 Mar 2002 11:39:21 -0000
-      - const fixes
-      - buffer-safe dtd path construction (without using string class, in case of unknown bugs)
-  +++ radiant/qe3.h       25 Mar 2002 11:39:24 -0000
-      - don't include entity.h, include ientity.h and forward-declare entity-table instead
-      - include imodel.h but don't forward declare model-table
-      - include iundo.h and forward-declare undo table
-      - comment out interface to old patch parse/write stuff
-      - comment out interface to old brush parse/write stuff
-      - comment out iepairs header include.. NOTE: to be integrated with entity module/interface 
-      - include eclass interface (we don't have an eclass.h)
-      - declare interface for CreateEntityFromName (generic useful func)
-      - declare target/targetname utils interface (we don't have a targetname.h)
-  +++ radiant/select.cpp  25 Mar 2002 11:39:27 -0000
-      - cleanup implementation of entity selection-grouping/ungrouping utlities
-  +++ radiant/select.h    25 Mar 2002 11:39:27 -0000
-      - cleanup interface for entity selection-grouping/ungrouping utlities
-  +++ radiant/undo.cpp    25 Mar 2002 11:39:29 -0000
-      - removed workaround for wierd entity_clone behaviour (changed in entity module)
-      - avoid using Entity_FreeEpairs (not exposed by entity module)
-  +++ radiant/xywindow.cpp        25 Mar 2002 11:39:35 -0000
-      - const fixes
-      - cleanup implementation of CreateEntityFromName to be a usful generic utiliy function
-      - enable vertex arrays in XY_Draw
-      - enable undo for right-click dropping entities in XY window
-  TTimo
-  - various fixes to make the above compile on Linux, checkin to cvs
-  - fixing some win32 build stuff
-  
-  Hydra
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=434
-  fixed setSpecialLoad in .def code
-
-19/3/2002
-  Gef
-  - Modified the fix for LoadImage to be more consistent with other code
-  - Applied Hydra's fix for empty alpha channel warnings & cleaned up indentations (tabs) in lbmlib.cpp
-    also added output of the tga type when a tga file fails to load
-  - Reverted my over complex fix (read; mess) for strtok_r to use strtok instead of manual tokenising
-
-17/3/2002
-  Gef
-  - Fixed LoadImage API list not being incremented while trying to find image minors, result was
-    infinite loop when loading images that weren't of the first type (tga)
-  - Fixed cloning giving dtd errors. mapxml/xmlparse.cpp:ParseXMLStream() was using 
-    g_FuncTable.m_pfnGetQERPath() as the dtds path... disabled validation until spog can check 
-    that my fix is the right solution
-  - Added simple formatting to xmap file output so that each node has a new line for readability
-
-13/3/2002
-  TTimo
-  - introduced API List managers
-    we deal with two types of APIManager now, the ones that matching all minors for a given major
-    and the ones that require a fixed list of minors
-  - converted the image loaders to go through a API list manager
-  - fixed various things in synapse (introduced more bugs?)
-  - fixed plugins, realized it was still broken
-
-12/3/2002
-  Hydra & TTimo
-  - EClass_Create in the EClass manager _EClassManagerTable
-  - removed InitFromText from _EClassTable
-
-8/3/2002
-  TTimo
-  - some commented out code cleanups
-  - added eclassfgd/ fgd.so module skeleton
-    loaded up in radiant core as an optional entity format
-    added eclass manager code to deal with the new format if present
-    this still loads .def, the actual .fgd code needs to be written now
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=433
-    added a g_strDTDPath global
-    disabled DTD validation, broken on win32
-  - Str copy constructor (const Str &) working correctly with a __strDup
-
-7/3/2002
-  TTimo
-  - added verbosity in file accesses for CXMLPropertyBag
-  - more fixes to project lookup
-  - dropping dtds/ prefix, this is installation dependent
-  - removed ipluginentities.h, the plugin entities stuff was disabled long time ago already
-  - cleaned up some old commented out stuff
-  - proof of concept synapse builtin module: new class CSynapseClientBuiltin allows to have
-    modules builtin to the application (i.e. statically linked)
-    adding
-      include/ieclass.h (eclass loader API)
-      radiant/eclass_def.cpp (.def class loader, builtin)
-      radiant/eclass_def.h (.def loade, API public to the core)
-
-    NOTE: radiant/eclass_def.cpp needs to be added to the win32 projects  
-  - quickfix to project file loading ("/scripts/")  
-  - introduced an EClass manager, hooked up the .def builtin module through it
-    (not yet possible to push new entity format modules, but .def reading is already fully synapsed)
-
-6/3/2002
-  Gef
-  - Fixed a segfault when getting mUserPathPrefix in CGameDescription::CGameDescription()
-  - added preferences check for fixing target/name collisions
-  - fixed a logical error on my part, where setting g_qeglobals.m_strHomeGame in
-    CGameDescription constructor results in a value from the last file parsed. Moved it
-    to a more appropriate location, where it gets a value from the selected .game file.
-  SPoG
-  - changed g_strGameToolsPath to g_strAppPath in GetQERPath API
-  - fixed mapq3.dtd
-  - enabled DTD validation of xmap files
-  - added mapq3.dtd to setup scripts (not tested)
-  TTimo
-  - added OnActivated() to synapse clients, override to put some init code
-  - fixing default project path lookup and user project increment (again)
-  - fix to linux setup, no trailing slash in basegame items
-    (wolf.game and q3.game)
-  - removed old plugin/modules code, leaving only the synapse implementation
-    recoded image loading and Map_Import/Map_Export  
-    still some temporary solutions and cleanup work to be done
-    removed plugin.cpp from the tree / build system
-
-5/3/2002
-  SPoG
-  - TODO: add default project for wolf to WolfPack CVS module
-  - changed xml project file load to search for DTD "dtds/project.dtd" under radiant path
-  - fixed crash in mapq3 on trying to read uninitialised token ptr
-  - changed .map to be default map format for now
-  - changed runbsp to not hardcode -fs_basepath
-  - added -fs_basepath to quake3 default project
-  - added project.dtd to setup scripts and swapped quakev2.qe4 for default_project.proj (not tested)
-
-4/3/2002
-  TTimo
-  - merged synapse2 branch back into trunk, checked Linux and win32 builds ok
-  - updated the .dsp to work with new libxml2 2.4.16
-  - fixed broken enginepath guessing, and broken project path rotation / saving
-
-28/2/2002
-  Gef
-  - Added extra checks for target/targetname collisions
-  - Find Brush dialog title correction (bugzilla #393)
-
-26/2/2002
-  Gef
-  - Added Entity_Connect() to entity.cpp to avoid duplicating code
-  - Fixed target/targetname collisions - entities being cross-linked when copied
-    Bugzilla #385 : http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=385
-
-16/2/2002
-  Gef
-  - cleaned up the kyro gl_point workaround stuff
-  - taught ClipPoint's (clips & path points) how to draw themselves
-
-8/2/2002
-  Gef
-  - Added mapxml.so to linux setup
-  - strip debug symbols option in setup
-  - removed g_qeglobals.m_strHomeMaps, writing it to project instead
-    fixes a bunch of re-broken path issues. Also uses fs_game now.
-  - Minor grid colour in QER Black & Green theme
-  - Save window's pos/size for all view types in MainFrame::OnDestroy
-
----------------------------  on branch synapse2
-4/3/2002
-  - modules don't show up in plugins menu, added a dump in console before entering interactive mode
-  - added compile time def for synapse verbosity
-
-3/3/2002
-  - finished converting all the modules to synapse, disabled old ResolveInterface call
-
-24/2/2002
-  - hooked TexTool into Radiant plugin menu through synapse
-  - added iplugin.h which I had forgotten earlier
-  - ported synapse code to compile and run on win32
-
-19/2/2002
-  - SYN_REQUIRE_ANY / multiple API manager code
-    can load multiple interfaces based on a matching pattern
-    converted TexTool to load that way
-
-18/2/2002
-  - added iplugin.h with basic interface for plugins  
-
-13/2/2002
-  - synapse on modules currently disabled,
-    the basics of the code are working fine, need to look at multiple interfaces matches before going further
-  - started converting shaders, requires conversion of a lot more others
-  - image converted to synapse
-  - no longer using GUID in synapse, all done through *_MAJOR strings
-  HOWTO: convert a module to synapse:
-    configure it to link against synapse static lib
-    (+include path to STLPort required)
-    add #include "synapse.h" to the plugin header
-    declare the : public CSynapseClient in plugin header
-    implement it (listing provides and requires, implement the request code)
-
-12/2/2002
-  - vfspk3 converted to synapse
-
-11/2/2002
-  TODO: get rid of all WINAPI crap
-  - debugged the API dependencies solver to actually work  
-  - added newer cons at the head of the tree
-
-10/2/2002
-  TTimo
-  - added the basic code for solving API dependencies and requesting the various tables
-  - more diagnostic printing code fixes
-  - version checkings
-  - some more design work (libs/synapse/doc)
-
-9/2/2002
-  TTimo
-  - some changes to the files layout, cleanup of the diagnostics printing
-  (stuff's mostly broken right now)
-  - reworked the complete Sys_Printf stuff to rely on va_list implementation
-  - include/isynapse.h declared useless and foxed without mercy
-  - added include/irefcount.h
-
-8/2/2002
-  TTimo
-  - adding an experimental Anjuta project file to play around with
-
-7/2/2002
-  TTimo
-  - various fixes to build on linux, listed a bunch of current issues
-  - fixing terrademo.map to remove broken mapobj~1 -> mapobjects
-  -- synapse2 branch --
-  - propagate the code from old synapse branch to a new branch out of 1.3 tree
-    (builds and runs on linux, that's about it for now)
-
---------------------------- end branch synapse2
-  
-7/2/2002
-  djbob
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=354
-  moved all the preferences code to XML
-
-6/2/2002
-  SPoG
-  - checked all paths conform to: unix dir separators + trailing separator
-  - changed file dialogs for load/save of maps to default to "mapspath"
-  - removed OpenDialog and SaveAsDialog, use file_dialog instead
-  - removed FileSystem paths stored in QEGlobals_t.. replaced by CGameDescription
-  - removed dependence on EnginePath from preferences, replaced by CGameDescription
-  - removed hardcoded g_get_home_dir calls for file dialogs
-  - added validation of project settings entry paths before they are set
-
-5/2/2002
-  EvilTypeGuy
-  - moved filters.cpp related function declarations to filters.h
-    and added #include "filters.h" to brush.cpp, csg.cpp, main.cpp,
-    mainframe.cpp, map.cpp, select.cpp as not all files include
-    qe3.h and qe3.h is a rather monolithic header this seems to be
-    a cleaner solution per SPoG's suggestion...Fixes compilation.
-
-  Gef
-  - contrib/plugins BOOL cleanup (uses qboolean now) fixes X header conflict
-  - cons update for mapxml
-  - SaveAsDialog() changed to match path's used in OpenDialog()
-  - removed radiant/xy.h - moved contents to qe3.h (FilterBrush declaration)
-
-4/2/2002
-  SPoG
-  - changed QE_LoadProject and QE_SaveProject to load/save xml project file format
-  - changed request dialog for project files to loop until a valid file is found
-  - fixed memleaks in CGameDescription constructor for xmlGetProp
-  - added converting gametoolspath unix format when parsed from game file
-
-  - fixed m4x4 lib to use column-major order (more compatible with opengl)
-  - added divergence parameter to ray-point intersection test
-    (now easier to select distant points in perspective views)
-  - cleaned up modelview/projection matrix manipulations in 2d/3d view
-  - cleaned up map modules / interface source files a bit
-
-  - added ability to specify map module version when importing/exporting map
-  - cleaned up file dialog code, returned filename is static and in unix format
-  - save-as dialogs force a file extension depending on filetype selected
-  - added filetype manager to support registering custom file types
-  - fixed loading and cleaning engine path from radiant.ini correctly
-
-3/2/2002
-  EvilTypeGuy
-  - fixed win32 compilation (userpathprefix is Linux specific)
-
-  ETG & Powzer
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=308
-    added preference to allow 'paint drag-select' brushes/faces in 3d camera view
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=389
-    added preference to strafe camera foward/back in 3d view while freelook is active
-
-  ETG & RR2DO2
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=388
-    patch adds ability to strafe up/down/left right while freelook is active
-
-1/2/2002
-  TTimo
-  - bumped to 1.3.1-nightly
-
--- 1.2 stable branch branched here
-
-  Gef & TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=372
-    http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=376
-    appplied the patch, corrected the mapspath expansion stuff
-  TTimo  
-  - linux nightly setup code
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=384
-    hacked a corrective action in the nightly setup
-
-  SPoG
-  - fixed creating region brushes that fill the entire grid for Save Region
-
-31/1/2002
-
-  Micheal Schlueter
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=375
-  syntax fix to q3map path_init.c
-  
-  Gef
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=279
-  patch 185 == 186
-  tweaking to config stuff in linux setup
-  patch 187
-  Ensures the games directory exists before trying to create a file there
-  patch 177
-  Adds *.cf files & uses them. I think I have all the files in the right places now... maybe
-  (some additional fixes on top by me)
-  
-  ETG
-  quick fix to shader prefs load
-
-29/1/2002
-
-  EvilTypeGuy
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=345
-  more detachable menus fixes
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=334
-  fixes 'load shaders at startup' preference
-
-  SPoG
-  - fixed misc_model "modelscale" and "modelscale_vec" support
-  
-  TTimo
-  - upgraded setup scripts to support nightly build
-  - last minute fix to the modelscale and modelscale_vec code (md3 module)
-
-  ydnar
-  q3map 1.2.4-y2
-
-    New features:
-    - -nopatchfix argument. This disables lightmap patch fixes and makes a map suitable for lighting with -vlight.
-    - Degenerate patches are treated like broken brushes. They are ignored, warned about, and selected in Radiant if you ran with the -connect option (or from the BSP menu). This was what was causing the "0 valued axis" error some people were experiencing.
-
-    New entity keys:
-    - "_lightmapscale" key for brush entities (worldspawn, func_*). This lets a mapper scale the lightmap samplesize per-entity. For large constructions, 2.0 or 3.0 is a fine value, and keeps BSP size down and compile times low. For those areas you want to have high-detail shadows, make a func_group and use a value of 0.25 or so. It will scale the samplesize value for the surface's shader (default 16) or the -samplesize argument.
-    - "modelscale" and "modelscale_vec" keys for misc_models (1.0 = default). This was for proper RTCW support and is available for Quake 3 maps as well. Lets you scale up map models in the world, getting around the MD3 size limitation. The next build of GtkRadiant has SPoG's code to support this in-editor so you can see what effect a scale has.
-    - Flare surfaces are now supressed from the BSP. They serve no purpose other than add to the vert & surfacecount in a BSP. These surfaces were created silently when a shader has "light 1" or "q3map_flareshader X." Use the new -flares switch when BSPing your map to have them emitted.
-
-    Changes:
-    - GtkRadiant 1.2.4-nightly version increment.
-    - Full WolfSDK style lighting enabled with -game wolf, including lightJuniors. This includes linear lights by default (no angle attenuation) and support for the additional RTCW "fade" and "angle" keys, and spawnflag changes, including q3map_nondynamic on light entities. This may require maps being constructed for RTCW with the current toolset to change their light entities. Sorry. :) Note, Wolf-style lighting only works with -light, and not -vlight.
-    - Vertex light stitching now uses a near-ambient light check for dark vertexes as opposed to lower-than-average fixups. This preserves some shadow detail better while getting the buried verts lit properly. Comments encouraged.
-    - Surfaces' samplesize are now stored in the BSP. This change makes BSPs generated from this version incompatible with all other q3maps. The upside is that -samplesize N is no longer necessary on the -light or -vlight stage. This feature is necessary to support the "_lightmapscale" key.
-    - Additional PVS optimizations in lighting.
-
-    Fixes:
-    - Will compile for RTCW properly (1.2.1-y12 didn't).
-    - No more sparklies where fog meets brush faces. They're split properly now.
-    - Crash bug in vlight fixed.
-    - Vertex light fixups/stitching is considerably faster.
-    - Vertex light fixups ONLY stitch faces with lightmaps. For pointlight surfaces you're on your own.
-    - Better snapping logic when merging nearly-coincident vertexes on complex brush windings.
-    - Bug where the .prt file had some bogus or nearly-borked portals. They're cleaned up like everything else now.
-    - A few stupid bugs in path initialization. Should work better. Also includes TTimo's fixes to my code so it would work properly on Linux.
-    - RR2DO2's PCX loading patch for alphamaps. This bug was manifesting itself in the form of offset or incorrect samples being used on terrain entities.
-    - A ton of other minor little fixes here and there.
-
-28/1/2002
-
-  TTimo
-  - win32 fixes
-  - 1.2.4-nightly
-
-  djbob
-  - EClass_ForName fix if malformed name
-
----- 1.2.3 linux released
-
-  TTimo
-  - fixed BSP version depending on game mode in q3map
-    (home dir guessing is still fucked, have to fix before release)
-  - fixed q3map init_path.c home path bug on init
-
-  Gef
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=369
-    more fixes to texture paths in gensurf
-
-27/1/2002
-  TTimo
-  - switching to v3 project file, forcing reload of template if non-v3
-  need to distribute quakev3.qe4 in setups now (done for linux setup, will have to in win32)
-  - renamed Main to main in q3map init paths
-  - fixes the ~/. inits and init order in q3map
-  - added m_pfnPathForPluginName to the main function table, returns the directory a plugin is running from
-    used in bobtoolz / curry / pk3man to find various files
-    see also todo: http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=368
-  - some fixes to textures loading paths in curry
-  - linux setup copying correct content for curry (pk3 in wolf media) and bobtoolz (bt/ in plugins/)
-  - building 1.2.2 setups  
-  
-  Gef
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=362
-  gensurf fix
-  
-  djbob
-  - bobtoolz update
-  
-  Hydra
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=361
-  fixes a bug with the texture menu loading, now we see the non-shaderlist directories too
-
-26/1/2002
-  Gef - Michael Schlueter - TTimo 
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=279
-  applied several patches (to setup code and to the setup scripts)
-  modified makesdk.pl to update with more content
-  added an "enginepath" attribute to the game file, reworked the handling in editor
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=347
-    took out the refresh command from the plugin menu
-  - more linux fixes:
-    bringing all the plugins to compile again on linux
-    polishing the setup code (all the right files in the right places)
-  - for linux release, bumping ver to 1.2.2
-    win32 will have a 1.2.3-nightly after that
-  - added correct init of ~/.q3a or ~/.wolf
-    *nix systems have a 'prefix' attribute in the .game file to specify
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=359
-    identified the mod compiling problems
-    applying back the old fs_basepath fs_game code to the BSP generation
-    
-  ydnar- TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=351
-    cleaner path init code
-    it doesn't init for ~/.q3a and ~/.wolf paths yet
-
-25/1/2002
-  SPoG
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=352
-  using the wrong matrix stack for XY_Draw caused stack overflow error
-  - texture_mode was set to an invalid enum in wireframe/flatshade mode
-  - changed plugin API to expect gamedir-relative texturenames
-  - fixed gensurf to create faces/patches with gamedir-relative textures
-
-24/1/2002
-  SPoG
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=322
-  added modelscale key check to misc_model entity in md3/entity module
-  added angle key check to eclassmodel class in md3/entity module
-  fixed bugs in BP writing and reading in map module
-  TTimo (commited as SPoG)
-  - fixing permissions on cvsreport and doxygen stuff, upgraded dot
-
-23/1/2002
-  SPoG
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=336
-  plugin API bugfix - fixes textures on stuff created by plugins
-
----- 1.2.1 was released here
-
-22/1/2002
-  Gef
-  - linux build fixes
-  SCDS_reyalP
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=325
-  wrong file packaged in setup
-  RR2DO2
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=327
-  fix to PCX loading  
-  SPoG
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=298
-  cut & paste bugfix
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=332
-  update origin key on entities
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=333
-  made fixedsize entities not scalable
-
-21/1/2002
-  TTimo
-  - scanning in g_strAppPath/modules/ and plugins/ prior to g_strGameToolsPath
-  using the main path to put general plugins and modules
-  - fixed bobtoolz bug, init of epairs table was relying on wrong params
-  - fixed curry to compile again on 1.2
-  - fixed pk3man to compile again on 1.2
-  - updated IS setup:
-    installing the plugins with the core
-    installing the common modules in the core
-  - Compiling manual, more IS stuff, .xlink etc.
-
-  RR2DO2
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=315
-    patches for improved multimonitor support (with some associated pref items)
-
-  ydnar
-  - more q3map: http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=324
-    - radiosity fixes (proper handling of ambient light)
-    - polygonoffset fixes
-    - lightmaps on patches work better (normal calcs adjusted, planar patches are 
-      box projected like brush sides)
-    - double vfs init in bsp stage removed (this needs to be tested on Linux)
-    - lighting is faster again
-    - a couple crash bugs resolved
-    - other tasty nibbles
-
-20/1/2002
-  EvilTypeGuy
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=313
-  detachable menus set as preference (in layout)
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=255
-  path prompt
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=307
-  patch dialog names
-  ETG & RR2DO2
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=306
-  fix 'Natural' texturing crash
-  ETG & TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=291
-  found out the problem, Wolf SP spawn works now
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=144
-  fixed more problems with model loading vfsExtractRelativePath
-  prolly broke the linux build, just a matter of putting a bunch of #idfdef
-  - fixed an additionnal .pid lock situation, cleaning the global prefs on game .pid lock
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=301
-  fixed md3 tris test selection bug
-  djbob
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=219
-  fixed bobtoolz for 1.2
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=318
-  filter structural
-  RR2DO2
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=305
-  filter in viewmenu for lightgrid brushes (ydnar's q3map)
-  fixes image lib loading bugs
-  Hydra
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=298
-  copy/clone deselects the copied stuff
-  added a pref to deselect or not, and to nudge pasted stuff or not
-
-19/1/2002
-  djbob
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=311
-  IEpair wrapper to access project entity from plugins
-  RR2DO2
-  - missing IncRef in CShaderArray::AddSingle
-  TTimo
-  - game.xlink files in gametools path, is scanned to build items in the Help menu
-  (and the associated code)
-
-18/1/2002
-  Gef / Michael Schlueter / TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=279
-  patches 133 and 138 applied, new setup code
-
-14/1/2002
-  TTimo
-  - adding djbob write access for bobtoolz
-
-13/1/2002
-  ydnar
-  - q3map code updates 1.2.1-y8
-    new lightgrid surface flag feature
-       lightgrid shader and editor image for Wolf and Q3/TA: in the common .pk3 and in all common.shader
-       cvs remove setup/data/baseq3/common-q3r.pk3 (unused, we use common-spog.pk3)
-  TTimo
-  - updating setup to use mapq3 module instead of map (both Wolf and Q3 game packs)
-    (also checked the lightgrid option)
-  - fixed setup.pl bug for template gen from WorkDir/
-  - correct spawning between SP and MP mapping mode
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=297
-    .pid check, console logging and prefs cleanup
-  Wolfen
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=294
-    checked in updates to the manual links page and setup instructions
-    (i.e. new prefs dialog)
-
-12/1/2002
-  Gef & Michael Schlueter
-  - bugs #295 and #279, new patches applied
-  EvilTypeGuy & djbob
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=220
-    patch selection crash
-  EvilTypeGuy
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=260
-    Dense and Very Dense Cylinders have wrong number of rows    
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=292
-    latching patch toolbar settings
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=144
-    win32 long/short pathname bugs reappearing, switching back to short paths for project settings
-  - removed obsolete radiant/vfs.cpp radiant/vfs.h
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=291
-    using new .qe4 for Wolf, fixed stuff editor side (long path names and engine spawn)
-  SCDS_reyalP
-  - http://zerowing.idsoftware.com/bugzilla/showattachment.cgi?attach_id=118
-    realloc bug in terrain
-
-11/1/2002
-  SPoG
-  - unpatched bug #239, unintended duplication of brushes, patch #96
-       Note: bug #239 now unresolved
-  EvilTypeGuy
-  - bug #295 fixes for compile under Linux
-
-10/1/2002
-  SPoG
-  - fixed CEntityEclassModel referencing eclass after eclass has been deleted
-  SPoG - map-module branch
-  - new map module, provides current functionality, using new map interface
-  - cleaned up merging/creating of entity array used by map module
-  - implemented MemStream::printf(const char,...) - can't print strings larger than 1024 currently
-  - changed copy/paste to use the map module, via abstraction of FileStream/MemStream as DataStream
-  - fixed Save Region and Save Selected
-  - new xml map module "mapxml"
-  - cleaned up map.cpp
-
-6/1/2002
-  TTimo
-  - removed m_bPak from pref dialogs (it was dead code)
-
-5/1/2002
-  RR2DO2
-  - q3map terrain blending fix for >5 layers
-  EvilTypeGuy
-  - fs_homepath patch on linux
-  Gef
-  - bug #279, linux setup, patch #102
-  - bug #239, unintended duplication of brushes, patch #96
-  TTimo
-  - added Wolf specific project settings dialog:
-    correct fs_game selection and combo names
-    added multiplayer / single player mapping mode selection
-
-4/1/2002
-  TTimo
-  - adding -game wolf switch to q3map (-game quake3 works too, but it's the default anyway)
-    using different bsp version and different fs_basegame on wolf
-  - updated the setup/win32/setup.pl script to generate from a config file instead of hardcoded
-    (added corresponding q3.cf wolf.cf and all.cf config files)
-  - added a default Start Menu shortcut name (RR2DO2 special)
-  - diffing against Id's internal SOS source and merging in new stuff:
-    - bumped MAX_SURFACE_INFO to 4096 in shaders.c
-       - new terrain code (Jim Dose)
-         ParseTerrain() addition in terrain.c
-         Creates a mapDrawSurface_t from the terrain text
-       - VL_SurfaceRadiosity and VL_SurfaceRadiosity
-         MrElusive's vlight radiosity code
-       - speedups to vis.c and visflow.c (MrElusive)
-
-3/1/2002
-  TTimo
-  - merge gameselect branch back into trunk
-  the IS setup scripts have been updated for the new paths layout
-  developement environment needs to be updated to copy binaries to the right places for debug
-  it is recommended to run a 1.2.1 setup on win32 prior to compile and install debug bins
-  - updated the setup to be more templated for inclusion/non inclusion of game packs on demand
-
-  - propagating recent fixes to Alpha into the trunk
-  based on diffing between Merge-1_1_1 and Merge-1_1_2:
-  =====================================================================
-  13/11/2001
-    djbob
-    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=244
-    reverted again the shader manual and tcMod docs
-
-    TTimo
-    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=214
-    patched aselib.c, was calling strstr badly (relative path extraction)
-
-  12/11/2001
-    djbob
-    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=241
-    applied patch, will release in next nightly
-
-    Spog
-    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=254
-    patch for safe_malloc
-
-    TTimo
-    - fixing STLPort config checks and XML config (CHAR -> xmlChar)
-    - added safe_malloc_info and safe_malloc in the common/ dir
-    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=179
-    added XML stream version checking between Radiant and q3map
-  ========================================================================  
-  also, manual merge of docs/manual and setup media
-  this merge work is related to bug #280 too:
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=280
-  
-  ydnar
-  - new q3map, radiosity and bug fixes, code merged in with the trunk version
-  (TODO: add more detailed changes log)
-
-  EvilTypeGuy
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=274
-  broken auto caulking fix
-
-  EvilTypeGyu & LordHavoc
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=207
-  (two new files, project settings updated)
-  
-2/1/2002
-  TTimo - branch gameselect
-  - copying over the linux setup binaries (setup, uninstall, setup.gtk)
-  from Alpha branch. Those have the ability to prompt destination path
-  per component.
-  Gef - branch gameselect
-  - patch 101 for bug 279
-  .game files generation by the setup, makesdk.sh and postinstall.sh fixups
-
-1/1/2002
-  Gef - branch gameselect
-  - linux source fix http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=279
-  (we use PATH_MAX as the cross platform define instead of MAX_PATH which only works on win32)
-  
-  TTimo - branch gameselect
-  - cleanup and homogeneisation of the paths for prefs storage
-    m_global_rc_path:
-      win32: g_strAppPath
-      linux: ~/.radiant/<version>/
-    m_rc_path:
-      win32: g_strGameToolsPath
-      linux: ~/.radiant/<version>/<gamename>
-    so that global.pref goes in ~/.radiant/<version>/global.pref
-    and radiant.ini ~/.radiant/<version>/<gamename>/radiant.ini  
-
-27/12/2001
-  TTimo - branch gameselect
-  - global prefs file (global.pref), XML based in core directory
-    stores game selection setting
-       stores autoload setting
-  - dropping 'gameid' from .game file, gonna use a 'gamefile' in global prefs instead
-    (and the .game file name .. thks Gef)
-  - TODO: radiant.log stuff in global prefs?
-
-21/12/2001
-  TTimo - branch gameselect
-  - more Wolf setup tweaking for an experimental build release:
-    quakev2.qe4 project template file
-       using a 'gameid' attribute in the game file to select hardcoded features in the editor binary
-       'basegame' node for lookup of the default project file
-       'engine' node for engine path
-  - added experimental Wolf game pack to IS
-  - added setup/win32/HOWTO with extensive information about the procedure to
-    add new game packs
-  - reading the 'name' attribute in the game node for game selection dialog
-  - TODO: pid files to make safe startup?
-  The .pid stuff should be happening after game selection, since it covers game-specific 
-  preference settings. 
-  - TODO: console logging pref should be a global pref, goes with game autoload?
-
-17/12/2001
-  TTimo - branch gameselect
-  - updating the setup script for experimental 1.2.0 setup:
-  
-  merged some of the docs back into trunk (Radiant manual, some TA docs)
-  will need to perform a complete diffing between Alpha and trunk about docs/manual at some point
-  merged bitmaps from Alpha too
-  
-  added the Q3 modules (image, map, md3model, shaders, vfspk3) to Q3 game pack in setup
-  
-  generating per-game config file q3.game in OnMoved (IS setup)
-  will need equivalent with linux setup of course
-  
-  various other generic fixes to the setup code
-  
-  - multiple games support, list of changes, and TODO:
-  NOTE: this is on a 'gameselect' branch for now
-  Doxygen documentation should be at http://zerowing.idsoftware.com/doxygen
-    for this branch too.
-
-  The installation procedure has changed. The win32 installer is partly ready, linux installer
-  will need to be modified too. The editor binary and the Gtk DLLs are installed in a common
-  location, i.e. 'C:\Program Files\GtkRadiant' typically. The game specific binaries and modules
-  go in the same location as usual, for instance 'C:\Program Files\Quake III Arena\GtkRadiant\'
-  (and also 'C:\Program Files\Quake III Arena\GtkRadiant\modules' 'C:\<..>\plugins')
-
-  The environment variables used by the build system (VC6 project files) have been adapted:
-  $(QUAKE3RADIANTDIR) is still used
-  $(CORERADIANTDIR) is used for the main editor location
-
-  When editor starts, it looks for games/*.game under g_strAppPath and prompts the user for a game
-  Once game is selected, parameters are used for regular startup.
-  You need to write your own q3.game for now, it will be generated by the setup procedure
-  my C:\Program Files\GtkRadiant\games\q3.game looks like that:
-  <?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>
-  <!-- Q3 game definition file -->
-  <!-- those are generated -->
-  <game 
-    name="Quake III Arena / Quake III: Team Arena and modifications"
-       gametools="c:/quake3/Radiant/"
-  />
-
-  given that, the editor does a complete startup, and the basics are here for multiple games
-
-  - precise changes:
-
-  g_strToolsPath renamed to g_strGameToolsPath
-  most of former g_strAppPath uses g_strGameToolsPath
-  the name change was also meant for homogeneity with DIR_GAMETOOLS_* variables we use in the setups
-  g_strAppPath still used, points to the main installation path
-
-  added the game selection code in CPrefsDlg::Init
-  using several classes and a dialog box, parsing XML files
-
-  - TODO:
-  
-  the console 'Radiant.log' doesn't catch the game selection stuff as it is now
-  initialize it to the main install, without the game setting
-  (console logging is a debugging tool anyway, no reason it should go to the proper game folder
-  each time)
-
-  the 'preferences reset/cleanup' code is probably broken, specially when used with the .pid checking
-  since we check for .pid even before we know where the GameTools path is
-
-  on linux, we need to sanitize the ~/.q3a dir usage. Switch to ~/.radiant, use the version tag
-  to maintain things independant, and use the game name to isolate per-game settings?
-  ~/.radiant/1.2.0-nightly/quake3/radiant.ini (.pid, .log)
-  ~/.radiant/1.2.0-nightly/wolf/..
-
-  also, when looking for those files (.ini mostly), win32 stores them in a main installation, and
-  linux has them in ~/.radiant/.. (which is the read/write area). This should be homogenized?
-  Maybe by adding a 'Main' to the readonly path and a new variable with 'RW', pointing to 'Main' on
-  win32 and to ~/.radiant on linux
-
-11/12/2001
-  TTimo
-  - replaced setup/win32/setup.sh by setup/win32/setup.pl
-  same functionality level + abiliy to generate back a template from a work version
-  - major rework on the IS scripts, basics of multiple games support installer
-  clean seperation between editor core and game pack
-  design doc and analysis of custom setup generation, setup script UI requierements
-  see setup/win32/TODO for more details
-
-10/12/2001
-  TTimo
-  - new generation of InstallShield setup
-  using a template/ directory instead of a .zip file
-  requires rewrite of the processing script
-  allows easier maintenance of the IS script
-
-23/11/2001
-  TTimo
-  - yet another update to cvsreport script, 
-  catch the branch and forward the info to user commands too
-  able to build doxygen for several branches selectively now:
-  http://zerowing.idsoftware.com/doxygen 
-
-22/11/2001
-  TTimo
-  - new cvsreport script, should send explicit diff of the CHANGES file now
-
-03/12/2001
-  TTimo - md3-module branch
-  - validated the fixes and the build on linux, ready to merge in trunk
-  SPoG - md3-module branch
-  - changed function naming conventions in mathlib for m4x4, ray, bbox, to be consistent
-  - fixed bug in m4x4_invert
-
-29/11/2001
-  TTimo - md3-module branch
-  - flagged all new mathlib functions that need a name change or an argument order change
-  also added various \todo to point out inconsistencies
-
-28/11/2001
-  TTimo - md3-module branch
-  - updated linux build
-  - fixed CEntityMiscModel and CEntityEclassModel destructors
-    (any destructor should be virtual)
-
-27/11/2001
-  Spog - md3-module branch
-  - stopped texturewindow showing shaders without the "textures/" path
-  - made md3 module functionally identical to current radiant md3 code
-
-22/11/2001
-  TTimo - md3-module branch
-  - fixes to the core for linux build
-  - model.so module builds on linux
-  - added plugins/md3model/doc/md3-design.txt
-  - several doxy-friendly \todo chunks about the module model
-
-  Spog - md3-module branch
-  - fixed aabb_add_aabb() algorithm wasn't very reliable
-  - added VectorMid, VectorNegative and CrossProduct macros to mathlib
-  - added bbox_intersect_plane()
-
-21/11/2001
-  Spog & TTimo - md3-module branch
-  - initial code from Spog following a preparatory design work
-  merging in as new 'md3-module' branch
-  geomlib code merged into mathlib
-  some reorganisation of the source layout and cleanup (more stuff in imodel.h, less in qertypes.h)
-
-  Spog
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=261
-  fix applied
-
-20/23/11/2001
-  TTimo
-  - yet another update to cvsreport script, 
-  catch the branch and forward the info to user commands too
-  able to build doxygen for several branches selectively now:
-  http://zerowing.idsoftware.com/doxygen 
-
-22/11/2001
-  TTimo
-  - new cvsreport script, should send explicit diff of the CHANGES file now
-
-11/2001
-  Spog
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=253
-  additional fixes
-  TTimo
-  - renamed tools/quake3/common/threads.h to qthreads.h
-  avoids a collision with system headers
-
-19/11/2001
-  Spog
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=251
-  Fixed "Move into worldspawn" deleting entities with only one brush
-  Fixed Brush_Move using texture lock on fixedsize entity brushes
-  Fixed Textures > Texture Lock > Rotations toggle checkbox
-
-16/11/2001
-  Gef
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=247
-  applied patch 77, using a notebook layout for preferences dialog
-  also patched in some preferences saving that had been forgotten
-  (such as invert mouse in freelook)
-  
-  Spog
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=253
-  patch 84 + additional modifs, bug still open
-
-15/11/2001
-  Spog
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=252
-  rewritten rendering pipeline for cam window - fixes some hacks, improves speed, 
-  makes rendering modes more consistent with each other
-
-07/11/2001
-  TTimo
-  - more IMAP interface, adding a blind data void *pData to entity_t
-    more info about it and why it's done is in map.cpp, should be a small base for next additions to the editor
-
-31/10/2001
-  TTimo
-  - using IDataStream in map module, moved back some of the module code into the trunk
-
-30/10/2001
-  Gef
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=245
-    applied patch 76
-    
-  TTimo
-  - renaming istream.h to idatastream.h, this had nasty conflicts with OS includes
-  already had to IStream -> IDataStream some time ago anyway
-
-27/10/2001
-  TTimo
-  - updated cvsreport, testing new ver
-  - added a static version of texdef (no memory alloc on the texture name)
-    unused for now, was just experimental
-  Gef
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=245
-    applied patch 75
-
-26/01/2001
-  TTimo
-  - various updates:
-  new GtkSDK precompiled binaries
-  updated libxml2 package (to 2.4.3)
-  updated STLPort (to 4.5)
-    now compiling with STLPort and threading (since we are using threading throughout the app)
-  - exposing the data stream API to the modules, renamed some stuff on the way
-    need to update the map module to use it now
-  - cleanup on qtexture_t definition
-    guarding and disabling chunks of the surface plugin code behind DO_SURFACEPLUGIN
-       (see earlier patch on plugin entities)
-
-25/01/2001
-  Hydra
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=202
-  applied patch commenting out plugin entities code
-  might come back in 1.2 under another implementation
-  the code is still there, only commented out for now
-
-17/01/2001
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=93
-  checking in doxygen content, setting up generation on zerowing
-  auto generation on zerowing upon a commit:
-  http://zerowing.idsoftware.com/doxygen
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=231
-  checked in the patch
-  - switching to a new cvs commit script
-
-14/10/2001
-  TTimo
-  - libs/mathlib library
-    unifies mathlib code squattered all over the tree
-    mainly a merge of tools math code and radiant/mathlib.cpp
-    C implementation, using an extern "C" construct for use from C++
-    need to check on linux, win32 builds ok
-    extracted qboolean code into libs/bytebool.h on the way
-
-11/10/2001
-  TTimo
-  merged TmpMerge-1_1_1 branch back in the trunk, the update process from Alpha 1.1.1 is done
-
-  TTimo - branch TmpMerge-1_1_1
-  looking through all remaining .rej files and applying the failed patches accordingly
-  bobtoolz is broken, but it's not due to the merge
-    the plugin API is different and some things need updated
-    (disabled bobtoolz build in contrib/Construct for now)
-  same for gensurf
-  same for prtview
-  same for textool
-  setup: replaced the existing stuff with 1.1.1 code
-  fixed various things for win32 build, checked correct CRT lib config
-
-10/10/2001
-  TTimo - branch TmpMerge-1_1_1
-  building modules, going through all the .rej
-  merging radiant/missing.h and modules/shaders/missing.h into a single one, moving to libs/
-  exposing BuildShaderList PreloadShaders in _QERAppShadersTable
-  have to review all the remaining .rej to finalize the merge now
-
-04/10/2001
-  TTimo - branch TmpMerge-1_1_1
-  using this branch as temporary location for merge process
-  copied over new binary files. mostly .dsp (prolly broken)
-  and setup/linux/setup.data stuff
-
-25/08/2001
-  TTimo
-  map module successfully loaded and saved q3dm1, the saved file was then loaded back into 1.1-TA without problems
-  rebuilt and checked on win32
-  merged IMap back in trunk, fixed some memory conflicts on win32
-  Took me a lot more time than I would have liked to, but there's a script tied to the CVS server now, which will post on this list a diff of the docs/developer/CHANGES file whenever it gets updated. This will probably be very handy for me since I'll only have to put update information in the CHANGES file instead of having to post on the list too.
-  The script is likely to be a bit laggy, or miss some features (for instance I'd like to extract the branch name .. anyone know how I can get the branch name (Alpha/IMap/HEAD) from the version number?
-  PS: I can email this script to anyone who would like to have a look
-
-22/08/2001
-  TTimo
-  did more work on map module, one big chunk of work left: the core should broadcast interface requests to plugins
-    when it doesn't know how to do it by itself..
-  Gef
-  new doxygen patch, generates output from core (libs/ include/ and radiant/)
-
-21/08/2001
-  TTimo
-  removed Makefile, use cons damnit!
-
-18/08/2001
-  Gef
-  automated documentation via doxygen, new scripts and content
-
-18/08/2001
-  EvilTypeGuy
-  patch for CHAR to xmlChar conversion (xml2 consistency)
-
-09/08/2001
-  TTimo
-  the map module starts to look like something, cleaned up the interface stuff
-  started moving the actual code out in the module and removing it from the core
-  lots of issues raised on the way, some structures to export, and the macro scheme to access API functions more easily
-  it compiles right now, but won't run because it's missing a lot of things .. the process simply happens to be "under way"
-
-04/08/2001
-  TTimo
-  patched more path code, to look for stuff in "bitmaps/" and "modules/" instead of "tools/bitmaps" and "tools/modules"
-  modified the Construct files accordingly
-  merged in radiant/ishaders.cpp diff into plugins/shaders/shaders.cpp (PreloadShaders)
-  merged in radiant/lbmlib.cpp diff into plugins/images/lbmlib.cpp (Sys_FPrintf)
-  checked the .rej and patched a few remaining things
-  NOTE
-    the diffs are space/tab sensisitive, and we used the "beautify source" a bunch of times, so it's a bit fucked now
-    next time, generate the diffs not space sensitive..
-  TODO
-    map loading is fucked, "textures/" prefix issue?
-
-27/07/2001
-  TTimo
-  merging recent changes from Alpha branch into the Trunk
-  this could not be done with a regular cvs merge because we already did a cvs merge of Alpha into trunk some time ago
-  manually built a diff between the current Alpha (now tagged Merge-1_1-TA_1-nightly)
-  and the Alpha we had right after the former cvs merge: -r Alpha -D 2000-05-28
-  binary files ignored in the diff, only going for source stuff
-  built with diff -Nru Reference/ Current/
-  then patch -p1 < patchfile
-  next, started rebuilding:
-    big manual updates were in vfs.cpp and texwindow.cpp
-  cleaned up some VFS stuff .. it had an absurd QERAppFileSystem / QERPlugFileSystem scheme
-  TODO:
-    the ISSetup has not been copied over from Alpha
-    OK check the Construct files
-    OK radiant/ishaders.cpp no longer exists .. apply the patch on the shader module
-    OK radiant/lbmlib.cpp no longer exists .. in the image code?
-    OK look at the *.rej files
-
-03/10/2001
-  TTimo
-  - adding a pref to select patches by BBox, fixes
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=212
-
-02/10/2001
-  TTimo
-  - reverting Spog patch 67 to bug #209, starting from scratch
-  applied again, with HasModel returning NULL safe checks
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=211
-  fixed overlays drawing (XY and Cam)
-
-01/10/2001
-  TTimo
-  - building and distributing q3data (.ase -> .md3 conversion utility)
-  updated q3data to show main GtkRadiant version information and build date
-  - generating a new GUID per-setup
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=206
-  Gef
-  - updated credits.html and links.htm, look much better
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=200
-  - update Z-checker view on camera up and down
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=199
-  Spog
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=209
-  Fixed QERApp_ReloadShaders.. PreloadShaders needs a BuildShaderList call 
-  Fixed Flush & Reload Shaders for md3 models
-
-25/09/2001
-  Gef / djbob
-  - several patches to the key handling code, for linux specific issues and sticky keys
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=191
-  TTimo
-  - fixing q3map bug, not processing the argv correctly
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=192
-  - fixed ToggleCubicClip shortcut Ctrl+\ (win32 Gtk source patch)
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=15
-
-18/09/2001
-  RR2DO2
-  - discreet movement for camera (prefs setting)
-    fixes texture window bug
-    latching view layout changes until restart
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
-  djbob
-  - added back "view > show > show angles" in view filters
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=188
-
-15/09/2001
-  G_Dewan
-  - fixed problems with q3map when not using -connect
-  SPoG
-  - fixed q3map texture projection for brushes belonging to entities with local origin
-  - added SafeOpenRead() check, terminating map->bsp stage if .map file cannot be read
-
-13/09/2001
-  RR2DO2
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=181
-  fixing key handling bug (key pressed with repetition was not properly catched)
-  TTimo
-  - added new Radiant manual elements (GtkRad section) to the win32 full setup
-  - reverting version to nightly, going back to nightly / RC delayed
-  - patched linux setup, now prompting for component path only if at least
-    one of the options is checked. Still need to handle Cancel in dialog though.
-
-12/09/2001
-  TTimo
-  - more fixes to linux script, copy plugins right now
-
-10/09/2001
-  TTimo
-  - patched contrib plugins, using seperate build scheme
-  - fixed textool issues, compiles again
-
-09/09/2001
-  TTimo
-  - sub-menu cascading
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=178
-  - udpated the Q3Radiant manual with some new GtkRadiant stuff
-  - updated the FAQ with 1.1.1 known issues
-  Gef
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=174
-  applied all the patches 
-
-07/09/2001
-  SPoG
-  - fixed qer_editorimages outside "textures/" being ignored
-  - stopped q3map_lightimage being used to set shader image dimensions
-  - changed bsp menu to remove "bsp_", changed menu text in default .qe4
-  - fixed patch LOD update - now always occurs on both cam/xy draw
-
-  djbob
-  - dynamic DEpair class strings in bobtoolz
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=171
-  - decrease VESF verbosity
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=169
-
-  TTimo
-  - fixed Gtk keyboard bug Ctrl + [ and ]
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=15
-
-06/09/2001
-  TTimo
-  - merged FullSetup branch into the trunk, we have basic functionality
-  for a full linux setup (components prompting for path)
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=158
-
-  Gef
-  - CapDialog source cleanup patch (got rid of the namespace)
-
-  RR2DO2
-  - more camera fixes, wheel mouse and texture drag drop
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
-  - additionnal patch to optimize camera refreshes
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
-  
-  djbob
-  - remember last key/pair in entity dialog for easy "apply again"  
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=18
-  - re-enabled texture name edit on PI
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=18
-
-04/09/2001
-  djbob
-  - left pane on status bar
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=166
-  
-  RR2DO2
-  - cam window cursor fix
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
-  
-  TTimo (FullSetup branch)
-  patched setupdb and setup to allow for path prompt in install
-  modified the setup script scheme to go towards a solution similar to what
-    we do under win32 (build a full and nightly build)
-  the binaries in setup.data/ (setup and setup.gtk) still need to be updated 
-    with proper binaries built from setup and setupdb cvs source
-
-03/09/2001
-  TTimo
-  - wheel mouse in texture window on win32 (with a pref setting for increment)
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=160
-  - not saving prefs while exit on sleep
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=157
-  - fixed select all of type (changed behaviour to something that makes more sense?)
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=79
-  
-  Gef
-  - final tweaks to wheel mouse scrolling (locks texwin scrolling and scrollbar update)
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=160
-  - prevent multiple color selection dialog for light entity
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=165
-  
-  djbob & TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=137
-  window positions
-  applied patch to store SI and PI positions
-  storing entity info and map info positions
-  reworked the overall position load/save scheme
-  added an enum for the view style, makes things more readable
-
-02/09/2001
-  TTimo
-  - added/cleanup ToggleFreeMode to camwindow.cpp .. stopped working on cam stuff since RR2DO2 has another patch in preparation
-  Gef
-  - patched Conscript to accept 'cons -- release' on the command line to performa a release build
-  djbob
-  - added patch splitting to bobtoolz
-  - fix to patch control points bug in camera
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=159
-  - handling of NWUV errors in q3map
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=147
-  RR2DO2
-  - new patch for camera control
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
-
-01/09/2001
-  SPoG
-  - Fixed .wal texture support, searches for .wal extension if .tga and .jpg fail
-    NOTE: requires a "pics/colormap.pcx" file to obtain a palette from
-  - Added variable default texture scale in preferences (ini key: TextureDefaultScale)
-
-01/09/2001
-  djbob
-  - fixed surface inspector "fit" bug
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=161
-  - single face deselection on a selected brush
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=153
-
-31/08/2001
-  TTimo
-  - Moved *.def files to scripts/ in win32 setup
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=116
-  - Applied patch for background position on widgets (win32)
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=108
-  - Checked C runtime lib configs
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=135
-  - updating docs (add to CVS, update setups etc.)
-    added TA teams manual to the full setup
-    uploaded on web site
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=97
-  - changed versioning to 1.1.1-nightly, next release will be 1.1.1
-  (the -TA part was removed, since we now support ALL mods)
-  - removed AFX_MANAGE_STATE calls, this is old MFC related code for win32
-  - moved texdef_t::name to private, added const char * GetName()
-  (doesn't fix explosion on exit for win32 debug builds though)
-  - fixed DoTextEdit / EditPad b0rkage (due to recent Q_Exec changes)
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=134
-  - added targetShaderName documentation to shader manual
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=102
-  - added "notta" and "notq3a" documentation to the TA Mapping manual
-  - fixed entities.def on shootable doors and buttons
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=101
-
-  djbob
-  - added MAX_POINT_ON_WINDING error handling
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=129
-  - bobtoolz update
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=123
-
-  RR2DO2
-  - noclip-type camera movement
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
-
-30/08/2001
-  TTimo
-  - Fixed CHANGES commit script bug
-  - Fixed -onlyents bug in q3map / origin brushes
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=92
-  - added mouse wheel to the texture window
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=81
-  SPoG
-  - Fixed texture rotation not updating correctly on patches
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=136
-  - Fixed long delay on toggling cubic clip by removing call to Map_BuildBrushData()
-  - Added note in entities.def for default worldspawn _color value
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=105
-  - Added IncRef and DecRef to Patch_FindReplaceTexture()
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=95
-  - Fixed misc_model updating on changing model key or with invalid model
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=138
-
-30/08/2001
-  SPoG
-  - Added negative vertical scale on SET and FIT in patch/surface inspector
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=65
-
-27/08/2001
-  Gef
-  - running makeversion.sh from Conscript
-  - a bunch of patches to cleanup compile warnings on linux
-  - added VectorSnap on float grid
-  - IWindowListener modified to pass float values for X Y in click messages
-  TTimo
-  - fixed crash when adding a misc_model if Gtk dialog is on
-  djbob
-  - md3 filtering for misc_model dialog
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=76
-
-26/08/2001
-  Gef
-  fixed http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=152
-    Kyro II GL drivers bug
-  fixed http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=150
-    using a scrolling textbox for GL extensions in the about list
-  fixed http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=150
-    func_group toggle in cap dialog
-    
-  TTimo
-  fixed running BSP commands on linux
-  fixed http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=133
-    VFS        init on linux
-    
-around 15/08/2001
-  TTimo
-  quakecon fixes: switched to long filenames in project and misc_model dialogs,
-    removed all occurences of win32 conversion to old 8.3 filenames
-  NOTE: this might raise some bugs and issues, but it's the way to go for the future,
-    already fixes more issues than it creates
-
-03/08/2001
-  djbob
-  fixed Radiant hijacks win32 copy/paste
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=36
-
---- merged Alpha into Trunk, see Merge-1_1-TA-nightly tag
-
-25/07/2001
-  TTimo
-  fixed project dialog to behave right
-  proper .def scanning
-  fixed shader loading with VFS and mod stuff
-  added a local to texwindow.cpp GSList *l_shaderfiles
-    holds the names of the active .shader files
-  modified q3map to read "fs_basepath" and "fs_game"
-  TODO:
-    .def files in the media need to move to <fs_game>/scripts/
-    rename entities-TA.def to entities-ta.def
-
-24/07/2001
-  TTimo
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=116
-  updated cmdlib's Q_Exec to be more widely used through Radiant (during watchbsp.cpp cleanup)
-  patching in MarsMattel's code for mod support, and started fixing:
-    added m_strFSBasePath m_strFSMain m_strFSGame to g_qeglobals to match Q3's filesystem
-    reworked the project file dialog
-    changed the way we load and initialize eclass and shaders to work with mod code
-    updated VFS initialisation code, cleaner and better console output
-    the "game" key in the project file is no longer relevant, only "dir" is
-      (if "dir" is not present, then no mod support, vanilla Q3)
-    changed the loading of the .def files to scan in scripts/, you might need to move your entites.def to use
-    TODO:
-      cleanup .. (search where "basepath" is used for instance)
-      using fs_game when calling q3map
-      fixing project dialog to behave right
-      shader loading using VFS functions (seems to work again but I'm not sure)
-      win32 ver. might be slightly broken
-      .def scanning, don't scan ALL .def
-
-23/07/2001
-  TTimo
-  added version and build info to the log file + current timestamp
-
-22/07/2001
-  SPoG
-  fixed selection of misc_model when viewed as a bounding box
-  
-20/07/2001
-  TTimo
-  cons script for q3map building
-  added general GtkRadiant versioning (version.h) to q3map
-  nightly setup on linux:
-    using the right install path (with GtkRadiant's version name)
-    cleaned up options to only the stuff relevant to nightly
-    fixed Radiant and core binaries path in setup
-    added some template processing of setup.xml (similar to what is being done on win32)
-  
-19/07/2001
-  TTimo
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=112
-  applied ^Fishman's path
-  inclusion of version.h and aboutmsg.h moved to qe3.h
-  changed base path location process (in most cases it will prompt)
-  fixed the path construction to initialize according to the new layout
-
-16/07/2001
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=115
-  fixed wake up crash on linux
-
-12/07/2001
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=117
-  fixed
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=120
-  fixed installer bug on win98, was a problem with cygwin config
-
-11/07/2001
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=64
-  cleanup and fixed
-
-06/07/2001
-  TTimo
-  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=100
-  can't locate the "textures: in use" problem, has been fixed already?
-  now selecting the right entity in the list, had to go around an inifinite recursion problem
-    (i.e. selection message in the entity class list causes UpdateSel recursion)
-
-04/07/2001
-  TTimo
-  - added botclip to missionpack/common.shader
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=114
-
-01/07/2001
-  TTimo
-  - backported cons scripts to Alpha branch. Type 'cons' at the head to build
-  regular makefiles should soon be outdated..
-
-30/06/2001
-  TTimo
-  - updated the IS script (Gtk changes and and BACK problem)
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=68
-  - bunch of fixed to make it build on win32 against new STLPort
-  http://zerowing.idsoftware.com/STLPort/
-  using an STLPort configured locally in GtkRadiant (with stl_config.h, new file)
-
-29/06/2001
-  TTimo
-  - fixed GDI leak affecting text widgets, specially the console and the entity inspector
-
-18/06/2001
-  TTimo
-  - more win32 project file cleanup, removing libs/libxml2 from the tree
-  - importing back "gtkr_list.h" from 1.2, made Alpha branch STLport compliant too
-    http://www.qeradiant.com/faq/fom-serve/cache/174.html
-
-30/05/2001
-  TTimo
-  - added libxml2 as an external dependency. libxml2 should be installed as a seperate
-  directory on win32. dynamic linking now instead of static previously.
-  - cleaned up q3map win32 project file, removed opengl dependency
-  (the drawflag command line is inoperant now .. I don't think it was used anyway?)
-
-26/07/2001
-  TTimo
-  - checking in Gef's doxygen files
-
-14/06/2001
-  TTimo
-  - added .dsp for map module on win32
-  - fixed several issues with module loading, stability of the debug and release builds
-    http://www.qeradiant.com/faq/index.cgi?file=197
-
-12/06/2001
-  TTimo
-  - got rid of of SysMsg thing, using SysPrintf and SysFPrintf now
-  - got rid of InfoMsg functions (can't remember what it was)
-  - changed the m_pfnError in the plugin API to match Radiant's (void)(char *, ...)
-  - changed Warning to Sys_Warning, as #define to Sys_FPrintf(SYS_WRN,
-  
-11/06/2001
-  TTimo
-  - new map module, in plugins/map, required for execution (linux Makefiles written, win32 needs to be)
-    this is using the imap.h interface
-  - added Sys_ functions to the main table (Sys_BeginWait Sys_EndWait)
-  - got rid of AFX_MANAGE_STATE macros .. those are crappy MFC remnants
-  - reverted Spog's changes to the console logging switches to their original behaviour
-  - removed m_fVersion from the func table .. we use the size of the table to do the checks
-  XMLmap merge from 31/11/2000:
-  - started moving the map loading code into a module
-  
-08/06/2001
-  TTimo
-  - updates to the plugin loading code, verbose a bit more, and more interesting information
-
-05/06/2001
-  TTimo
-  - some fixes to vfspk3 string code, using the proper str implementation
-  http://www.qeradiant.com/faq/index.cgi?file=175
-  - added and tweaked various cons build files, Radiant 1.2 core and required Q3 modules are building now
-  - fixes to image module
-
-04/06/2001
-  TTimo
-  - started using cons for the linux (*NIX) build system
-  see http://www.dsmit.com/cons/
-  
-  SPoG
-  - Fixed drawing too much coordinate text in XY window
-  - Changed grid line drawing in XY window to be more consistent
-  - Fixed clipper-tool-uses-caulk to only apply common/caulk to solid opaque brushes
-    (shaders.dll now parses some new surfaceparms)
-  - Changed shader parsing to pass over layer information in shaders,
-    rather than parsing and ignoring it all
-  - Changed misc_model selection to ignore back-facing triangles
-  - Added axes to show the grid origin in XY window
-  - Changed misc_model rendering and selection to minimise the number of extra
-    transformation calculations
-  - Fixed texture directory listing to allocate and free memory correctly using vfs
-  - Added qglDeleteTextures() to plugin GL API - fixes crash
-  - Fixed image.dll to correctly allocate and free memory for jpgs
-  - Moved modules to /modules from /plugins, updated win32 project files.
-    (linux/mac makefiles will need to be updated)
-  - Changed console logging toggle in main() to automatically disable logging after any successful startup
-  - Changed console logging to only activate when a Release build finds a .pid file
-  - Changed "found .pid" and "logging console output" messageboxes to give a clearer message
-  - Added vfsFreeFile - which is kinda redundant if we use g_free and g_malloc for everything
-  
-31/05/2001
-  TTimo
-  - cleanup of the win32 project file and C++ options.\
-  Turned off exception handling, changed some code generation options and fixed
-  some threaded/non-threaded linking problems
-  - STL in GtkRadiant or a plugin must now use STLPort
-  a custom configured version of STLPort is available at http://zerowing.idsoftware.com/STLPort
-  still need to write some guidelines about it
-  bascially, we are using STL: iostreams disabled, no namespace, no threading, no exceptions
-
-30/05/2001
-  TTimo
-  - removed libxml2 from tree, use a seperate libxml2/ directory next to GtkRadiant/ for win32
-  libxml2 will be distributed seperately as an archive based on official release (same as win32 Gtk SDK)
-  (check on zerowing for the latest archive)
-  libxml2 is now used as dynamic shared object on win32, makes sense since many module will rely on it
-  - cleaned q3map, removed GL dependencies
-  - updated Debug and Release builds on win32, it compiles and runs now
-
-28/05/2001
-  Spog
-  - moved vfsExtractRelativePath and vfsGetFullPath to vfs.cpp in vfspk3,
-    added vfsExtractRelativePath and vfsGetFullPath to IFileSystem. Copied BuildShortPathName() from qe3.cpp to vfs.cpp as a Temp fix.
-  - Changed Error() calls in bmp.cpp as a Temp fix, they relied on definition of Error in qe3.cpp. Should probably use Error() from cmdlib instead.
-  - Fixed unresolved external in jpgload.obj - merged bufsize argument into jpeg_stdio_src from Alpha branch... assuming Alpha is the newer version.
-  - Changed GtkWidget* to void* in image.cpp.. this could be cleaned up more.. i only did enough to make it compile.
-  - Added jpeg.cpp to msvc project for image.dll.. changed declaraction of LoadJPG() in image.cpp to an extern... is this correct?
-  - TODO: update vfs.cpp, vfspak.cpp and vfs.h in plugins/vfspak
-  - fixed unresolved external load_pixmap() - merged load_pixmap declaration from Alpha branch into gtkmisc.cpp
-  - moved vfsBasePromptPath() to qe3.cpp as a Temp fix - not currently required in vfs module, but it will be in future.
-  - two calls to free() in texwindow.cpp freeing memory allocated by vfs module, causing debug assert errors - changed them to g_free()
-  - TODO: Delete vfs.cpp and vfs.h from /radiant
-  TTimo
-  - additional fixes after Spog's merge (linux version), removed messaging.cpp messaging.h (name changed to ui.h ui.cpp)
-    updated linux makefile accordingly
-  - merge of Alpha version into trunk (massive amount of changes and merges, not detailed)
-
-25/05/2001
-  TTimo (Alpha branch)
-  - merged the recent MacOS branch back into Alpha
-  this makes a potential source codebase for a MacOS release
-
-24/05/2001
-  TTimo (Alpha branch)
-  - patching Spog's recent changes to fix linux build
-  using DBL_MAX and FLT_MAX from <limits.h> for float and double max
-
-23/05/2001
-  TTimo (Alpha branch)
-  - testing Spog's write access
-  
-  SPoG (Alpha branch)
-  - Added variable LOD for PatchMeshes based on curvature
-  - Added LOD-matching to eliminate gaps between patches with mismatched LOD
-  - Fixed texture shift/scale on LOD'd PatchMeshes
-  - Added opengl lighting (three infinite light sources)
-  - Added dynamically calculating vertex normals for PatchMeshes, for gl lighting
-  - Added decoding/transforming md3 vertex normals for gl lighting
-  - Changed camera drawing routine to minimise gl state changes
-  - Removed Patch_InsertDelete() - not functional
-  - Added CV lattice to selected patches
-  - Added Per-polygon patch selection
-  - Added Per-polygon misc_model selection
-  - Changed default "patch subdivisions" to 4
-  - Rewrote camwindow drawing to only change opengl state within the camwnd's member functions
-       fixes all rendering modes to be more consistent, speeds up rendering
-
---------- GtkRadiant 1.1-TA win32 and linux release ----------
-
-13/05/2001
-
-  Spog (patched in TTimo) (Alpha branch)
-  - Fixed "Fix entity-target/targetname collisions" to use next available tN if tN, else use next available name_N
-  - Changed patch point selection to pick already-selected points in preference over non-selected
-  - Changed RemoveCols and RemoveRows to not extrapolate unless a col/row is selected
-
-11/05/2001
-  TTimo (Alpha branch)
-  - final fix pass to the generated version and about message tags
-  - improved texture adjustment code (shift+arrows shortcuts)
-
-  texture adjustment commands now affect the texture relatively to their current orientation
-  they will move along their texture axis, and not along world axis
-  the texture adjustment commands are now interpreted to be more intuitive:
-    Radiant will match the up/down/right/left translation messages to the face that is affected
-       depending on the way the camera is looking at the face, the right move commands will be used
-
-  changes start in Select_ShiftTexture, using new ShiftTextureRelative_Camera
-
-  ShiftTextureRelative_Camera uses several new functions:
-
-  // get the two relative texture axes for the current texturing
-  BrushPrimit_GetRelativeAxes(f, vecS, vecT);
-
-  MatchViewAxes does the matching between up/down/left/right commands and world directions:
-  // vec defines a direction in geometric space and P an origin point
-  // the user is interacting from the camera view
-  // (for example with texture adjustment shortcuts)
-  // and intuitively if he hits left / right / up / down 
-  //   what happens in geometric space should match the left/right/up/down move in camera space
-  // axis = 0: vec is along left/right
-  // axis = 1: vec is along up/down
-  // sgn = +1: same directions
-  // sgn = -1: opposite directions
-  // Implementation:
-  //   typical use case is giving a face center and a normalized vector
-  //   1) compute start and endpoint, project them in camera view, get the direction
-  //     depending on the situation, we might bump into precision issues with that
-  //   2) possible to compute the projected direction independently?
-  //     this solution would be better but right now I don't see how to do it..
-  void CamWnd::MatchViewAxes(const vec3_t P, const vec3_t vec, int &axis, float &sgn)
-
-  // shift a texture (texture adjustments) along it's current texture axes
-  // x and y are geometric values, which we must compute as ST increments
-  // this depends on the texture size and the pixel/texel ratio
-  void ShiftTextureRelative_BrushPrimit( face_t *f, float x, float y)
-
-  those functions are using various new utility functions:
-  
-    // GL matrix product
-    void GLMatMul(vec_t M[4][4], vec_t A[4], vec_t B[4]);
-
-    // project a 3D point onto the camera space
-    // we use the GL viewing matrixes
-    // this is the implementation of a glu function (I realized that afterwards): gluProject
-    void CamWnd::ProjectCamera(const vec3_t A, vec_t B[2])
-
-  - UI abstraction layer (interfaces for Gtk MFC and Q3 UI)
-
-09/05/2001
-  Maj (Alpha branch)
-  - new splash screen
-
-  Spog (patched in by TTimo) (Alpha branch)
-  
-  patcing in changes:
-  - moving void VectorSnap(vec3_t point, int snap); to mathlib
-  - NOTE: STL dependency removed .. leaving this comment
-    this will rely on M$ implementation of STL on win32 and the libstdc++ for linux
-    it should work fine for basic stuff
-      but M$ implementation doesn't follow the standards when it comes to advanced stuff
-    it is probably better to leave the STL header in local files and not go towards including it directly from qe3.h
-
-  Spog's Changelog:
-  
-  rushing this a bit.. make sure you check it doesn't remove anything you 
-  changed. This only contains changes within /radiant .. i'm pretty sure I didn't 
-  change anything else, but i'll check again. Patch below.
-
-  Fixed ctrl+G SnapToGrid, now never creates degenerate face-planes
-  Fixed setting an origin for multiple brushes to use origin point of fixedsize 
-  entities
-  Fixed mirroring and rotation of fixedsize entities including misc_model
-  Fixed undo/redo on multiple entities to link brushes to entities correctly
-  Fixed "view > entities as.." menu to display correct default setting
-  Fixed "view > entities as.." toolbar button to show menu
-  Changed selection-area of edge/vertex control handles to stay constant when 
-  zoomed
-  Fixed undo on ctrl+G SnapToGrid
-  Fixed Selection Invert to set bSelected correctly on patches
-  Fixed XY-window Z selection origin to be g_MaxWorldCoord
-  Changed RotateIcon to draw same size at all zoom levels
-
-  Fixed origin drift on saving misc_model with null md3Class
-  Fixed creation of cap for 'Bevel' type patches
-  Fixed inverted cap being created for 'Endcap' type patches
-  Fixed inverting patches on mirror operations
-  Added snap-selected-to-grid affects only the patch points selected
-  Cleaned up Select_ApplyMatrix and Select_SnapToGrid
-  Added drawing of brush planepts in debug build
-  Fixed texture quality slider adjustment
-  Removed redundant menu items curve > cap > inverted bevel/inverted endcap
-  Fixed texture scrolling not working when scrollbar is disabled
-  Fixed textures with odd dimensions being skewed with texture quality less than 
-  max
-  Changed Patch Inspector Horizontal/Vertical increment to use pixel values 
-  (default 8)
-  Changed Patch Inspector Horizontal increment to subtract from S values but not 
-  T values
-  Changed Patch Inspector Stretch spinner to do something useful
-  Changed Patch Inspector Stretch default amount to 0.5
-  Changed Arbitrary Rotation dialog to reset rotation spinner values to 0 on Apply
-  !! stops output in console window !! - Added sending q3map output 
-  to /temp/junk.txt to bsp commands, in win32 only
-  Fixed Patch_Naturalize to calculate T values backwards, correcting texture 
-  vertical flip
-  Changed patch row/column Insert/Remove to interpolate/extrapolate from existing 
-  curves
-  Fixed point selection on patches when new points are added
-  Fixed redundant edge/vertex handles being created for patch brushes and 
-  fixedsize brushes
-  Fixed refusal to activate brush vertex-drag mode if any patches are selected
-  Partly fixed Undo picking up patch point drags when no points are selected
-  Fixed behaviour of vertex selection on patches
-  Fixed patch point colours in textured mode in cam window
-  Changed patch point selection to update selection pool on each selection click
-
-06/05/2001
-  TTimo (Alpha branch)
-  - more setup script changes, will rely on version information
-    various other fixes in the script file
-
-02/05/2001
-  TTimo (Alpha branch)
-  - added makeversion.sh to the root, will generate version and date files before compilation
-  version.h and date.h
-  - cleanup and fixes to the linux setup scripts
-
-  Spog (CVS add and config by TTimo) (Alpha branch)
-  - win32 setup script, run setup/setup.sh from cygwin to create a working directory for the setup <STILL EXPERIMENTAL>
-
-01/05/2001
-  TTimo (Alpha branch)
-  - fixes to linux version from previous set of patches
-
-19/04/2001
-  Hydra (patched in TTimo) (Alpha branch)
-  http://fenris.lokigames.com/show_bug.cgi?id=3458 :
-  - *.pfb filter
-
-  SpoG (patched in TTimo) (Alpha branch)
-  - updated setup data: entities.def common.shader(Q3) and common-spog.pk3
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=25 :
-  - Patches: Curve > matrix > redisperse > rows/columns
-    I changed this function to treat a patch as multiple 3by3 sections when doing 
-  redispersal of control points. The effect is that green patch points are never 
-  moved. I also removed the call to Patch_Naturalize, so the texture coordinates 
-  are not changed (user can hit ctrl+n to naturalize afterwards if desired).
-  - rewrote the patch_captexture function to be more reliable
-  - Fixed YZ view drawing and selection being mirrored on plane X=0
-  - Fixed X and Z rotation direction to be clockwise as shown on the toolbar button 
-    icons
-  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=8 :
-  - Fixed: Removed orientation-switching hack to fix 2pt-clip orientation problems, 
-    originally stemming from ass-backwards representation of grid axes. Fixed 
-    clipper to generate 3rd clip point correctly for each axis instead.
-  - Fixed: Stopped clipper-caulker from NOT applying caulk if the first face of a 
-    brush was "common/caulk".
-
-  TTimo (Alpha branch)
-  - removed some unused code in the Gtk file dialog, hopefully stabilizing it
-
-02/04/2001
-  TTimo (Alpha branch)
-  - changed the regular/BP conversion prompt
-
-01/04/2001
-  Spog (patched in by TTimo) (Alpha branch)
-  - Fixed view > show coordinates now affects Z window
-  - Fixed minimum/maximum world coordinates now -65536/65536
-  - Fixed view > show blocks now only draws vertical lines if not XY view
-  - Added variable blocksize (gtkr only displays 1024 < blocksize < 65536)
-  - Changed XY/Z window grid drawing to use floats internally
-  - Fixed broken XY window grid drawing for higher zoom levels
-  - Changed camera and Z-checker icons to stay the same size when zoom level changes
-
-24/03/2001
-  Spog (patched in by TTimo) (Alpha branch)
-  - added filters.cpp to the VC6 Makefile. Linux build needs updating
-  - Changed Filter system to use brush-flags updated only on actions that affect filtering
-  - Changed Filter system to allow further extension and future customisation
-  - Changed show/hide to use brush filter flags
-  - Changed Find/Replace textures to only rebuild brushes that changed.
-  - Changed View > Filter menu shortcuts and behaviour
-  - Fixed various minor spelling errors
-
-  TTimo (Alpha branch)
-  - Fixed the 'Clean' command in preferences, used to remove only Radiant.ini and not SavedInfo.bin
-
-06/03/2001
-  TTimo (Alpha branch)
-  - better parse error information: added the line number of the error in (hopefully) all cases
-
-30/02/2001
-  TTimo (Alpha branch)
-  - texture locking in BP mode for axis flipping and axis rotation (toolbar buttons) (Id bugfix request)
-  - fixed undo in BP mode
-  - MatchToken error message in q3map improved with the script name
-
-27/02/2001
-  TTimo (Alpha branch)
-  - switched linux makefiles to xml2-config instead of xml-config
-  latest version of libxml2 is using xml2-config instead of xml-config now
-
-26/02/2001
-  TTimo (Alpha branch)
-  - fixed a loki_initpath misbehaviour, was overriding the path to the binary with RADIANT_DATA if defined
-
-21/02/2001
-  - Added setup data and a script to build linux setups to the cvs
-  TTimo (Alpha branch)
-  - various printf -> Sys_Printf
-  - added vslick/ directory for Visual Slickedit 6.0 on win32 <- THIS IDE RULES
-
-20/02/2001
-  - Removed "Show Paths" option, already in the filter menu
-
-19/02/2001
-  - Fixed the Enter key handling on the surface inspector (suggested by Spog)
-  - Fixed skewed textures with lower texture quality
-  - Changed the order the include directories are searched under Linux
-
-15/02/2001
-  - Moved the Show Cluster Portals option to the Filter menu
-  - Fixed the rotate and scale toolbar buttons being incorrectly checked
-  - Fixed arbitrary rotation bug (#3073)
-
-14/02/2001
-  - Fixed CreateFont memory leak on glwidget
-
-12/02/2001
-  TTimo (Alpha branch)
-  - fixed save as prefab stuff (right dialog name and overwrite prompt)
-
-10/02/2001
-  TTimo (Alpha branch)
-  - was crashing on win32 boxes where HOME env var was not defined (loading bookmarks)
-
-09/02/2001
-  TTimo (Alpha branch)
-  - change some code in the file dialog to use g_malloc g_free instead of new 
-    for win32 file dialog and malloc for Gtk file dialog. (all of this trying to get rid of
-    some of the crashes)
-
-07/02/2001
-  - Fixed Load command initial path
-  - Fixed some toolbar buttons not being correctly initialized
-
------------?
-
-06/02/2001
-  (Alpha branch)
-  - Fixed pk3man file dialog errors
-  - New RC uploaded
-  - Changed conflicting shortcuts: FilterModels = Shift+M, FilterTriggers = Ctrl+Shift+T
-  TTimo (Alpha branch)
-  - fix to hide/show, still selecting hidden brushes
-
-05/02/2001
-  (Alpha branch)
-  - Fixed compile errors (use stat, not _stat)
-  - Removed --nofonts option
-
-04/02/2001
-  TTimo (Alpha branch)
-  - fenris #2866, added a pref to turn on/off name conflicts resolution, rewrote the whole algorithm
-  - fenris #2823, fixed patch and brush dragging in 0.25 0.5 grids (it's an ugly hack btw)
-  - fixed the black squares at end of line in Gtk text boxes
-  RR2DO2 (Alpha branch)
-  - fix to the "entitypath" fixup in QE_CheckProject. might not compile on linux yet (use of _stat?)
-
-03/02/2001
-  TTimo (Alpha branch)
-  - fenris #2867, limiting the amount of "spawnflags" "0" appearing in entities. This bug has work left to do,
-    there are some oddities in the entity inspector behavior described.
-
-02/02/2001
-  (Alpha branch)
-  - Fixed sleep mode not restoring windows correctly
-  - Fixed some minimize/restore issues on floating views mode
-  TTimo (Alpha branch)
-  - fixed more gtkfilesel stuff. pattern filtering works for both Gtk dialogs
-    and win32 native. Also checked on linux that it compiles. Renamed gtkfilesel.h
-    to gtkfilesel-linux.h for consistency.
-
-31/01/2001
-  (Alpha branch)
-  - New file selection widget with filtering, masks and all other shit we need
-  TTimo (Alpha branch)
-  - changed some gtkfilesel API and fixed some bugs on pattern filtering, need to reboot on linux and fix some more
-
-30/01/2001
-  (Alpha branch)
-  - Added an option to keep the Z and XY views on the same window in floating views mode
-  - Did some cleanup
-  TTimo (Alpha branch)
-  - removed the 3 layers in terrain entities limitation, increase version tag to patchlevel 3
-  sent for testing to AstroCreep, bug is still there
-  - fixed one more thing with RC file (get it in the right dir)
-  - worked on file dialog and pattern filtering, still issues left
-
-29/01/2001
-  Jonas (patched in by TTimo) (Alpha branch)
-  - Using RC file to tweak the font size on win32, looks much nicer now!
-  - Fixed fenris #2773: esc key behaviour when group window has focus / dependant on view modes
-
-28/01/2001
-  TTimo (Alpha branch)
-  - Finished fenris #2810 (Snap T to grid), it was a bitch
-  - Fixed fenris #2769: raise the brush max size (it was already big, now it's just not sane)
-  - Fixed fenris #2965: eclass (entities) loading code broken, needs to be checked on linux build before closing
-
-27/01/2001
-  TTimo (Alpha branch)
-  - Fixed vertex edit prefs broken
-  - more fixes in Gtk libs
-  - Fixed clipping + brush primitives bug (#2644)
-  - Fixed clip caulk related issues (#2912)
-  - Added Snap T to grid back (#2810) <- still need to test and validate it, I'm too tired tonight
-
-25/01/2001
-  TTimo (Alpha branch)
-  - New Gtk file selection dialog seems stabilized, built a Gtk SDK for the new Gtk libs.
-
-24/01/2001
-  (Alpha branch)
-  - Fixed elapsed time displayed by q3map
-  - Fixed Radiant loading some TGA files upside down
-  TTimo (Alpha branch)
-  - more work done on the file selector. Added a win32 pref to select between regular win32 file dialog and Gtk one.
-  The advanced file selector is still not stabilized on win32. I am thinking about letting go and sticking to the regular one.
-
-23/01/2001
-  (Alpha branch)
-  - Fixed q3map not finding md3 files under missionpack/
-  - Prompt to save changes when choosing a recent file
-  - Fixed window title when choosing File/Load Map
-  - Don't show hidden brushes in the Z window
-
-22/01/2001
-  (Alpha branch)
-  - More File Dialog fixes
-
-21/01/2001
-  TTimo (Alpha branch)
-  - version first version of the advanced file selector on win32
-  seems to work nicely, but crashes when you actually load something .. needs debugging!
-
-  leo (Alpha branch)
-  - Set correct initial directory for the File/Load command
-
-17/01/2001
-  (Alpha branch)
-  - Fixed q3map is crash if a .shader file is referenced in shaderlist and not found
-
-  TTimo (Alpha branch)
-  - fixed some license headers on gtkfilesel.c, started looking into porting gtkfilesel.c to win32
-
-16/01/2001
-  raistlin
-  - the tree is opened whoooo!
-
-  TTimo (Alpha branch)
-  - replaced the old Id header by the newer version (BIG update, to trunk and Alpha)
-  - switched str.h to BSP
-  - added LGPL license to the sample dll
-
-15/01/2001
-  (Alpha branch)
-  - Added camera window toggle option to all views mode
-
-  TTimo
-  for trunk and Alpha:
-  - renamed TOOL_SOURCE_EULA to LICENSE_ID
-  - renamed CONTRIBUTOR to CONTRIBUTOR_AGREEMENT
-  - added CONTRIBUTORS and LICENSE
-
-14/01/2001
-  (Alpha branch)
-  - plugin SDK is back in setup/ moved the sample dll to be in plugins/, need to rewrite the SDK scripts
-  - built a lightweight plugin SDK with cygwin makefile for the sample plugin
-
-12/01/2001
-  (Alpha branch)
-  - Set map modified flag when deleting a brush
-  - Minimize all windows when the main window is minimized in floating views mode
-
-11/01/2001
-  (Alpha branch)
-  - Cleaned up the View/Show submenu
-  - Fixed texture menu splitting 
-  - Fixed major grid lines on 128 and 256 grids
-  - Load only a single .def file if specified in the project settings
-  - Fixed q3map Makefile
-
-  TTimo
-  (Alpha branch)
-  - Removed plugins/shaders from Alpha branch
-  - got rid of common2/ and code, moved qfiles.h and surfaceflags.h into common/
-  - put the licensing headers in all source files (forgot some? byte me)
-
-10/01/2001
-  leo (Alpha branch)
-  - Added new filter system based on FAKK2 Radiant
-
-  TTimo
-  - fixed whatever could be fixed to make it compile with the new directory layout
-  (Alpha branch)
-  - project files update
-
-09/01/2001
-  (Alpha branch)
-  - Added undo for patch redisperse rows and patch redisperse cols commands
-  - Fixed Show Z Outline menu item
-
-30/11/2000
-  TTimo
-  - removed content flags and value from qtexture_t, these have moved to the IShader
-    (NOTE: qtexture_t != texdef_t, texdef_t still using flags value and content)
-
-  - Rewrote the linux plugins Makefiles
-
-29/11/2000
-  - Improved the way modules are loaded
-  - Added new parameter to QERPlug_RequestInterface
-  - finished VC6 project files conversion for new directory structure
-  - fixed shader blending on terrain maps bug
-08/01/2001
-  - Updated Makefiles for the new directory structure
-  - Fixed View/Show/Entities menu not being checked correctly
-  - Fixed "Invert Selection" command selecting hidden brushes
-  - Fixed "Select All of Type" command not working correctly after the Enitity Window is closed
-  - Fixed grid being drawn even when it's the same color of the background
-  - Fixed "Toggle Size Paint" not turning off
-05/01/2001
-  - Fixed autosave interval being calculated wrong
-  - Fixed autosave path under Linux
-  - Fixed q3map crash when trying to load missing pcx files
-  - Fixed q3map not finding .bmp files for the terrain alpha map
-04/01/2001
-  - Fixed GL stack underflow when loading a misc_model
-03/01/2001
-  - Fixed patches remaining half-selected after "Region set selected" (#2748)
-  - Fixed Surface Inspector spin buttons rate (#2776)
-  - Fixed some shortcuts not appearing on menu items (#2786)
-
-
-================================================================================
-                                  1.1-TA beta
-================================================================================
-
-02/01/2001
-  - Fixed memory problem if a file without extension is entered in the file save dialog.
-  - Fixed double slashes "//" on filenames when saving a map
-  - Fixed pk3man plugin not finding the toolbar bitmaps
-  - Fixed double clicks being considered 2 mouse clicks
-
-  RR2DO2 (applied by TTimo)
-  - Clusterportal filtering ('View > Show > Show clusterportal' toggle)
-
-01/01/2001
-  TTimo
-  - updated Web/ with new stuff, web site ready for release
-  - fixed a crash with multiple edge dragging on win32 (was caused by compiler optimizations,
-    this one was a major pain)
-
-31/12/2000
-  - fixed the file open/save dialogs initial directory
-
-  RR2DO2 (applied by TTimo)
-  - bug fix in the terrain loading speedup
-
-  TTimo
-  - tried to lookup the Z window minimum width problem, added #define DBG_WINDOWPOS code to investigate
-
-30/12/2000
-  RR2DO2 (applied by TTimo)
-  - fix to CSG Merge in the menu drop down (menu was there, command not hooked)
-  - some message formatting fixes
-
-  TTimo
-  - rudimentary pattern matching in file selection, affects the plugin API too
-  - fixed silly bug in the "clipper uses caulk" code
-  - major speedup to the loading code on terrain entities
-  (in mpterra2, from 113s to 4s for the main terrain entity)
-  - patched back the file open/save dialogs initial directory to override in TA mode
-  - fixed Patch output crash in the plugin API
-  - fixed BP conversion in the brush output of the plugin API
-
-  minkey (applied by TTimo)
-  - fix to the m_pfnLoadFile code to use VFS
-
-29/12/2000
-  - Remember main window position in floating views mode
-  - Fixed wake up when running the engine in floating views mode under win32
-
-  TTimo
-  - various fixes and debug hooks for PJ bug reports
-
-28/12/2000
-  - Fixed VFS initialization order
-  - Removed texture menu splitting option from preferences (now it's automatic)
-
-  TTimo
-  - built an initial setup, updated the changelog file for 1.1-TA-beta
-
-27/12/2000
-  - Fixed Q3Map output window being too wide on some errors
-  - Added VFS to q3map
-
-  TTimo
-  - replace a printf in q3map by Sys_Printf (!), which is what should actually be used
-  - added a set of functions to vfs to help with file dialogs, building relative files etc.
-  - reworked the file dialogs so they default in the right location (open/save as/md3 loading/sound loading)
-  - fixed shader editor to work with the right path
-
-26/12/2000
-  TTimo
-  - put the converted HTML manuals (Radiant, shaders and model) in the tree (and the win32 setup)
-  - added the new Terrain and Team Arena mapping manuals (added to the setups too)
-
-  leo
-  - Copy and paste across different instances of Radiant
-  - Fixed wait cursor when copying
-  - Print engine command line to the console
-  - Fix glib warnings when running the engine
-  - Fixed shader files being loaded twice
-  - Texture menu now automatically breaks when it reaches the maximum screen height
-
-24/12/2000
-  - Fixed q3map to compile with the new LoadJPGBuf parameter
-
-  TTimo
-  - added TA paths to the BSP commands and running engine
-  - fixed a bug if running with monitoring disabled (generating the .bat was borked)
-  - changed the -moddir implementation to a global switch in q3map (same as -connect)
-  - moddirparam as a global variable in cmdlib, added a TA_HACK in there
-  - changed the SetQDirFromPath to stick to "baseq3/" when using -moddir
-  TODO: check standalone files
-
-23/12/2000
-  TTimo
-  - fixed some sleep/wake code (crashes and wakeup problems on models)
-  - vfsInitDirectory for TA directory (needs to be checked on linux)
-  - changed my mind on entities.def, if TA is enabled, load entities-TA.def on top of regular entities.def
-
-  mickey (applied by TTimo)
-  - some memory overrun fixes
-
-22/12/2000
-  - Fixed plugin Makefiles to not use private/
-
-  RR2DO2 (applied by leo)
-  - Fixed SetTallBrush undo
-  - Added bug report link to help menu
-
-21/12/2000
-  - Daily Linux compilation fixes
-  - Fixed q3map to read .pk3 files from the directory set by -moddir
-  - Fixed vfs not listing all files correctly
-  - Fixed libjpeg crashing on some jpeg files
-  - Load .def files depending on the current game
-
-20/12/2000
-  - Applied Mickey's patch to fix win32 window position save/load.
-  - removed missing _msize call
-
-  TTimo
-  - cleaned up more g_malloc g_free problems, cleaned a INPUT_BUF_SIZE problem in jpeglib
-
-19/12/2000
-  - More manual updates
-  - Fixed bugs comparing file extensions
-  - Added VFS to the Alpha branch
-
-  TTimo
-  - moved game selection to the project settings
-  - got leo's vfs fixes, started changing the memory allocation scheme to glib
-  - moved 'free' calls to g_free with a #define in cmdlib, Radiant seems to run nicely again
-  - removed calls to _msize .. those were causing heap debug assertion failures
-  - upped more stuff
-
-18/12/2000
-  - Added popup menus with the list of active textures to the find texture dialog
-  - Fixed some menu checkbuttons
-  - Changed max number of shader files parsed by q3map to 128
-  - Updated manual images 
-
-17/12/2000
-  - Fixed bug with the texture window scrollbar range
-
-  Mickey (patched in by TTimo)
-  - fix to the floating windows mode, don't send windows to the desktop when raising something else (#2659)
-
-  TTimo
-  - finalized the merge and move into worldspawn commands by adding the undo stuff
-  - fixed the clamping problems when flipping or mirroring patches
-  - added 0.5 and 0.25 grids
-  - added undo to Select_CompleteTall Select_PartialTall and Select_Inside
-  - added on-the-fly conversion between regular brush coordinates and brush primitives texturing in the plugin API
-
-15/12/2000
-  - Fixed crash on Shift-A (Select all of type)
-  - Save the state of the toolbar buttons
-  - Remember the state of the Show Patch Bounding Box button
-  - Double clicking on an entity on the Entity View tree selects the entity
-  - Sort the list columns of the map info dialog
-  - Fixed a bug that would allow multiple Entity View dialogs
-
-  Mickey (patched in by TTimo)
-  - saving position and size of the entity window between runs and during usage
-
-  TTimo
-  - two new commands in the drop down menu:
-  "move into worldspawn" will move selected brushes to worldspawn and eventually delete entities which end up with no brushes
-  "merge brushes" will merge brushes into an entity (from worldspawn or from another entity)
-  - added cleaned HTML version of the editor manual in the tree
-
-14/12/2000
-  - When pressing a letter key in the entity window list, scroll to the entity starting with the key pressed
-  - Fixed backspace not working on the texture subset entry
-  - Added version check when loading savedinfo.bin
-
-  TTimo
-  - started implementing Select_Merge and Select_Seperate for workflow improvement on terrain maps
-
-13/12/2000
-  - Finished GtkGenSurf
-
-  RR2DO2 (merged in by TTimo)
-  - patch to q3map, added option -custinfoparams for custom surface flags (still need documentation)
-
-  TTimo
-  - zoom out and grid drawing taylored to the world size
-
-12/12/2000
-  TTimo
-  - quick win32 update to gensurf
-  - fixed #2610 (MAX_NETMESSAGE) .. needed a consistent rewrite of the way we parse the stream
-
-11/12/2000
-  - Fixed linux compiler errors from recent changes
-  Not fixed today but I forgot to add those to the Alpha changelog
-  - Fixed multiple Map Info dialogs bug
-  - Fixed texture window not scrolling to the top when a new directory is loaded
-  - Fixed GL Windows grab pointer bug
-  - Fixed crash after map compilation if the map leaked
-  - Fixed q3map crash if MAX_SHADER_FILES is reached
-
-28/11/2000
-  - Fixed sleep mode restoring hidden windows (win32)
-  - Fixed find/replace textures dialog layout and keep it always on top of the main window
-  - Replaced malloc/free calls with g_malloc/g_free to avoid the win32 limitation
-
-27/11/2000
-  - Removed glu.h dependencies
-  - Added new file selection dialog
-  - Removed g_PrefsDlg.m_bDisableAlphaChannel (always FALSE)
-  - Added shortcuts for sleep and simple patch mesh
-  - Fixed crash after sleep mode (no GL context current)
-
-24/11/2000
-  - Rewrote the jpeg functions of the image plugin
-  - Replaced some MFC classes with glib
-  - More shader plugin fixes
-  - Fixed bug with select all entities command
-
-  TTimo
-  - fixed q3map to handle the new LoadJPGBuff length parameter
-
-22/11/2000
-  - Fixed crash in Error() if there's no current GL context
-  - Fixes to the shaders plugin
-
-  TTimo
-  - created VC6 project file for image module
-  - modified the m_pfnError in qerplugin.h to use (char *, ...) construct
-
-21/11/2000
-  - Ensured that the plugins are loaded in the correct order
-  - Added Sys_FPrintf and Sys_Printf to the plugin interfaces
-  - Some VC++ fixes
-
-  TTimo
-  - more fixes to the world size
-  - modified moduleentry_t so it compiles on win32. need to update the code in all modules probably
-  - other minor fixes and updates to get everything building on win32
-
-20/11/2000
-  - Moved image loading code to a plugin
-  - Fixed some bugs in the shader plugin
-  - Now using glGenTextures to set texture ids
-
-19/11/2000
-  TTimo
-  - shader code removed from Radiant core, relies on shader module
-  - added ctrl-alt-LBUTTON = multiple brush select without selecting whole entities (from TA update)
-  - added an XML testing proggy in DevDocs/
-
-18/11/2000
-  TTimo
-  - shader module is compiling
-  - reworked the way we deal with required interfaces,
-  automated the interface request process and added code to check the required modules have been found
-
-17/11/2000
-  - Q1 VFS plugin
-  - Changes to the VFS API to detect the format supported by a plugin
-  - Added checks to PluginManager to load the correct VFS plugin
-
-  TTimo
-  - made a mess with XML MAX_NETMESSAGE error, still not fixed
-  - merged q3map 1.0r (TA update from Id) into the tree - important files modified: surfaceflags.h qfiles.h
-
-08/12/2000
-  TTimo (shit I'm 24 now)
-  - added gtk gensurf, VC6 project files are up to date, linux Makefile not checked
-  - fix some WINAPI stuff on above code
-  - add idata.h for raw access to editor data
-  - new _QERAppShaderTable for shader module -> editor functions
-  - added new entries in various tables (GL, parser etc.)
-  - shader module is well under way
-
-16/11/2000
-  - Added a color selection dialog function to the plugin API
-  - Added profile read/write functions to the plugin API
-
-  TTimo
-  - MAX_NETMESSAGE bug: patched q3map so it sends in several messages if the problem occurs
-  still need to update Radiant to recognize XML nodes split into several messages (using an input buffer)
-  - added a test map for MAX_NETMESSAGE: sput.map
-  - project file for vfspk3and win32 patching
-
-15/11/2000
-  - More plugin cleanup
-  - Added IsEqualGUID() to qerplugin.h
-
-  TTimo
-  - merged Alpha back in (didn't try to merge this CHANGES file)
-  - backported some stuff from the trunk to here, the Sys_Printf, gtk_MessageBox and profile stuff
-  - created VC project file for gtk-based gensurf plugin
-
-14/11/2000
-  - Fixed DumpUnreferencedShaders()
-
-  TTimo
-  - added QE_CheckProjectEntity to check paths are following the right conventions
-
-13/11/2000
-  - Fixed bugs in the vfs plugin
-  - Added support to vfs plugins in Radiant
-
-  TTimo
-  - updated project file to libxml2-2.2.8, use libxml2 as the directory name for whatever version..
-          NOTE: libxml2-2.2.8 needs some patching to compile right..
-
-12/11/2000
-  TTimo
-  - all Radiant functions that might be exported in interfaces need to use the WINAPI calling convention
-  modified the GTK functions code accordingly
-  - started writing the shaders module
-
-10/11/2000
-  - Added new GTK functions to the plugin API
-  - Added 'parent' parameter to MessageBox, file_dialog and dir_dialog
-  - Fixed Help commands (Linux)
-
-09/11/2000
-  - Fixed bug in the Z wnd code
-  - Fixed copy text from the console (win32)
-
-       TTimo
-       - moved the libxml library out of the tree, updated the VC6 project files accordingly
-
-08/11/2000
-       - ZWnd always on top (view #2, win32)
-
-       TTimo
-       - added Escape key to hide the entity inspector
-       - S and Shift+S now act as toggles on the inspectors
-
-07/11/2000
-       - Added ungroup command to right click menu
-       - Fixed message box accelerator bug
-       - Fixed GL error on win32 startup
-
-       TTimo
-       - additions to the BSP interface
-       - fixed DestroyCursor error
-       - clipper caulks faces (and prefs checkbox)
-
-06/11/2000
-       - Cleaned PrtView and TexTool plugins
-       - Fixed bug in texture menu names (#2506)
-       - Added splitters to Entity dialog
-
-       TTimo
-       - started clipper caulk implementation
-       - fix to the pointfile not drawing in 2D views
-       - MAX_BUILD_SIDES in q3map debug stream
-
-05/11/2000
-       - Merged Alpha branch with the trunk
-
-       TTimo
-       - more plugin interface for Q3Build, and plugin SDK additions
-       - merged q3map Realloc back into Alpha branch
-
-04/11/2000
-       - Fixed crash during startup if Zwnd was hidden in views #2 and #3
-       - Fixed ToggleConsole command
-       - Fixed ToggleEntity and ToggleTexture commands in view #2
-       - Fixed plugin Makefiles
-       - Removed -rdynamic from Radiant link options (crashes pk3man plugin)
-
-03/11/2000
-       TTimo
-       - directory reorganisation for the plugin SDK, added an interface/ directory
-
-02/11/2000
-       - Save ZWnd state in views #2 and #3
-       - Entity dlg always on top (linux)
-       - Fixed shortcuts.ini parsing bug
-       - Fixed editpad crash if editpad not present (win32)
-       - Fixed bugs in the internal shader editor
-       - Fixed widget_show if window moved after gtk_widget_set_uposition
-
-================================================================================
-                                    1.1 beta
-================================================================================
-
-31/10/2000
-       - Continue loading if glXGetProcAddressARB is not present (Utah-GLX fix)
-       - Fix BSP commands not working if a map is not in "mapspath" (linux)
-
-30/10/2000
-       - fixed the Region commands, "Region > Set brush" is working
-         Region uses the camera as spawn point.
-       - Fixed view/show menu initialization
-       - Fixed warning when starting view #2
-       - Fixed z wnd in view #3
-       - Fixed win32 sleep mode crashes on views #2 and #3
-       - Added "Restart" message when changing texture quality in the preferences
-       - Cleanup: removed radbsp.cpp (unused) and unzip.cpp (already in pak.a)
-
-29/10/2000
-       - Fixed SIGCHLD handler
-       - Built 1.1b setups
-
-28/10/2000
-       - Fixed q3map bug visbytes > MAX_MAP_VISIBILITY
-       - Fixed clipper display bug
-
-       TTimo
-       - updated quakev2.qe4 with -vlight options
-       - added checks in q3map to prevent crashing on allocating a winding too big
-       will stop with an error now.
-       - added the corresponding editor support for debug messages if MAX_POINTS_ON_WINDING is exceeded
-
-       G_Dewan
-       - improved q3map, reducing minimal memory footprint by about 45Mb
-
-27/10/2000
-       - Fixed crash in BSP debug window
-       - Reorganized the preferences dialog
-       - Fixed q3map Makefile
-       - Fixed +/- bug in win32 (Gtk patch)
-       - Fixed Alt shortcuts bug in win32 (Gtk patch)
-       - Fixed q3map crash when visbytes > MAX_MAP_VISIBILITY
-
-       TTimo
-       - improved snapshots behaviour, doesn't snapshot non-modified maps
-
-26/10/2000
-       - Fixed patch inspector not showing after it has been closed
-       - Added 'Reset' button to entity dialog
-
-25/10/2000
-       - Fixed more grid issues
-       - Fixed load window position bug (saved pos greater than screen resolution)
-       - Fixed selection nudge bug
-       - Improved entity windows layout
-       - Fixed GL font not being recreated when exiting sleep mode
-
-       TTimo
-       - cleaned m_nTextureTweak and m_bSnapTToGrid
-       - improved the CycleCapTexturePatch command, now cycles across the 3 planes only 
-       and works on multiple patches at once
-
-24/10/2000
-       - Added an overwrite prompt when saving files
-       - Fixed 128 and 256 grid display
-       - Commented-out grouping code (not functional yet)
-
-23/10/2000
-       - Fixed q3map to load jpgs under Linux
-       - Fixed wake-up crash when floating windows were closed (#2423)
-
-21/10/2000
-       - More q3map and radiant Makefile fixes
-       - Remember size/position of the entities dialog
-
-20/10/2000
-       - Redirect Gdk warnings
-       - Draw border around active XY wnd
-       - Moved some scripts to the Makefile
-       - Added shift+rclick to zoom in/out
-       - Removed minimize/maximize buttons for z wnd in floating mode under win32
-
-       TTimo
-       - Two new entries in View > Show: Show Outline and Show Axes
-       Show Outline turns on/off colored outline of the current view
-       Show Axes turns on/off display of a small axis base in the 2D view
-       - fix q3map Makefile to use external libxml2 source
-       
-       G_DEWAN
-       - Fix to bogus noshader error message in q3map
-
-19/10/2000
-       - Added new console functions that support colors
-       - Revised linux makefile for debug/release builds
-       - Redirect Gtk warnings to the console
-
-       TTimo
-       - reorganized the entity inspector window, layout depends on the number of flags to get
-       more space in the comment window.
-
-18/10/2000
-       - Fixed add/remove bsp items in project settings dialog
-       - Did some cleanup (removed #define WIN32_CONSOLE)
-       - Fixed console not working in view #3
-       - Fixed warning when exiting in views #2 #3
-
-       TTimo
-       - fix to entity inspector comment window for the eclass_t on win32 (removed the white squares)
-
-17/10/2000
-       - Fixed texwindow not scrolling when last texture is large
-       - Added LOD for patches
-       - Fixed prefab path & user ini in preferences dialog
-
-13/10/2000
-       TTimo (XML branch)
-       - basic architecture for XML feedback is functional
-       see radiant/feedback.cpp radiant/watchbsp.cpp q3tools/common2/inout.c
-       merging back in alpha
-
-04/10/2000
-       TTimo (XML branch)
-       - sax interface is in Radiant, need to add a state machine and proper processing
-
-04/10/2000
-       TTimo (XML branch)
-       - experimental use of SAX interface to parse the stream on the server side, see q3tools/q3map/NetTest
-
-03/10/2000
-       TTimo (XML branch)
-       - adding libxml2 in the repository, based on libxml2-2.2.4 with project files and stuff to build on win32
-
-31/09/2000
-       TTimo (XML branch)
-       - new common2/ dir, output system rewritten through Sys_Printf
-       - experimental use of libxml
-
-28/09/2000
-       TTimo (Inspector branch)
-       - shift+arrows matches the increments from the surface inspector
-       - button 'Match Grid' in the SI to set the increment according to current grid
-
-25/09/2000
-       TTimo (Inspector branch)
-       - fixed crappy bug in SavedInfo.bin upgrade (when the struct sizes don't match)
-       - surface inspector has inc step dialog boxes (+saved in prefs)
-       - face selection is always on (was something weird from the prefs)
-       - undo works better with the surface inspector
-
-25/09/2000
-       - Added ARB_Multitexture support
-
-21/09/2000
-       - Fixed preferences dialog warning
-       - Added new grid sizes
-
-20/09/2000
-       - Fixed small bugs reported from Fenris
-
-17/09/2000
-       TTimo
-       - fixed a bug with template project loading / path to the engine safecheck (a weird hidden one)
-       G_Dewan & TTimo
-       - fixes to the process spawning (Q_Exec in cmdlib) + appropriate warning and error messages
-       Fishman
-       - antialiased drawing in 2D views
-
-14/09/2000 
-       TTimo
-       - radiant.log commandlist.txt and radiant.pid are create in g_strAppPath on win32 and g_strTempPath on linux
-       - moved the splash screen after the .pid code
-       - I suspect a bug in the .pid removal, added a check and message box
-       - help works again on win32, spawning Word with the Q3Rad_Manual.doc (temporary solution of course)
-       - surface inspector: removed all Q2 related stuff, fixed horizontal shift, reorganized the widgets layout
-               hooked the widgets to apply the changes on the fly (the inspectors need a good chunk of work)
-       - fixed a radiant.pid bug
-       - added icon to MSVC6 project (with some help)
-       
-       G_Dewan
-       - fix to BSP menu order getting mixed up
-       - fix to the file dialog
-
-11/09/2000
-       - Added splash screen
-
-25/08/2000 TTimo
-       - launch sleep mode before running game
-       - fixed Map_Snapshot bug
-       - going to sleep works on view n2, raising is still screwed (contexts)
-
-24/08/2000 TTimo
-       - fixed some sleep mode stuff
-       - fixed map snapshot bug
-
-21/08/2000
-       - fixed stuff to build on linux
-       - Merged in q3map 1.0p
-
-18/08/2000
-       - Removed "High Color Textures" option (always on)
-       - Removed "Status Point Size" option
-
-17/08/2000
-       - Fixed win32 console issues
-
-16/08/2000
-       - added g_strTempPath
-       - restore maximized window state
-       - fixed logo.bmp
-
-15/08/2000 TTimo
-       - fixed keyboard shortcuts
-       - fixed engine path in prefs (must use the file dialog to change)
-       - fixed a bug related to engine path and project templates
-
-15/08/2000
-       - Removed QE4 update model option (always on)
-       - Removed Buggy ICD option (always off)
-       - Reorganized the preferences dialog to take a bit less space
-
-14/08/2000 TTimo
-       - using profile.cpp code to read shortcut keys files
-       - moved DevDocs/changelog.txt to data/changelog.txt
-               (data/ should be used for user-side stuff and DevDocs/ for developpers)
-       - added data/quickstart.txt with a beginning of info about the main differences
-               between Q3Radiant 202 and GtkRadiant. to be used as a doc later.
-
-13/08/2000 TTimo
-       - added DevDocs/WIN32SETUP and DevDocs/changelog.txt
-               changelog.txt is end user changes
-               WIN32SETUP the TODO list for install specific stuff
-       - wrapped a first version of the win32 installers (full and patch)
-
-11/08/2000 TTimo
-       - quickfix to put undo/redo back in
-       - added DevDocs/WIN32SETUP, describes what I'm up to with the setup of win32 version
-
-10/08/2000 TTimo
-       - added back the window position saving code that was in earlier tree
-               NOTE: would have rather have it done in prefs than hooked in mainframe_delete and MainFrame::Create
-               (would have been cleaner IMO)
-               NOTE: IT'S STILL BROKEN .. I ADDED THE CODE BUT I MUST BE MISSING SOMETHING
-               NOTE: it doesn't remember the maximized state. It should.
-
-08/08/2000 TTimo
-       - fixed win32 build for GLWidget code, added WINAPI calling convention on all exported stuff
-       - fixed TexTool to compile under win32
-
-07/08/2000 TTimo
-       - fixed some crash with the new jpeg lib
-       - fixed console logging behaviour (was always turned on at startup)
-       - added console logging checkbutton in prefs
-
-07/08/2000
-       - Merged the GLWidget branch
-       - Merged 202 patches
-       - Fixed "clean" button in the preferences dialog
-       - Added pid startup detection
-       - Updated plugin interface with GLWidget functions
-       - Updated TexTool plugin
-
-04/08/2000
-       - Added "errno" string to the Error() message box
-       - More 202 patches
-
-03/08/2000
-       - Merged changes from MFC Radiant 202
-        - Fixed the win32 GLWidget stuff
-02/08/2000
-        - new OpenGL widget to keep all platform specific code in only one file
-
-01/08/2000
-       - Added code to restore the windows when coming out of sleep mode
-       - Rewrote the TexTool plugin
-
-31/07/2000 TTimo
-       - added vc6 projects for PrtView
-       - tested PrtView and Radiant against latest binary release of Gtk (works great)
-
-       Leo:
-       - Updated VC5 projects
-       - Fixed plugin loading under win32
-       - Updated PrtView to compile under win32
-       - Radiant is now iconified when going in sleep mode
-
-30/07/2000 TTimo
-       - prefs dialog for BSP monitoring
-       - Added data/ directory with entities.def and quakev2.qe4
-       - stabilized syntax of v2 project file, same project file for both platforms
-       - added DevDocs/WIN32BETA with a list of stuff to do before going on public beta on win32
-       - added DevDocs/d2u .. handy script to remove linefeeds from DOS files
-       - added radiant/radiant.proj, project file for source navigator (SN rules)
-
-       Leo:
-       - Fixed the logfile crash when ~/.q3a/radiant doesn't exist (fenris #1953)
-
-28/07/2000 TTimo
-       - Fix to the win32 console to use window's default font
-       - Added File > Sleep for experimentation
-               NOTE: we need to keep Radiant minimized when going into sleep mode
-
-28/07/2000
-       - Finished the win32 console replacement
-       - Fixed bug 1952 (map loading segfault)
-       - Added a Makefile to the libs dir
-
-26/07/2000
-       - Added PrtView plugin
-       - Added qvm target to source/Makefile
-       - Another release candidate sent to QA
-
-18/07/2000
-       - Fixed the slow updates issue in the win32 version
-       - Added 3 new variables to fix the paths issue
-
-17/07/2000
-       - Fixed the plugin search directory (broken with the changes to g_strAppPath)
-
-14/07/2000
-       - Increased the timer speed in MainFrame::RoutineProcessing
-       - Added code to release and recreate the contexts to the win32 version
-       - Fixed the mouse capture under win32
-
-13/07/2000
-       - Fixed the new path and bsp problems
-       - Sent new version to QA for testing/release
-
-12/07/2000
-       - Added "tools/" back to g_strAppPath under linux
-
-11/07/2000
-       - Added code to release and the recreate the GL contexts (linux)
-
-10/07/2000
-       - Changed directory structure
-
-09/07/2000
-       - Added CS_OWNDC for win32 with a GDK hack
-
-07/07/2000
-       - Fixed "white textures" bug (gluBuild2DMipmaps bug)
-
-03/07/2000
-TTimo:  - main.cpp l386, removed tools/ appending to g_strAppPath, g_strAppPath is expected to point to the app.. (hope it doesn't break anything)
-
-02/07/2000
-       - Added precompiled headers for faster win32 builds
-
-01/07/2000
-       - Finally got q3asm/lcc working
-
-26/06/2000
-       - 201 patches
-       - Added screenshot option
-       - Added an error message if X is running in 8 bits
-
-23/06/2000
-       - Updated with build 200 source
-
-13/06/2000
-       - Remove --noshare option
-       - Added --nofonts option to workaround a bug using glXUseXFonts in XFree 4.0
-
-04/06/2000
-       - Fixed bug with the Ctrl-X accelerator for the File/Exit menu
-
-02/06/2000
-       - Converting the TexTool plugin
-
-30/05/2000
-       - Changes to the plugin loading code
-
-28/05/2000
-       - Files with an underscore character are now correctly parsed in the MRU menu
-
-25/05/2000
-       - Fixed _exit bugs
-       - Fixed bug in CMapStringToString::SetAt
-       - Fixed copy/paste/clone bug
-
-24/05/2000
-       - Finished applying the 199 patches
-       - Fixed a bug in CShaderArray::SortShaders() that was calling the wrong version of InsertAt()
-       - Added numbers to the MRU menu items
-
-23/05/2000
-       - Fixed the floating point bug in gluBuild2DMipmaps
-       - Fixed the time display after a bsp command is executed
-       - Applied several patches from the 199 version
-       - The console is now visible by default
-
-21/05/2000
-       - Added a replacement for gluBuild2DMipmaps
-
-20/05/2000
-       - Fixed the repeating textures bug when playing a map, "brush_primit" must be set to "1".
-       - Fixed the bug about no current GL context when exiting in computers with 3dfx cards.
-       - Textures in the directory pointed by "texturepath" are now loaded correctly in Radiant.
-       - Fixed bug in q3map where it would require a shaderlist.txt file in ~/.q3a/baseq3/scripts.
-
-19/05/2000
-       - Fixed a bug in the multiple directories hack in libs/pakstuff.cc
-       - Finished the filter in the texture window
-       - The wait cursor is now correctly set in the XY window
-       - Added replacements for gluPerspective and gluLookAt
-       - Textures can now be stored in 2 places:
-       * The path pointed by "texturepath" (defaults to ~/.q3a/baseq3/textures,
-         but can be changed in the project settings)
-       * The base texture path (<install_path>/baseq3/textures)
-       - Radiant and the q3map tool now looks for shaders in ~/.q3a/baseq3/shaderlist.txt
-          and <install_path>/baseq3/scripts/shaderlist.txt
-
-18/05/2000
-       - Plugin menu fixes
-       - Created a simple text editor to edit the shaders (instead of calling an external program)
-       - Copy and paste now work
-       - Fixed some bugs with the MRU menu
-       - Some menu items are now enabled/disabled correctly in MainFrame::RoutineProcessing () 
-       - Added a new command line option (--cdpath) to set the CD-ROM path
-       - Fixed some bugs in the entity window, now it's possible to add/edit/remove properties
-       - New directory paths:
-       * maps now default to ~/.q3a/baseq3/maps
-       * autosave files are saved in ~/.q3a/baseq3/maps
-       * .pk3 files can be in ~/.q3a/baseq3, <install_path>/baseq3 and in the CD-ROM
-
-17/05/2000
-       - Fixed bug deselecting a brush after the surface dialog is open
-       - hide cursor when right-dragging XYWnd
-       - files saved to /tmp are now saved in ~/.q3a/radiant
-       - Disabled undo
-       - Fixed a bug in FillTextureMenu
-       - User can now correctly change the accelerators at run-time
-       - Accelerators are read from ~/.q3a/radiant/radiant.ini
-
-16/05/2000
-       - Finished the patch inspector
-       - Finished the texture toolbar
-       - more small bug fixes
-
-11/05/2000
-       - Finished the GroupDlg stuff
-       - Added support to read pak files from the Quake3 CD-ROM
-       - moved /tmp/paklog.txt to ~/.q3a/radiant/paklog
-       - added functions to replace GetKeyState and SetCursorPos
-       - fixed the command key handlers for the mainwindow
diff --git a/DoxyConfig b/DoxyConfig
deleted file mode 100644 (file)
index b9c0619..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-# Included Doxygen Config file
-#---------------------------------------------------------------------------
-# Project name & version number
-#---------------------------------------------------------------------------
-PROJECT_NAME           = 
-PROJECT_NUMBER         = 
-
-#---------------------------------------------------------------------------
-# Where to put the output
-# Note: The images dir should be next to the created html dir within the
-#      output dir.
-#       eg;
-#       [Current Dir]
-#               L__[OUTPUT_DIRECTORY]
-#                      L__[html]
-#                      L__[images]
-#---------------------------------------------------------------------------
-OUTPUT_DIRECTORY       = ../GtkRadiant-doxygen
-
-#---------------------------------------------------------------------------
-# Where to read the sources
-# you can add more than one source...
-# INPUT                   = radiant/ \
-#                           tools/quake3/q3map \
-#                           tools/quake3/q3data
-#
-# Recursive is set on, so setting it to ./ (current dir) would read source
-# files recursively from the current dir down. (which would take a while)
-#
-# eg: To document just include, if the current directory is ../GtkRadiant/ 
-# then...
-#---------------------------------------------------------------------------
-INPUT                  = radiant/
-
-#---------------------------------------------------------------------------
-# Misc settings
-# TAB_SIZE     - sets the indenting for the inline source and the source 
-#                browser
-# INCLUDE_PATH - will include documentation for included files from other
-#                packages. You can specify more than one path the same as
-#                shown in the INPUT example Leave it blank if you don't want 
-#                this.
-# PERL_PATH    - path to the perl executable
-#
-#---------------------------------------------------------------------------
-PERL_PATH              = /usr/bin/perl
-
diff --git a/Doxyfile b/Doxyfile
deleted file mode 100644 (file)
index b87c164..0000000
--- a/Doxyfile
+++ /dev/null
@@ -1,1117 +0,0 @@
-# Doxyfile 1.3.6
-
-# This file describes the settings to be used by the documentation system
-# doxygen (www.doxygen.org) for a project
-#
-# All text after a hash (#) is considered a comment and will be ignored
-# The format is:
-#       TAG = value [value, ...]
-# For lists items can also be appended using:
-#       TAG += value [value, ...]
-# Values that contain spaces should be placed between quotes (" ")
-
-#---------------------------------------------------------------------------
-# Project related configuration options
-#---------------------------------------------------------------------------
-
-# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
-# by quotes) that should identify the project.
-
-PROJECT_NAME           = GtkRadiant
-
-# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
-# This could be handy for archiving the generated documentation or 
-# if some version control system is used.
-
-PROJECT_NUMBER         = 1.5.0
-
-# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
-# base path where the generated documentation will be put. 
-# If a relative path is entered, it will be relative to the location 
-# where doxygen was started. If left blank the current directory will be used.
-
-OUTPUT_DIRECTORY       = doxygen-out
-
-# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
-# documentation generated by doxygen is written. Doxygen will use this 
-# information to generate all constant output in the proper language. 
-# The default language is English, other supported languages are: 
-# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, 
-# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en 
-# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese, 
-# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
-
-OUTPUT_LANGUAGE        = English
-
-# This tag can be used to specify the encoding used in the generated output. 
-# The encoding is not always determined by the language that is chosen, 
-# but also whether or not the output is meant for Windows or non-Windows users. 
-# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES 
-# forces the Windows encoding (this is the default for the Windows binary), 
-# whereas setting the tag to NO uses a Unix-style encoding (the default for 
-# all platforms other than Windows).
-
-USE_WINDOWS_ENCODING   = YES
-
-# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
-# include brief member descriptions after the members that are listed in 
-# the file and class documentation (similar to JavaDoc). 
-# Set to NO to disable this.
-
-BRIEF_MEMBER_DESC      = YES
-
-# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
-# the brief description of a member or function before the detailed description. 
-# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
-# brief descriptions will be completely suppressed.
-
-REPEAT_BRIEF           = YES
-
-# This tag implements a quasi-intelligent brief description abbreviator 
-# that is used to form the text in various listings. Each string 
-# in this list, if found as the leading text of the brief description, will be 
-# stripped from the text and the result after processing the whole list, is used 
-# as the annotated text. Otherwise, the brief description is used as-is. If left 
-# blank, the following values are used ("$name" is automatically replaced with the 
-# name of the entity): "The $name class" "The $name widget" "The $name file" 
-# "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
-
-ABBREVIATE_BRIEF       = 
-
-# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
-# Doxygen will generate a detailed section even if there is only a brief 
-# description.
-
-ALWAYS_DETAILED_SEC    = NO
-
-# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited 
-# members of a class in the documentation of that class as if those members were 
-# ordinary class members. Constructors, destructors and assignment operators of 
-# the base classes will not be shown.
-
-INLINE_INHERITED_MEMB  = NO
-
-# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
-# path before files name in the file list and in the header files. If set 
-# to NO the shortest path that makes the file name unique will be used.
-
-FULL_PATH_NAMES        = NO
-
-# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
-# can be used to strip a user-defined part of the path. Stripping is 
-# only done if one of the specified strings matches the left-hand part of 
-# the path. It is allowed to use relative paths in the argument list. 
-# If left blank the directory from which doxygen is run is used as the 
-# path to strip.
-
-STRIP_FROM_PATH        = 
-
-# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
-# (but less readable) file names. This can be useful is your file systems 
-# doesn't support long names like on DOS, Mac, or CD-ROM.
-
-SHORT_NAMES            = NO
-
-# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
-# will interpret the first line (until the first dot) of a JavaDoc-style 
-# comment as the brief description. If set to NO, the JavaDoc 
-# comments will behave just like the Qt-style comments (thus requiring an 
-# explicit @brief command for a brief description.
-
-JAVADOC_AUTOBRIEF      = NO
-
-# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 
-# treat a multi-line C++ special comment block (i.e. a block of //! or /// 
-# comments) as a brief description. This used to be the default behaviour. 
-# The new default is to treat a multi-line C++ comment block as a detailed 
-# description. Set this tag to YES if you prefer the old behaviour instead.
-
-MULTILINE_CPP_IS_BRIEF = NO
-
-# If the DETAILS_AT_TOP tag is set to YES then Doxygen 
-# will output the detailed description near the top, like JavaDoc.
-# If set to NO, the detailed description appears after the member 
-# documentation.
-
-DETAILS_AT_TOP         = NO
-
-# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
-# member inherits the documentation from any documented member that it 
-# re-implements.
-
-INHERIT_DOCS           = YES
-
-# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
-# tag is set to YES, then doxygen will reuse the documentation of the first 
-# member in the group (if any) for the other members of the group. By default 
-# all members of a group must be documented explicitly.
-
-DISTRIBUTE_GROUP_DOC   = NO
-
-# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
-# Doxygen uses this value to replace tabs by spaces in code fragments.
-
-TAB_SIZE               = 2
-
-# This tag can be used to specify a number of aliases that acts 
-# as commands in the documentation. An alias has the form "name=value". 
-# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
-# put the command \sideeffect (or @sideeffect) in the documentation, which 
-# will result in a user-defined paragraph with heading "Side Effects:". 
-# You can put \n's in the value part of an alias to insert newlines.
-
-ALIASES                = 
-
-# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources 
-# only. Doxygen will then generate output that is more tailored for C. 
-# For instance, some of the names that are used will be different. The list 
-# of all members will be omitted, etc.
-
-OPTIMIZE_OUTPUT_FOR_C  = NO
-
-# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources 
-# only. Doxygen will then generate output that is more tailored for Java. 
-# For instance, namespaces will be presented as packages, qualified scopes 
-# will look different, etc.
-
-OPTIMIZE_OUTPUT_JAVA   = NO
-
-# Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
-# the same type (for instance a group of public functions) to be put as a 
-# subgroup of that type (e.g. under the Public Functions section). Set it to 
-# NO to prevent subgrouping. Alternatively, this can be done per class using 
-# the \nosubgrouping command.
-
-SUBGROUPING            = YES
-
-#---------------------------------------------------------------------------
-# Build related configuration options
-#---------------------------------------------------------------------------
-
-# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
-# documentation are documented, even if no documentation was available. 
-# Private class members and static file members will be hidden unless 
-# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
-
-EXTRACT_ALL            = NO
-
-# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
-# will be included in the documentation.
-
-EXTRACT_PRIVATE        = NO
-
-# If the EXTRACT_STATIC tag is set to YES all static members of a file 
-# will be included in the documentation.
-
-EXTRACT_STATIC         = YES
-
-# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
-# defined locally in source files will be included in the documentation. 
-# If set to NO only classes defined in header files are included.
-
-EXTRACT_LOCAL_CLASSES  = YES
-
-# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
-# undocumented members of documented classes, files or namespaces. 
-# If set to NO (the default) these members will be included in the 
-# various overviews, but no documentation section is generated. 
-# This option has no effect if EXTRACT_ALL is enabled.
-
-HIDE_UNDOC_MEMBERS     = NO
-
-# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
-# undocumented classes that are normally visible in the class hierarchy. 
-# If set to NO (the default) these classes will be included in the various 
-# overviews. This option has no effect if EXTRACT_ALL is enabled.
-
-HIDE_UNDOC_CLASSES     = NO
-
-# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 
-# friend (class|struct|union) declarations. 
-# If set to NO (the default) these declarations will be included in the 
-# documentation.
-
-HIDE_FRIEND_COMPOUNDS  = NO
-
-# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 
-# documentation blocks found inside the body of a function. 
-# If set to NO (the default) these blocks will be appended to the 
-# function's detailed documentation block.
-
-HIDE_IN_BODY_DOCS      = NO
-
-# The INTERNAL_DOCS tag determines if documentation 
-# that is typed after a \internal command is included. If the tag is set 
-# to NO (the default) then the documentation will be excluded. 
-# Set it to YES to include the internal documentation.
-
-INTERNAL_DOCS          = NO
-
-# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
-# file names in lower-case letters. If set to YES upper-case letters are also 
-# allowed. This is useful if you have classes or files whose names only differ 
-# in case and if your file system supports case sensitive file names. Windows 
-# users are advised to set this option to NO.
-
-CASE_SENSE_NAMES       = YES
-
-# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
-# will show members with their full class and namespace scopes in the 
-# documentation. If set to YES the scope will be hidden.
-
-HIDE_SCOPE_NAMES       = NO
-
-# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
-# will put a list of the files that are included by a file in the documentation 
-# of that file.
-
-SHOW_INCLUDE_FILES     = YES
-
-# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
-# is inserted in the documentation for inline members.
-
-INLINE_INFO            = YES
-
-# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
-# will sort the (detailed) documentation of file and class members 
-# alphabetically by member name. If set to NO the members will appear in 
-# declaration order.
-
-SORT_MEMBER_DOCS       = YES
-
-# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 
-# brief documentation of file, namespace and class members alphabetically 
-# by member name. If set to NO (the default) the members will appear in 
-# declaration order.
-
-SORT_BRIEF_DOCS        = NO
-
-# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 
-# sorted by fully-qualified names, including namespaces. If set to 
-# NO (the default), the class list will be sorted only by class name, 
-# not including the namespace part. 
-# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
-# Note: This option applies only to the class list, not to the 
-# alphabetical list.
-
-SORT_BY_SCOPE_NAME     = NO
-
-# The GENERATE_TODOLIST tag can be used to enable (YES) or 
-# disable (NO) the todo list. This list is created by putting \todo 
-# commands in the documentation.
-
-GENERATE_TODOLIST      = YES
-
-# The GENERATE_TESTLIST tag can be used to enable (YES) or 
-# disable (NO) the test list. This list is created by putting \test 
-# commands in the documentation.
-
-GENERATE_TESTLIST      = YES
-
-# The GENERATE_BUGLIST tag can be used to enable (YES) or 
-# disable (NO) the bug list. This list is created by putting \bug 
-# commands in the documentation.
-
-GENERATE_BUGLIST       = YES
-
-# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 
-# disable (NO) the deprecated list. This list is created by putting 
-# \deprecated commands in the documentation.
-
-GENERATE_DEPRECATEDLIST= YES
-
-# The ENABLED_SECTIONS tag can be used to enable conditional 
-# documentation sections, marked by \if sectionname ... \endif.
-
-ENABLED_SECTIONS       = 
-
-# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
-# the initial value of a variable or define consists of for it to appear in 
-# the documentation. If the initializer consists of more lines than specified 
-# here it will be hidden. Use a value of 0 to hide initializers completely. 
-# The appearance of the initializer of individual variables and defines in the 
-# documentation can be controlled using \showinitializer or \hideinitializer 
-# command in the documentation regardless of this setting.
-
-MAX_INITIALIZER_LINES  = 30
-
-# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
-# at the bottom of the documentation of classes and structs. If set to YES the 
-# list will mention the files that were used to generate the documentation.
-
-SHOW_USED_FILES        = YES
-
-#---------------------------------------------------------------------------
-# configuration options related to warning and progress messages
-#---------------------------------------------------------------------------
-
-# The QUIET tag can be used to turn on/off the messages that are generated 
-# by doxygen. Possible values are YES and NO. If left blank NO is used.
-
-QUIET                  = NO
-
-# The WARNINGS tag can be used to turn on/off the warning messages that are 
-# generated by doxygen. Possible values are YES and NO. If left blank 
-# NO is used.
-
-WARNINGS               = YES
-
-# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
-# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
-# automatically be disabled.
-
-WARN_IF_UNDOCUMENTED   = NO
-
-# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
-# potential errors in the documentation, such as not documenting some 
-# parameters in a documented function, or documenting parameters that 
-# don't exist or using markup commands wrongly.
-
-WARN_IF_DOC_ERROR      = YES
-
-# The WARN_FORMAT tag determines the format of the warning messages that 
-# doxygen can produce. The string should contain the $file, $line, and $text 
-# tags, which will be replaced by the file and line number from which the 
-# warning originated and the warning text.
-
-WARN_FORMAT            = "$file:$line: $text"
-
-# The WARN_LOGFILE tag can be used to specify a file to which warning 
-# and error messages should be written. If left blank the output is written 
-# to stderr.
-
-WARN_LOGFILE           = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the input files
-#---------------------------------------------------------------------------
-
-# The INPUT tag can be used to specify the files and/or directories that contain 
-# documented source files. You may enter file names like "myfile.cpp" or 
-# directories like "/usr/src/myproject". Separate the files or directories 
-# with spaces.
-
-INPUT                  = radiant/ plugins/ libs/ include/
-
-# If the value of the INPUT tag contains directories, you can use the 
-# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
-# and *.h) to filter out the source-files in the directories. If left 
-# blank the following patterns are tested: 
-# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp 
-# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc
-
-FILE_PATTERNS          = 
-
-# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
-# should be searched for input files as well. Possible values are YES and NO. 
-# If left blank NO is used.
-
-RECURSIVE              = YES
-
-# The EXCLUDE tag can be used to specify files and/or directories that should 
-# excluded from the INPUT source files. This way you can easily exclude a 
-# subdirectory from a directory tree whose root is specified with the INPUT tag.
-
-EXCLUDE                = 
-
-# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories 
-# that are symbolic links (a Unix filesystem feature) are excluded from the input.
-
-EXCLUDE_SYMLINKS       = NO
-
-# If the value of the INPUT tag contains directories, you can use the 
-# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
-# certain files from those directories.
-
-EXCLUDE_PATTERNS       = */.svn/*
-
-# The EXAMPLE_PATH tag can be used to specify one or more files or 
-# directories that contain example code fragments that are included (see 
-# the \include command).
-
-EXAMPLE_PATH           = radiant/ plugins/ libs/ include/
-
-# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
-# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
-# and *.h) to filter out the source-files in the directories. If left 
-# blank all files are included.
-
-EXAMPLE_PATTERNS       = 
-
-# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
-# searched for input files to be used with the \include or \dontinclude 
-# commands irrespective of the value of the RECURSIVE tag. 
-# Possible values are YES and NO. If left blank NO is used.
-
-EXAMPLE_RECURSIVE      = NO
-
-# The IMAGE_PATH tag can be used to specify one or more files or 
-# directories that contain image that are included in the documentation (see 
-# the \image command).
-
-IMAGE_PATH             = 
-
-# The INPUT_FILTER tag can be used to specify a program that doxygen should 
-# invoke to filter for each input file. Doxygen will invoke the filter program 
-# by executing (via popen()) the command <filter> <input-file>, where <filter> 
-# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
-# input file. Doxygen will then use the output that the filter program writes 
-# to standard output.
-
-INPUT_FILTER           = 
-
-# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
-# INPUT_FILTER) will be used to filter the input files when producing source 
-# files to browse (i.e. when SOURCE_BROWSER is set to YES).
-
-FILTER_SOURCE_FILES    = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to source browsing
-#---------------------------------------------------------------------------
-
-# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
-# be generated. Documented entities will be cross-referenced with these sources. 
-# Note: To get rid of all source code in the generated output, make sure also 
-# VERBATIM_HEADERS is set to NO.
-
-SOURCE_BROWSER         = NO
-
-# Setting the INLINE_SOURCES tag to YES will include the body 
-# of functions and classes directly in the documentation.
-
-INLINE_SOURCES         = NO
-
-# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
-# doxygen to hide any special comment blocks from generated source code 
-# fragments. Normal C and C++ comments will always remain visible.
-
-STRIP_CODE_COMMENTS    = YES
-
-# If the REFERENCED_BY_RELATION tag is set to YES (the default) 
-# then for each documented function all documented 
-# functions referencing it will be listed.
-
-REFERENCED_BY_RELATION = YES
-
-# If the REFERENCES_RELATION tag is set to YES (the default) 
-# then for each documented function all documented entities 
-# called/used by that function will be listed.
-
-REFERENCES_RELATION    = YES
-
-# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
-# will generate a verbatim copy of the header file for each class for 
-# which an include is specified. Set to NO to disable this.
-
-VERBATIM_HEADERS       = YES
-
-#---------------------------------------------------------------------------
-# configuration options related to the alphabetical class index
-#---------------------------------------------------------------------------
-
-# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
-# of all compounds will be generated. Enable this if the project 
-# contains a lot of classes, structs, unions or interfaces.
-
-ALPHABETICAL_INDEX     = NO
-
-# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
-# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
-# in which this list will be split (can be a number in the range [1..20])
-
-COLS_IN_ALPHA_INDEX    = 5
-
-# In case all classes in a project start with a common prefix, all 
-# classes will be put under the same header in the alphabetical index. 
-# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
-# should be ignored while generating the index headers.
-
-IGNORE_PREFIX          = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the HTML output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
-# generate HTML output.
-
-GENERATE_HTML          = YES
-
-# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `html' will be used as the default path.
-
-HTML_OUTPUT            = html
-
-# The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
-# each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
-# doxygen will generate files with .html extension.
-
-HTML_FILE_EXTENSION    = .html
-
-# The HTML_HEADER tag can be used to specify a personal HTML header for 
-# each generated HTML page. If it is left blank doxygen will generate a 
-# standard header.
-
-HTML_HEADER            = 
-
-# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
-# each generated HTML page. If it is left blank doxygen will generate a 
-# standard footer.
-
-HTML_FOOTER            = 
-
-# The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
-# style sheet that is used by each HTML page. It can be used to 
-# fine-tune the look of the HTML output. If the tag is left blank doxygen 
-# will generate a default style sheet. Note that doxygen will try to copy 
-# the style sheet file to the HTML output directory, so don't put your own 
-# stylesheet in the HTML output directory as well, or it will be erased!
-
-HTML_STYLESHEET        = 
-
-# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
-# files or namespaces will be aligned in HTML using tables. If set to 
-# NO a bullet list will be used.
-
-HTML_ALIGN_MEMBERS     = YES
-
-# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
-# will be generated that can be used as input for tools like the 
-# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
-# of the generated HTML documentation.
-
-GENERATE_HTMLHELP      = NO
-
-# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 
-# be used to specify the file name of the resulting .chm file. You 
-# can add a path in front of the file if the result should not be 
-# written to the html output directory.
-
-CHM_FILE               = 
-
-# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 
-# be used to specify the location (absolute path including file name) of 
-# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 
-# the HTML help compiler on the generated index.hhp.
-
-HHC_LOCATION           = 
-
-# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
-# controls if a separate .chi index file is generated (YES) or that 
-# it should be included in the master .chm file (NO).
-
-GENERATE_CHI           = NO
-
-# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
-# controls whether a binary table of contents is generated (YES) or a 
-# normal table of contents (NO) in the .chm file.
-
-BINARY_TOC             = NO
-
-# The TOC_EXPAND flag can be set to YES to add extra items for group members 
-# to the contents of the HTML help documentation and to the tree view.
-
-TOC_EXPAND             = NO
-
-# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
-# top of each HTML page. The value NO (the default) enables the index and 
-# the value YES disables it.
-
-DISABLE_INDEX          = NO
-
-# This tag can be used to set the number of enum values (range [1..20]) 
-# that doxygen will group on one line in the generated HTML documentation.
-
-ENUM_VALUES_PER_LINE   = 4
-
-# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
-# generated containing a tree-like index structure (just like the one that 
-# is generated for HTML Help). For this to work a browser that supports 
-# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 
-# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 
-# probably better off using the HTML help feature.
-
-GENERATE_TREEVIEW      = NO
-
-# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
-# used to set the initial width (in pixels) of the frame in which the tree 
-# is shown.
-
-TREEVIEW_WIDTH         = 250
-
-#---------------------------------------------------------------------------
-# configuration options related to the LaTeX output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
-# generate Latex output.
-
-GENERATE_LATEX         = YES
-
-# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `latex' will be used as the default path.
-
-LATEX_OUTPUT           = latex
-
-# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 
-# invoked. If left blank `latex' will be used as the default command name.
-
-LATEX_CMD_NAME         = latex
-
-# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
-# generate index for LaTeX. If left blank `makeindex' will be used as the 
-# default command name.
-
-MAKEINDEX_CMD_NAME     = makeindex
-
-# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
-# LaTeX documents. This may be useful for small projects and may help to 
-# save some trees in general.
-
-COMPACT_LATEX          = NO
-
-# The PAPER_TYPE tag can be used to set the paper type that is used 
-# by the printer. Possible values are: a4, a4wide, letter, legal and 
-# executive. If left blank a4wide will be used.
-
-PAPER_TYPE             = a4wide
-
-# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
-# packages that should be included in the LaTeX output.
-
-EXTRA_PACKAGES         = 
-
-# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
-# the generated latex document. The header should contain everything until 
-# the first chapter. If it is left blank doxygen will generate a 
-# standard header. Notice: only use this tag if you know what you are doing!
-
-LATEX_HEADER           = 
-
-# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
-# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
-# contain links (just like the HTML output) instead of page references 
-# This makes the output suitable for online browsing using a pdf viewer.
-
-PDF_HYPERLINKS         = NO
-
-# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
-# plain latex in the generated Makefile. Set this option to YES to get a 
-# higher quality PDF documentation.
-
-USE_PDFLATEX           = NO
-
-# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
-# command to the generated LaTeX files. This will instruct LaTeX to keep 
-# running if errors occur, instead of asking the user for help. 
-# This option is also used when generating formulas in HTML.
-
-LATEX_BATCHMODE        = NO
-
-# If LATEX_HIDE_INDICES is set to YES then doxygen will not 
-# include the index chapters (such as File Index, Compound Index, etc.) 
-# in the output.
-
-LATEX_HIDE_INDICES     = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the RTF output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
-# The RTF output is optimized for Word 97 and may not look very pretty with 
-# other RTF readers or editors.
-
-GENERATE_RTF           = NO
-
-# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `rtf' will be used as the default path.
-
-RTF_OUTPUT             = rtf
-
-# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
-# RTF documents. This may be useful for small projects and may help to 
-# save some trees in general.
-
-COMPACT_RTF            = NO
-
-# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
-# will contain hyperlink fields. The RTF file will 
-# contain links (just like the HTML output) instead of page references. 
-# This makes the output suitable for online browsing using WORD or other 
-# programs which support those fields. 
-# Note: wordpad (write) and others do not support links.
-
-RTF_HYPERLINKS         = NO
-
-# Load stylesheet definitions from file. Syntax is similar to doxygen's 
-# config file, i.e. a series of assignments. You only have to provide 
-# replacements, missing definitions are set to their default value.
-
-RTF_STYLESHEET_FILE    = 
-
-# Set optional variables used in the generation of an rtf document. 
-# Syntax is similar to doxygen's config file.
-
-RTF_EXTENSIONS_FILE    = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the man page output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
-# generate man pages
-
-GENERATE_MAN           = NO
-
-# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `man' will be used as the default path.
-
-MAN_OUTPUT             = man
-
-# The MAN_EXTENSION tag determines the extension that is added to 
-# the generated man pages (default is the subroutine's section .3)
-
-MAN_EXTENSION          = .3
-
-# If the MAN_LINKS tag is set to YES and Doxygen generates man output, 
-# then it will generate one additional man file for each entity 
-# documented in the real man page(s). These additional files 
-# only source the real man page, but without them the man command 
-# would be unable to find the correct page. The default is NO.
-
-MAN_LINKS              = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the XML output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_XML tag is set to YES Doxygen will 
-# generate an XML file that captures the structure of 
-# the code including all documentation.
-
-GENERATE_XML           = YES
-
-# The XML_OUTPUT tag is used to specify where the XML pages will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `xml' will be used as the default path.
-
-XML_OUTPUT             = doxygen-xml
-
-# The XML_SCHEMA tag can be used to specify an XML schema, 
-# which can be used by a validating XML parser to check the 
-# syntax of the XML files.
-
-XML_SCHEMA             = 
-
-# The XML_DTD tag can be used to specify an XML DTD, 
-# which can be used by a validating XML parser to check the 
-# syntax of the XML files.
-
-XML_DTD                = 
-
-# If the XML_PROGRAMLISTING tag is set to YES Doxygen will 
-# dump the program listings (including syntax highlighting 
-# and cross-referencing information) to the XML output. Note that 
-# enabling this will significantly increase the size of the XML output.
-
-XML_PROGRAMLISTING     = NO
-
-#---------------------------------------------------------------------------
-# configuration options for the AutoGen Definitions output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 
-# generate an AutoGen Definitions (see autogen.sf.net) file 
-# that captures the structure of the code including all 
-# documentation. Note that this feature is still experimental 
-# and incomplete at the moment.
-
-GENERATE_AUTOGEN_DEF   = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the Perl module output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_PERLMOD tag is set to YES Doxygen will 
-# generate a Perl module file that captures the structure of 
-# the code including all documentation. Note that this 
-# feature is still experimental and incomplete at the 
-# moment.
-
-GENERATE_PERLMOD       = NO
-
-# If the PERLMOD_LATEX tag is set to YES Doxygen will generate 
-# the necessary Makefile rules, Perl scripts and LaTeX code to be able 
-# to generate PDF and DVI output from the Perl module output.
-
-PERLMOD_LATEX          = NO
-
-# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 
-# nicely formatted so it can be parsed by a human reader.  This is useful 
-# if you want to understand what is going on.  On the other hand, if this 
-# tag is set to NO the size of the Perl module output will be much smaller 
-# and Perl will parse it just the same.
-
-PERLMOD_PRETTY         = YES
-
-# The names of the make variables in the generated doxyrules.make file 
-# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 
-# This is useful so different doxyrules.make files included by the same 
-# Makefile don't overwrite each other's variables.
-
-PERLMOD_MAKEVAR_PREFIX = 
-
-#---------------------------------------------------------------------------
-# Configuration options related to the preprocessor   
-#---------------------------------------------------------------------------
-
-# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
-# evaluate all C-preprocessor directives found in the sources and include 
-# files.
-
-ENABLE_PREPROCESSING   = YES
-
-# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
-# names in the source code. If set to NO (the default) only conditional 
-# compilation will be performed. Macro expansion can be done in a controlled 
-# way by setting EXPAND_ONLY_PREDEF to YES.
-
-MACRO_EXPANSION        = NO
-
-# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
-# then the macro expansion is limited to the macros specified with the 
-# PREDEFINED and EXPAND_AS_PREDEFINED tags.
-
-EXPAND_ONLY_PREDEF     = NO
-
-# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
-# in the INCLUDE_PATH (see below) will be search if a #include is found.
-
-SEARCH_INCLUDES        = YES
-
-# The INCLUDE_PATH tag can be used to specify one or more directories that 
-# contain include files that are not input files but should be processed by 
-# the preprocessor.
-
-INCLUDE_PATH           = 
-
-# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
-# patterns (like *.h and *.hpp) to filter out the header-files in the 
-# directories. If left blank, the patterns specified with FILE_PATTERNS will 
-# be used.
-
-INCLUDE_FILE_PATTERNS  = 
-
-# The PREDEFINED tag can be used to specify one or more macro names that 
-# are defined before the preprocessor is started (similar to the -D option of 
-# gcc). The argument of the tag is a list of macros of the form: name 
-# or name=definition (no spaces). If the definition and the = are 
-# omitted =1 is assumed.
-
-PREDEFINED             = 
-
-# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 
-# this tag can be used to specify a list of macro names that should be expanded. 
-# The macro definition that is found in the sources will be used. 
-# Use the PREDEFINED tag if you want to use a different macro definition.
-
-EXPAND_AS_DEFINED      = 
-
-# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
-# doxygen's preprocessor will remove all function-like macros that are alone 
-# on a line, have an all uppercase name, and do not end with a semicolon. Such 
-# function macros are typically used for boiler-plate code, and will confuse the 
-# parser if not removed.
-
-SKIP_FUNCTION_MACROS   = YES
-
-#---------------------------------------------------------------------------
-# Configuration::additions related to external references   
-#---------------------------------------------------------------------------
-
-# The TAGFILES option can be used to specify one or more tagfiles. 
-# Optionally an initial location of the external documentation 
-# can be added for each tagfile. The format of a tag file without 
-# this location is as follows: 
-#   TAGFILES = file1 file2 ... 
-# Adding location for the tag files is done as follows: 
-#   TAGFILES = file1=loc1 "file2 = loc2" ... 
-# where "loc1" and "loc2" can be relative or absolute paths or 
-# URLs. If a location is present for each tag, the installdox tool 
-# does not have to be run to correct the links.
-# Note that each tag file must have a unique name
-# (where the name does NOT include the path)
-# If a tag file is not located in the directory in which doxygen 
-# is run, you must also specify the path to the tagfile here.
-
-TAGFILES               = 
-
-# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
-# a tag file that is based on the input files it reads.
-
-GENERATE_TAGFILE       = 
-
-# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
-# in the class index. If set to NO only the inherited external classes 
-# will be listed.
-
-ALLEXTERNALS           = NO
-
-# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 
-# in the modules index. If set to NO, only the current project's groups will 
-# be listed.
-
-EXTERNAL_GROUPS        = YES
-
-# The PERL_PATH should be the absolute path and name of the perl script 
-# interpreter (i.e. the result of `which perl').
-
-PERL_PATH              = /usr/bin/perl
-
-#---------------------------------------------------------------------------
-# Configuration options related to the dot tool   
-#---------------------------------------------------------------------------
-
-# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
-# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or 
-# super classes. Setting the tag to NO turns the diagrams off. Note that this 
-# option is superseded by the HAVE_DOT option below. This is only a fallback. It is 
-# recommended to install and use dot, since it yields more powerful graphs.
-
-CLASS_DIAGRAMS         = YES
-
-# If set to YES, the inheritance and collaboration graphs will hide 
-# inheritance and usage relations if the target is undocumented 
-# or is not a class.
-
-HIDE_UNDOC_RELATIONS   = YES
-
-# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
-# available from the path. This tool is part of Graphviz, a graph visualization 
-# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
-# have no effect if this option is set to NO (the default)
-
-HAVE_DOT               = YES
-
-# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
-# will generate a graph for each documented class showing the direct and 
-# indirect inheritance relations. Setting this tag to YES will force the 
-# the CLASS_DIAGRAMS tag to NO.
-
-CLASS_GRAPH            = YES
-
-# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
-# will generate a graph for each documented class showing the direct and 
-# indirect implementation dependencies (inheritance, containment, and 
-# class references variables) of the class with other documented classes.
-
-COLLABORATION_GRAPH    = YES
-
-# If the UML_LOOK tag is set to YES doxygen will generate inheritance and 
-# collaboration diagrams in a style similar to the OMG's Unified Modeling 
-# Language.
-
-UML_LOOK               = NO
-
-# If set to YES, the inheritance and collaboration graphs will show the 
-# relations between templates and their instances.
-
-TEMPLATE_RELATIONS     = YES
-
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
-# tags are set to YES then doxygen will generate a graph for each documented 
-# file showing the direct and indirect include dependencies of the file with 
-# other documented files.
-
-INCLUDE_GRAPH          = YES
-
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
-# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
-# documented header file showing the documented files that directly or 
-# indirectly include this file.
-
-INCLUDED_BY_GRAPH      = YES
-
-# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
-# generate a call dependency graph for every global function or class method. 
-# Note that enabling this option will significantly increase the time of a run. 
-# So in most cases it will be better to enable call graphs for selected 
-# functions only using the \callgraph command.
-
-CALL_GRAPH             = NO
-
-# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
-# will graphical hierarchy of all classes instead of a textual one.
-
-GRAPHICAL_HIERARCHY    = YES
-
-# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 
-# generated by dot. Possible values are png, jpg, or gif
-# If left blank png will be used.
-
-DOT_IMAGE_FORMAT       = png
-
-# The tag DOT_PATH can be used to specify the path where the dot tool can be 
-# found. If left blank, it is assumed the dot tool can be found on the path.
-
-DOT_PATH               = 
-
-# The DOTFILE_DIRS tag can be used to specify one or more directories that 
-# contain dot files that are included in the documentation (see the 
-# \dotfile command).
-
-DOTFILE_DIRS           = 
-
-# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 
-# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
-# this value, doxygen will try to truncate the graph, so that it fits within 
-# the specified constraint. Beware that most browsers cannot cope with very 
-# large images.
-
-MAX_DOT_GRAPH_WIDTH    = 1024
-
-# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 
-# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
-# this value, doxygen will try to truncate the graph, so that it fits within 
-# the specified constraint. Beware that most browsers cannot cope with very 
-# large images.
-
-MAX_DOT_GRAPH_HEIGHT   = 1024
-
-# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
-# graphs generated by dot. A depth value of 3 means that only nodes reachable 
-# from the root by following a path via at most 3 edges will be shown. Nodes that 
-# lay further from the root node will be omitted. Note that setting this option to 
-# 1 or 2 may greatly reduce the computation time needed for large code bases. Also 
-# note that a graph may be further truncated if the graph's image dimensions are 
-# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). 
-# If 0 is used for the depth value (the default), the graph is not depth-constrained.
-
-MAX_DOT_GRAPH_DEPTH    = 0
-
-# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
-# generate a legend page explaining the meaning of the various boxes and 
-# arrows in the dot generated graphs.
-
-GENERATE_LEGEND        = YES
-
-# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
-# remove the intermediate dot files that are used to generate 
-# the various graphs.
-
-DOT_CLEANUP            = YES
-
-#---------------------------------------------------------------------------
-# Configuration::additions related to the search engine   
-#---------------------------------------------------------------------------
-
-# The SEARCHENGINE tag specifies whether or not a search engine should be 
-# used. If set to NO the values of all tags below this one will be ignored.
-
-SEARCHENGINE           = NO
diff --git a/branch-manager b/branch-manager
deleted file mode 100755 (executable)
index 2fd5a8f..0000000
+++ /dev/null
@@ -1,344 +0,0 @@
-#!/usr/bin/perl
-
-use strict;
-use warnings;
-
-sub OutputOf($@)
-{
-       my ($cmd, @args) = @_;
-       $cmd =~ s/#(\d)/"\$ARG$1"/g;
-       $ENV{"ARG$_"} = $args[$_-1]
-               for 1..@args;
-
-       open my $fh, '-|', $cmd
-               or die "popen $cmd: $!";
-
-       $ENV{"ARG$_"} = ''
-               for 1..@args;
-
-       undef local $/;
-       my $ret = <$fh>;
-       close $fh;
-
-       return $ret;
-}
-
-my %conf = 
-(
-       master => '',
-       revisions_applied => ''
-);
-my @revisions_applied = (); # array of [first, last] ranges
-
-sub LoadSettings()
-{
-       open my $fh, '<', ".patchsets"
-               or return;
-       while(<$fh>)
-       {
-               chomp;
-               /^([^=]*?)\s*=\s*(.*?)$/s
-                       or next;
-               die "Invalid config item: $1 (allowed: @{[sort keys %conf]})"
-                       if not exists $conf{$1};
-               $conf{$1} = $2;
-       }
-
-       @revisions_applied = map { /^(\d+)-(\d+)$/s or die "Invalid revision spec $_"; [$1, $2]; } split /,/, $conf{revisions_applied};
-}
-
-sub WriteSettings()
-{
-       $conf{revisions_applied} = join ',', map { "$_->[0]-$_->[1]" } @revisions_applied;
-
-       open my $fh, '>', ".patchsets"
-               or die "writing settings: $!";
-       for(sort keys %conf)
-       {
-               print $fh "$_ = $conf{$_}\n";
-       }
-}
-
-sub AddPatch($$)
-{
-       my ($first, $last) = @_;
-       die "Invalid range" if $first > $last;
-
-       my @rev = sort { $a->[0] <=> $b->[0] } (@revisions_applied, [$first, $last]);
-
-       my $i = 0;
-       while($i < @rev - 1)
-       {
-               my $a = $rev[$i][0];
-               my $b = $rev[$i][1];
-               my $c = $rev[$i+1][0];
-               my $d = $rev[$i+1][1];
-
-               if($b >= $c)
-               {
-                       die "overlapping patch: $a-$b overlaps $c-$d";
-               }
-               if($b == $c - 1)
-               {
-                       splice @rev, $i, 2, [$a, $d];
-                       next;
-               }
-               ++$i;
-       }
-
-       @revisions_applied = @rev;
-}
-
-sub RemovePatch($$)
-{
-       my ($first, $last) = @_;
-       die "Invalid range" if $first > $last;
-
-       my @rev = sort { $a->[0] <=> $b->[0] } (@revisions_applied);
-
-       my $i = 0;
-       while($i < @rev)
-       {
-               my $a = $rev[$i][0];
-               my $b = $rev[$i][1];
-
-               if($first >= $a && $last <= $b)
-               {
-                       # this is the range
-                       my @replacement;
-
-                       if($first == $a && $last == $b)
-                       {
-                               @replacement = ();
-                       }
-                       elsif($first == $a)
-                       {
-                               @replacement = ([$last + 1, $b]);
-                       }
-                       elsif($last == $b)
-                       {
-                               @replacement = ([$a, $first - 1]);
-                       }
-                       else
-                       {
-                               @replacement = ([$a, $first - 1], [$last + 1, $b]);
-                       }
-                       splice @rev, $i, 1, @replacement;
-                       @revisions_applied = @rev;
-                       return;
-               }
-       }
-
-       die "could not remove range: not in set";
-}
-
-sub GetUnappliedRanges($)
-{
-       my ($lastrev) = @_;
-       my @unapplied = ();
-
-       my $cur = 0;
-       for(@revisions_applied)
-       {
-               my ($a, $b) = @$_;
-               if($a - 1 >= $cur + 1)
-               {
-                       push @unapplied, [$cur + 1, $a - 1];
-               }
-               $cur = $b;
-       }
-       if($lastrev >= $cur + 1)
-       {
-               push @unapplied, [$cur + 1, $lastrev];
-       }
-       return @unapplied;
-}
-
-sub GetMasterRev()
-{
-       my $svninfo = OutputOf 'svn info #1', $conf{master};
-       $svninfo =~ /^Last Changed Rev: (\d+)$/m
-               or die "could not get svn info";
-       return $1;
-}
-
-sub GetLog($$)
-{
-       my ($first, $last) = @_;
-       my $log = OutputOf 'svn log -r#1:#2 #3', $first, $last, $conf{master};
-       $log =~ s/^-*$//gm;
-       $log =~ s/\n+/\n/gs;
-       $log =~ s/^\n//s;
-       $log =~ s/\n$//s;
-       return $log;
-}
-
-sub GetDiff($$)
-{
-       my ($first, $last) = @_;
-       return OutputOf 'svn diff -r#1:#2 #3', $first-1, $last, $conf{master};
-}
-
-my ($cmd, @args) = @ARGV;
-$cmd = 'help' if not defined $cmd;
-
-if($cmd eq 'info')
-{
-       LoadSettings();
-       for(@revisions_applied)
-       {
-               my ($a, $b) = @$_;
-               print "Applied: $a to $b\n";
-       }
-       for(GetUnappliedRanges(GetMasterRev()))
-       {
-               my ($a, $b) = @$_;
-               print "Unapplied: $a to $b\n";
-       }
-}
-elsif($cmd eq 'unmerged-diff')
-{
-       LoadSettings();
-       my @autoadd = ();
-       for(GetUnappliedRanges(GetMasterRev()))
-       {
-               my ($a, $b) = @$_;
-               my $log = GetLog $a, $b;
-               if($log eq '')
-               {
-                       push @autoadd, [$a, $b];
-                       next;
-               }
-               $log =~ s/^/  /gm;
-               print "Unapplied: $a to $b\n";
-               print "$log\n";
-               print GetDiff $a, $b;
-               print "\n";
-       }
-       for(@autoadd)
-       {
-               my ($a, $b) = @$_;
-               print "Autofilled revision hole $a to $b\n";
-               AddPatch $a, $b;
-       }
-       WriteSettings() if @autoadd;
-}
-elsif($cmd eq 'unmerged')
-{
-       LoadSettings();
-       my @autoadd = ();
-       for(GetUnappliedRanges(GetMasterRev()))
-       {
-               my ($a, $b) = @$_;
-               my $log = GetLog $a, $b;
-               if($log eq '')
-               {
-                       push @autoadd, [$a, $b];
-                       next;
-               }
-               $log =~ s/^/  /gm;
-               print "Unapplied: $a to $b\n";
-               print "$log\n\n";
-       }
-       for(@autoadd)
-       {
-               my ($a, $b) = @$_;
-               print "Autofilled revision hole $a to $b\n";
-               AddPatch $a, $b;
-       }
-       WriteSettings() if @autoadd;
-}
-elsif($cmd eq 'merge')
-{
-       my ($first, $last, $force) = @args;
-       die "Usage: $0 merge first last [--force]"
-               if not defined $first;
-       $last = $first if not defined $last;
-
-       die "Usage: $0 merge first last"
-               if "$first$last" =~ /[^0-9]/;
-
-       die "There is an uncommitted merge"
-               if -f '.commitmsg' and $force ne '--force';
-
-       LoadSettings();
-       AddPatch $first, $last;
-
-       print OutputOf 'svn merge -r#1:#2 #3', ($first - 1), $last, $conf{master};
-       print "You may also want to run $0 unmerged to fill possible revision holes\n";
-       print "Make sure there are no conflicts, then run $0 commit\n";
-       print "To abort, use $0 revert\n";
-       
-       open my $fh, '>>', '.commitmsg'
-               or die "open .commitmsg";
-       print $fh GetLog $first, $last;
-       print $fh "\n";
-       close $fh;
-
-       WriteSettings();
-}
-elsif($cmd eq 'undo')
-{
-       my ($first, $last, $force) = @args;
-       die "Usage: $0 undo first last"
-               if not defined $first;
-       $last = $first if not defined $last;
-
-       die "Usage: $0 merge first last"
-               if "$first$last" =~ /[^0-9]/;
-
-       die "There is an uncommitted merge"
-               if -f '.commitmsg' and $force ne '--force';
-
-       LoadSettings();
-       RemovePatch $first, $last;
-
-       print OutputOf 'svn merge -r#2:#1 #3', ($first - 1), $last, $conf{master};
-       print "Make sure there are no conflicts, then run $0 commit\n";
-       print "To abort, use $0 revert\n";
-
-       open my $fh, '>>', '.commitmsg'
-               or die "open .commitmsg";
-       print $fh "undo the following merge:\n", GetLog $first, $last;
-       close $fh;
-
-       WriteSettings();
-}
-elsif($cmd eq 'commit')
-{
-       system 'vim .commitmsg';
-       print "Hit Enter if OK to commit, Ctrl-C otherwise...\n";
-       my $ok = <STDIN>;
-       if(!system 'svn commit -F .commitmsg')
-       {
-               unlink '.commitmsg';
-       }
-}
-elsif($cmd eq 'revert')
-{
-       if(!system 'svn revert -R .')
-       {
-               unlink '.commitmsg';
-       }
-}
-elsif($cmd eq 'init')
-{
-       my ($master, $rev) = @args;
-       $conf{master} = $master;
-       @revisions_applied = [1, $rev];
-       WriteSettings();
-}
-else
-{
-       print <<EOF;
-Usage:
-  $0 init masterrepo rev
-  $0 info
-  $0 unmerged
-  $0 unmerged-diff
-  $0 merge rev1 [rev2] [--force]
-  $0 undo rev1 [rev2] [--force]
-  $0 commit
-  $0 revert
-EOF
-}
diff --git a/conftest.cpp b/conftest.cpp
deleted file mode 100644 (file)
index 10b7a62..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <stdio.h> /* jpeglib.h needs it */
-#include CONFTEST_HEADER
-int main(){
-       (void) CONFTEST_SYMBOL;
-       return 0;
-}
diff --git a/cross-Makefile.conf b/cross-Makefile.conf
deleted file mode 100644 (file)
index caba2e6..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-# Usage:
-# copy this file to Makefile.conf
-# edit the paths in here
-
-# how to call the mingw tools
-MINGW_EXEC_PREFIX = i486-mingw32-
-
-# use mingw32
-include mingw-Makefile.inc
-include mingw-radiantdeps-Makefile.inc
diff --git a/generic_cpp.py b/generic_cpp.py
deleted file mode 100644 (file)
index 62d51ed..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright (C) 2001-2006 William Joseph.
-# For a list of contributors, see the accompanying CONTRIBUTORS file.
-# 
-# This file is part of GtkRadiant.
-# 
-# GtkRadiant is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-# 
-# GtkRadiant is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with GtkRadiant; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-
-import os
-import sys
-
-def svnAddText(filename):
-  os.system("svn add " + filename);
-  os.system("svn ps svn:eol-style native " + filename);
-
-def createCPPTemplate(filename, name):
-  file = open(filename, "wt")
-  file.write("\n")
-  file.write("#include \"" + name + ".h\"\n")
-  file.write("\n")
-  file.close()
-
-if __name__ == "__main__":
-  name = sys.argv[1]
-  location = sys.argv[2]
-  filename = os.path.join(location, name + ".cpp")
-  createCPPTemplate(filename, name)
-  svnAddText(filename)
diff --git a/generic_h.py b/generic_h.py
deleted file mode 100644 (file)
index 9f8b7e9..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright (C) 2001-2006 William Joseph.
-# For a list of contributors, see the accompanying CONTRIBUTORS file.
-# 
-# This file is part of GtkRadiant.
-# 
-# GtkRadiant is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-# 
-# GtkRadiant is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with GtkRadiant; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-
-import os
-import sys
-
-def svnAddText(filename):
-  os.system("svn add " + filename);
-  os.system("svn ps svn:eol-style native " + filename);
-
-def createHeaderTemplate(filename, name):
-  file = open(filename, "wt")
-  file.write("\n")
-  file.write("#if !defined(_INCLUDED_" + name.upper() + "_H_)\n")
-  file.write("#define _INCLUDED_" + name.upper() + "_H_\n")
-  file.write("\n")
-  file.write("#endif\n")
-
-if __name__ == "__main__":
-  name = sys.argv[1]
-  location = sys.argv[2]
-  filename = os.path.join(location, name + ".h")
-  createHeaderTemplate(filename, name)
-  svnAddText(filename)
diff --git a/generic_module.py b/generic_module.py
deleted file mode 100644 (file)
index e055e8f..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright (C) 2001-2006 William Joseph.
-# For a list of contributors, see the accompanying CONTRIBUTORS file.
-# 
-# This file is part of GtkRadiant.
-# 
-# GtkRadiant is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-# 
-# GtkRadiant is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# 
-# You should have received a copy of the GNU General Public License
-# along with GtkRadiant; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-
-import os
-import sys
-
-def svnAddText(filename):
-  os.system("svn add " + filename);
-  os.system("svn ps svn:eol-style native " + filename);
-
-def createHeaderTemplate(filename, name):
-  file = open(filename, "wt")
-  file.write("\n")
-  file.write("#if !defined(INCLUDED_" + name.upper() + "_H)\n")
-  file.write("#define INCLUDED_" + name.upper() + "_H\n")
-  file.write("\n")
-  file.write("#endif\n")
-
-def createCPPTemplate(filename, name):
-  file = open(filename, "wt")
-  file.write("\n")
-  file.write("#include \"" + name + ".h\"\n")
-  file.write("\n")
-  file.close()
-
-if __name__ == "__main__":
-  if not len(sys.argv) == 2:
-    print "usage: " + sys.argv[0] + " <module-path>"
-    
-  path = sys.argv[1]
-  name = os.path.split(path)[1];
-  
-  h = os.path.normpath(path + ".h")
-  print "writing " + h;
-  createHeaderTemplate(h, name)
-  svnAddText(h)
-
-  cpp = os.path.normpath(path + ".cpp")
-  print "writing " + cpp;
-  createCPPTemplate(cpp, name)
-  svnAddText(cpp)
-  
diff --git a/install-dlls-fedora.sh b/install-dlls-fedora.sh
deleted file mode 100755 (executable)
index 5f88229..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/sh
-set -x
-
-DLL_PATH=/usr/i686-w64-mingw32/sys-root/mingw/bin
-
-cd install
-
-STARTDIR=`pwd`
-
-COPYDEPS() 
-{
-       FILE=$1
-       if [ -e "$FILE" ] ;then
-               DEPS=`objdump -p "$FILE" 2>/dev/null |grep -i "DLL Name"|sort |uniq|cut -d\  -f3 |egrep -vi '(GDI32.dll|KERNEL32.dll|USER32.dll|msvcrt.dll|MSIMG32.DLL|ole32.dll|OPENGL32.DLL|SHELL32.DLL|WS2_32.dll)' || true`
-                               
-               for DEP in $DEPS; do
-                       basename -a "$STARTDIR"/*.dll | grep -v "*.dll"|sort >  "$STARTDIR"/.HAVES
-                       if ! cat "$STARTDIR"/.HAVES | grep "$DEP" >/dev/null ;then
-                               cp -v "$DLL_PATH"/"$DEP" "$STARTDIR" 2>/dev/null
-                               COPYDEPS "$DLL_PATH"/"$DEP"
-                       fi
-                       rm -f "$STARTDIR"/.HAVES
-               done
-       fi
-}
-
-for i in *.exe;do
-       COPYDEPS "$i";
-done
-
diff --git a/install-dlls.sh b/install-dlls.sh
deleted file mode 100755 (executable)
index 60ca8db..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-#!/bin/sh
-
-set -ex
-
-: ${WHICHDLL:=which}
-: ${GTKDIR:=/gtk}
-: ${CP:=cp}
-: ${CAT:=cat}
-: ${MKDIR:=mkdir -p}
-: ${INSTALLDIR:=.}
-
-for DLL in \
-       freetype6.dll \
-       intl.dll \
-       libatk-1.0-0.dll \
-       libcairo-2.dll \
-       libexpat-1.dll \
-       libfontconfig-1.dll \
-       libgdkglext-win32-1.0-0.dll \
-       libgdk_pixbuf-2.0-0.dll \
-       libgdk-win32-2.0-0.dll \
-       libgio-2.0-0.dll \
-       libglib-2.0-0.dll \
-       libgmodule-2.0-0.dll \
-       libgobject-2.0-0.dll \
-       libgthread-2.0-0.dll \
-       libgtkglext-win32-1.0-0.dll \
-       libgtk-win32-2.0-0.dll \
-       libjpeg-8.dll \
-       libpango-1.0-0.dll \
-       libpangocairo-1.0-0.dll \
-       libpangoft2-1.0-0.dll \
-       libpangowin32-1.0-0.dll \
-       libpng14-14.dll \
-       libxml2-2.dll \
-       zlib1.dll \
-       libgcc_s_sjlj-1.dll \
-       libstdc++-6.dll \
-; do
-       $CP "`$WHICHDLL $DLL`" $INSTALLDIR/
-done
-
-$MKDIR $INSTALLDIR/etc/fonts
-$CAT > $INSTALLDIR/etc/fonts/fonts.conf <<EOF
-<?xml version="1.0"?>
-<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
-<!-- /etc/fonts/fonts.conf file to configure system font access -->
-<fontconfig>
-
-<!--
-       DO NOT EDIT THIS FILE.
-       IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
-       LOCAL CHANGES BELONG IN 'local.conf'.
-
-       The intent of this standard configuration file is to be adequate for
-       most environments.  If you have a reasonably normal environment and
-       have found problems with this configuration, they are probably
-       things that others will also want fixed.  Please submit any
-       problems to the fontconfig bugzilla system located at fontconfig.org
-
-       Note that the normal 'make install' procedure for fontconfig is to
-       replace any existing fonts.conf file with the new version.  Place
-       any local customizations in local.conf which this file references.
-
-       Keith Packard
--->
-
-<!-- Font directory list -->
-
-       <dir>WINDOWSFONTDIR</dir>
-       
-       <dir>~/.fonts</dir>
-
-<!--
-  Accept deprecated 'mono' alias, replacing it with 'monospace'
--->
-       <match target="pattern">
-               <test qual="any" name="family">
-                       <string>mono</string>
-               </test>
-               <edit name="family" mode="assign">
-                       <string>monospace</string>
-               </edit>
-       </match>
-
-<!--
-  Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
--->
-       <match target="pattern">
-               <test qual="any" name="family">
-                       <string>sans serif</string>
-               </test>
-               <edit name="family" mode="assign">
-                       <string>sans-serif</string>
-               </edit>
-       </match>
-
-<!--
-  Accept deprecated 'sans' alias, replacing it with 'sans-serif'
--->
-       <match target="pattern">
-               <test qual="any" name="family">
-                       <string>sans</string>
-               </test>
-               <edit name="family" mode="assign">
-                       <string>sans-serif</string>
-               </edit>
-       </match>
-
-<!--
-  Load local system customization file
--->
-       <include ignore_missing="yes">conf.d</include>
-
-<!-- Font cache directory list -->
-
-       <cachedir>WINDOWSTEMPDIR_FONTCONFIG_CACHE</cachedir>
-       <cachedir>~/.fontconfig</cachedir>
-
-       <config>
-<!--
-  These are the default Unicode chars that are expected to be blank
-  in fonts.  All other blank chars are assumed to be broken and
-  won't appear in the resulting charsets
- -->
-               <blank>
-                       <int>0x0020</int>       <!-- SPACE -->
-                       <int>0x00A0</int>       <!-- NO-BREAK SPACE -->
-                       <int>0x00AD</int>       <!-- SOFT HYPHEN -->
-                       <int>0x034F</int>       <!-- COMBINING GRAPHEME JOINER -->
-                       <int>0x0600</int>       <!-- ARABIC NUMBER SIGN -->
-                       <int>0x0601</int>       <!-- ARABIC SIGN SANAH -->
-                       <int>0x0602</int>       <!-- ARABIC FOOTNOTE MARKER -->
-                       <int>0x0603</int>       <!-- ARABIC SIGN SAFHA -->
-                       <int>0x06DD</int>       <!-- ARABIC END OF AYAH -->
-                       <int>0x070F</int>       <!-- SYRIAC ABBREVIATION MARK -->
-                       <int>0x115F</int>       <!-- HANGUL CHOSEONG FILLER -->
-                       <int>0x1160</int>       <!-- HANGUL JUNGSEONG FILLER -->
-                       <int>0x1680</int>       <!-- OGHAM SPACE MARK -->
-                       <int>0x17B4</int>       <!-- KHMER VOWEL INHERENT AQ -->
-                       <int>0x17B5</int>       <!-- KHMER VOWEL INHERENT AA -->
-                       <int>0x180E</int>       <!-- MONGOLIAN VOWEL SEPARATOR -->
-                       <int>0x2000</int>       <!-- EN QUAD -->
-                       <int>0x2001</int>       <!-- EM QUAD -->
-                       <int>0x2002</int>       <!-- EN SPACE -->
-                       <int>0x2003</int>       <!-- EM SPACE -->
-                       <int>0x2004</int>       <!-- THREE-PER-EM SPACE -->
-                       <int>0x2005</int>       <!-- FOUR-PER-EM SPACE -->
-                       <int>0x2006</int>       <!-- SIX-PER-EM SPACE -->
-                       <int>0x2007</int>       <!-- FIGURE SPACE -->
-                       <int>0x2008</int>       <!-- PUNCTUATION SPACE -->
-                       <int>0x2009</int>       <!-- THIN SPACE -->
-                       <int>0x200A</int>       <!-- HAIR SPACE -->
-                       <int>0x200B</int>       <!-- ZERO WIDTH SPACE -->
-                       <int>0x200C</int>       <!-- ZERO WIDTH NON-JOINER -->
-                       <int>0x200D</int>       <!-- ZERO WIDTH JOINER -->
-                       <int>0x200E</int>       <!-- LEFT-TO-RIGHT MARK -->
-                       <int>0x200F</int>       <!-- RIGHT-TO-LEFT MARK -->
-                       <int>0x2028</int>       <!-- LINE SEPARATOR -->
-                       <int>0x2029</int>       <!-- PARAGRAPH SEPARATOR -->
-                       <int>0x202A</int>       <!-- LEFT-TO-RIGHT EMBEDDING -->
-                       <int>0x202B</int>       <!-- RIGHT-TO-LEFT EMBEDDING -->
-                       <int>0x202C</int>       <!-- POP DIRECTIONAL FORMATTING -->
-                       <int>0x202D</int>       <!-- LEFT-TO-RIGHT OVERRIDE -->
-                       <int>0x202E</int>       <!-- RIGHT-TO-LEFT OVERRIDE -->
-                       <int>0x202F</int>       <!-- NARROW NO-BREAK SPACE -->
-                       <int>0x205F</int>       <!-- MEDIUM MATHEMATICAL SPACE -->
-                       <int>0x2060</int>       <!-- WORD JOINER -->
-                       <int>0x2061</int>       <!-- FUNCTION APPLICATION -->
-                       <int>0x2062</int>       <!-- INVISIBLE TIMES -->
-                       <int>0x2063</int>       <!-- INVISIBLE SEPARATOR -->
-                       <int>0x206A</int>       <!-- INHIBIT SYMMETRIC SWAPPING -->
-                       <int>0x206B</int>       <!-- ACTIVATE SYMMETRIC SWAPPING -->
-                       <int>0x206C</int>       <!-- INHIBIT ARABIC FORM SHAPING -->
-                       <int>0x206D</int>       <!-- ACTIVATE ARABIC FORM SHAPING -->
-                       <int>0x206E</int>       <!-- NATIONAL DIGIT SHAPES -->
-                       <int>0x206F</int>       <!-- NOMINAL DIGIT SHAPES -->
-                       <int>0x2800</int>       <!-- BRAILLE PATTERN BLANK -->
-                       <int>0x3000</int>       <!-- IDEOGRAPHIC SPACE -->
-                       <int>0x3164</int>       <!-- HANGUL FILLER -->
-                       <int>0xFEFF</int>       <!-- ZERO WIDTH NO-BREAK SPACE -->
-                       <int>0xFFA0</int>       <!-- HALFWIDTH HANGUL FILLER -->
-                       <int>0xFFF9</int>       <!-- INTERLINEAR ANNOTATION ANCHOR -->
-                       <int>0xFFFA</int>       <!-- INTERLINEAR ANNOTATION SEPARATOR -->
-                       <int>0xFFFB</int>       <!-- INTERLINEAR ANNOTATION TERMINATOR -->
-               </blank>
-<!--
-  Rescan configuration every 30 seconds when FcFontSetList is called
- -->
-               <rescan>
-                       <int>30</int>
-               </rescan>
-       </config>
-
-</fontconfig>
-EOF
diff --git a/install-dylibs.sh b/install-dylibs.sh
deleted file mode 100755 (executable)
index 6b9e530..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/sh
-
-set -ex
-
-: ${OTOOL:=otool}
-: ${CP:=cp}
-: ${INSTALLDIR:=.}
-: ${EXE:=ppc}
-: ${MACLIBDIR:=/sw/lib}
-: ${CAT:=cat}
-
-
-finkgetdeps()
-{
-       otool -L "$1" | grep "$MACLIBDIR" | while read -r LIB STUFF; do
-               [ -z "${LIB##*:}" ] && continue # first line
-               [ -f "$INSTALLDIR/${LIB##*/}" ] && continue
-               cp -vL "$LIB" "$INSTALLDIR"
-               finkgetdeps "$LIB"
-       done
-}
-
-
-finkgetdeps "$INSTALLDIR/radiant.$EXE"
-echo Warning: this only works if only ONE version of gtk-2.0 and pango is installed
-
-getlib()
-{
-       LAST=
-       for LIB in "$@"; do
-               [ -f "$LIB" ] || continue
-               LAST=$LIB
-       done
-       cp -L "$LAST" "$INSTALLDIR"
-       finkgetdeps "$LAST"
-}
-
-getlib "$MACLIBDIR"/gtk-2.0/*/loaders/libpixbufloader-bmp.so "$MACLIBDIR"/gdk-pixbuf-2.0/*/loaders/libpixbufloader-bmp.so
-getlib "$MACLIBDIR"/pango/*/modules/pango-basic-fc.so
-getlib "$MACLIBDIR"/pango/*/modules/pango-basic-x.so
-
-#cp -L "$MACLIBDIR"/../etc/fonts/fonts.conf "$INSTALLDIR"
-#cp -L "$MACLIBDIR"/../etc/fonts/fonts.dtd "$INSTALLDIR"
-#cp -L "$MACLIBDIR"/../etc/gtk-2.0/gdk-pixbuf.loaders "$INSTALLDIR"
-#cp -L "$MACLIBDIR"/../etc/pango/pangorc "$INSTALLDIR"
-
-$CAT > "$INSTALLDIR/../netradiant.sh" <<EOF
-#!/bin/sh
-
-MY_DIRECTORY="\${0%/*}" # cut off the script name
-MY_DIRECTORY="\${MY_DIRECTORY%/*}" # cut off MacOS
-MY_DIRECTORY="\${MY_DIRECTORY%/*}" # cut off Contents
-
-export DYLD_LIBRARY_PATH="\$MY_DIRECTORY/Contents/MacOS/install"
-export PANGO_RC_FILE="\$MY_DIRECTORY/Contents/MacOS/install/pangorc"
-export GDK_PIXBUF_MODULE_FILE="\$MY_DIRECTORY/Contents/MacOS/install/gdk-pixbuf.loaders"
-export FONTCONFIG_FILE="\$MY_DIRECTORY/Contents/MacOS/install/fonts.conf"
-
-cd "\$MY_DIRECTORY/Contents/MacOS/install"
-if [ -x /usr/bin/open-x11 ]; then
-       env LC_ALL="en_US.UTF-8" /usr/bin/open-x11 ./radiant.$EXE "$@" &
-else
-       env LC_ALL="en_US.UTF-8" ./radiant.$EXE "$@" &
-fi
-EOF
-
-chmod 755 "$INSTALLDIR/../netradiant.sh"
-
diff --git a/merge-from-zerowing.sh b/merge-from-zerowing.sh
deleted file mode 100755 (executable)
index e8dc07e..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/bin/sh
-
-basecommit=`git log --pretty=format:%H --grep=::zerowing-base`
-baserev=`git log --pretty=format:%s --grep=::zerowing-base | cut -d = -f 2 | cut -d ' ' -f 1`
-
-newbaserev=`svn info https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/ | grep ^Revision | cut -d ' ' -f 2`
-
-echo "$baserev -> $newbaserev"
-
-merge()
-{
-       if ! svn diff -r"$baserev":"$newbaserev" "$1" | git apply --reject --ignore-space-change --directory="$2"; then
-               if find . -name \*.rej | grep .; then
-                       echo "you have to fix these conflicts"
-                       bash
-                       echo "succeeded?"
-                       read -r LINE
-                       if [ x"$LINE" != x"y" ]; then
-                               exit 1
-                       fi
-               fi
-       fi
-}
-
-# GtkRadiant 1.5 changes
-git clean  -xdf
-
-# ZeroRadiant's q3map2 changes
-merge https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/branches/1.5 /
-merge https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/trunk/tools/quake3 tools/quake3
-merge https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/trunk/libs/picomodel libs/picomodel
-
-git commit -a -m"::zerowing-base=$newbaserev" -e
diff --git a/mingw-Makefile.conf b/mingw-Makefile.conf
deleted file mode 100644 (file)
index a128182..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-# Usage:
-# copy this file to Makefile.conf
-# edit the paths in here
-
-# how to get pkg-config
-PKGCONFIG ?= $(RADIANT_DEPENDENCIES_PREFIX)/gtk/bin/pkg-config.exe
-
-# extra utils
-GIT ?= $(RADIANT_DEPENDENCIES_PREFIX)/util/bin/git
-SVN ?= $(RADIANT_DEPENDENCIES_PREFIX)/util/bin/svn
-
-# these two need the "start" workaround, or they seem to crash (TODO figure out why)
-WGET ?= start $(RADIANT_DEPENDENCIES_PREFIX)/util/bin/wget
-UNZIPPER ?= start $(RADIANT_DEPENDENCIES_PREFIX)/util/bin/unzip
-
-# use mingw32
-include mingw-Makefile.inc
-include mingw-radiantdeps-Makefile.inc
diff --git a/mingw-Makefile.inc b/mingw-Makefile.inc
deleted file mode 100644 (file)
index d72cfe2..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# how to call the mingw tools
-MINGW_EXEC_PREFIX ?=
-
-# set the environment for make
-OS = Win32
-
-#CPPFLAGS_XML =
-#LIBS_XML = -lxml2
-
-CC = $(MINGW_EXEC_PREFIX)gcc
-CXX = $(MINGW_EXEC_PREFIX)g++
-LDD =
-RANLIB = $(MINGW_EXEC_PREFIX)ranlib
-AR = $(MINGW_EXEC_PREFIX)ar
-WINDRES = $(MINGW_EXEC_PREFIX)windres
diff --git a/mingw-fedora-Makefile.conf b/mingw-fedora-Makefile.conf
deleted file mode 100644 (file)
index d957d4d..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-# Usage:
-# copy this file to Makefile.conf
-# edit the paths in here
-
-# how to call the mingw tools
-MINGW_TARGET_ARCH=i686
-#MINGW_TARGET_ARCH=x86_64
-MINGW_EXEC_PREFIX = $(MINGW_TARGET_ARCH)-w64-mingw32-
-
-# use custom pkg-config
-PKGCONFIG = $(MINGW_EXEC_PREFIX)pkg-config
-
-# use custom dll install script
-DLLINSTALL = install-dlls-fedora.sh
-
-# use mingw32
-include mingw-Makefile.inc
diff --git a/mingw-radiantdeps-Makefile.inc b/mingw-radiantdeps-Makefile.inc
deleted file mode 100644 (file)
index 82e750e..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# where the dependencies package is extracted
-RADIANT_DEPENDENCIES_PREFIX = $(HOME)/netradiant-dependencies-mingw32/
-
-# run the prefix fixing tool
-IGNORETHIS := $(shell cd $(RADIANT_DEPENDENCIES_PREFIX) && ./fixprefix.sh)
-
-# set the environment for make
-CFLAGS +=
-CXXFLAGS +=
-CPPFLAGS += -I$(RADIANT_DEPENDENCIES_PREFIX)/radiantdeps/include
-LDFLAGS += -L$(RADIANT_DEPENDENCIES_PREFIX)/radiantdeps/lib
-CPPFLAGS += -I$(RADIANT_DEPENDENCIES_PREFIX)/gtk/include
-LDFLAGS += -L$(RADIANT_DEPENDENCIES_PREFIX)/gtk/lib
-PKG_CONFIG_PATH := $(RADIANT_DEPENDENCIES_PREFIX)/gtk/lib/pkgconfig:$(RADIANT_DEPENDENCIES_PREFIX)/radiantdeps/lib/pkgconfig:$(PKG_CONFIG_PATH)
-WHICHDLL = $(RADIANT_DEPENDENCIES_PREFIX)/whichdll.sh
diff --git a/oldstuff/.patchsets b/oldstuff/.patchsets
new file mode 100644 (file)
index 0000000..cebd1b5
--- /dev/null
@@ -0,0 +1,3 @@
+master = https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/branches/1.5
+revisions_applied = 1-327
+
diff --git a/oldstuff/COMPILING b/oldstuff/COMPILING
new file mode 100644 (file)
index 0000000..29a707c
--- /dev/null
@@ -0,0 +1,95 @@
+
+developer documentation for NetRadiant
+======================================
+
+(NOTE: outdated stuff has been ROT13ed)
+
+getting the source
+==================
+
+The latest source is available from the git repository.
+  git://git.icculus.org/divverent/netradiant.git
+
+The git client can be obtained from the Subversion site.
+  http://git-scm.org
+
+To get a copy of the source using the commandline git client:
+  Change the current directory to the desired location for the source.
+  git clone git://git.icculus.org/divverent/netradiant.git
+  cd netradiant
+
+
+
+Linux(using X-windows)
+======================
+
+environment:
+- gcc >= version 3.1 (preferably)
+- GNU make
+- svn >= 1.1 (some build steps use svn)
+
+dependencies:
+- gtk+ >= 2.4.0 (requires glib, atk, pango, iconv, etc)
+- gtkglext >= 1.0.0 (requires opengl)
+- libxml2 >= 2.0.0
+- zlib >= 1.2.0 (for archivezip module)
+- libpng >= 1.2.0 (for imagepng module)
+
+build:
+run 'make'
+
+run:
+Execute 'install/radiant.x86'
+
+OSX(using X-windows)
+====================
+
+environment:
+- OS X 10.5 or 10.6
+- Xcode developer tools installed (OSX DVD)
+- X11 (from the OS X DVD)
+- MacPorts or fink or homebrew installed
+- the following packages installed:
+  Macports:
+    gtkglext pkgconfig glib2-devel libxml2 gtk2 pango atk gettext wget
+  Fink:
+    gtkglext1 pkgconfig glib2-dev libxml2 gtk+2 gtk+2-dev pango1-xft2-ft219-dev atk1 gettext-dev wget
+  homebrew:
+    gtk+ gtkglext
+
+build:
+run 'make'
+
+homebrew build:
+run 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/opt/X11/lib/pkgconfig
+make'
+
+run:
+Switch into the install folder, and run NetRadiant.app
+
+Win32 (2000, XP, Vista or Windows 7)
+==================
+
+environment:
+- MinGW (http://www.mingw.org/wiki/Getting_Started)
+  Install this to c:\mingw, and select the components C compiler, C++ compiler
+  and MSYS Basic System
+- Start the MSYS shell once, then exit it
+- Prepackaged Radiant dependencies (Gtk and other stuff):
+  http://www.icculus.org/netradiant/files/netradiant-dependencies-mingw32-20101211-7z.exe
+  Extract this one to
+  c:\mingw\msys\1.0\home\username
+  (if you do this with 7zip, keep the "netradiant-dependencies-mingw32" folder
+  name of the contents)
+- now download the source from the MSYS shell, if you don't already have it:
+  ~/netradiant-dependencies-mingw32/util/bin/git clone git://git.icculus.org/divverent/netradiant.git
+
+build:
+- Start the MSYS shell
+- Switch to the directory with NetRadiant source
+- make MAKEFILE_CONF=mingw-Makefile.conf
+
+run:
+- in the "install" directory, double click netradiant.exe
+- if you get a DLL not found error, copy the DLL from either c:\mingw\bin or
+  from c:\mingw\msys\1.0\bin to the "install" directory
diff --git a/oldstuff/CONTRIBUTORS b/oldstuff/CONTRIBUTORS
new file mode 100644 (file)
index 0000000..cee478d
--- /dev/null
@@ -0,0 +1,93 @@
+GtkRadiant past contributors and credits
+last update: 01/15/2001
+
+GtkRadiant 1.5 development:
+-------
+Thomas "namespace" Nitschke spam@codecreator.net
+Stefan "Shaderman" Greven
+"Topsun"
+SmallPileofGibs spog@planetquake.com
+"Tr3b"
+
+Small contributions and improvements for 1.5
+--------
+Eric "eb" Barth
+
+Loki
+----
+Leonardo Zide leo@lokigames.com
+Mike Phillips (Loki QA)
+Bernd Kreimeier (overall coordination)
+
+QER.com
+-------
+TTimo timo@idsoftware.com
+^Fishman (Pablo Zurita) fish@gamedesign.net
+RR2DO2 rr2do2@q3f.com
+SmallPileofGibs spog@planetquake.com
+
+Curry plugin
+------------
+Mike "mickey" Jackman
+Tim "Maj" Rennie
+
+PrtView plugin, various bug fixes and q3map guru
+------------------------------------------------
+Geoffrey DeWan
+
+Gensurf plugin
+--------------
+David Hyde
+
+PicoModel
+---------
+seaw0lf with assist by ydnar
+
+Q3Map2
+------
+Randy 'ydnar' Reddig
+
+Updated shader files, textures, entities.def, keyboard shortcut list
+overall testing and feedback
+----------------------------
+Jean-Francois "Eutectic" Groleau
+
+Improvements and bug fixing
+---------------------------
+Jan Paul "MrElusive" van Waveren
+Robert Duffy
+Forest "LordHavoc" Wroncy-Hale
+Nurail
+AcidDeath
+Chronos
+Michael Schlueter
+Jamie Wilkinson
+Robert "Tr3B" Beckebans
+
+Web
+---
+Dave "Bargle" Koenig
+Jason "Wolfen" Spencer
+Shawn "EvilTypeGuy" Walker
+
+Thanks to John Hutton, AstroCreep and W2k for web help
+
+FAQ
+---
+Equim and Wex
+
+
+Testing/Feedback
+---
+Black_Dog, d0nkey, Fjoggis, Jago, jetscreamer, gibbie, Godmil, Gom Jabbar,
+Mindlink, mslaf, necros, Promit, Ravo, RPG, scampie, sock, sponge, thiste,
+voodoochopsticks, Zwiffle
+
+
+Misc
+----
+Thanks to everyone on the beta mailing list and
+irc.telefragged.com #qeradiant for testing and feedback.
+Updated icons by AstroCreep!
+Bitch-slapping by RaYGunn!
+Last minute bugs by SPoG! (SPoG--)
diff --git a/oldstuff/ChangeLog b/oldstuff/ChangeLog
new file mode 100644 (file)
index 0000000..40bd4d0
--- /dev/null
@@ -0,0 +1,279 @@
+2009-04-26 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: minimap generation for Nexuiz
+       * q3map2: better progress indicators
+
+2009-04-23 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: misc_model spawnflag 64 turns off normal smoothing
+       * q3map2: improved output of vis
+
+2009-04-21 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: more MAX_MAP_VISIBILITY
+
+2009-04-15 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: new toolbar bitmaps by sev
+
+2009-04-13 Rudolf Polzer divVerent(at)alientrap.org
+       * all: fix some MSVC compile errors
+
+2009-04-10 Rudolf Polzer divVerent(at)alientrap.org
+       * all: add WarsowPack
+       * q3map2: add alias _shadeangle to _smoothnormals
+       * q3map2: fix crash in reading RBSP files
+
+2009-04-09 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: fix font size handling
+
+2009-04-08 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: force disable composition on Vista (should fix "white 3D window" issues)
+
+2009-04-05 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: fix ViewSide command (no longer does the same as ViewTop)
+       * q3map2: generate origin brushes when decompiling
+       * q3map2: allow more portals per leaf, to help with -bsp -deep
+
+2009-04-04 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: -bsp -deep also including detail brushes into the BSP tree at lowest priority, should give higher fps while increasing compile time and BSP size
+       * q3map2: fix crash when decompiling to .map
+
+2009-04-03 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: -vis -mergeportals speeding up vis a lot, while not making vis much worse
+
+2009-04-02 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: portable radiant: when a subdir "settings" exists where radiant.exe resides, config is stored there so you can take it with you on a USB stick
+
+2009-04-01 Rudolf Polzer divVerent(at)alientrap.org
+       * all: compile fix on Win64
+
+2009-03-31 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: merged feature -bsp -altsplit (27), alternate way to weight BSP splits, should give higher fps in original Q3 engine (needs testing)
+       * q3map2: also compare shaders when comparing surfaces for sorting (27)
+       * q3map2: misc_model spawnflag 32 copies vertex alpha from color, for terrain blending on models (27)
+
+2009-03-29 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: _ls key shorthand for _lighmapscale (VorteX)
+       * q3map2: -samplescale switch (VorteX)
+       * q3map2: in dq and prophecy games, func_wall casts shadows by default (VorteX)
+       * q3map2: some more prints (VorteX)
+       * q3map2: q3map_floodlight <red> <green> <blue> <distance> <brightness> <power> shader keyword (VorteX)
+       * q3map2: more MAX_TW_VERTS (VorteX)
+       * q3map2: _patchMeta 1 entity keyword (VorteX)
+       * q3map2: q3map_deprecateShader <newershader> shader keyword (VorteX)
+       * q3map2: tangentspace deluxemaps (-deluxemode 1) (VorteX)
+       * q3map2: _smoothnormals entity key to easier set shadeangle (VorteX)
+       * q3map2: -keeplights switch in -light (VorteX)
+       * q3map2: spawnflag 32 on light: unnormalized color (VorteX)
+       * q3map2: spawnflag 64 on light: distance falloff (VorteX)
+       * q3map2: option -gridscale, -gridambientscale (VorteX)
+
+2009-03-27 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: fix a crash on "regroup entities"
+
+2009-03-25 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: editable keyboard shortcuts
+
+2009-03-23 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: avoid a crash if a surface is huge
+
+2009-03-20 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: command line option -celshader
+       * q3map2: let Q_mkdir create all parent directories too
+       * q3map2: fix some crashes
+
+2009-03-16 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: command line option -fs_homebase
+
+2009-03-13 Rudolf Polzer divVerent(at)alientrap.org
+       * all: support objs without material groups
+
+2009-03-11 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: detect being installed inside Q2World
+
+2009-03-08 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: indicate the direction of the clip plane in the 2D view
+
+2009-03-11 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: detect being installed inside Nexuiz
+
+2009-03-09 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: OS X compile fixes
+
+2009-03-04 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: -global-Key Value and -gamename.game-Key Value options to set
+         config settings from the command line
+
+2009-02-25 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: fix two bugs in tjunction fixing
+       * q3map2: -lightmapdir option
+       * q3map2: eliminate MAX_MAP_PLANES limit
+
+2009-02-23 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: -scale -tex ("no texture lock while scaling")
+
+2009-02-15 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: non-uniform -scale x y z
+
+2009-02-10 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: remove LOTS of limits
+
+2009-02-08 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: put the command line parameters into a worldspawn key
+         _q3map2_cmdline; currently not yet supported for -onlyents
+
+2009-02-07 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: use gtk default font instead of defined ones for linux/windows
+         which could happen to be not installed (merged from uforadiant)
+
+2009-02-06 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: OS X icon by airscout
+
+2009-01-15 Rudolf Polzer divVerent(at)alientrap.org
+       * all: more fixes for OS X
+
+2009-01-14 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: use %f format for angles, prevents weird looking angles
+
+2009-01-09 Rudolf Polzer divVerent(at)alientrap.org
+       * all: lots of fixes for compiling on OS X
+
+2009-01-07 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: handle ALL key binds properly using GDK methods
+
+2009-01-03 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: fix the translation of entities used by mirroring or scaling
+
+2009-01-02 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: command "regroup entities", allows moving brushes in/out of
+         entities
+
+2009-01-01 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: "clone selection" no longer changes targetnames by default.
+         Hold shift while pressing space to do change them as before.
+       * all: handle "origin" keys for brush entities (more consistency, should
+         break no maps)
+
+2008-12-10 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: properly handle the [ and ] keys on german layout
+       * q3map2: fix dotProduct2scale to match the documentation
+
+2008-11-28 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: -dirty: don't treat skybox surfaces as solid for dirtmapping;
+         prevents Quake 2-ish "dark near skybox" effect.
+
+2008-11-21 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: applied win32 font and build fix by ingar
+
+2008-11-20 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: extend some more limits but just by a bit this time to not
+         let memory usage rise too high
+       * radiant: fix finding the .mtl file for .obj models
+
+2008-11-18 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: get rid of the MAX_MAP_DRAW_VERTS limit (the array already was
+         dynamic anyway); allows creating BSPs of over 400 MB in size ;)
+
+2008-11-10 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: draw targeting arrows also for target2, etc. keys even in Q3
+         map mode; this is good for Nexuiz which now supports target, target2,
+         target3 and target4.
+
+2008-11-07 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: fix buffer overruns because of using the realpath function
+         with an insufficient buffer; there might be more of these in the code
+         base
+
+2008-10-27 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: -convert -format ase -shadersasbitmap convert mode that writes
+         the shader names in the *BITMAP field in the .ase. That way, the .ase
+         files work without changing as mapobjects.
+
+2008-10-12 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: fix the deluxemap contribution from ambient lighting. minLight
+         is still broken with deluxemapping. If you must use minLight, combine it
+         with 1/2 or 1/4 of its amount in ambient.
+
+2008-09-30 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: fix deluxemap when lit from the wrong side as good as possible
+         by ignoring the deluxemap contribution. Now the invariant "deluxemap
+         vector points away from the surface" should hold. Avoids sudden black
+         spots when deluxemapping.
+
+2008-09-26 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: turn the Urban Terror vis nudge and triangle check into options
+         -extravisnudge and -trianglecheck, as they break some Nexuiz maps.
+         Evaluate the usefulness of these options later.
+       * q3map2: make sure the intermediate .bsp when bouncing always is loadable
+         into the game (by unparsing the entities, so if gridsize got modified,
+         that change gets written too)
+
+2008-09-23 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: print a warning if the specified samplesize cannot be used with
+         the current lightmap size
+
+2008-09-22 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: add dotProduct2scale alphamod
+       * q3map2: add -minsamplesize command line option to override lightmapscale
+         specified in map files
+
+2008-09-19 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: add a "Strafe Mode" option
+       * radiant: ctrl-tab now focuses all XYZ views in the three-part view (as
+         that is what the user is likely to want there)
+       * radiant: make rotate/scale dialogs non-modal
+
+2008-09-18 Rudolf Polzer divVerent(at)alientrap.org
+       * radiant: handle missing anisotropy extension; fixes display bug on
+         Windows XP software renderer
+       * radiant: make logging kick in earlier
+       * radiant: add svn release to the version number
+
+2008-09-15 Rudolf Polzer divVerent(at)alientrap.org
+       * all: added a Makefile to build GtkRadiant; this replaces scons and
+         python install.py
+       * all: got rid of libmhash dependency, using mdfour.c from DarkPlaces
+         instead
+       * q2data: remove RSA security copyrighted md4.c, using mdfour.c from DP
+         instead as a drop-in replacement
+       * all: get rid of version.h and aboutmsg.h, instead set the version in the
+         Makefile
+       * all: support cross compiling using mingw32
+
+2008-09-13 Rudolf Polzer divVerent(at)alientrap.org
+       * q3map2: update to ZeroRadiant's q3map2
+       * q3map2: added lightmap exposure feature: -exposure 4.2 (Urban Terror)
+       * q3map2: check whether a lightmap sample is actually in the triangle
+         (Urban Terror)
+       * q3map2: nudge light sample origin by 1qu away from planes (Urban Terror)
+       * q3map2: floodlight: usage is "_floodlight" "red green blue distance
+         intensity", default "240 240 255 1024 128"; works somewhat similar to
+         dirtmapping (Urban Terror); uses a switch -lowquality
+       * q3map2: added -debugnormals feature (Urban Terror)
+       * q3map2: fix -convert -format map decompiling (note: outputs map in
+         "Alternate Texture Projection" format); no longer messes up texcoords
+       * q3map2: added -game nexuiz to use good default paths for Nexuiz
+       * q3map2: added -game quakelive to enable in-game adverts
+       * q3map2: fix incorrect plane snapping often causing holes in terrain
+       * q3map2: spawnflags on misc_model: 8 extrudes with original normals, 16
+         extrudes with up/down normals (terrain), default: extrudes with axial
+         normals (like before)
+       * q3map2: fix obvious (and reported, and patch sent in) bug when importing
+         models when the normals were pointing in a 45 degrees direction
+       * q3map2: when importing models, allow "surfaceparms structural". This
+         also turns off any plane snapping, as it is intended for caulk brushes
+         inside a model
+       * q3map2: added parameters -ne to set normal epsilon, and -de to set
+         distance epsilon (to customize plane snapping)
+       * q3map2: fix q3map_lightRGB (Urban Terror)
+       * q3map2: add a build script to cross compile q3map2 to Win32
+       * radiant: when displaying normals on a model, scale them to 8 unit size
+         on the output (so "modelscale" can be used without LOTS of lines on the
+         screen)
+       * radiant: also support "killtarget" as target key for drawing the
+         targeting lines
+       * radiant: "expand selection to whole entities" now also selects the
+         entity ITSELF; result: Ctrl-Alt-E Space makes a NEW entity now, instead of
+         just duplicating the brush (old behaviour caused bugs in maps with copied
+         func_ladders)
+       * picomodel: support .obj format as exported by Blender, with a .mtl file
+         defining the shader names for each material; to export using Blender,
+         enable "Materials" and "Material Groups" in the .obj export dialog
+       * all: bump version to 1.5.0-div0
diff --git a/oldstuff/ChangeLog.idsoftware b/oldstuff/ChangeLog.idsoftware
new file mode 100644 (file)
index 0000000..47deae2
--- /dev/null
@@ -0,0 +1,8216 @@
+This is the changelog for developers, != changelog for the end user 
+that we distribute with the binaries. (see changelog)
+
+28/06/2007 (dunkfordyce@gmail.com)
+- fixed mnemonics for MRU list
+- fixed find functionality
+- added option to always use caulk texture for new brushes
+- fixed(?) a small bug in install.py that was trying to copy msvc files on linux
+
+28/06/2007
+- Added material-support to brushexport-plugin (Shaderman)
+
+26/04/2007
+- Disabled auto-search for texbrowser and entityinspector even when the option
+  is turned on in the gtkrc
+
+26/04/2007
+- Fixed q3map2 lightbounce bug (by Unknown)
+
+26/04/2007
+- Fixed another texcompression bug
+
+25/04/2007
+- Fixed texcompression beeing disabled after each restart
+- Fixed gtk-searchpopup in treeviews
+
+15/04/2007
+namespace
+- Fixed brushexport2 output float-format (Shaderman)
+
+27/03/2007
+namespace
+- Fix: Added missing xml-writer pop-calls
+- Ported mapxml plugin to Doom3
+- mapxml now exports brushes with its vertices
+
+19/03/2007
+namespace
+- Fix: Selection is now deleted when creating a patch out of it (aumüller / namespace)
+
+08/03/2007
+namespace
+- Win32 compile fix (woekele)
+
+07/03/2007
+namespace
+- Updated UFA:Plugin (mattn2)
+
+04/03/2007
+namespace
+- Reverted Q3 translucency fix since it randomly made brushes
+  fully transparent in Doom3 mode.
+
+04/03/2007
+namespace
+- Final update for installerfiles (Shaderman / namespace)
+- Removed installer.py validation checks since they are incompatible with Vista
+- Updated msiquery module to python 2.5
+- Added msiquery module for python 2.5
+
+03/03/2007
+namespace
+(THIS IS A TRANSITIONAL REVISION, DO NOT USE, WAIT FOR UPDATED DEPS)
+- Fixed weird msvcrt bugs caused by dbghelp.dll
+- Activated new radiant icon on Linux (Topsun)
+- First update for installerfiles (Shaderman)
+- New MODT for q3map2 :)
+- tiny changes
+
+28/02/2007
+namespace
+- Radiant is now Vista compatible (Aero must be disabled)
+- Updated all radiant dependencies (gtk is now 2-2.10)
+  New dependency packages can be found here
+http://zerowing.idsoftware.com/files/radiant/developer/1.5/gtkradiant-1.5-dependencies-1.0.zip
+  or here
+http://www.codecreator.net/radiant/gtkradiant-1.5-dependencies-1.0.zip
+- Removed Win32 filechooser
+   - Fixes crashes caused by utf-8 encoded filenames
+   - Fixes Vista "SaveAs"-Bug
+- Converted all projects to Visual Studio 2005
+- Codefixes for vc2k5 compiler
+- Removed old unused projectfiles for Visual Studio 6
+- Simplified dependency filestructure
+- Simplified install.py
+- Updated CONTRIBUTORS list
+
+26/01/2007
+namespace
+- SnapPlane reenabled by namespace because of multiple reports of
+  q3map2-crashes which were triggered by this patch.
+
+24/01/2007
+namespace
+- Added Undo/Redo-Toolbarbuttons (Shaderman)
+- Fixed Bug #1078 (sogined)
+
+18/01/2007
+namespace
+- Weird shiftvalues are now hidden to the user, shiftvalues will
+  stay in ]-shader_size;shader_size[ range for display.
+  For the sake of floatingpoint precision, it would be nice
+  to keep the internal values in that range too, but thats "nice to have".
+- Fixed missing librarypaths in ufoai-plugin
+  
+18/01/2007
+LordHavoc
+- disabled SnapPlane because it slightly corrupts collision brushes from
+  embedded model triangles
+
+17/01/2007
+namespace
+- Fixed "jumping" texcoords when switching to a shader with different size
+- (Todo) Toolbar: add button for refresh-models. (Shaderman)
+- Aniso fix (Shaderman)
+- Translucency fix (Shaderman)
+
+05/01/2007
+namespace
+- UFO:Alien Invasion Plugin (mattn2)
+- Fix: Filtering models in ET doesn't filter misc_gamemodels (Shaderman)
+
+25/12/2006
+namespace
+ - Brushplugin Version 2.0, supports multiple collapse modes and a materialignore list (namespace)
+ - Camera movement speed changes. Increase speed = SHIFT+KP_PLUS, decrease speed = SHIFT+KP_MINUS.
+   New option to link the strafe speed to camera movement speed (default: linked). (Shaderman)
+ - Fixed bug in sample plugin (Shaderman)
+ - Merry Christmas
+
+17/12/2006
+namespace
+ - Radiant warzow-support (Topsun + Warzow-Mappers)
+
+15/12/2006
+namespace
+ - Inverted bevel can be used with end caps (Topsun)
+ - Removed needless .pdb files from win32 installer (Topsun)
+ - Fixed .ase picomodel loader to load shaders again (Shaderman)
+ - Removed translucent brushes fix because of wrong rendering behaviour on Linux
+ - New cool(!) radiant icon by eb
+
+13/12/2006
+namespace
+- Added tremoulus-support to q3map2
+
+08/12/2006
+namespace
+- Entity names are now drawn for group entities in Doom3 and Quake 3 mode (namespace)
+- Fixed translucent brushes becoming invisible when selected (Shaderman)
+
+06/11/2006
+namespace
+- (TODO) Texture sizes sometimes vary wildly. New texture browser option: View -> Fixed Size.
+  Code parts taken from DarkRadiant. (Shaderman)
+- Added new texture browser option: View -> Hide Image Missing. (Shaderman)
+- Fixed new D3 lights don't have a light_radius key. (Shaderman)
+- Fixed hotkey collision (paste to camera/view menu). New View shortcut = ALT+W. (Shaderman)
+- Fixed .wad MMB 3d view texture selection bug. (Shaderman)
+
+04/11/2006
+namespace
+- Added warzow-support to q3map2
+
+12/10/2006
+namespace
+- Updated help menu web links (removed map-center.com, added ETB documentation) (Shaderman)
+- Added check for existing worldspawn if a new one should be added with the entity menu (Shaderman)
+- Fixed Entity -> Ungroup (Topsun)
+- Fixed hotkey collision ALT+M (filter botclip/Modify menu). New Modify shortcut = ALT+O (Shaderman)
+- Updated Window Layout images (Shaderman)
+- Fixed (TODO) XYWindow: save show-workzone option (Shaderman)
+- Fixed (TODO) Toolbar: add shortcut to tooltips for toolbar buttons (Shaderman)
+- Fixed (TODO) GUI: detachable submenus (Shaderman)
+
+09/10/2006
+namespace
+- Added option to toggle the camera window stats on/off (Shaderman)
+  (view --> show --> show stats)
+
+
+08/10/2006
+namespace
+- Fix for bug 1106 - .wad files don't get listed in the textures menu (Shaderman)
+  (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1106)
+- Added initial support for Prey (Shaderman)
+- Fixed entity inspector sliders to always show (Shaderman)
+- Added NOTES subsection to the entity inspector listing .def "editor_usage*" values (Shaderman)
+
+07/10/2006
+namespace
+- Added "select inside" and "select touching"
+  Both functions now work with multiple selectionbrushes, allowing complex
+  selection operations.
+- Added entries for the selectionfunctions in "Edit" and the main toolbar.
+
+06/10/2006
+namespace
+- Changed ETB not to show any texture if a tag search doesn't match anything (Shaderman)
+- Added View -> Filter -> "Invert filters/Reset filters" function (Shaderman)
+- Fixed (TODO) Textures: remove "shaders only" option for doom3 (Shaderman)
+- Fixed show shaders / shader only / shader info for doom3 and .wad file games (Shaderman)
+
+03/10/2006
+namespace
+- Fix for Bug 1113 (Topsun)
+  (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1113)
+
+03/10/2006
+namespace
+- Changed ETB tag toolbar to a notebook with tag/texture pages (Shaderman)
+- Added a context menu (add/delete/rename tag) to the ETB tag tree view (Shaderman)
+- Added new win32 installer HOWTO (Shaderman/Topsun)
+
+01/10/2006
+namespace
+- Added missing xml files for win32 installer
+
+30/09/2006
+namespace
+- Fixed Etb saving custom tags to global tagfile (Shaderman/namespace)
+- Fixed postbuild step for brushexport, shaderplug and sunplug (Shaderman)
+- Added installersupport for new files and plugins (Shaderman)
+
+30/09/2006
+namespace
+- Added LocalLcPath to plugin interface
+- Added enhanced Texturebrowser (ETB) by Shaderman
+- Added shaderplug by Shaderman, accompanies the ETB
+- Added xmltagging lib by Shaderman, accompanies the ETB
+- Added new icons for ETB, Console, Entityinspector and Lighteditor
+- Fixed minor warning in Sunplug Project
+- Fixed PATH_MAX namecollision in ptrview plugin on Linux
+- Final fix for 64 bit patch.h issue
+
+
+
+12/09/2006
+namespace
+- Fixed 64 Bit issue in patch.h, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1109
+  for details
+
+11/09/2006
+namespace
+- Fixed unnecessary warnings, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1108
+  for details
+
+11/09/2006
+namespace
+- Added sunplug (Mapcoordinator-plugin for ET) by Topsun
+  ET only: setting mapcoordsmins and mapcoordsmaxs in the worldspawn
+  Tester: Shaderman
+- Added brushexport Plugin by namespace
+  Exports selected brushes as wavefront object.
+  Tester: Shaderman
+
+11/09/2006
+namespace
+- Fixed compile error on x86_64, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1105
+  for details.
+
+09/09/2996
+namespace
+- Added strafing for the camerawindow while holding ctrl
+- Additional forward movement can be enabled by pressing shift during strafe
+
+22/08/2006
+SPoG
+- Added VFS support for locating the archive a file was loaded from.
+- Changed Doom3 entity definition parser to gracefully handle parse errors.
+- Fixed crash when loading entity definitions in quake4 1.3 point release.
+
+13/08/2006
+SPoG
+- Disabled 'detail' content flag checkbox in quake2 Surface Inspector.
+
+22/07/2006
+SPoG
+- Fixed doom3 func_static with model not appearing to move when dragged. 
+- Changed ASE model loader to parse material names the same way as DoomEdit.
+- Fixed title of wait-dialog when loading a model.
+- Fixed doom3 func_static with blank 'model' key being invisible.
+- Changed doom3 func_static model creation to replace selected models.
+- Added support for loading both .ent and .def files at the same time.
+
+09/07/2006
+Shaderman
+- Updated win32 libxml2 package to 2.6.24.
+namespace
+- Ported win32 stack-backtrace to use new DebugHelp API.
+- Added stack-backtrace functionality for Linux/OSX.
+
+11/06/2006
+SPoG
+- Fixed arbitrary rotation X and Y axes appearing to be transposed.
+
+04/06/2006
+SPoG
+- Fixed crash when deleting items from Build menu.
+
+03/06/2006
+SPoG
+- Changed doom3 entity creation to add model key for brush-entities.
+- Fixed crash in Save Region.
+- Fixed detail brushes being turned structural when texture is set.
+
+29/05/2006
+SPoG
+- Changed default doom3 light_radius to be taken from the entity-definition.
+- Fixed error when entering and exiting camera freemove with LMB pressed.
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1090
+
+13/05/2006
+LordHavoc
+- Added -fPIC for Linux builds to support x86_64.
+- Removed static-linked libstdc++ hack for non-final builds.
+- Removed gcc explicit linking hack for non-final builds.
+- Added workaround for gcc static-member-pointer-as-template-argument bug.
+- Fixed bobtoolz linux compile errors.
+- Added Nexuiz and Darkplaces support.
+SPoG
+- Changed 'inconsistent vertex count' assert to be non-fatal.
+- Changed 'failed to remove accelerator' assert to be non-fatal.
+- Fixed crash due to broken module dependencies.
+- Fixed default settings for Build Monitoring.
+- Fixed nudge-selection when using the drag tool mode.
+- Added support for patches in texture-painting tool.
+
+30/04/2006
+SPoG
+- Fixed memory leak in signals library.
+- Ported bobtoolz to use new module APIs.
+
+01/04/2006
+SPoG
+- Added key-observer interface to entity module API.
+- Rewrote callback library to add support for return-values.
+- Added minimal API to support bobtoolz plugin.
+- Refactored brush for-each functions to take Functor instead of Visitor.
+- Added signals library.
+
+31/03/2006
+SPoG
+- Changed doom3 light creation to use size of selected brushes.
+
+20/03/2006
+SPoG
+- Fixed crash when resetting preferences after startup failure.
+- Fixed crash on next-leak-spot with build-monitoring enabled.
+- Fixed doom3/quake4 blended-decal rendering when toggling lighting mode.
+- Fixed fit-texture with rotated texture transforms.
+
+20/03/2006
+SPoG
+- Changed Copy/Paste to work on face textures if any faces are selected.
+- Fixed GTK_WIDGET_REALIZED assert when selecting entities (linux).
+
+28/02/2006
+namespace, SPoG
+- Added drag-resizing for doom3/quake4 light_radius boxes.
+
+25/02/2006
+SPoG
+- Fixed objects sometimes dissappearing when at high zoom level in Ortho views.
+
+24/02/2006
+SPoG
+- Added GPL text to win32 installer.
+- Fixed gtk wimp theme not working after using gtkthemeselector.
+
+21/02/2006
+namespace
+- Added command to toggle lighting/textured modes, shortcut F3.
+
+20/02/2006
+SPoG
+- Fixed crash when disabling lighting for a second time.
+
+19/02/2006
+SPoG
+- Fixed crash when loading invalid ASE models.
+
+11/02/2006
+SPoG
+- Added install.py script.
+- Updated COMPILING instructions.
+- Fixed transparency rendering on quake3 shaders.
+- Fixed hint/caulk filtering for Jedi Academy shaders.
+
+04/02/2006
+SPoG
+- Added Radiant Manual shortcut to win32 installation.
+- Added 'use alternative texture projection' option to prefs.
+- Fixed caching bug causing import-map to not reload modified maps.
+- Added blended-decal rendering for doom3 and quake4.
+
+30/01/2006
+SPoG
+- Added expand-selection-to-entities with default shortcut ctrl+alt+e.
+- Fixed crash in gtk file-chooser with some versions of GTK+.
+
+29/01/2006
+SPoG
+- Changed create-group-entity to re-select brushes after creation.
+
+26/01/2006
+SPoG
+- Changed far-clip-plane setting to increase exponentially with distance.
+- Fixed selected entities moving when drag-resizing brushes.
+- Changed patches to be selectable from the back in wireframe views.
+- Speed improvements for transform-selection code.
+
+25/01/2006
+SPoG
+- Added default-texture-scale option to preferences.
+- Added default-grid-spacing option to preferences.
+
+23/01/2006
+Shamus
+- Fixed editing of doom3/quake4 faces with negative texture scale factors.
+
+22/01/2006
+SPoG
+- Fixed shortcut for toggle-far-clip.
+- Fixed broken link in 1.5 user docs.
+
+10/01/2006
+SPoG
+- Changed script parser to ignore comments that start in the middle of tokens.
+- Added support for editor_int/editor_string keys in doom3 entity definitions.
+- Changed doom3/quake4 .mtr and .guide searching to look in subfolders.
+- Added experimental support for doom3/quake4 projected lights.
+
+20/12/2005
+SPoG
+- Added support for quake4 .guide material templates.
+- Fixed GCC4 compile errors with anonymous enums.
+- Added light_radius and light_center GUI to doom3 entity inspector.
+
+10/12/2005
+SPoG
+- Added support for loading and saving Quake4 map format.
+- Added support for built-in shader images such as _noFalloff.
+- Added experimental code to render projected lights.
+- Added support for loading quake4 entity definitions.
+- Fixed picomodel bug loading .lwo files with texture names >64 in length.
+
+22/10/2005
+SPoG
+- Fixed minor memory leak in zip-archive reader.
+
+21/10/2005
+SPoG
+- Fixed model rotation using free-rotation tool.
+- Fixed behaviour of angle/rotation keys for Doom3 entities.
+- Added entity angle-editing for entities that display a model.
+- Stopped size-info being drawn if selection has zero size.
+- Added support for 'angle' key on doom3 entities.
+
+20/10/2005
+SPoG
+- Fixed minor one-time memory leak in build-shader-list.
+- Added functional free-scale tool.
+- Improved precision preservation for free-rotation and free-scale tools.
+- Fixed misc_model rotation using free-rotation tool.
+
+09/10/2005
+SPoG
+- Added entity angle-editing using rotate-tool or rotation toolbar buttons.
+- Fixed start-on-primary-monitor (win32).
+- Fixed camera-view freelook when window is on secondary monitor (win32).
+
+05/10/2005
+paxed
+- Added texture-lock toolbar button.
+SPoG
+- Added stack-trace output to all debug popup messages (win32).
+- Fixed vertex/edge selection behaviour on undoing brush edits.
+- Changed doom3 light centre rendering to use a point instead of a box.
+- Changed map and shader parsers to gracefully handle bad data.
+
+24/09/2005
+SPoG
+- Fixed crash when importing a file after deleting the world entity.
+- Changed copy/paste/import to select world brushes instead of world entity.
+- Added win32-specific stack-trace logging support.
+
+31/08/2005
+SPoG
+- Fixed clipper removing brushes on incorrect side of clip-plane when flipped.
+
+21/08/2005
+SPoG
+- Optimised light-dragging.
+- Changed connect-entities to not break existing connections where possible.
+
+24/07/2005
+SPoG
+- Fixed q3 entity definition for item_health_small.
+
+02/07/2005
+SPoG
+- Fixed build menu becoming empty if editing of default menu is cancelled.
+
+01/07/2005
+SPoG
+- Fixed snap-planes-to-integer preference not being saved.
+
+26/06/2005
+SPoG
+- Changed doom3 light_radius box to draw flat-shaded translucent in camera view.
+- Fixed progress window not being shown when loading maps.
+- Refactored shortcut handling to make focussed widgets override global shortcuts.
+  Allows using ctrl+c to copy console text, undo/redo without main-window focus.
+
+23/06/2005
+SPoG
+- Fixed crash when handling assert/error before gtk_init.
+- Changed Help menu to display only the help menu relevant to the current game.
+
+21/06/2005
+SPoG
+- Fixed double-maps-directory when using non-native file open dialog on win32.
+- Changed find/replace-textures window to update when selecting textures with MMB.
+- Fixed handling of non-UTF-8 wad-names in textures menu.
+
+20/06/2005
+SPoG
+- Changed home-path prefix to be optional on linux/osx for q1/q2.
+- Changed OpenGL module to work correctly with GL_VERSION 2.0.0.
+- Fixed spawnflags in Enemy Territory entity definitions.
+- Added missing Enemy Territory entity types.
+
+19/06/2005
+SPoG
+- Changed clipper-point selection/rendering to behave the same at all zoom levels.
+- Changed clipper-point selection to always pick the closest point to the cursor.
+- Fixed clipper colour not being updated until after restarting.
+- Fixed QE tool not deselecting edges when left-clicking on a vertex without shift.
+- Fixed grid rendering with grid settings other than 8-unit.
+- Fixed textures menu always behaving as if show-shaderlist-only is enabled.
+
+18/06/2005
+SPoG
+- Added saving of camera render mode preference.
+- Changed default camera render mode to Textured for Doom3.
+- Changed default texture render mode to Trilinear.
+
+17/06/2005
+SPoG
+- Ported Team Arena entity definitions to xml format.
+- Added xml q3 entity-definitions to win32 and linux setups.
+
+14/06/2005
+SPoG
+- Fixed QE-tool component-drag selecting components of unselected brushes.
+
+13/06/2005
+SPoG
+- Changed clipper mode and component-editing modes to be mutually exclusive.
+- Changed camera A/Z/D/C keys to obey "discrete movement" checkbox.
+- Added support for up/down movement in freelook mode.
+- Fixed clipper-tool-uses-caulk option.
+- Added prompt for engine path at startup if not found.
+
+12/06/2005
+SPoG
+- Added entity-inspector GUI support for func_button/func_door direction attribute.
+- Added angle/model/sound GUI to entity-inspector for old-style entity-definitions.
+- Added clipper-plane rendering using stippled back-face-culled polygon.
+- Fixed entity-inspector failing to handle non-ascii characters in entity keys.
+
+11/06/2005
+SPoG
+- Fixed entity-inspector window position changing while hidden.
+
+09/06/2005
+SPoG
+- Fixed region-set-selected for model entities.
+
+08/06/2005
+SPoG
+- Added option to enable or disable snapping brush planes to integer on map load/save.
+- Added 0.125 grid.
+- Changed grid rendering to always show major/minor grid colours whatever the zoom level.
+- Increased maximum zoom level for XY views.
+
+06/06/2005
+SPoG
+- Added 'File > Refresh models' - reloads models that have changed outside Radiant.
+
+05/06/2005
+SPoG
+- Fixed model files not being closed after being read.
+- Fixed build menu dialog not saving changes to build commands.
+- Changed build menu to save xml only if changed by user.
+- Fixed CSG-merge.
+- Reduced CSG-merge tolerance for misaligned brushes.
+Michael Kluskens
+- Updated STVEF default build menu to version 2 format.
+- Updated STVEF game configuration file and removed synapse.config.
+
+02/04/2005
+SPoG
+- Changed HashTable insert/remove operations to not invalidate iterators.
+- Changed ReferenceCache realise/unrealise to take advantage of new HashTable behaviour.
+- Refactored containers to use std::swap.
+- Refactored bitfield.h.
+Tr3B
+- Fixed endianness for .lwo loading on linux.
+- Extended q3map2 mathlib functionality.
+
+28/03/2005
+SPoG
+- Specialised filters list for doom3 entity/material types.
+- Added ASE-loader support for shader names specified as a bitmap absolute-path.
+- Fixed monitored-compile debug-feedback display.
+- Added TGA-loader support for vertical and horizontal flipping.  
+- Enabled auto-generation of smooth normals for all LWO models.
+
+27/03/2005
+Tr3B
+- Fixed map-xml module.
+- Added support for qer_trans keyword in doom3 materials.
+
+08/03/2005
+SPoG
+- Added GUI updates during map load and engine-path/game-dir changes.
+- Fixed main window being hidden behind another application on closing a floating window.
+
+07/03/2005
+SPoG
+- Fixed crash when selecting the root node in the entity-list window.
+- Fixed detail flag saving for quake3 map format.
+
+06/03/2005
+SPoG
+- Optimised type-casts for scene-graph type system.
+- Disabled substitution of 'unspecified' for entity key values that match the default.
+- Refactored module-system api - added globalModuleServer().
+- Fixed rotation origin for doom3 func_static models.
+
+05/03/2005
+SPoG
+- Added support for doom3 model-entity 'skin' key.
+- Added noshadows/nospecular/nodiffuse/falloff doom3 light keys to entity-inspector.
+
+04/03/2005
+SPoG
+- Added camera move up/down one floor.
+- Added support for 'unspecified' contents/flags/value for Quake2 brush faces.
+
+26/02/2005
+SPoG
+- Added auto-complete for shader attributes in entity inspector.
+- Added support for doom3-material heightmap to normalmap conversion.
+
+22/02/2005
+SPoG
+- Fixed missing prefix attribute in quake game configuration file.
+- Added auto-completion for find/replace-textures texture-name entries.
+- Removed redundant buttons and options in find/replace-textures window.
+
+21/02/2005
+SPoG
+- Added auto-completion for surface-inspector texture-name entry.
+
+20/02/2005
+SPoG
+- Fixed failure to load shaders containing '.' such as Heretic II model skins.
+- Removed unused legacy cmdlib functions.
+- Added support for fractional repeat values to brush-fit-texture.
+
+19/02/2005
+SPoG
+- Changed entity-connect-selected to use the parent entity of a selected brush.
+- Added q2map and bspc to installation packages.
+Jamie Wilkinson
+- Fixed path to q2map in quake2 build-menu.
+
+13/02/2005
+SPoG
+- Fixed crash in 'Misc > Find Brush' when searching for a non-existent brush.
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1059
+- Limited the maximum number of sides of a prefab brush-cone to 32.
+
+11/02/2005
+SPoG
+- Changed display of angled box-entities to show un-rotated bounding boxes.
+
+10/02/2005
+SPoG
+- Disabled rotation of light entities for games other than Doom 3.
+
+09/02/2005
+David Constanzo
+- Fixed episode flag names on Quake item_sigil and func_episodegate entities.
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1056
+- Added detailed description of Quake item_sigil and func_episodegate entities.
+SPoG
+- Fixed position of light-entity names.
+- Fixed q3map2 feedback xml streams containing non-UTF-8 text.
+- Optimised Locale<->UTF-8 text conversion.
+
+08/02/2005
+SPoG
+- Fixed selecting a texture not resetting the current selected texture-projection.
+- Added handling of OpenGL drivers that don't implement all reported extensions. 
+
+07/02/2005
+SPoG
+- Added support for multi-byte UTF-8 characters in xml content (not markup).
+- Added UTF-8 support in entity-inspector, prefs dialog, recent-files menu, console.
+- Fixed potentially misaligned objects.
+
+05/02/2005
+SPoG
+- Added rendering of entity names for non-group entities.
+- Removed context-dependent opengl calls before opengl context is created.
+
+04/02/2005
+SPoG
+- Fixed crash when printing extended-ascii text in the console.
+- Added conversion of extended-ascii text to utf8 for gtk text-buffer widgets.
+
+03/02/2005
+David Constanzo
+- Fixed typo in Quake entity-definitions.
+SPoG
+- Fixed undo of brush-set-structural and brush-make-structural.
+- Refactored image-loader module api.
+- Added full support for Quake II and Heretic II surface-flags in surface-inspector.
+- Fixed crash in patch-inspector for games other than doom3.
+
+01/02/2005
+SPoG
+- Changed shader-list and entity-definition searching to also search base-dir.
+
+29/01/2005
+SPoG
+- Fixed title of floating entities/console/textures window.
+- Fixed destruction of floating windows on shutdown.
+- Added shortcut handling when entity-inspector/texture-browser are active.
+David Constanzo
+- Fixed crash while auto-saving snapshots.
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1049
+
+28/01/2005
+SPoG
+- Added rendering of fixed S/T tesselation on doom3 patches.
+- Changed creation of doom3 func_static entities to prompt for a model.
+- Fixed zero-sized primitives being rendered for culled entity-connection-lines.
+
+25/01/2005
+SPoG
+- Added support for setting fixed S/T tesselation on doom3 patches.
+- Changed patch inspector to be completely non-modal.
+
+24/01/2005
+SPoG
+- Added support for rotating lights using the rotation tool.
+
+23/01/2005
+SPoG
+- Fixed crash on startup with texture-subsets enabled.
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1045
+- Added support for doom3 lights combined with brushes and patches.
+- Added support for doom3 light_origin on lights.
+- Added support for doom3 light_rotation and rotation key on lights.
+
+22/01/2005
+SPoG
+- Fixed crash when accessing links from help menu.
+- Fixed broken links in help menu.
+- Added game-specific docs to win32 setup.
+- Changed q3 connect-entities to preserve existing targetname key.
+- Changed q3 connect-entities to generate targetname key based on target classname.
+
+21/01/2005
+SPoG
+- Moved information in synapse.config into .game files.
+- Added api versioning for module-system.
+
+20/01/2005
+SPoG
+- Fixed keys/values for brush entities not being editable unless parent is selected.
+- Fixed brush-entities not being deleted when the last child brush is deleted.
+- Fixed scenarios where worldspawn is not the first entity in the map.
+
+19/01/2005
+SPoG
+- Fixed numerical instability in brush winding-generation.
+
+16/01/2005
+SPoG
+- Added Jedi Academy support to linux installer.
+- Fixed main-window jumping to front during autosave.
+- Fixed saving of empty brushes.
+Jame Wilkinson
+- Fixed build errors when compiling for big-endian target.
+
+15/01/2005
+SPoG
+- Fixed launching q3map2 from build-menu on linux/osx.
+- Added version checking of generated config files.
+- Fixed key-up events being missed while holding ctrl/shift/alt.
+- Fixed texture-compression support.
+Jago
+- Changed q1 trigger_relay and trigger_counter to be point entities.
+
+11/01/2005
+SPoG
+- Changed brush-save to not write non-contributing faces.
+- Fixed rendering artifacts on outlines of selected box-entities.
+
+10/01/2005
+SPoG
+- Added patch-cap-cylinder.
+
+09/01/2005
+SPoG
+- Fixed texture-browser scroll-to-selected-texture.
+- Added brush face texture painting.
+
+08/01/2005
+SPoG
+- Fixed ungroup-selected-entities.
+- Added 'Entity' menu.
+- Removed items unrelated to entity-creation from xy-window right-click menu.
+- Fixed minor memory leaks in core.
+- Removed code that ignores empty alpha-channel in tga loader.
+- Fixed memory leak in model module.
+- Fixed memory leaks in picomodel library: ase and lwo loaders.
+- Changed default tool to 'QE' tool.
+
+04/01/2005
+SPoG
+- Changed start-on-primary-screen default to 'true' with multiple screens.
+- Added enter/escape as shortcuts for OK/Cancel buttons on modal dialogs.
+- Disabled mouse-chase scrolling in XY window when drag-selecting.
+- Fixed xlink I/O warnings on linux.
+- Removed light-creation 'intensity' dialog in doom3 config.
+- Changed the default vertical size of the shortcut-list window to 400. 
+- Fixed patch-creation with zero-sized workzone.
+- Fixed crash when rendering doom3 light_radius box.
+
+03/01/2005
+SPoG
+- Added arbfp1/arbvp1 vertex/fragment program lighting support.
+- Fixed colour-selection dialog not going away after OK/Cancel.
+- Fixed tangent/bitangent calculation on degenerate patches.
+- Added resizing of patches with QE tool.
+
+02/01/2005
+SPoG
+- Added stippled hidden-line rendering for rotate/translate manipulators.
+- Refactored high-level camera/orthographic rendering functions.
+- Fixed failure to load models with back-slashes in path.
+- Improved peformance of doom3 lighting with large models.
+
+01/01/2005
+SPoG
+- Changed entity renderering to draw connections for culled entities.
+- Fixed runtime errors on shutdown after cycling between lighting/textured.
+- Fixed 'Cancel' button in modal dialogs behaving like 'OK' button.
+- Changed 'clip' brush filtering to use shader parameters instead of names.
+- Added rendering of origin-point for selected model entities.
+- Fixed doom3 light-interaction updates for model entities.
+
+31/12/2004
+SPoG
+- Removed menu-splitting functionality.
+- Refactored entity-class menu construction.
+- Replaced const_reference with ConstReference.
+- Renamed string_t to CopiedString.
+- Changed code using Str::Format and Str::operator+= to use StringOutputStream.
+- Refactored shortcut command parsing code.
+- Changed light entity rendering to show light_radius box only in doom3 config.
+- Added 2x overbrightening for doom3 lighting preview.
+
+16/12/2004
+SPoG
+- Changed default doom3 light_radius to 300.
+- Fixed initial value of doom3 light_center.
+- Reduced frequency of gui updates during map load.
+
+13/12/2004
+SPoG
+- Fixed crash in monitored-compile feedback dialog.
+
+12/12/2004
+SPoG
+- Added visualisation of halflife texture-projection format.
+- Added texture-lock for halflife texture-projection format.
+- Changed brush-texture-lock default to enabled for doom3 and halflife.
+
+11/12/2004
+SPoG
+- Refactored script-tokeniser.
+- Fixed doom3 lighting on ATI cards.
+- Added support for list attributes in entity definitions.
+- Added utf8-normalisation on text printed to console.
+- Fixed missing default_build_menu.xml in halflife game config.
+
+10/12/2004
+SPoG
+- Fixed missing commas in entity-inspector comments.
+- Added support for default values in entity-definitions.
+
+09/12/2004
+SPoG
+- Enabled doom3 realtime lighting preview.
+
+05/12/2004
+SPoG
+- Fixed gcc compile warnings in patch.cpp.
+- Added q1 and q2 support to linux installer.
+
+02/12/2004
+SPoG
+- Added highlighting of entity-list nodes that have selected descendants.
+
+29/11/2004
+SPoG
+- Fixed xy-window failing to update after map-load.
+
+28/11/2004
+SPoG
+- Fixed error on shutdown when game-select dialog is disabled.
+- Added surface/light-interaction debugging mode.
+- Added per-plane light-culling for brush faces.
+- Added support for bump shaders using 'blend' layer keyword.
+- Added support for light-shaders.
+- Fixed edge/border clamping on light-attenuation textures.
+- Added 'Lighting' camera render-mode for doom3 config.
+
+25/11/2004
+SPoG
+- Fixed right-click-menu on linux.
+
+13/11/2004
+SPoG
+- Changed light-entity to draw radii only when selected.
+
+07/11/2004
+SPoG
+- Fixed shortcuts for creating n-sided brush-prisms.
+
+19/10/2003
+SPoG
+- Fixed user-customisable shortcuts support.
+
+16/10/2003
+SPoG
+- Added restore-main-window call when a modal-dialog dialog-box is shown.
+
+13/10/2003
+Jamie Wilkinson
+- Fixed SConstruct cpu detection on Power Macintosh.
+- Added more verbose warning settings for gcc builds.
+SPoG
+- Changed buffered-text-input-stream API to not use magic EOF value.
+
+06/10/2004
+Jamie Wilkinson
+- Fixed debug-break on non-x86 platforms.
+
+05/10/2004
+SPoG
+- Fixed new doom3 entities not being given unique names.
+
+02/10/2004
+SPoG
+- Fixed autosave causing the main-window to jump to the front.
+- Fixed window-title when changing view direction in floating-windows layout.
+- Added status information to wait dialogs.
+- Changed map-save to overwrite/refresh files modified/deleted outside radiant.
+- Changed component selection in QE tool to treat near-equal points as one.
+- Added texture browser window to View menu.
+- Changed white overlay in camera-window to draw hidden lines in 75% grey.
+- Reduced point-size for vertex/edge/face handles by 2/3.
+
+25/09/2004
+SPoG
+- Added component-editing for curves on doom3 entities.
+- Added normalisation of translation for texture-lock on doom3 brushes.
+- Added update of surface inspector for texdef changes caused by texture-lock.
+- Changed floating-windows layout to centre all ortho views on center-xy-views.
+- Stopped autosave from saving unmodified maps after first-time load.
+Shamus
+- Textool improvements.
+
+21/09/2004
+Michael Schlueter
+- Changed file-chooser dialogs to use GtkFileChooser.
+
+20/09/2004
+SPoG
+- Added basic rendering for 'curve_CatmullRomSpline' on doom3 entities.
+
+19/09/2004
+SPoG
+- Added basic rendering for 'curve_Nurbs' on doom3 entities.
+
+18/09/2004
+SPoG
+- Added doom3 entity-definition editor_usage* key support.
+- Added doom3 entity-definition editor_* key info to entity-inspector comments.
+- Added specialised attribute-entry in entity-inspector for boolean attributes.
+- Fixed crash in find-brush when entering the index of a fixed-size entity.
+- Added support for rendering doom3 'targetN' -> 'name' entity connections.
+- Changed connect-entities to use 'targetN' and 'name' keys on doom3 entities.
+- Improved handling of brushes with near-duplicate planes.
+- Fixed crash in snap-to-grid on brushes with non-contributing faces.
+
+17/09/2004
+Michael Schlueter
+- Fixed gcc build errors.
+SPoG
+- Fixed stability problems with doom3 brush-entities.
+
+16/09/2004
+SPoG
+- Added automatic renaming of entity target/name keys for paste and import-map.
+
+13/09/2004
+SPoG
+- Fixed rotation/mirror toolbar buttons using wrong axes in certain situations.
+- Fixed incorrect filter settings display in filters menu.
+- Added automatic renaming of entity target/name keys when cloned.
+- Fixed quake2 support.
+
+12/09/2004
+SPoG
+- Added shortcut support for all menu commands and toolbar buttons.
+- Fixed patch shader-name saving for doom3 patches created by user.
+
+10/09/2004
+SPoG
+- Fixed patch-cap-endcap and patch-cap-reverse-endcap.
+
+09/09/2004
+SPoG
+- Fixed status-bar labels showing 'Label' at startup.
+- Fixed textures-menu grouping bug.
+- Fixed mirroring on brushes with doom3 plane-defs.
+
+08/09/2004
+SPoG
+- Changed patch-cap-selected to prompt for cap type only once.
+- Fixed infinite-loop in patch-cap-selected.
+- Changed autosave to only save if the map has changed since the last autosave.
+- Changed "file exists, overwrite?" to go back to the file-chooser if 'no' is selected.
+
+07/09/2004
+Michael Schlueter
+- Removed unused source files - qsysprintf, gtkfilesel.
+- Changed linux exectuable-path resolution to use '/proc/self/exe'.
+- Changed 'file exists, overwrite?' prompt to default to 'no'.
+
+06/09/2004
+SPoG
+- Fixed crash when handling duplicate shader definitions.
+- Fixed crash on startup after changing game-type (sp/mp).
+- Changed compute-axis-base to be more stable in degenerate cases.
+Michael Schlueter
+- Cleaned up loki_path stuff.
+Shamus
+- Added textool rotation manipulator.
+
+01/09/2004
+Michael Schlueter
+- Changed linux installer to copy *.game files from game-packs instead of generating them.
+
+29/08/2004
+SPoG
+- Moved doom3 shader parsing into a separate function.
+- Fixed saving of visibility of yz-side and xz-front in floating-windows layout.
+- Added inheritance of doom3 entityDef 'editor_* *' keys.
+- Added support for doom3 entityDef 'editor_* *' keys other than 'editor_var'.
+- Changed entity-inspector attributes panel to be scrollable.
+- Changed shaders module to load *.mtr for doom3 instead of using shaderlist.
+- Improved doom3 material parsing.
+- Fixed crash loading maps containing patches with large numbers of control points.
+- Changed face-selection in camera view to use polygon test.
+- Changed face-selection-mode rendering in camera view to cull back-faces.
+- Changed shaders module to use diffusemap on doom3 shaders with no qer_editorimage.
+
+28/08/2004
+SPoG
+- Fixed undefined-behaviour bug causing a crash with gcc optimisation.
+- Fixed opengl extension support on linux.
+- Added support for half-life .fgd entity-definitions.
+- Fixed loading of half-life maps with texture-names containing '{'.
+
+26/08/2004
+SPoG
+- Updated win32 install to use gtk+-2.4.7 and gtk-wimp-0.6.2.
+- Removed 'unknown model type: ""' and 'Texture load failed: ""' errors.
+- Changed pivot-point calculation to use entity-origin for fixed-size entities.
+- Fixed errors drawing selection-rectangle in floating-windows layout.
+- Fixed shortcuts becoming disabled in floating-windows layout.
+- Removed snap-to-integer on entity angle/angles/scale keys.
+- Fixed dragging of doom3 brush-entities.
+Michael Schlueter
+- Fixed gcc compiler error and warnings.
+- linux installer fixes.
+
+25/08/2004
+Michael Schlueter
+- Changed linux build system to copy '$GAME.game/*' for installer.
+- Changed linux installer to use 1.5's module set.
+- Removed optimisation from linux build to fix optimiser-related crash.
+- Added Doom3 support to linux installer.
+SPoG
+- Changed texdef export to not snap shift/rotate to integer.
+
+17/08/2004
+SPoG
+- Fixed texture-browser height update bug.
+- Changed texture-browser to show only the texture-set selected from the menu.
+- Fixed bug loading quake maps.
+
+16/08/2004
+SPoG
+- Fixed shortcuts for shift/rotate/scale-texture on patches.
+- Fixed patch-inspector rows/cols combos not being cleared between selections.
+- Changed entity/brush counts to use counters instead of polling every second.
+- Changed archivewad module to check lump types and ignore non-miptex files.
+- Added support for worldcraft/hammer half-life map format.
+
+15/08/2004
+SPoG
+- Added doom3 md5mesh loader.
+- Added support for doom3 entityDef 'model' key.
+- Changed textures-menu to show/load only shaders in the form 'textures/<menu-item>/*'.
+- Fixed texture-browser height calculation bug.
+- Added support for doom3 entityDef 'editor_var *' key.
+- Fixed support for patchDef3 subdivision settings.
+
+14/08/2004
+Chronos
+- Added doom3 light_radius and light_center rendering.
+SPoG
+- Disabled default-shaders for doom3.
+- Added one-click dragging of vertices/edges/faces on brushes and patches.
+- Fixed detail flag being lost on brush-clone or save-as.
+
+12/08/2004
+SPoG
+- Fixed workzone being invalidated when a brush is deleted.
+- Fixed pivot updates when switching from translate-tool to rotate-tool.
+- Fixed crash in misc_model.
+- Changed file_dialog to show '*.*' when pattern is not specified.
+- Added undo support for patch-inspector XYZUV tweaking.
+- Removed 'Apply'/'Done' buttons from patch-inspector.
+
+11/08/2004
+redfella
+- Converted RTCW entities.def to xml format.
+SPoG
+- Added support for "name" key for doom3 entities.
+
+10/08/2004
+SPoG
+- Added support for loading text files from VFS archives.
+
+09/08/2004
+SPoG
+- Changed .map writer to always use decimal notation for floats.
+- Added filtering of monster_clip/full_clip/player_clip.
+- Added support for inheritance in doom3 entity-definitions.
+- Fixed doom3 patchDef2 material-name import/export.
+
+06/08/2004
+SPoG
+- Doom3 support:
+  - Map load/save.
+  - Materials parsing.
+  - entityDef parsing.
+  - Fixed brush-primitives texturing bug.
+  - Added texture-lock for brush-primitives texturing on all transforms.
+  - Added support for model/rotation/origin keys on func_ entities.
+- Added DDS image module.
+
+03/08/2004
+SPoG
+- Fixed copy/paste copying all brushes of an entity when only one is selected.
+- Fixed discrete-camera-movement shortcuts becoming disabled after using freemove-camera.
+
+27/07/2004
+Shallow
+- Converted ET entities.def to xml format.
+
+26/07/2004
+SPoG
+- Fixed SI when not in face-selection mode.
+- Changed patch-create-prefab to use current workzone.
+- Changed engine attribute to be optional in game-description.
+
+24/07/2004
+SPoG
+- Changed module server to support wildcard modules.
+- Cleaned up docs/developer, added README.
+- Removed old TODO.
+
+23/07/2004
+Shamus
+- Initial version of textool.
+MindLink
+- Fixed const bug for vs.net 2005 compiler.
+
+22/07/2004
+SPoG
+- Fixed copy/paste and export-selected failing to export stuff.
+
+19/07/2004
+SPoG
+- Updated win32 setup scripts for q1 entity definitions.
+
+18/07/2004
+SPoG
+- Updated win32 setup scripts.
+- Fixed bug loading 8-bit bmp with <256 palette entries.
+- Added support for loading textures from arbitrary locations.
+- Changed shaders module to load notex/shadernotex from bitmaps/ in .bmp format.
+- Fixed bugs in brush-primitives texdef code.
+
+17/07/2004
+SPoG
+- Added STV:EF support to win32 installer.
+- Moved hardcoded game-specific configuration stuff into .game files.
+
+16/07/2004
+SPoG
+- Fixed crash bug in brush edge/vertex/face selection.
+
+15/07/2004
+SPoG
+- Moved .def files from <enginepath>/<basegame>/scripts/ to <radiantpath>/<gamefilename>/<game>/.
+- Changed entity inspector UI to be driven by entities xml.
+
+14/07/2004
+SPoG
+- Fixed map load/save in brusb-primitives mode.
+- Added files required to run in brush-primitives mode.
+- Added support for changing engine-path while a map is loaded.
+
+
+11/07/2004
+SPoG
+- Changed entity inspector to support custom UI for each entity-class.
+
+10/07/2004
+SPoG
+- Added support for experimental xml version of .def format.
+- Rewrote token parser.
+- Rewrote .def parser.
+- Fixed failure to read show-workzone preference.
+- Refactored quake3 entities module.
+
+03/07/2004
+SPoG
+- Changed QE-style Drag tool to move as well as resize.
+- Fixed shortcuts becoming disabled.
+- Fixed loading file types with upper-case extensions.
+
+30/06/2004
+AcidDeath
+- Added support for plugin submenus.
+
+27/06/2004
+SPoG
+- Added build-menu-command editing.
+- Fixed texture-object reshuffle caused by changing gamma.
+- Refactored vfs/shaders/renderstates/eclass/texturemenu unrealise/realise systems.
+
+26/06/2004
+SPoG
+- Added printf-formatting support to output streams.
+- Added error/warning printing to xml parser.
+- Changed build-menu xml format to allow easier editing.
+- Added sample plugin.
+
+25/06/2004
+SPoG
+- Changed paste and import-map to select pasted/imported entities and world brushes.
+
+24/06/2004
+SPoG
+- Changed create-entity API to use eclass instead of classname.
+- Changed nodes with unknown entity types to use a group-entity if the node has children.
+
+18/06/2004
+SPoG
+- Changed image-loaders interface to use a file object instead of VFS.
+- Changed model-loader interface to support in-place model reloading.
+- Changed picomodel-loader module to support configuration of suppported model types in synapse.config.
+- PicoModel: added support for loading models from an abstract input stream.
+
+14/06/2004
+SPoG
+- Refactored texture browser.
+- Removed GLWindow.
+- Fixed mousewheel movement in camera window.
+
+13/06/2004
+SPoG
+- Added load-entire-wad from textures menu in Quake/HL mode.
+- Fixed bug with writing negative integers to .map format.
+- Fixed texture-browser hide-unused to show only in-use shaders. 
+- Fixed texture-browser scrollbar positioning and origin-clamping.
+- Fixed prompting to save unchanged new maps.
+- Changed unsaved-changes message box default to "Yes, save" instead of "OK, don't save".
+- Changed all message boxes to appear centrally.
+- Removed minimize/maximize buttons from all message boxes.
+
+12/06/2004
+SPoG
+- Disabled shortcut keys during drags.
+- Fixed window updates for edge/vertex multi-selection.
+- Added apply/cancel on enter/escape for texture-browser filter entry.
+- Changed undo system to use explicit start/finish pair to specify undoable operations.
+- Changed undo system to print undoable command after command completion instead of before.
+- Added printing of movement parameters for translate/rotate manipulator drags.
+- Changed brush-subtract to not delete the selection after subtracting.
+- Fixed texture browser to not display textures if only in-use by nodes in the undo-queue.
+- Fixed another workzone-update performance issue causing area-selection to be slow.
+- Added code to brush build-B-Rep to handle duplicate edges.
+
+10/06/2004
+SPoG
+- Added lazy evaluation of local->world transforms and world-space AABBs.
+- Added shortcut key for translate mode, default 'W'.
+- Added toolbar buttons for edge/face/vertex modes.
+- Changed Escape shortcut to deselect-components if components are selected.
+
+02/06/2004
+SPoG
+- Fixed performance bug with workzone updates not being lazily evaluated.
+- Fixed brush edge-graph bug by removing degenerate winding edges.
+
+01/06/2004
+SPoG
+- Added mode information to status bar.
+- Added console feedback describing undoable commands executed.
+- Fixed assertion failures on updating degenerate edge/vertex selections.
+- Fixed detail brushes turning structural when clipped.
+
+31/05/2004
+SPoG
+- Added support for more than one edge/vertex selected per brush.
+
+29/05/2004
+SPoG
+- Refactored groupdialog - decoupled notebook from console/textures/entity pages.
+- Fixed crash in patch tesselator.
+- Fixed floating windows startup crash.
+- Fixed null texture name for patches.
+
+28/05/2004
+SPoG
+- Hide arrows on translate manipulator when obscured by square part.
+- Workaround for main window not being brought to front when a floating window is closed.
+- Fixed rendering of selected components of degenerate brush faces.
+- Fixed double typedef in picomodel.
+- Fixed bug in allocator stuff.
+- Fixed up clipper tool button state.
+- Added workzone updates when selection bounds change.
+- Fixed transient setting on floating inspector windows.
+
+27/05/2004
+Tr3b
+- Fixed gcc build errors.
+SPoG
+- Fixed crash bug in game selection dialog.
+
+26/05/2004
+SPoG
+- Cleaned up project settings.
+- Changed autosave/snapshots to only save modified maps.
+- Refactored build menu.
+
+23/05/2004
+SPoG
+- Fixed minor picomodel ase loader smoothing-groups bug.
+
+19/05/2004
+SPoG
+- Allocator system improvements, fixed warnings
+
+18/05/2004
+SPoG
+- PicoModel: added support for per-vertex smoothing-group, used in generation of normals.
+- PicoModel ASE loader: added support for per-face 'MESH_SMOOTHING' id.
+- PicoModel: changed normal generation code to create smooth normals across texcoord/colour discontinuities.
+- Fixed cosmetic menu bug.
+- Fixed file handle leak in tga loader.
+- Added experimental allocator system.
+
+15/05/2004
+Tr3b
+- Fixed gcc build errors.
+
+11/05/2004
+SPoG
+- Fixed version.h custom build step on win32
+- Refactored preferences dialog to eliminate dependencies on other modules.
+- Redesigned preferences dialog ui layout.
+
+06/05/2004
+SPoG
+- Refactored texture browser.
+
+05/05/2004
+SPoG
+- Upgraded win32 gtk2 version to 2.4.1.
+- Migrated from GtkCombo to GtkComboBox.
+- Texture browser improvements.
+- Fixed malloc/free mismatch bug.
+
+05/05/2004
+SPoG
+- Refactored surface inspector and texture browser.
+
+02/05/2004
+Nurail
+- Added imageq2 module with support for quake2 and heretic2 texture formats: wal, m8, m32.
+
+30/04/2004
+SPoG
+- Changed texture window not to auto-scroll when selecting faces.
+- Changed surface inspector to apply shader seperately from shift/scale/rotate.
+- Changed selected face tracking to use separate selection list.
+
+26/04/2004
+SPoG
+- Added per-file change tracking - only modified (unsaved) files are saved by SaveMap().
+
+18/04/2004
+SPoG
+- Fixed texture-increment-matches-grid.
+- Changed selecting a texture to only change the shader on the selected brushes.
+- Changed 'Axial' button in surface inspector to reset the texdef for selected brushes/faces.
+- Removed MAX_TEXTUREDIRS limit.
+
+11/04/2004
+SPoG
+- OS library module added to wrap calls to rename/unlink/access/stat.
+- OpenGL-view selection tests constrained to current window.
+- Cleaned up OpenURL.
+- Added jk2 and sof2 support to win32 installer.
+
+09/04/2004
+TTimo
+- update the OSX setup / .info generation code
+
+08/04/2004
+SPoG
+- Added integer quantisation for brush edge/vertex drags to fix FP-drift on planes.
+TTimo
+- fix for scons 0.95
+- re-enable Python >= 2.1 version check
+- OSX 10.3: remove obsolete dlsym_auto_underscore (bug #920)
+- OSX: disable q2 tools build (broken thread code)
+
+07/04/2004
+SPoG
+- Moved profile.cpp into a separate static library.
+
+06/04/2004
+SPoG
+- Refactored preferences to be more modular.
+- Fixed preferences being corrupted if a crash occurs during preference saving.
+- Refactored window position saving.
+- Fixed bug in radio button creation in preferences dialog.
+
+24/03/2004
+SPoG
+- Changed surface inspector to unfocus after pressing escape or return, to enable shortcuts.
+- Added refresh of surface inspector for shift/scale/rotate-texdef shortcuts.
+- Fixed bug causing some operations to be applied twice.
+
+21/03/2004
+SPoG
+- Added depth-test and normalisation for translate-manipulator rendering.
+- Added basic clipper-preview rendering.
+
+18/03/2004
+SPoG
+- Added maya-style arrow-heads to translate manipulator.
+- Changed square part of translate manipulator to be viewplane-oriented.
+- Changed square part of translate manipulator to take priority for selection.
+
+15/03/2004
+SPoG
+- Added recalculation of pivot-point when grid size changes.
+- Changed win32 SHGetFolderPath to link with shfolder.lib instead of shell32.lib.
+- Fixed failure to recover brushes from an invalid state.
+
+14/03/2004
+SPoG
+- Improved event handling to make manipulator-dragging smoother in complex scenes.
+- Refactored camera window camera-movement handling.
+
+06/03/2004
+SPoG
+- Fixed vertex/edge undo failing to update selected-vertex position.
+
+29/02/2004
+SPoG
+- Re-enabled next-xy-view in floating windows mode.
+- Reinstated light-radius rendering.
+- Added Wolfenstein support to win32 setup.
+
+24/02/2004
+SPoG
+- Changed create-brush-prism to use correct dimension for prism radius.
+- Changed freelook selection to use window-centre position.
+
+22/02/2004
+SPoG
+- Optimised undo for adding/removing scenegraph nodes.
+- Changed entity-list view to sort the tree by name.
+
+18/02/2004
+SPoG
+- Moved default shaderlist to <AppPath>/<GameFileName>/<GameName>/default_shaderlist.txt
+- Moved user shaderlist to <AppData>/<Version>/<GameFileName>/<GameName>/shaderlist.txt
+
+11/02/2004
+SPoG
+- Refactored clipboard copy/paste code to allow re-use.
+
+10/02/2004
+SPoG
+- Fixed false-positive-intersection bug in CSG subtract algorithm.
+
+07/02/2004
+SPoG
+- SceneGraph: Refactored per-instance functionality.
+- Fixed intermittent culling bug caused by bad bounding boxes.
+- Fixed missing ToggleCubicClip shortcut.
+- Removed modal buttons from Surface Inspector.
+- Changed Surface Inspector keys:
+  - Escape: revert not-yet-committed values to previous state.
+  - Enter: commit not-yet-committed values immediatly.
+- Changed Surface Inspector to update when selection changes.
+
+31/01/2004
+SPoG
+- Cleaned up functional.h template usage with typedefs.
+- Fixed autosave path.
+- Added q1 component to installer.
+- Added radiant_manual component to installer.
+- Added q3-example-maps package to installer.
+
+29/01/2004
+SPoG
+- Added error reporting for module system initialisation failure.
+- Added MSI package creation tools in setup/win32.
+  note: requires MSI SDK binaries in http://zerowing.idsoftware.com/radiant-files/msi/msitools.zip
+- Added initial version of scripts to build basic win32 setup.
+
+26/01/2004
+SPoG
+- Added storing EnginePath for each game in local.pref.
+- Added EnginePath editing to prefs dialog.
+- Added vfs shutdown/init when gamename changes.
+- Added vfs shutdown/init when enginepath changes.
+
+25/01/2004
+SPoG
+- Fixed filtering updates.
+- Moved default bsp menu to <AppPath>/<GameFileName>/default_build_menu.xml
+- Moved user bsp menu to <AppData>/<Version>/<GameFileName>/build_menu.xml
+- Moved synapse.config to <AppPath>/<GameFileName>/synapse.config
+- Moved game-specific .xlink files to <AppPath>/<GameFileName>/*.xlink
+
+25/01/2004
+SPoG
+- Redesigned filter system:
+  - Filtered status updated when filterable attributes change.
+  - Supports per-brush-face filtering.
+- Removed long-dead project-settings stuff:
+  - Moved gamemode and gamename storage into local.pref temporarily.
+  - Moved bsp commands over to a new format, disabled gui editing for now.
+
+20/01/2004
+SPoG
+- Changed win32 Application Data path lookup to use win32 API instead of getenv.
+
+14/01/2004
+SPoG
+- Fixed main menu mnemonics.
+- Fixed crash on exit after viewing pointfile.
+
+13/01/2004
+SPoG
+- Fixed not always resetting 
+component-mode when selection is cleared.
+
+11/01/2004
+Tr3B
+- Added parse/write support for BrushDef3 and PatchDef3.
+  Requires editing synapse.config to enable.
+SPoG
+- Rearranged menus:
+  File = new/open/import/export
+  Edit = manipulate scene hierarchy and selection
+  View = toggle entityinspector/entitylist/surfaceinspector/camera/xy
+    edit camera/xy parameters
+    filters/hideshow/region
+  Modify = transform scene elements
+  Build = bsp menu
+- Fixed Brush-Primitives support:
+  Requires editing synapse.config to enable.
+  Supports load/save of BP mapfiles, and editing BP texdefs in surface inspector
+  (Not yet possible to convert between formats).
+  
+15/12/2003
+SPoG
+- Changed user-prefs to be stored in user-profile directory on win32.
+
+14/12/2003
+SPoG
+- Fixed entitylist window visibility tracking.
+- Implemented find/replace-shader for patches.
+- Changed get-texture-from-selected to update find/replace-shader dialog.
+- Implemented reparent-selected for more than one selected node.
+- Added checks to stop assignment of invalid texture names.
+- Fixed uninitialised texture-compression setting.
+- Fixed bsp menu.
+
+------- spog_branch merged to trunk
+
+10/12/2003
+SPoG
+- Ported imagehl module.
+- Ported imagepng module.
+
+03/12/2003
+SPoG
+- Changed brush winding generation to use use double precision planes.
+- Fixed tracking of modifier key state.
+
+29/11/2003
+SPoG
+- Replaced mathlib with c++ vector/matrix library.
+- Added expression-templates for common vector/matrix operations.
+
+21/11/2003
+SPoG
+- Refactored component-selection stuff.
+- Ported m4x4_t library to c++ Matrix4.
+
+16/11/2003
+SPoG
+- Changed shortcuts.ini to be written automatically.
+- Moved more prefs into specific modules.
+- Changed c++ NULL usage to 0 for maximum portability.
+
+11/11/2003
+SPoG
+- #include cleanup.
+- Added debug output/assert for module initialisation.
+
+09/11/2003
+SPoG
+- Refactored status bar stuff.
+- Refactored window updates to use closures.
+- General cleanup and refactoring.
+
+08/11/2003
+SPoG
+- Increased priority of window redraw events.
+- Ported model module to new module system.
+
+07/11/2003
+SPoG
+- Refactored window updates.
+
+05/11/2003
+SPoG
+- Changed menubar/toolbars to be non-detachable.
+- Fixed empty-undos created when left-clicking in XY window.
+- Refactored camera modelview/projection matrix updates. 
+- Moved application-specific code out of mainframe.cpp.
+- Reinstated brush/entity count in statusbar.
+
+04/11/2003
+SPoG
+- Reinstated instant status-bar updates.
+
+30/10/2003
+SPoG
+- Fixed crosshair cursor in clipper mode.
+
+29/10/2003
+SPoG
+- Changed camera to maintain valid projection/modelview matrices.
+- Moved manipulator-transform update from frustum class to selection system.
+- Removed frame-rate dependency in 3d-window freelook.
+
+27/10/2003
+SPoG
+- Smoothed out xy-window mouse-chasing.
+- Changed mouse-chasing to occur 16 pixels inside the window edges.
+- Changed xy-window to maintain valid projection/modelview matrices.
+- Fixed invalid workzone generated when deselecting with no selection.
+
+26/10/2003
+SPoG
+- Ported changes from trunk between rev 3818 and rev 4036.
+
+25/10/2003
+SPoG
+- Refactored xy-window mouse event handling.
+
+22/10/2003
+SPoG
+- Fixed freelook focus-out event.
+- Changed selection mouse event handling to use modifiers on button-release.
+
+21/10/2003
+SPoG
+- Refactored all mouse event handling for camera window.
+- Changed menus/toolbars/accelerators to use anonymous closures.
+
+20/10/2003
+SPoG
+- Fixed get-pointer-in-screen-coordinates on win32.
+- Changed patch prefs to use preference-system module.
+- Fixed selection of side-on faces.
+- Changed brush rendering to avoid glPushClientAttrib - workaround for ATI driver issue.
+
+19/10/2003
+SPoG
+- Changed VFS directory initialisation to occur after module initialisation.
+- Changed load-preferences to occur after module initialisation.
+- Added preference-system module.
+- Changed undo prefs to use preference-system module.
+- Restored splash screen with non-intrusive behaviour.
+- Cleaned up main-toolbar creation.
+- Fixed floating windows behaviour when main window is minimised.
+- Changed shader-list parsing to use new script tokeniser.
+- Changed deprecated code using GtkPixmap to use GtkImage.
+- Removed bitmap-loading from core.
+- Removed pc-speaker beep on map-save.
+
+17/10/2003
+SPoG
+- Fixed crash when trying to undo on an empty undo queue.
+- Refactored gtkdlgs, using helper functions to create common widgets.
+- Changed Dialog class to use std::list for data.
+
+13/10/2003
+SPoG
+- Refactored entity inspector.
+- Removed miscellaneous unused functions.
+- Refactored qe3 header.
+- Moved texture-window preferences into texwindow.cpp.
+
+12/10/2003
+SPoG
+- Moved layout-mode dependant code into main-frame creation.
+- Replaced prefs system with new import/export system.
+- Fixed gcc3.3 build errors.
+
+11/10/2003
+SPoG
+- Moved unnecessary methods from MainFrame into free functions.
+- Removed unsupported toolbar buttons and menu items.
+- Changed misc->gamma to not require restart.
+- Fixed unmaximised window-size when loading main window maximised.
+- Fixed saving of rotate increment preference.
+
+10/10/2003
+SPoG
+- Fixed keyboard shortcuts intercepting input to texture-subsets text-entry.
+
+09/10/2003
+SPoG
+- Fixed gcc3 build errors, compiled and tested on linux.
+
+08/10/2003
+SPoG
+- Fixed brush snap-to-grid creating huge coordinate values.
+- Fixed minor bug in selection menu.
+
+07/10/2003
+SPoG
+- Cleaned up MainFrame.
+- Added quantisation of plane pts when dragging.
+- Fixed create-empty-brush bug.
+
+06/10/2003
+SPoG
+- Moved control of camera keyboard-accelerators into camera window module.
+
+05/10/2003
+SPoG
+- Separated keyboard-accelerators from menu items, using functors.
+- Completed factoring out HandleCommand.
+
+04/10/2003
+SPoG
+- Changed 4-way-split mode to automatically reposition separators when window size changes.
+- Fixed gtk error in floating-entity/textures/console window.
+- Fixed position of console horizontal pane separator.
+
+03/10/2003
+SPoG
+- Work-in-progress factoring out HandleCommand.
+
+02/10/2003
+SPoG
+- Fixed pink icons on main window on win32.
+- Replaced g_bIgnoreCommands with signal block/unblock.
+- Refactored MainFrame startup.
+
+01/10/2003
+SPoG
+- Fixed entity-window redraw on selection change.
+- Moved control over VFS init/shutdown to module system.
+- Fixed failure to release translucency render-states.
+- Added support for realise/unrealise of all opengl texture objects.
+- Refactored startup/shutdown logic.
+  Changed quit commands to do nothing but call gtk_main_quit().
+  Added code after gtk_main() to destroy stuff.
+- Changed 25ms timeout-handler to an idle-handler for window updates.
+  (reduces redraw-request response time on fast machines)
+- Moved gl-shutdown control to glwidget.
+  Textures are realised/unrealised when the shared context is created/destroyed.
+- Fixed lack of a valid gl context when unrealising gl textures.
+
+30/09/2003
+SPoG
+- Added support for translucent entity rendering.
+
+29/09/2003
+SPoG
+- Changed all global modules to use GlobalModule helper templates.
+- Ported qgl.c to c++.
+- Changed win32 project to dynamic-link with opengl32.lib.
+
+28/09/2003
+SPoG
+- Added new experimental xml preference import/export system.
+- Refactored dialog base class:
+  Moved common dialog-element-creation code into helper functions.
+  Changed UpdateData to use per-element callback functions.
+- Refactored preferences dialog.
+
+26/09/2003
+SPoG
+- Reversed winding order for circle primitives.
+
+25/09/2003
+SPoG
+- Fixed slow selection response in large maps.
+
+21/09/2003
+SPoG
+- Added sharing of global modules within a client.
+- Added quake map module and wal image module.
+- Ported mip image module and hlw image module.
+- Cleaned up imagehl module.
+- Fixed crash in pcx image module.
+- Rewrote md3 model module.
+- Ported mdl, md2 and mdc model modules.
+- Added filtering of q1/q2 clip brushes.
+- Added ati-crash-workaround rendering path.
+- Upgraded to gtk+-2.2.4 on win32:
+  Fixed capslock affecting shortcut-keys.
+- Upgraded to gtkglext-1.0.4 on win32.
+- Fixed copy/paste.
+- Added shortcut-key support to entity treeview.
+
+17/09/2003
+SPoG
+- Fixed failure to call vfsFreeFile on an empty buffer.
+- Fixed calling convention for dlls in new module system.
+- Changed map.cpp to support maps without a worldspawn entity.
+- Fixed crash on attempting to clone a map root.
+- Added filter-update calls after loading or cloning stuff.
+- Fixed reference cache failing to save a file.
+
+16/09/2003
+SPoG
+- Refactored client-side module system code for direct module access.
+- Changed shaders, vfs, model, brush, patch and entity module interfaces
+  to use abstract base class.
+- Removed unused functions from shaders and vfs interfaces.
+
+15/09/2003
+SPoG
+- Removed synapse dependencies for win32 makefiles.
+- Added find-first-module-of-type helper function.
+
+14/09/2003
+SPoG
+- Added new lightweight module system:
+  Initialises each module the first time it is requested.
+  Does not allow configurations with cyclic runtime dependencies.
+  Provides templates for simple type-safe client-side implementation.
+  Requires no client-side linkage.
+- Split radiant API into multiple APIs:
+  core, textures, scenegraph, selection, renderstate, filters, filetypes.
+- Ported radiant, core, mapq3, mapxml, md3model, entity, shaders, image,
+  vfspk3, archivewad, archivepak, archivezip to new module system.
+
+11/09/2003
+SPoG
+- Removed edge and vertex integer-snapping during selection.
+
+10/09/2003
+SPoG
+- Replaced map in referencecache.cpp with a hashtable.
+- Changed ReferenceCache interface to take a path string,
+  which can be either absolute or relative.
+
+08/09/2003
+SPoG
+- Cleaned up qertypes.h - split into multiple files.
+- Moved texdef stuff into itexdef.h.
+- Fixed shutdown destruction order bug. 
+
+07/09/2003
+SPoG
+- Refactored texwindow.cpp.
+  Moved texture management code into textures.cpp.
+  Added textures api.
+  Replaced globals from texwindow.h with accessor functions.
+- Cleaned up shaders module.
+  Removed color-shader stuff.
+  Rewrote shader-activation logic to use textures API.
+  Removed appshaders API.
+- Refactored shutdown logic.
+  Moved non-mainframe shutdown stuff into Radiant_Shutdown().
+  Added deferred render-state realisation.
+- Fixed failure to create gl contexts in 16-bit mode for latest nvidia drivers.
+- Changed hashtable template to use traits parameter
+  for case-insensitive hasher and keyequal functions.
+- Removed unused functions from qerplugin API.
+
+02/09/2003
+SPoG
+- Refactored code to remove global-object accesses:
+  Passing global objects as parameters to functions.
+- Refactored texwindow.
+- Moved synapse server out of pluginmanager.
+  Changed pluginmanager to handle nothing but IPlugin stuff.
+
+01/09/2003
+SPoG
+- Refactored scenelib.h, split into multiple files.
+- Refactored #includes related to scenelib.h.
+- Refactored preferences for xywindow and camwindow.
+- Refactored references to g_pParentWnd in xywindow and camwindow.
+
+30/08/2003
+SPoG
+- Ported changes from trunk since 17/08/2003.
+- Ported all changes from bug800-spog_branch (vfs rewrite and q1 support).
+
+29/08/2003
+SPoG
+- Refactored component-selection stuff.
+- Fixed selection-tracking bug in patches.
+
+28/08/2003
+SPoG
+- Added support for line-strips to Selectors.
+- Fixed selection for entity treeview.
+- Refactored external-resource loading.
+
+20/08/2003
+SPoG
+- Fixed snap-to-grid in edge and vertex modes.
+- Added a default model to use when a model load fails.
+
+19/08/2003
+SPoG
+- Changed snap-to-grid to vastly reduce the possibility of creating an invalid plane.
+
+17/08/2003
+SPoG
+- Ported changes from trunk since 01/08/2003.
+
+12/08/2003
+SPoG
+- Changed entity key/value tracking to only track keys already added to the entity.
+- Fixed bug causing undo system to track scene changes during a queue-flush operation.
+
+12/08/2003
+SPoG
+- Fixed bug in project settings bsp-commands display.
+- Fixed empty undos being created by rotation buttons.
+- Fixed rotation pivot for rotation buttons.
+
+09/08/2003
+SPoG
+- Added property svn:eol-style=native to all text files.
+- Added property evn:eol-style=CRLF to all dsp and dsw files.
+- Partially ported bobtoolz to use new spog_branch module APIs.
+- Removed Sys_UpdateScene.
+- Added Map_Name() for access to currentmap variable.
+- Added initial drag-n-drop support for graph tree-model.
+
+01/08/2003
+SPoG
+- Fixed uninitialised refcount in entity key class.
+- Fixed memory leak in shader parsing.
+- Added reference-counting holder for worldspawn node.
+- Moved string class and utilities into a new header in libs dir.
+- Fixed external-file-resource cache to use case-insensitive name compare on win32.
+- Fixed shaders to use case-insensitive name compare.
+- Fixed shader module to display SHADER_NOT_FOUND when appropriate.
+- Changed the default texture name to "NULL" instead of SHADER_NOT_FOUND.
+- Changed move-into-entity to perform parent-selection-to-last-selected-node.
+- Added a new implementation of GtkTreeModel operating directly on the scenegraph.
+- Fixed disable-screen-updates to queue update requests instead of ignoring them.
+- Merged from trunk (tag head-cvs2svn-2).
+
+22/07/2003
+SPoG
+- Changed scale/flip-selection to use the manipulator as a pivot point.
+- Added OnShutdown callback for CSynapseClient, used in entity module.
+- Fixed console updates when loading maps/models.
+
+20/07/2003
+SPoG
+- Added renderer support for qer_alphatest and qer_cull.
+- Merged 'picomodule' module into 'model' module.
+- Added rendering of area-selection rectangle.
+
+19/07/2003
+SPoG
+- Merged from trunk.
+
+18/07/2003
+SPoG
+- Disabled deleting classname key in entity inspector window.
+- Cleaned up some stuff in selection system.
+- Added basic versions of std::mem_fun and std::bind1st to function-object library.
+
+10/07/2003
+SPoG
+- Implemented connect-entities.
+
+09/07/2003
+SPoG
+- Completed local-space rotation manipulator.
+- Fixed cloning objects within a misc_model subgraph.
+- Fixed crash bug in loading certain models.
+
+06/07/2003
+SPoG
+- Added function-object library header, similar to boost::function.
+- Changed undo system to improve performance.
+- Refactored entity inspector implementation.
+
+22/06/2003
+SPoG
+- Refactored selection observing stuff.
+- Changed shader parsing to use new tokeniser.
+- Changed implementation of entities to use generic container.
+- Refactored entity wrapper system.
+- Fixed undo on delete/reset entity keys.
+
+21/06/2003
+SPoG
+- Added rendering of target/targetname connection lines.
+- Moved entity and eclass stuff out of qertypes.h into ientity and ieclass.
+- Refactored entity_t to hide it behind Entity interface.
+- Removed global project settings entity.
+- Cleaned up bsp-command editing in project settings dialog.
+
+17/06/2003
+SPoG
+- Fixed back-face-culling for selections by working in screen-space.
+
+16/06/2003
+SPoG
+- Added workaround for nvidia driver opengl vertex arrays bug.
+
+15/06/2003
+SPoG
+- Refactored Patch implementation.
+- Refactored scene graph system to allow multiple graph instances.
+
+13/06/2003
+SPoG
+- Added snap-selected-components-to-grid for faces edges and vertices.
+
+11/06/2003
+SPoG
+- Improved normal-quantisation code.
+
+10/06/2003
+SPoG
+- Changed renderer vertex types to be struct instead of typedef'd array.
+- Added experimental quantisation of normals.
+
+05/06/2003
+SPoG
+- Fixed intermittent crash in face-fit-texture.
+- Changed patch rendering to display components only in vertex mode.
+
+02/06/2003
+SPoG
+- Added nameable interface for scene graph nodes.
+- Fixed undo for set-detail and set-structural.
+- Added rendering of arrow for angled entities.
+
+01/06/2003
+SPoG
+- Fixed handling of invalid planes during brush b-rep build.
+- Refactored brush copy-construction/assignment.
+- Fixed lack of rebuild after removing empty faces.
+- Added lightjunior entity display.
+- Fixed display of spawnflags/info for selected entity.
+- Fixed update of entity window on setting spawnflags.
+- Fixed botclip filtering.
+- Fixed uninitialised alpha channel on jpg images by ignoring alpha.
+
+31/05/2003
+SPoG
+- Cleaned up undo calls in brush and patch implementation.
+- Changed brush implementation to defer rebuilds until needed.
+- Fixed undo for find/replace shader.
+- Refactored brush implementation, removed empty-face list.
+- Fixed crash on loading unrecognised entities containing brushes.
+- Fixed crashes in renderer caused by state-stack underflow.
+- Fixed handling of invalid and duplicate planes during brush editing.
+- Fixed failure to save brush faces during save-as.
+- Refactored brush data members.
+
+28/05/2003
+SPoG
+- Fixed crash on selecting stuff from entity list window.
+
+27/05/2003
+SPoG
+- Fixed window title after save-as.
+
+22/05/2003
+SPoG
+- Refactored selection system interface slightly.
+- Removed old brushwrapper stuff.
+- Fixed clipper-split-selection to keep both parts selected.
+
+21/05/2003
+SPoG
+- Added select-faces-by-shader.
+- Fixed find/replace-shader.
+
+19/05/2003
+SPoG
+- Fixed rotation on misc_model.
+
+13/05/2003
+SPoG
+- Fixed lack of undo on create-n-sided-brush.
+
+29/04/2003
+SPoG
+- Fixed per-face find/replace and per-face nudge rotation.
+
+25/04/2003
+SPoG
+- Fixed find-brush.
+- Changed rotation buttons to use perfect precision for 90-degree rotations.
+
+24/04/2003
+SPoG
+- Added find-dir-for-relative-filename and find-dir-for-absolute-filename to vfs.
+- Changed resource manager to handle per-mod resources using vfs.
+- Changed resource manager to allow resources with absolute paths.
+- Fixed selection-test behaving like an ellipse instead of a rectangle.
+
+23/04/2003
+SPoG
+- Changed selection test to choose closest-to-cursor over closest-to-camera.
+
+22/04/2003
+SPoG
+- Fixed reference counting on shaders loaded from a texture directory.
+- Fixed show-in-use and show-all shaders.
+- Fixed undo for patch-set-shader.
+- Changed shaders module to use STL map container instead of CShaderArray.
+- Fixed SelectAllOfType for entities and patches.
+- Cleaned up unused functions in shaders API.
+- Decoupled selecting a texture in texture window from applying a texture to selection.
+
+21/04/2003
+SPoG
+- Fixed memory leaks in image loaders, texdef_t, csg subtract, picomodel module.
+- Fixed uninitialised memory references in renderer, texdef_t, eclass loader, undo system.
+- Refactored tga loader.
+- Cleaned up image module, enabled pcx and bmp loaders.
+
+17/04/2003
+SPoG
+- Fixed shift-texture on selected brush faces.
+- Changed brush b-rep algorithm to have higher tolerance for similar planes.
+- Changed brush b-rep algorithm to always produce a valid connectivity graph.
+- Added setting/getting shader for patches.
+
+16/04/2003
+SPoG
+- Fixed tracking of in-use shaders (though undo queue still keeps shader references).
+- Changed brush faces to store state in undo-system cleanly.
+- Fixed flush & reload shaders and sleep/wake.
+- Ensured that shaders are never leaked.
+- Fixed bool conversion warnings.
+
+15/04/2003
+SPoG
+- Added clamping of planepts on export to nearest 65536th of 1 unit.
+- Changed m4x4 rotation functions to use double-precision for angles in radians.
+- Changed m4x4 quaternion rotation to use double-precision internally.
+- Changed float printing to use %g instead of %f (strips trailing zeros).
+
+13/04/2003
+SPoG
+- Fixed brush import failing to update bounding boxes.
+
+11/04/2003
+SPoG
+- Refactored Brush class into Brush, BrushInstance and BrushNode.
+- Fixed various flaws stopping brush b-rep algorithm from being 100% reliable.
+
+02/04/2003
+SPoG
+- Changed manipulator to move to position of selected brush components.
+
+01/04/2003
+SPoG
+- Fixed xml parser failing to resolve predefined entities.
+
+31/03/2003
+SPoG
+- Fixed asserts in brush manipulation when creating invalid brushes.
+- Removed automatic update of current texdef.
+- Added Get Texture and Set Texture to textures menu.
+
+29/03/2003
+SPoG
+- Fixed array template failing to free zero-sized allocations.
+- Changed clipper mode to behave as a component-editing-mode.
+- Removed right-click-to-drop-clip-point - use X and leftclick instead.
+
+28/03/2003
+SPoG
+- Changed scene graph to sort objects in ascending order of creation time.
+
+27/03/2003
+SPoG
+- Fixed bug in clone-selection causing only first selected brush to be cloned.
+- Optimised select-all for brush/patch components.
+- Changed edge/face/vertex toggles to toggle correctly.
+
+26/03/2003
+SPoG
+- Removed win32/x dependencies from gl interface.
+- Removed win32/glib dependencies from core interface.
+- Replaced void* in gtk helper functions with forward-declared GtkWidget.
+- Changed gtk helper functions to return enumerated values instead of win32 IDOK.
+- Removed WINAPI macro for __stdcall from all interfaces.
+- Removed unnecessary dependencies from core stdafx/qe3 header.
+
+25/03/2003
+SPoG
+- Changed class-level render states to be static for Brush and Patch.
+- Refactored brush implementation - breaking it up into smaller parts.
+- Added refcounted ptr template to track refcounts.
+- Fixed refcount bug introduced by new clone-selection.
+- Fixed warnings in brush implementation.
+- Cleaned up plugin interface header inclusion.
+
+24/03/2003
+SPoG
+- Fixed crash on building unbounded brushes in release build.
+- Changed assertion failures to be non-fatal in release build.
+- Moved OS-specific gl headers into separate files.
+- Moved app-shaders interface into a separate file.
+- Cleaned up dependencies for brush implementation.
+
+23/03/2003
+SPoG
+- Added per-instance selection of patch vertices.
+- Fixed per-instance vertex selection rendering on multiple instances.
+- Refactored patch/brush render code.
+- Changed manipulator transforms to convert to local space before applying.
+- Fixed selection test for picomodule meshes.
+- Fixed selection test winding order for triangles.
+- Fixed update of window title on new-map and load-map.
+- Changed selection to work with exactly side-on faces.
+- Refactored instance implementation to reduce code bloat.
+- Fixed map export always exporting root.
+
+21/03/2003
+SPoG
+- Fixed external resource tracking to preserve uppercase characters in names.
+- Changed clone-selection to not use global copy/paste.
+
+20/03/2003
+SPoG
+- Changed map-save to save all saveable files that the map references.
+
+16/03/2003
+SPoG
+- Moved hashtable and hashfunc into libs.
+- Cleaned up renderer interface and selection interface.
+- Refactored frustum testing class.
+
+12/03/2003
+SPoG
+- Moved winding-specific stuff from brush obj to winding obj.
+- Refactored filter subsystem to remove dependency on entity/brush/patch.
+
+07/03/2003
+SPoG
+- Fixed crash when clicking cancel from patch cap-dialog.
+- Changed selection tests to ignore back-facing faces.
+
+05/03/2003
+SPoG
+- Fixed failure to release cloned scene graph nodes.
+- Fixed selection manager failing to release render states.
+- Fixed eclass system failing to release render states.
+
+04/03/2003
+SPoG
+- Fixed writing-past-end of vertex arrays in brush rendering.
+- Fixed releasing data stored in undo system when deleting undoables.
+- Fixed crash in misc_model when model fails to load.
+- Fixed undo for clone/rotate/flip/nudge/set-texture operations.
+- Cleaned up surface dialog.
+
+01/03/2003
+SPoG
+- Changed clipper split-selection to keep result selected.
+- Cleaned up and finalised picomodule, adding to cvs.
+
+28/02/2003
+SPoG
+- Cleaned up entity list window.
+- Fixed crash on freeing a map while entity list node is selected.
+- Fixed crash on clone/copy of externally referenced brushes.
+- Added multiple-selection support to entity list.
+- Added updating entity list selection display on selection changes.
+
+26/02/2003
+SPoG
+- Added stl_warnings include.
+- Fixed tracking of map-modified-since-last-saved.
+
+24/02/2003
+SPoG
+- Fixed missing map-release when map-load fails.
+- Changed map-rename (save-as) to flush undo queue.
+- Fixed bug in exporting selections.
+
+23/02/2003
+SPoG
+- Fixed redo on changing misc_model "model" key.
+
+22/02/2003
+SPoG
+- Changed undo interface to factor out global undo system.
+
+21/02/2003
+SPoG
+- Started cleaning up Map subsystem.
+
+20/02/2003
+SPoG
+- Added 'clone subgraph' feature to core, using direct xml import/export.
+- Added 'save' feature to reference cache.
+- Added scope timer object.
+- Changed scene graph interface to allow setting scene root.
+- Changed core to use reference cache to track current map.
+- Removed mapmodel module.
+- Fixed relative paths for loading maps as misc_model.
+
+19/02/2003
+SPoG
+- Changed model/map modules to register their file types on load.
+- Added map module manager to support unlimited map loader modules.
+
+18/02/2003
+SPoG
+- Changed vertex buffer template to support resizing.
+- Changed vertex buffer search algorithm to iterate instead of recurse.
+
+17/02/2003
+SPoG
+- Fixed sorting bug with render-states.
+- Fixed colour state when disabling gl_color_array.
+- Fixed unterminated loop in scenegraph traversal.
+- Fixed freeing project entity twice on shutdown (infinite loop).
+- Fixed failing to destroy the scene graph on exit (oops).
+
+07/02/2003
+SPoG
+- Added updating current texdef when a face is selected.
+- Fixed crash when creating a brush with duplicate planes.
+
+06/02/2003
+SPoG
+- Fixed various issues with 'save region'.
+- Changed default current texdef to use game-specific scale.
+- Changed brush creation to use current texdef.
+- Changed clipper to use current texdef.
+- Fixed bug in selection counting for patch control points.
+
+05/02/2003
+SPoG
+- Fixed reversed solid-selection-outline preference.
+- Finished factoring out face_t.
+- Added script token writer interface for map export.
+- Changed map export interface to use script token writer.
+
+04/02/2003
+SPoG
+- Added depth-buffer-write enable/disable feature to renderer.
+- Changed Pointfile class to use renderer.
+- Continued factoring out face_t.
+
+03/02/2003
+SPoG
+- Fixed temporary objects leaving dangling references in the undo system.
+- Changed import-map to not modify existing selection.
+
+02/02/2003
+SPoG
+- Fixed frustum culling for transformed nodes.
+- Fixed hide/filter/region to work independently.
+- Added highlighting of selected brush faces in component mode.
+- Fixed bug detecting thin area-selection if dragged down or left.
+- Renamed brush_type to Brush.
+- Renamed face_type to Face.
+- Started factoring out face_t.
+
+01/02/2003
+SPoG
+- Improved edge and vertex manipulation.
+- Removed unnecessary graph traversals for rendering/selection.
+
+31/01/2003
+SPoG
+- Merged changes since last merge from merge-1_2_10-post to spog_branch.
+- Merged changes since last merge from HEAD to spog_branch.
+- Tagged HEAD after merging as 'merge-spog_branch-post'.
+- Added walker to merge sibling worldspawns.
+- Merged changes to Construct for PPC from trunk.
+- Fixed over-enthusiastic worldspawn merging.
+- Fixed misc_model "angle" key setting pitch instead of yaw.
+- Fixed entity set-key-value changing scene-graph topology.
+
+30/01/2003
+SPoG
+- Added subgraph traversal feature to scenegraph traversal.
+
+29/01/2003
+SPoG
+- Changed scene graph implementation to allow nested traversals.
+
+28/01/2003
+SPoG
+- Fixed angles key order for misc_model.
+
+27/01/2003
+SPoG
+- Fixed typo causing set-texture-of-selection to behave incorrectly.
+
+26/01/2003
+SPoG
+- Replaced all tabs with spaces in CHANGES.
+- Fixed entity bounds updates for 'light'.
+- Fixed code that doesn't conform to c++ standard as enforced by gcc.
+
+24/01/2003
+SPoG
+- Added missing file: icharstream.h.
+- Fixed bug with synchronisation of brush-face instance data.
+- Added .map format import/export interfaces.
+- Removed last remnants of IBrush.
+- Removed IPatch.
+- Moved walkers defined in in mainframe.cpp to appropriate places.
+
+23/01/2003
+SPoG
+- Changed scenegraph traversals to use a compiled graph.
+
+20/01/2003
+SPoG
+- Changed selection interface to hide per-instance data.
+- Added streaming tokeniser for .map format.
+- Changed mapq3 module to use streaming tokeniser.
+- Added xml stream interface for input and output.
+- Added xml stream parser based on libxml2 SAX.
+- Changed mapxml module to use xml stream input.
+- Changed brush and patch to use xml stream input.
+- Added xml stream writer.
+- Changed mapxml module to use stream output.
+- Changed brush and patch to use xml stream output.
+
+
+16/01/2003
+SPoG
+- Disabled pivot updates while selection is being manipulated.
+- Changed pivot calculation to use instanced world-bounding-box.
+- Fixed crash bug in PositionView.
+
+14/01/2003
+SPoG
+- Merged with branch merge-1_2_10-post at tag spog_merge_merge-1_2_10-post
+- Removed 10k+ lines of unused #if 0 code.
+- Removed unused declarations in qe3.h.
+- Removed brush and face types from qertypes.h.
+- Removed plugin API stuff dependant on brush type.
+- Added per-instance selection for brush faces.
+
+08/01/2003
+SPoG
+- Added selection counters for primitive/component modes.
+- Added face-drag mode (default shortcut key = F).
+- Added face-centre-point rendering/selection/editing.
+
+07/01/2003
+SPoG
+- Changed selection to work per-instance.
+
+06/01/2003
+SPoG
+- Changed selector interface to allow per-entity selection tests.
+
+06/12/2002
+SPoG
+- Added selection-test and selector objects to clean up selection system.
+- Unified key modifiers for selection in both primitive and component modes.
+- Added mapmodel module to load .map and .xmap as misc_model.
+
+02/12/2002
+SPoG
+- Added debug rendering of a selection test.
+- Fixed bugs in triangle/line clipper, making selection work properly.
+- Refactored selection system interface.
+- Added undo for texture nudge.
+- Fixed minor render-state bug.
+
+29/11/2002
+SPoG
+- Optimised wireframe drawing of brushes with back-face culling.
+- Optimised brush-winding generation.
+- Changed winding generation to be more robust with large world extents.
+- Fixed crashes with unbounded-face and degenerate-edge cases.
+
+20/11/2002
+SPoG
+- Completed rotation manipulator.
+- Added translation manipulator for the default editing mode.
+- Changed XY mouse-chaser speed to depend on distance mouse moved outside window.
+
+15/11/2002
+SPoG
+- Added initial version of maya-style manipulators - rotation manipulator.
+
+07/11/2002
+SPoG
+- Fixed false asserts in Brush ConstructPrefab.
+- Undo system optimisation - uses binary-sorted container to speed up finding already-added objects.
+- Fixed crash when transforming objects which don't support edit_interface.
+- Fixed clone command to nudge the selection after cloning.
+- Fixed clipper to remove brushes that are completely behind the clip plane.
+
+06/11/2002
+SPoG
+- Brushes: cleaned up per-face operations to use face visitor pattern.
+- Fixed setting brush face texdef, with fully functioning undo on individual brush faces.
+
+04/11/2002
+SPoG
+- Refactored renderer to two objects, camera and XY renderer - XY uses entity shaders.
+- Experimental pivot object.. work-in-progress.
+- Modified scene-graph instance-caching to maintain multiple instances within nodes.
+- Fixed undo bug, deleting a void* doesn't call the destructor.
+- Rewrote filters system to work with scene graph system.
+- Cleaned up quake entity module to provide same functionality as before.
+- Refactored render-state cache to use generic hashtable and reference-cache templates.
+
+19/10/2002
+SPoG - spog_branch - experimental - work-in-progress
+- added scene graph library: defines interfaces, generic graph node types,
+  re-usable systems for traversals, traversal paths, node containers,
+  multiple-instance caching of world-space-transforms/bounding-volumes/visibility.
+- added scene graph traversals to replace all traversals of 'active_brushes',
+  'selected_brushes', 'filtered_brushes' and 'entities' linked-lists.
+- added view module: view-volume-culling system acting on the scene graph,
+  uses scene heirarchy to minimise culling tests per frame.
+- added opengl-state module: sorts opengl-state objects (shaders) to minimise
+  opengl state changes during rendering.
+- added renderer module: culls objects outside the view volume,
+  gathers non-culled renderable objects from the scene graph,
+  keeps track of state during traversal, adds renderable objects to correct opengl-state.
+- added selection module: sets view volume to the selection box/ray, culls
+  objects outside the view volume, gathers non-culled selectable objects
+  from the scene graph (entity/primitive/component),
+  selects gathered objects (select/toggle/cycle) or moves things if already-selected.
+- added patch module: encapsulates a patch as a scene graph node,
+  optimised patch tesselation.
+- added brush module: encapsulates a brush as a scene graph node,
+  adapts multiple-brush operations to use the scene graph.
+- adapted entity module: encapsulates an entity as a scene graph node/subtree,
+  shares common code between different visualised entity types.
+- adapted model module: encapsulates a model as a scene graph node/subtree.
+- added undo module: completely new compact infinite-undo-system,
+  operates on undoable objects, uses minimal-state data to store objects,
+  uses refcounting to undo "deleted" objects.
+
+TODO: cleanup: many simple things are still broken or not functioning in the right way..
+see !\todo items in the code (not all are documented yet though).
+Selection module probably needs refactoring some more - perhaps split off the move-already-selected stuff.
+The dependencies are still pretty bad.. need to refactor stdafx.h/qertypes.h.
+Some of the above modules are not really modules, they're static-linked to the core, but could easily be dynamic-linked.
+The interfaces to brushes and entities still expose brush_t and entity_t for backwards-compatibility.
+NOTE: some todos are #if 0 because their functionality is (or will be) replaced by the new systems.
+
+------ branch point - spog_branch
+
+30/08/2003
+SPoG
+- Ported changes from trunk.
+
+17/08/2003
+SPoG
+- Ported changes from trunk.
+- Added quake pack to win32 setup scripts.
+- Fixed crash in RunBsp.
+
+17/05/2003
+SPoG
+- Renamed stream interfaces with C and I prefix.
+- Shoehorned bytestream into idatastream.
+- Moved member classes out of IArchive, replaced with member typedefs.
+- Renamed filesystem, path, dynamic string, file input stream with C and I prefix.
+- Documented filesystem, path, dynamic string, file input stream.
+- Cleaned up game-specific encapsulation classes a little.
+
+16/05/2003
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=815
+  found out about string_t that slept through my reviews
+
+Updated list of broken stuff on this branch:
+
+- include/bytestream.h: remove this file, extend idatastream.h header
+from the code conventions:
+  include/ directory:
+  This directory is holding the API header files for the synapse modules (plus a few build control and version related headers)
+  All headers that describe synapse APIs should start with an i: ishader.h igl.h 
+
+  The few files in include/ that don't start with a lowercase i are specific files for build control and configuration.
+  Regular developement never creates non i-prefixed files in include/
+  
+the merge with IDataStream goes like this (note the corrected class names):
+class IInputStream
+class IOutputStream
+
+class IDataStream : public IInputStream, IOutputStream
+
+class ISeekableStream
+class ISeekableInputStream : public IInputStream, public ISeekableStream
+class ISeekableOutputStream : public IOutputStream, public ISeekableStream
+
+typedef unsigned int size_type; goes away, use size_t
+
+- include/iarchive.h
+
+renamed VisitorFunc to IArchiveVisitor
+move it out of IArchive class (keep it in iarchive.h though)
+from code conventions:
+  Don't declare classes inside classes. Makes the code harder to read and isn't useful to anything.
+
+- remove libs/bytestreamutils.h
+put that functionality into the IStream stuff / idatastream.h stuff
+anything you retrieve from an IStream should be endian-correct
+
+- libs/filestream.h
+I'd rather see a header without embedded code, and a .cpp file for it
+
+- libs/fs_filesystem.h libs/fs_path.h
+those totally lack documentation about what they are doing
+same as above. way too much embedded code. makes things harder to maintain. implement in a .cpp
+and as usual, name the classes correctly, C and I prefixes
+
+- gamespecific_t: rename correctly to CGameSpecific
+I like the idea of gathering all hardocded game-specific behaviours inside one same class.
+But is it really the topic of bug800?
+
+- gamespecific_executable_t: rename correctly to CGameSpecificExecutable
+shouldn't this be merged with CGameSpecific?
+
+12/05/2003
+SPoG
+- Fixed win32 build error (win32 has no <dirent.h>).
+- Added dir_good() check to handle failure of dir_open() in posix DIR wrapper.
+- Renamed dynamic_string_t and path_t to DynamicString and UnixPath respectively.
+- Removed unnecessary use of 'inline' and 'virtual' keywords in class definitions (bad habit).
+- Documented archive interface.
+
+09/05/2003
+TTimo
+- some easy fixes to get it to startup on Linux
+- tagging the current source as bug800-spog, preparing rollback
+
+
+SPoG
+- Added an implementation of IArchive to do OS filesystem access.
+- Changed vfspk3 to use above implementation for OS filesystem access.
+- Added const qualifiers to vfsGetFullPath and everything dependant on it.
+- Changed vfsGetFileList to use "*" to indicate all-files instead of a NULL pointer.
+- Extended IArchive interface to allow for extra filesystem functionality.
+  Added method to check if a file exists quickly.
+  Added method to traverse the filesystem with control on start-dir and depth of recursion.
+- Defined implementation requirements for IArchive.
+  An archive contains a heirarchy of directories and files, and may contain empty directories.
+  An archive can be traversed in directory order.
+  Directories can be distinguished from files during a traversal.
+  Directory paths will always end with a separator.
+  File entries can be opened as an IArchiveFile.
+  IArchiveFile provides a simple non-seekable input stream which can only be read forwards.
+  Any number of files may be opened and read from an archive simultaneously.
+  An archive may be released while one or more files are still open, the files will remain valid until released.
+- Changed archivepak, archivezip and archivewad to implement all IArchive requirements.
+- Factored common code from archive implementations out into new lib/headers:
+  fs_filesystem.h: a templated filesystem container, with iterators and efficient traversal.
+  fs_path.h: a dynamic filesystem path object, with separator checking and efficient memory management.
+  ibytestream.h: abstract interfaces for input byte streams.
+  bytestream.h: utilities operating on abstract input byte streams.
+  filestream.h: a c++ wrapper for stdc FILE object, implementing a seekable input stream.
+- Added a new pkzip-reader implementation, designed to be orthogonal to the compression library used.
+- Added a zlib input stream object, which decompresses data from an abstract byte stream on the fly.
+- Removed archivezip code copy/pasted/hacked from zlib and unzip.c, replaced by pkzip-reader and zlib input stream.
+- Changed vfsLoadFile to return 0 for a zero-sized file, only returning -1 if it failed to load the file.
+- Removed halflife-specific disabling of shader-loading, thereby allowing common-hydra.shader to work.
+- Added archivezip, archivewad and archivepak to win32 setup scripts.
+- Updated win32 setup scripts for halflife media.
+- Updated cons scripts for archivezip, archivewad and archivepak.
+- Added printing of warnings when vfs functions are given invalid input paths.
+
+
+-------- branchpoint: "bug800-spog_branch"
+
+
+30/08/2003
+SPoG
+- Ported changes from trunk since branch point.
+
+11/08/2003
+SPoG
+- Split qe3.h up into multiple headers.
+- Cleaned up use of win32 symbols:
+  WINAPI macro for module functions removed.
+  GUID for module interfaces replaced by string.
+  boolean replaced by bool.
+  MB_OK etc gui defines replaced by enumerations.
+- Removed plugin stuff deprecated by synapse from qerplugin.h.
+- Cleaned up use of glib symbols:
+  guint32, gdouble, gboolean typedefs removed from non-glib-dependent code.
+  TRUE/FALSE replaced by c++ bool true/false.
+- Removed all "extern" function declarations.
+- Removed dependency on MainFrame from preferences.h.
+- Moved synapse server and pluginmanager instances to pluginmanager.cpp.
+- Split pluginmanager.cpp into three parts:
+  Radiant's synapse client stuff in plugin.cpp.
+  Implementation of brush/entity/patch-handles stuff in pluginapi.cpp.
+  Synapse server init/shutdown in pluginmanager.cpp.
+- Added forward-declarations to avoid including other headers.
+- Replaced CString usage with Str;
+- Removed unused brush-scripts stuff.
+- Cleaned up patch-vertex-area-selection logic.
+- Removed very old code chunks that were commented or #if 0.
+- Replaced project-entity with a dedicated key/value string map.
+
+---- branch point - spog-cleanup
+
+06/12/2003
+SCDS_ReyalP
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=930
+  shortcuts to change texture window scale
+
+02/12/2003
+SCDS_ReyalP
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=913
+  fix for single monitor window positioning save
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=924
+  fixes to CenterXYView shortcut, correctly bound to Shift+Control+Tab now
+TTimo
+- add a 'q3map2' command line to win32_install.py, factorize and remove win32_install_q3map2.py
+
+-- linux 1.3.14 test build 1
+
+29/11/2003
+TTimo
+- heretic2 has no q2map. linux setup tries to install and breaks
+  removed faulty setup line
+- cleaned more Linux setup fuckage caused by q2/her2
+  a tip: rm -rf build install before building and testing a new setup
+
+28/11/2003
+ydnar
+- full SCC purge of the vs.net project files (for real this time)
+- added seperate Q3Map2 build targets
+- added seperate Q3Map2 post-build Python script
+- _skybox entity support
+- _skybox and _decal in entities.def (Q3)
+
+-- win32 1.3.14 test build 1
+
+28/11/2003
+djbob
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=899
+  bobtoolz update (icon functionality is in menu too)
+djbob & TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=842
+  migration of the win32 build system to vs.net/VC7
+  new libxml and libpng packages are required:
+  http://zerowing.idsoftware.com/libxml/
+  http://zerowing.idsoftware.com/libpng/
+  updated win32_install.py for new names and paths
+TTimo
+- assraped the vcproj with sed to remove Scc entries
+SCDS_ReyalP
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=88
+  2D background image plugin
+TTimo
+- putting together win32 setup updates for 1.3.14
+  msvcr70.dll goes in core directory
+  bkgrnd2d plugin content
+  changed file paths (libxml/libpng)
+  .xlink for new JA content
+
+27/11/2003
+TTimo
+- using a central scons.signatures file for checksums
+- version bump to 1.3.14
+- a libxml-related build bug in qe3.cpp on Debian sid
+- it looks like Sid no longer has inflate_mask exported from /usr/lib/libz.so
+  switched the mask to be defined in our source
+  this may be a problem on other distros, and on holy box (Woody)
+SCDS_ReyalP
+- bug 921 and 922, Z floating window fixes
+- bug 926, hullcaulk, hintskip, subtlehint
+EvilTypeGuy
+- bug 505 - select all faces with a given texture
+
+19/11/2003
+ydnar
+- clipper tool plane points default to 1st selected patch mesh
+
+17/11/2003
+TTimo
+- upgraded server to subversion 0.33
+
+-- released 1.3.13
+
+10/11/2003
+SCDS_reyalP
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=917
+  floating windows startup crash
+
+09/11/2003
+TTimo
+- fix M4_GAME_ET ( OSX setup )
+AstroCreep
+- cleaned up JA shader scripts
+
+01/11/2003
+ydnar
+- Merged ASE submaterial/subobject code from BirdDawg
+- Made Q2/Heretic2 tools not use precompiled headers to eliminate Win32 compilation errors
+- Added glColor4ubv() support to the GL function table
+- Changed PicoModel rendering to use glColor4ubv() instead of 4 divides and pass-by-value glColor4f()
+- Fixed bug 900 by setting alpha to 255 explicitly in image module, rather than 3 input components,
+  which was borking Q3Map2 jpeg loading, and thus compiles
+
+24/10/2003
+TTimo
+- bump to 1.3.13
+Anders
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
+new osx patch, fixes strip bug in setup. merging setup patches to a single file
+SCDS_reyalP
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=900
+Some jpegs get garbaged alpha channel
+
+22/10/2003
+-- merge https://zerowing.idsoftware.com:666/radiant/GtkRadiant/branches/Release-1.3.12/
+  19/10/2003
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
+    scons BUILD=info to generate a tarball and it's .info
+
+  18/10/2003
+  Spog
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=888
+    patch for 16 bit RGBA support in glwidget
+
+  -- released 1.3.12 Linux
+
+  14/10/2003
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=879
+    fixed hellish dlclose issue only occuring with holy builds
+
+  -- released 1.3.12 win32
+-- end merge
+Arnout
+- added epsilon testing to hashtable compares to eliminate almost-identical vertices
+- pico surfaces now use the normals from LWO vertices
+
+21/10/2003
+Arnout
+- added hashtable for faster vertex matching during LWO surface generation
+- model rendering now uses DrawElements and will use vertex colours in wireframe/flats shade mode 
+
+20/10/2003
+Arnout
+- added LWO support to picomodel.
+    shader names are derived from surface name
+    only geometry from layer 0 is used
+- added support for 'vertical flipped' TGAs
+
+19/10/2003
+Arnout
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=893
+  fixed starton primary monitor
+  fixed mouse pointer setting on win32 to properly translate gdk's offset coordinate system in windows' one
+  
+-- released 1.3.12 win32
+
+11/10/2003
+Spog
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=865
+  fix texture subsets
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=889
+  misc update, missing JA system textures
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=824
+  fixed .pref file trashing
+Nurail
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=881
+  BSP monitoring disabled by default in Q2
+
+09/10/2003
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=883
+  more JA pack: shaders and mapextras.pk3 textures
+- fix Q2 win32_install.py to put the tools at the right spot
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=878
+  correctly support PNG images with an alpha channel
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=885
+  fix console to refresh during a texture directory load
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=739
+  fix weird Shift + Control + Z causing a Redo in non-floating window mode
+
+07/10/2003
+Nurail & TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
+  Q2 tools, added -fs_basepath. Need corresponding setup and .proj updates
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=875
+  fixed broken surface properties in Q2 surface plugin
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
+  more fixes, build paths in scons, take out INSTALL config on command line (not functional + not need)
+  added Q2 tools back to Linux setup
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
+  using "*" as the shaders minor in surface plugin
+- updated makeself copy to the latest from icculus.org cvs
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=574
+  sprite plugins, tweak to make it functional for all games
+- updated Q2 tools .dsp
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=876
+  more Jedi Academy setup work and content
+  moving imagepng.dll module to the core, as now both Sof2 and JA need it
+  sample maps reorg, new siege_hoth_sample.map
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=874
+  a lot more models - using a dynamic File Group in IS to cope with that
+- Q2 IS setup fix, was not properly putting stuff in baseq2/
+  IS setup: tweak to Q2 tools stuff
+
+06/10/2003
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
+  Q2 setup needs to be cleaned up and unified between win32 and Linux
+  using INSTALL_Q2 and TOOLS_Q2 in SCons script to install the Q2 tools
+  fixed the setup build dependencies to reference the Q2 tools targets
+  moved the Q2 specific modules imagewad and vfspak to q2/modules
+
+05/10/2003
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=871
+  updating the gtk2 version to 2.2.4
+  adding an SVN module with the Gtk2 developer package: checkout gtk2-win32
+  updating IS to the new files
+  sed'ing the .dsp to replace src-gtk2 by gtk2-win32
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=609
+  Q2 tools: comment out dupe strupr on win32
+  update IS setup to missing Q2 stuff ( vfspak and tools )
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=866
+  Fixed Camera inspector window not refreshing. Was a missing top level gtk_widget_show call
+
+03/10/2003
+Nurail
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=609
+  quake2 tools build scripts
+  Linux setup updates - Q2 game pack in Linux setup
+TTimo
+- scan through all URL links in game.xlink to update them
+- added JA links (Raven and MapCenter forums)
+
+30/09/2003
+TTimo
+- update all synapse.config, win32 .dsw and install_win32.py for new surface module
+- Jedi Academy and Quake II game packs in IS setups
+- hardcoded hacks in editor core for JA, copied over from JKII
+- bug #867, disable sleep by default
+- q3map2 bug fix
+
+Nurail
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=862
+  Q2's 'no patch' stuff
+
+29/09/2003
+TTimo
+- OSX: fixup setup.xml.in
+
+-- merge bug856 back into trunk
+16/09/2003
+Nurail
+- new patch + win32 stuff for surface module
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=804
+  refactored the XML synapse.config handling:
+    better detection of invalid XML file
+    less code, factorized to CSynapseClient::ConfigXML
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=828
+  fixing bobtoolz 'shaders' major loading issues
+  added '*' minor. to be used with lots of caution. only if the given major will have a single API such as 'shaders'
+  also, map module was missing a VFS entry in non-HL configs. that's bad karma, using a minor "*" instead
+  NOTE: on a lot of modules we could be using a '*' entry instead of having lines in synapse.config
+- took out obsolete md3model
+
+15/09/2003
+Nurail
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=856
+  quake2 surface module
+
+07/09/2003
+Nurail & TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=856
+  a surface inspector module to customize per-game API
+  removing DO_SURFACEPLUGIN define (enabled implicitely)
+  removing bSurfacePropertiesPlugin (true implicitely)
+  remove SI_SetActiveInRadiant, it's always on by default
+  why was USE_UNDOTABLE_DEFINE taken out? - put back in
+  removed DBG_PLUGIN define and related code, that stuff is from way back and no longer relevant
+  cleanup QERApp_FreeShaders in shader module from DO_SURFACEPLUGIN stuff
+  the WINAPI stuff in interfaces is not needed, that's an old remnant. Cleaned up
+-- end merge bug856 back into trunk
+
+19/09/2003
+Justin Blur
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=785
+  fix ~/.radiant permission bug
+Nurail & TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=849
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=851
+  win32 updates for the new modules and install_win32.py
+
+16/09/2003
+Nurail & Hydra
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=848
+  q2 map format minor
+
+08/09/2003
+Tr3B
+- imagepng.so / PNG format support in Linux
+  NOTE: atm no official supported Linux game by GtkR uses this
+
+07/09/2003
+Nurail
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=851
+  imagewal.so module / wal image format
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=840
+  md2 support in picomodel
+
+06/09/2003
+Nurail & TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=848
+  renaming mapq3.so to map.so
+  added hooks for Q2 map format load/save to single map module (minor mapq2)
+Nurail
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=849
+  vfspak port to synapse and updates
+
+04/09/2003
+SPoG
+- Fixed crash in RunBsp caused by passing an invalid pointer to printf.
+- Changed console to wrap long lines instead of using horizontal scrollbar.
+
+30/08/2003
+Anders & TTimo
+- OSX setup, new patch to make scons SETUP=1 produce a .run
+- don't put bspc Linux binary in the setup
+
+30/08/2003
+Anders & TTimo
+- OSX setup, new patch to make scons SETUP=1 produce a .run
+- don't put bspc Linux binary in the setup
+
+26/08/2003
+Anders
+- more scons OSX, start on setup stuff
+
+25/08/2003
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=855
+  make 'move into worldspawn' work again
+Anders Gudmundson & TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
+  OSX scons build system
+
+24/08/2003
+ydnar
+- Removed "test.cpp" from radiant.dsp (merge artifact?)
+- Added ddslib to radiant.dsw
+- Correctly set lib deps for q3map2.dsp for ddslib
+- [bug 852] Increased buffers from 260 bytes on Win32 to 4096 bytes
+
+TTimo
+- bump to ver 1.3.12
+- EnsurePythonVersion broke in 0.91 (commented out)
+
+David Hogue
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=844
+  q3data Linux. q3data can read .ase and turn them into .md3
+
+23/08/2003
+ydnar
+- Added ddslib to repository, based on nvidia sample code, cleaned up a bit
+  straight C, loads DXT1, DXT3 and DXT5 format DDS textures.
+
+22/08/2003
+TTimo
+- https://zerowing.idsoftware.com:666/viewsvn/
+- Arnout's commit email script - try #2
+  the commit script doesn't handle viewsvn root remaps (radiant instead of radiant.svn)
+  adding a prefix to the report
+
+04/08/2003
+TTimo
+- conversion from CVS to Subversion:
+repository convert completed (with revml)
+module repositories glued together in a single one
+hooking email commit scripts and backup scripts
+- Python >= 2.1 required instead of 2.2
+
+01/08/2003
+SPoG
+- Changed gl widget to request maximum available depth buffer precision.
+- Changed all uses of deprecated GtkCList and GtkCTree to use GtkTreeView/Model.
+- Fixed directory handle leakage in synapse module search.
+- Fixed dir_dialog always returning NULL for Textures -> Load Directory.
+
+23/07/2003
+SPoG
+- Ported focus_out_event handlers in gensurf to gtk2 signals system.
+- Fixed failure to load models for entities other than misc_model.
+- Fixed crash in model module shutdown caused by mismatched resource capture/release.
+
+22/07/2003
+TTimo
+- fix q3map2 .dsp for correct glib-2.0 includes (common/vfs.c)
+- camera plugin installs to core now (RTCW and ET)
+- fixups to the merged setup stuff
+- patched cvsreport to provide explicit diff for some files #2
+- fix to work with scons 0.90 / added LIBPREFIX ('lib') where needed
+  https://sourceforge.net/tracker/?func=detail&atid=398971&aid=766975&group_id=30337
+SPoG
+- Fixed crash in cmdlib ExtractFileBase when source filename is an empty string.
+
+20/07/2003
+TTimo
+- SCons scripts for the ported plugins: bobtoolz, camera, prtview, gensurf
+- ET Linux setup script + new plugins
+- q3map2.x86 is installed and wrapped through a q3map2 script (libstdc++ LD_LIBRARY_PATH)
+- update ChangeLog and credits
+- put back the GTKRAD_DIR in .fgl
+
+19/07/2003
+SPoG
+- Tagged trunk before merge as bug537-merge-3.
+- Tagged branch port_gtk2_20030307 as gtk2-merge-final.
+- Merged changes since tag bug537-merge-2 into trunk.
+- Removed gtk dependency from plugin toolbar interface.
+- Ported prtview, bobtoolz and gensurf to gtk2.
+
+18/07/2003
+Anders Gud
+- OSX build fix
+
+16/07/2003
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=814
+  merging ET support code into to trunk
+- cvsreport 0.3.0 - http://www.nongnu.org/cvsreport/
+  rolling out this ver since old cvsreport setup broke
+- fixup to build on Linux (including fixing plugin builds)
+
+-- release-1_3_8-ET
+
+02/07/2003
+TTimo
+- new setup build, with patches and updates from SD
+- local fixing of bobtoolz dependency against libcmd, and itoolbar.h gtk header bustage
+
+19/06/2003
+TTimo
+- missing plugins. add them to .dsw for default build, add them to IS setup:
+  camera, gensurf, bobtoolz, prtview
+- fixup bobtoolz code for VC6. for(int i=0 causing duplicate definition errors
+- removed pk3man from IS (we no longer distribute/maintain it)
+  TODO: cvs remove the IS files for it
+- re-enabled plugins in build by default, disabled curry and textool
+  TODO: following error when bring up About box of bobtoolz:
+  BobToolz::ERROR->Failed To Load Exclusion List: C:\Program Files\GtkRadiant-ET-1.3\plugins\bobtoolz.dllbt\bt-el2.txt
+
+18/06/2003
+TTimo
+- add ET game pack. from Arnout's full dump of editor source + game pack data
+  trunk tagged at ET-tag for this
+- Dlg_SdAskCorePath:
+    szDir   = "C:\\Program Files\\GtkRadiant-ET-1.<<RADIANT_MAJOR>>";
+
+09/06/2003
+ydnar
+- Added Q3Map2 keys/entities to Quake 3 entities.def
+- Removed obsolete vlight keys from Quake 3 entities.def
+- Added MD5 functionality to mathlib, from:
+  http://sourceforge.net/projects/libmd5-rfc/
+
+------- merged changes since tag bug537-merge-2 from branch port_gtk2_20030307 to trunk
+
+TTimo
+- try checkin on branch see if cvsreport 0.3.0 will verbose it
+
+08/07/2003
+SPoG
+- Fixed recent-files list for file names containing underscores.
+
+07/07/2003
+SPoG
+- Fixed crash and file-type bugs in gtk file-dialog.
+TTimo
+- converted the setup code from perl to python
+- added copy over of libgcc_s and libstdc++, and LD_LIBRARY_PATH in the wrapper script
+
+06/07/2003
+SPoG
+- Changed console popup menu to include cut/copy/paste as well as clear.
+
+05/07/2003
+SPoG
+- Fixed the way surface-inspector dialog responds to escape key.
+
+04/07/2003
+TTimo
+- linux building / SCons
+  0.90 is broken, use 0.14 for now. added version check
+  adding scons SETUP=1 option to spawn setup build
+  enable back vfswad in scons
+  TODO: grab Conscript-setup, convert it to python in build_setup function
+
+02/07/2003
+TTimo
+- building a win32 setup, using -gtk2 suffix (game packs in Radiant-1.3-gtk2 and core in GtkRadiant-1.3-gtk2)
+SPoG
+- Ported vfswad to gtk2.
+- Fixed memory leak in vfspk3 directory search.
+- Added vfswad to win32_install.py.
+
+09/06/2003
+TTimo
+- tagging setup/ as gtk2_setup_rollback
+  rolling back trunk setup code to the branch to build an experimental release
+- merge trunk to branch:
+-- tagged HEAD with bug537-merge-2
+-- merge HEAD between bug537 and bug537-merge-2 into the branch --
+  31/05/2003
+  TTimo
+  - grab back vfswad code that I forgot in bug 800 rollback
+  - add prtview back to the project, fix it to build (#817)
+
+  27/05/2003
+  djbob
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=817
+    prtview fixes, upgrade to synapse
+
+  -- release-1_3_8
+-- end merge HEAD between bug537 and bug537-merge-2 into the branch --
+- freshly merged in vfswad is broken
+- freshly merged in prtview is broken
+- q3radiant.dsp -> GtkRadiant.dsp, outputs GtkRadiant.exe
+- removed vc5 dsps
+SPoG
+- Updated win32 setup stuff to use gtk2 dlls.
+- Modified setup.pl to run correctly (tested on cygwin perl 5.6).
+
+08/06/2003
+TTimo
+- Linux:
+  check gcc 3.x, better ldd check
+  add gcc version to about message
+  kill old cons stuff
+- added q3map2.x86 scons build  
+- header conflict libs/cmdlib.h tools/quake3/common/cmdlib.h
+  grepped through q3map2 source to change #include "cmdlib.h" to common/cmdlib.h
+- killed more cons files remnants
+SPoG
+- Improved error reporting for win32 setup system.
+- Fixed errors reported when running setup scripts.
+- Fixed scale of xor selection rectangle in XY window.
+
+07/06/2003
+SPoG
+- Fixed X Window System error when entering freelook on *nix.
+
+06/06/2003
+SPoG
+- Fixed copy/paste on *nix.
+- Changed copy/paste on *nix to use GtkClipboard api.
+- Changed copy/paste on win32 to be non-window-specific.
+- Further cleaned up MainFrame::Create.
+- Changed freelook to use gdk_window_get_origin instead of gdk_window_get_root_origin to place the cursor.
+
+05/06/2003
+SPoG
+- Fixed grey statusbar in 4-way-split mode.
+- Redirected gtk messages before creating main window.
+- Removed unused XYFriend hack from camwindow.
+
+04/06/2003
+TTimo
+- win32_install.py settings loaded/saved from site.conf
+
+02/06/2003
+TTimo
+- fixed python running with no output. Make sure VC6 finds native Python before any cygwin Python
+  look at the Directories settings in Tools > Options to either kill the c:\cygwin\bin path, or have Python path first
+- renamed dupe files to avoid header collision and general confusion between entity and model
+- added win32_install.py to perform post-build install (need to load the configuration paths from a non-cvs stored site.conf file)
+
+01/06/2003
+TTimo
+- bind gen.dsp to makeversion.py
+- added a run_python.bat to check for python presence and execute
+
+27/05/2003
+TTimo
+- write makeversion.py module - hook it up to SCons build - cleaner, easier to use
+- comment out vfswad build lines. source is still not in tree (bug 800 aftermath I think)
+
+18/05/2003
+SPoG
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
+  Changed Sys_FPrintf_VA to immediately process console events during map load.
+  Changed startup to create main window after QE_Init().
+  Fixed loading last map on startup.
+  Fixed crash on exit.
+  Fixed colour dialog.
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
+  have to delay merging back to trunk. 
+  have a behaviour problem between debug and release builds.
+  while debug is fine, release is screwed (see bug item)
+
+-- tagged HEAD with bug537
+-- merge HEAD between merge-gtk2-20030413 and bug537 into the branch -----
+  11/05/2003
+  Dan Olofson & TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=812
+    workaround for ATI drivers bug (polygon backfaces)
+    use Preferences > 2D Display/rendering > ATI cards with broken drivers
+  Riant
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=806
+    updated synapse.config for SoF2 png
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=805
+    dir_dialog is broken - is only used in prefab path prompt
+
+  -- release-1_3_7
+
+  14/04/2003
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=801
+    moved "ignoring sprite for entity.." to be a _DEBUG only thing
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=802
+    fixed models not drawing on win32. was a setup bug
+  - OSX setup build updates - added dependency against libpng3-shlibs
+  - added openurl.sh to open urls on *nix (with setup updates)
+  Riant  
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=803
+    RTCW - default_project.proj in setup
+
+  13/04/2003
+  Michael Schlueter & EvilTypeGuy
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=684
+    imagepng building under Linux
+  Riant & TTimo  
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=797
+    fixed texture compression support
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=799
+    regen project file from template on version upgrade
+    updated all default_project.proj to have "version" "1"
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=798
+    missing modules/bitmaps/model_reload_entity.bmp from Linux setup
+-- end merge HEAD between merge-gtk2-20030413 and bug537 into the branch -----
+  
+17/05/2003
+TTimo
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
+  http://www.qeradiant.com/wikifaq/index.php?Gtk2%20build%20notes
+  went through the new dll dependencies, listed required files preparing for a single zip package
+  updated all the project files to rely on src-gtk2/
+
+13/04/2003
+SPoG
+- Tagged HEAD with 'merge-gtk2-20030413' and merged HEAD --> port_gtk2_20030307.
+
+12/04/2003
+SPoG
+- Added gtk-2.x libraries to win32 setup.
+- Changed win32 setup to use 'dynamic' file-groups, making it possible to add files without
+  modifying installshield scripts.
+- Modified win32/setup.pl to copy setup data to dynamic file-group directories.
+
+30/03/2003
+TTimo
+- added scons scripts. the scons engine is included in the tree. you just need to have python
+  have ldd -r safe check on .so  
+  TODO:
+  - make sure it's gcc3
+  - check OSX
+  - add q3map2 build
+
+29/03/2003
+TTimo
+- tracked and fixed the startup bomb on Debian sid:
+  `pkg-config gtk+-2.0 --libs`
+  -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
+  http://www.gnu.org/manual/ld-2.9.1/html_chapter/ld_2.html#SEC3
+  --export-dynamic
+    When creating a dynamically linked executable, add all symbols to the dynamic symbol table. 
+    The dynamic symbol table is the set of symbols which are visible from dynamic objects at run time. 
+    If you do not use this option, the dynamic symbol table will normally contain only those symbols 
+    which are referenced by some dynamic object mentioned in the link. If you use dlopen to load 
+    a dynamic object which needs to refer back to the symbols defined by the program, rather than 
+    some other dynamic object, then you will probably need to use this option when linking the program 
+    itself.
+  this causes symbol confusion, shaders.so's g_ShaderTable suddenly resolves to the core's g_ShaderTable
+  one is a 'shaders' API, the other an 'appshaders' .. everything gets badly mixed up
+  added a check in the cons script, using `pkg-config gtk+-2.0 --libs-only-L` `pkg-config gtk+-2.0 --libs-only-l`
+  (same for gtkglext)
+    
+28/03/2003
+TTimo
+- propagate jpeg compile fix from bug750 branch
+- use PKG_CONFIG_PATH when building radiant/ (alternate gtkglext-1.0)
+- on OSX, you need gtk+2-dev package, and pkgconfig, atk1
+  build gtkglext from source http://gtkglext.sourceforge.net
+
+17/03/2003
+TTimo
+- updated the build system to glib2/gtk2/gtkglext
+  atm it compiles and starts on my dev box (Debian Sid)
+  but doesn't reach end of initialization, hangs on
+   q = (qtexture_t*)g_hash_table_lookup (g_ShadersTable.m_pfnQTexmap (), stdName);
+   in shaders.cpp QERApp_Try_Texture_ForName
+  need to have the gtk2 dev packages, and libgtkglext1-dev
+
+12/03/2003
+SPoG
+- Replaced alpha-blended area-selection rect with XOR rect.
+- Fixed YX/XZ/YZ toggle in floating windows layout.
+- Cleaned up xor rectangle code.
+
+11/03/2003
+SPoG
+- Fixed console scroll-to-last-text-inserted.
+- Fixed console error/warning colours.
+- Refactored or removed WIN32-specific gtk-related stuff.
+- Removed win32 SetCapture/ReleaseCapture on GLWindow.
+- Removed win32 gtk_main_iteration calls in glwindow mousemoved.
+- Cleaned up start-on-primary-monitor stuff.
+- Changed main window to use standard save/load window position/size.
+- Replaced deprecated gtk_widget_set_uposition with gtk_window_move.
+- Removed win32/X gl functions from igl.
+- TODO: replace/remove deprecated gtk_widget_usize.
+
+10/03/2003
+SPoG
+- Changed fonts in win32 rc file to 8pt tahoma.
+- Fixed flat-grey gui in Regular layout mode.
+- Changed main-window save/restore maximized to use gtk API.
+- Fixed button_press_event handling on console/entity/entitylist windows.
+
+09/03/2003
+SPoG
+- Fixed crash on shutdown after changing floating-z-window preference.
+- Removed win32_realize_floating hack.
+- Refactored MainFrame::Create to make it more readable.
+- Fixed key_press_event handlers for entity/surface/patch dialogs.
+- Fixed delete_event handlers for dialogs derived from Dialog class.
+
+08/03/2003
+SPoG
+- Fixed viewport for entity window comment text.
+- Fixed x-shrinking for entity window comment text.
+- Fixed menu underscore shortcut hack in MRU list.
+- Changed groupdialog to connect switch_page signal after creating all pages. 
+- Changed gl widget to use gtkglext/pango to create fonts.
+- Cleaned up gtkglext glwidget implementation.
+- Reduced border size on toolbar widgets.
+- Replaced font with font_name in win32 rc file.
+- Added viewports for all scrolled text boxes.
+- Fixed entities/textures/console window title update when page is changed.
+- Fixed floating windows not being transient to main window (don't want them on taskbar).
+
+07/03/2003
+SPoG
+- Created a new branch for the port to gtk 2.x. 
+- Fixed menu underscore shortcuts to use gtk_label_new_with_mnemonic.
+- Fixed global keyboard shortcuts by using mainframe_keypress.
+- Fixed use of deprecated gtk_color_selection_get_color.
+- Removed use of deprecated gtk_paned_set_gutter_size.
+- Replaced deprecated gtk_widget_draw with gtk_widget_queue_draw.
+- Replaced deprecated gtk_object_get/set_data with g_object_get/set_data.
+- Replaced deprecated gdk functions with 2.x equivalents.
+
+
+----- branch port_gtk2_20030307 ------
+
+
+13/04/2003
+Michael Schlueter & EvilTypeGuy
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=684
+  imagepng building under Linux
+Riant & TTimo  
+- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=797
+  broken texture compression support
+
+
+
+31/01/2003
+SPoG
+- bug #752 - Construct fix for ppc, patch applied.
+
+26/01/2003
+TTimo
+- bug #750 - revamp of the setup stuff on Linux
+  (under way, see bug for progress - feel free to help!)
+- reworked the cons scripts, setup is hooked in to cons now
+  also, added gcc version select on command line, using Cons_gcc.pm utility
+
+22/01/2003
+TTimo
+- merged merge-1_2_10-post back to trunk
+
+
+===============================================================
+-- merging release-1_2_9 -> merge-post-1_2_10 into trunk
+   trunk before merge is tagged pre-merge-1_2_10
+===============================================================
+
+22/01/2003
+TTimo
+- finished up the TODO items, turned into bug items or dropped them. branch is ready to move back in to trunk
+
+18/01/2003
+TTimo
+- fixed ID_SELECTION_MERGE
+
+17/01/2003
+TTimo
+- fixups
+  FlushReloadSelectedToolbarButton -> CFlushReloadSelected
+  incorrect naming: RadiantToolbarModuleManager -> CRadiantToolbarModuleManager
+  ToolbarButton -> IToolbarButton, and C* implementations
+  http://www.qeradiant.com/wikifaq/admin.php?Code%20Conventions
+
+14/01/2003
+ydnar
+- Minor Cons fix for OS X (bug 729)
+
+13/01/2003
+ydnar
+- GtkRadiant now builds on OS X, Linux, and Win32 out of the same tree
+- OSX build uses gtkfileselect-linux now, as the Darwin version was broken/old
+  fixme: change this to use OS X open dialog box or something?
+- Minor fixes to a few files to fix gcc warnings
+- Model module now builds on OS X and Linux, using Synapse properly
+- PicoModel change to invert T coordinate on ASE models
+- Q3Map2 change to export ASE models with T coordinate flipped
+- Misc Q3Map2 changes
+
+09/01/2003
+ydnar
+- Updated Construct with Darwin/OS X ld flags for 4MB stack size
+- Misc Q3Map2 updates (2.3.35-dev)
+
+05/01/2003
+ydnar
+- "angles" key now properly ordered, to work with current mathlib
+  (also changed in Q3Map2)
+
+31/12/2002
+ydnar
+- PicoModel: Minor fix to MDC loader (naming/define)
+- Q3Map2: 2.3.34-pre-1 updates
+- MapXML dsp unix->dos newlines
+
+29/12/2002
+SPoG
+- Merged q3map2-texturing prefs key.
+- Merged vfs check for gamemode project key.
+
+27/12/2002
+TTimo
+- fix GetTickCount stuff
+- added q3map2 cons script
+- fixed Linux build
+
+23/12/2002
+SPoG
+- Added model cache API, moved model cache implementation from entity module to core. 
+- Added file-type registry API, replaced core file-type manager with registry.
+- Changed model module to register supported file types with core registry.
+- Removed or #ifdef'd non-functional code from model module.
+- Added support for misc_gamemodel and model_static to entity module.
+- Cleaned up entity module's on-epair-changed API.
+- Moved light-entity-specific code to a seperate file in entity module.
+- Cleaned up file dialog interface - specify file-type-lists with a string.
+
+22/12/2002
+SPoG
+- Ported camera plugin to synapse, adding support for camera and ui APIs.
+
+20/12/2002
+SPoG
+- Fixed default prefs setting for selected-brushes-camera, gridmajor-alt and gridminor-alt.
+- Merged CEntityEclassModel::Draw in entity module.
+- Ported imagepng module to synapse.
+- Fixed warning for CamDragMultiSelect preference bool used as int.
+
+19/12/2002
+SPoG
+- Fixed white-textures bug caused by texture compression preferences.
+- Ported light-radius rendering to 1.3 entity module.
+
+18/12/2002
+SPoG
+- Merged win32 project files, with the exception of camera plugin.
+- Ported model module to synapse API.
+- Redesigned toolbar API to remove gtk-dependency from toolbar plugins.
+- Refactored window-position preference save/load.
+
+17/12/2002
+TTimo
+- kick doxygen generation for branch merge-1_2_10-post
+
+15/12/2002
+TTimo
+- having the linux version compile and start again. took out numerous elements while merging, built a list of TODO stuff
+  the main thing to do being to bring the win32 build back up too, then to go through TODO list and fix stuff
+  until the win32 version runs too, I check this in to a seperate branch merge-1_2_10-post
+- There is quite a massive update in mainframe.cpp switch case for all events.
+  Looks like it's just a reordering of stuff, but it looks bad in the diffs.
+- added m_MapReg pattern
+
+- At some point, I'm thinking that forcing correct TAB/SPACE conversion on the server end would be a good thing to have.
+  Nazisticly forcing the formatting sounds like the only viable solution.
+
+               11/12/2002
+               RR2DO2
+               - #418, mdc load and display (RTCW)
+               - #597, CenterCamera shortcut
+               Use Ctrl+Shift+TAB to center the views onto the current camera location
+               - #714, bitmap loading fixes and speedups
+               - #715, fixed Alt+Shift cycle/drill select to work with brush-based entities
+               EvilTypeGuy
+               - #718, fix compilation warnings
+               Riant
+               - #707, fixed HM mode in STV:EF
+
+               10/12/2002
+               EvilTypeGuy
+               - Fix gcc3 compilation warning
+               EvilTypeGuy and X-Man
+               - Fix OpenURL so browser launching works on XDarwin (Mac) systems.
+
+               8/12/2002
+               RR2DO2
+               - #710, AssignSound pattern
+               - #711, SoF2 model_static drawing
+               - #713, sync 2d and 3d rendering of models
+               - #238, apply 0..1 T range when Fitting a patch (instead of 0..-1 previously)
+               - #633, Add ability to change default color in 3D window Misc > Colors > Camera background
+               ydnar
+               - Q3Map 2.3.33 (see changes.q3map2.txt)
+               - Quake 3 + TA common.shader updates (q3map_terrain, hint)
+
+               3/12/2002
+               TTimo
+               - merging Stable-1_2-Apple into Stable-1_2
+               - why INSTALL.TXT? re-used INSTALL, updated to point to wiki
+               - why the -machinedump test against i386-redhat-linux? removed
+               - using $is_darwin flag instead of $gcc_machine tests in the build scripts:
+               gotta leave some room for a Linux ppc build, and darwin x86
+               exporting it for use in sub scripts
+               - the addition of ccache support broke some Apple SConstruct patches to $ENV{PATH}, fixing
+               merged version is compiling fine on Debian Sid
+               checking in on a branch, need to validate win32 build and OSX build before applying in Stable-1_2
+
+               -- release-1_2_11
+
+               30/11/2002
+               TTimo
+               - added seaw0lf to credits
+               - ydnar's changelog.q3map2, added to global.xlink and Linux setup
+               - 1.2.11 version tag
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=699
+               updated IS setup for q3map_terrain keyword
+               also fixed details in STVEF media
+               Arnout
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=569
+               http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=698
+               fixed drill select, Ctrl bug in vertex mode, and updated changelog.txt
+
+               29/11/2002
+               TTimo
+               - 1.2.11-rc1
+               - update changelog credits links for release
+               - update linux setup, putting EULA and new README instructions  
+
+               28/11/2002
+               ydnar
+               - Removed redundant 'p' from "developers"
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=637 - fixed
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=694 - fixed
+               - Updated to Q3Map 2.3.32
+               - Added epsilon to texture plane choose code to eliminate numerical
+               inconsistencies on brush faces slanted at 45 degree angles (bug 637)
+               - Fixed bug in lightmap export after lighting when map contains 0 BSP lightmaps
+               - Adjusted some light tracing constants to fix certain brush/patch seam shadows
+               - Tinkered with skylight code again
+               - Fixed bug where lightgrid would be black if level was compiled with -nogrid
+               - Fixed -approx code to work in floating-point space, using _minlight
+               - Fixed bug where vertex light code was using invalid pvs data to create
+               light list for surface, leading to incorrect vertex lighting
+               - Fixed related bug in anti-light-leak code that was causing brush faces to go
+               black (bug 694)
+               - New: _minlight sets _minvertexlight and (new) _mingridlight automatically
+               - New: _mingridlight key to set minimum grid lighting
+
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=637
+               added preference setting in Preferences > BSP monitoring
+               added an item on the wiki
+
+               27/11/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
+               picomodel-based model.dll module (new model.dll, removed md3module.dll)
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=664
+               media/setup updates for q3map2 support
+               added modified quakev3.qe4, bumped internal version to 4 for all games
+               SOF2 and JKII were forcing BSP monitoring off because of sof2map, now only printing a warning
+               added -rename to SOF2 BSP phase
+               Q3 & RTCW new templates are working
+               haven't tested the STVEF & SOF2 versions
+               updated IS setup scripts to make sure quakev3.qe4 is updated in nightly release
+               (not needed on Linux, we will be doing a full release)
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
+               updated win32 setup to provide right model.dll stuff
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=621
+               typo was causing memory error
+
+               RR2DO2 & TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
+               more model fixes, fixed the Linux build to build model.so
+               added search path to modules/ for bitmaps
+               model reload, patch and bitmap
+
+               26/11/2002
+               RR2DO2
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=569
+               area select - Alt+Shift for area select (complete tall)
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=621
+               broken undo creating ghost undo entities (and trashes memory)
+               partly fixes the issue, it's a memory error still
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=659
+               updates to RTCW camera plugin - works in 4 view mode
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
+               more fixes to plugin API
+
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=638
+               libpng in the core DLLs instead of SoF2 (for q3map2 dependencies)
+               putting q3map2 binary with the Core Binaries
+
+               25/11/2002
+               TTimo
+               - added ccache support to cons build system - http://ccache.samba.org/
+
+               21/11/2002
+               ydnar
+               - minor bugfix to PicoModel ASE material loader
+               - Q3Map2 updated to 2.3.31 (Splash Damage)
+               - Stitching the edges of lightmaps on patches that wrap around (cyls and cones)
+                       so the seam is no longer visible
+               - The -patchmeta switch works better now, the patches are still stored in the
+                       BSP for collision, but are pre-tesselated into nonplanar meta surfaces for
+                       more efficient rendering
+               - Better, more uniform lightmap sample position finding on patch meshes
+               - Moved q3map_tcMod and q3map_alphaMod processing to the final phase
+               - New: q3map_skylight AMOUNT ITERATIONS to replace surfacelight on sky surfaces
+                       for much faster and more uniform sky illumination
+               - Fixed bug in PicoModel ASE material parsing code
+               - Fixed a few seam/lightmap precision/projection errors
+               - Increased MAX_SHADER FILES to 1024 and fixed overrun error when more than that
+                       number of shaders was listed in shaderlist.txt
+               - Increased a few compiler maximums for larger maps
+               - New: -np N switch on BSP phase, works like -shadeangle, in that it forces all
+                       planar shaders to be nonplanar with the shading angle specified
+               - New: -nohint switch on BSP phase, omits hint brushes from compile for testing
+               - New: -debugaxis switch on light mode. Colors lightmaps based on their lightmap
+                       axis (which direction the lightmap was projected on)
+               - New: -debugorigin switch on light mode. Colors lightmaps based on the luxel
+                       origin relative to the raw lightmap's bounding box
+               - New: -debugcluster switch on light mode. Colors lightmaps based on the pvs
+                       cluster the luxel falls into
+               - New: -convert switch to convert BSP to ASE file (experimental)
+               - New: q3map_lightmapmergable directive to allow terrain to be mapped onto a
+                       single lightmap page for seamless terrain shadows    
+
+               18/11/2002
+               TTimo
+                       - fixed pk3man build system to work with new cons layout
+                       - fixing linux setup system to work with new cons layout
+                       Linux 1.2.11 will be a full setup, much easier that way
+                       - update makeself to the latest (and best) version
+                       - add q3map2 to Linux setup. goes in core (g_strAppPath)
+                       NOTE: has a dynamic dependency to libpng
+                       - pk3man still has issues with the zlib code that's been thrown in it
+                       unresolved which I don't have time to look at
+                               since we plan to drop pk3man in 1.3, dropping it now is just as good
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=644
+                       detect GOTY install     from registry and use it as default path
+
+               13/11/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=639
+               reworked to have the UI in game settings dialog
+               (this is strictly win32 thing, if that broke Linux build, then fix the typos)
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=630
+               mouse AngleSpeed setting was getting clobbered. fixed and upped the max values
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=623
+               applied a fix, rolls back the values when the compression formats are not supported
+               fix ain't very clean, if we have to deal with extensions some more, we need to deal with the settings persistance better
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=624
+               updated the setup code for town_*.shader (both in full setup and update)
+               updated files in WolfPack
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=672
+               using a QE4_VERSION define, added a message if there's a project template with wrong version
+
+               12/11/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=671
+               guard junk.txt path between " "
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
+               fix to CommitBrushHandleToEntity stuff
+
+               RR2DO2
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=660
+               previously you could select patch control points when patch selected + vertex edit (V) in 2D view. Works in camera view now
+
+               12/11/2002
+               TTimo
+               - nudging zerowing to trigger Stable-1_2-Apple doxygen generation
+               http://zerowing.idsoftware.com/doxygen/
+
+               11/11/2002
+               TTimo
+               - http://ttimo.net/web/anjuta
+               modified the .prj to work with the cons patches (linked dirs)
+               still way experimental
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
+               fixing linking for radiant.x86
+
+               10/11/2002
+               RR2DO2
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=669
+                       patch inspector bug - fixed
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
+                               fucked up change in the plugin API caused breakage of several plugins
+               still have to fix bobtoolz http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=665
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=661
+                       Undolevels not set properly
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=660
+                               drag selection to the camwindow for patches in controlpoint edit mode
+                               (not sure about the actual shortcuts, Ctrl+Alt on my current Linux setup)
+
+               TTimo
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=657
+                       mark map modified on editing entity keys
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
+                       added the correct link and ldflags statements to have static linking everywhere
+                               didn't check gcc 3 build, check correct static on Debian Sid and holy box
+                               has a $staticstdcxx in Construct to toggle On/Off if needed
+
+               09/11/2002
+               TTimo
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
+               reworking the cons building. support for gcc2 and gcc3
+                       cons -- gcc=<gcc-name>
+                               read gcc version and configure accordingly
+                               changed _NO_STLPORT to Q_NO_STLPORT
+                               independant BASE_CFLAGS and BASE_CXXFLAGS
+                               correcting usage of CC/CXX for c/cpp source and linking
+                               fixed missing -lz in vfspk3.so
+                               changed the way we build curry.so, works from the GtkRadiant tree now
+                               (NOTE: gcc 3.2 build of curry.so spews quite a few warnings)
+                               tweaked the way we do -fno-rtti -fno-exception
+
+               04/11/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=638
+               .qe4 version 4, udpated q3's .qe4 template, update setup to put q3map2 in the right place
+                       bumped version to 1.2.11-test for test setups
+
+               03/11/2002
+               ydnar
+               - fixed bug in jpeg loading code (4 components instead of 3 for RGB images, mh)
+               - updated PicoModel to 0.8.8 and Q3Map2 sundry fixes (2.3.29):
+               - Merged with latest CVS, fixed minor issues with matrix order
+               - Fixed minor Sys_FPrintf/Sys_Printf substitution typo in Q3Map2
+               - Expanded debug colors to 12 for debugging surface meshes
+               - PicoModel: fixed ASE loader to support > 1 texture coordinate per-vertex,
+               so more models supported correctly, also loading vertex normals
+               - PicoModel: md3 shader names are now cleaned. Suffixes (such as .tga or .jpg)
+               are stripped, and \ path separators are changed to /
+               - New: Add :q3map to the end of any shader name, and it will be interpreted as
+               the named shader minus :q3map. Example:
+               textures/shaderlab/concrete:q3map -> textures/shaderlab/concrete
+               One potential use is the -approx feature to collapse lightmapped  surfaces
+               into vertexlit surfaces, saving lightmap space/memory
+               - New: q3map_clipModel -- does what you think it does, sort of. This code ix
+               really experimental, and should *only* be used on large models such as terrain
+               (not small decorative models). This code will be evolving. Note: the shader's
+               surfaceparms are inherited by the magic clip brush, so if you have nonsolid
+               in your model's shader that uses q3map_clipModel, then the brush will also
+               be nonsolid
+
+               03/11/2002
+               TTimo
+               - cleaning up some cons stuff, checking that the setup building process is still good on Linux
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
+               updated Linux setup to put the bitmap
+
+               02/11/2002
+               ydnar
+               - PicoModel: replaced stricmp with _pico_stricmp
+
+               02/11/2002
+               ydnar
+               - PicoModel: added obj.c and ms3d.c, removed wfobj.c
+
+               02/11/2002
+               ydnar - seaw0lf
+               - Updated Q3Map2 to 2.3.29 sources
+               2.3.29
+                       - Merged with latest CVS, fixed minor issues with matrix order
+               2.3.28
+               - Bug 654 (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=654):
+               Fixed problem where brush faces, drawsurfaces, and surfaceparms weren't living
+               together in perfect harmony (terrain surfaceparms now inherited by brushes)
+               - Nodraw fog works now, albeit when you're underneath, surfaces above don't get
+               fogged properly. Could be good for foggy water where you want the above-water
+               portions to only be occluded by the water surface
+               - Bug 656 (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=656):
+               Number of lightgrid points displayed (byte size is currently out of proportion
+               due to internal storage format) when Q3Map is called with the -info switch
+               - Fixed wack surface merging bug where code would attempt to merge triangles not
+               adjacent to the current set, causing bad lightmap projections on nonplanar
+               surfaces
+               - Fixed tiny 1-character bug in 2d lightmap texture allocator where adjacent
+               luxels were being checked for occlusion rather than the actual source luxel
+               2.3.27
+               - Fixed minor bug in scriplib bugfix where the last character in a file wasn't
+               being read.
+               - Fixed bug where 0-area or bogus triangles were causing crash in MapRawLightmap
+               if they used a shader with a normalmap (thanks ShadowSpawn)
+               - Fixed bug where lightmaps were getting hosed levelwide on a prerelease version
+               of 2.3.27
+               - Fixed bug where lightmaps were getting knackered on models and certain patches
+               - Merged latest PicoModel version from seaw0lf, adding support for ASE and WF OBJ
+               models (preliminary)
+               - Increased MAX_MAP_PLANES to 0x40000 (~256k)
+               2.3.26
+               - Now using GtkRadiant's libpng and zlib config (linked as DLLs)
+               - Fixed bug in script parser where repeat calls to GetToken() were causing
+               memory corruption
+               - Fixed SOF2 -rename bug
+               - When using -game sof2 or -game jk2, the -flares argument is implied
+               - Added -noflares argument to disable the above behavior
+               - Added support for flares on entities. Use one of the following keys:
+               "_flare" "1" -- use default flare (different for each game)
+               "_flareshader" "path/to/flareshader" -- use a specific flare shader
+               Note: This only matters in SOF2/JK2 now. Make a light targetted (a spotlight)
+               to get it to aim the correct direction, otherwise it defaults to pointing 
+               downward. You cannot have omnidirectional flares
+               - Lightgrid size is automatically increased to accomodate large maps. The
+               MAX_MAP_LIGHTGRID error will never happen again
+               - Update PicoModel to 0.8.7 sources
+               - ASE support
+                       - Alias|Wavefront OBJ support
+                       - <modelname>.remap shader remapping suport
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=655
+               handle grayscale jpegs gracefully
+               - mathlib: fixed VectorClear(), got rid of braces
+               - scriplib: fixed double-free memory corruption bug
+               - radiant: added new color scheme to emulate Lightwave/Maya/3DS Max
+
+               02/11/2002
+               TTimo
+               - too many issues with build system reading system's libjpeg.h instead of libs/libjpeg.h
+               renamed libs/libjpeg.h to libs/radiant_libjpeg.h, updated sources
+
+               29/10/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=639
+               running from a network share - saving prefs per-user
+
+               27/10/2002
+               TTimo
+               - merged in some more m4x4 code for q3map2
+               - fixed unresolved code in picomodel (strlwr / strnicmp)
+               - reworked the tools building to build both q3map and q3map2 without trouble
+
+               25/10/2002
+               ydnar
+               - q3map2 and picomodel source, initial checkin to Stable-1_2 branch (does not compile yet, tweaking to be done)
+
+               23/10/2002
+               TTimo
+               - camera.dll goes into $(RTCWRADIANTDIR)/plugins instead of $(RTCWRADIANTDIR)/modules
+               fixed up camera compile (exports)
+                       added camera bitmap (plugin toolbar)
+
+               21/10/2002
+               TTimo
+               - quickfix to the build (typo)
+               - changed dynamic linking on Linux to look for libGL.so.1 by default
+               fixes "all textures are blank" Linux bug with NVidia cards
+                       (you still have to have a working NVidia GL installation though, xlibmesa-dev on Debian screws things up)
+               - checked in modified q3 .qe4   with q3map2 menu (see bug #638)
+
+               09/10/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
+               reworked the plugin toolbar to rely on interface instead of straight exports
+               cleaned up the botclip monsterclip Brush_Draw filtering, added proper selection filtering (Brush_Ray)
+               merged bug-622 back into Stable-1_2, bug-622 branch is dead now
+
+               06/09/2002  
+               James Monroe - RR2DO2 - TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=619
+               light globes, applying patch by RR2DO2 built from the initial light globe code
+               - note to self: indent -kr -nut -st -ts2 -i2
+
+               RR2DO2 - TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
+               massive patch update from SD's GtkRadiant
+               - camera plugin: new bitmap
+               fixed Linux install path for camera plugin to wolf/plugins
+               - fixed various warnings in camera build gcc / Linux  
+               - fixed pref crash if plugin toolbar disabled  
+               - fixed Gtk-WARNING on bad cast in AddPlugInToolbarItem
+               - renamed the new select to 'Use paint-select in camera view:' in prefs
+               (camera paint-select, should be our default name for this)
+
+               NEW: you can 'paint select' in the camera view: 'camera paint-select'
+               press shift and move the mouse over the camera view to paint over brushes you want to select
+               configurable in prefs to enable / use Shift key, or use 'classic mode' ctrl+alt
+
+               NEW: light radius drawing
+               Added in-editor light envelope drawing. Outer circle is max envelope, 
+               inner fullbright radius. Optional classic mode emulates the similar drawing 
+               from Rituals and Ravens tools (not q3map correct, easier for the level designer 
+               to understand/legacy).
+
+               NOTE: 'angles' is q3map2 only
+               NOTE: could manipulate angles directly from the views (2d and 3d with some handles)
+
+               NOTE TO SELF: 
+               <TTimo> hey guys .. just a quick question if you don't mind .. I'm trying to track a Gtk-WARNING .. is there a way to make those apps cause a break to track them easily ?
+               <andersca> just run your app with --g-fatal-warnings
+
+               TODO: add new bitmap to win32 & linux setups
+               TODO: don't use exports for the plugin toolbar, use entry functions
+               do something like CPlugIn::InitBSPFrontendPlugin
+               TODO: botclip is broken with the new Brush_Ray code  
+
+               initial ChangeLog for the patch:
+
+               28-09-2002
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Added 'angles' support for models (misc_model/misc_gamemodel).
+                       + Prevented pivot drawing of model from scaling and rotating.
+                       + Cleaned up the dropdown boxes in the preferences a bit (all use 
+               tables now, so not multiline).
+                       + Added 'Classic Key Setup' option to camera paint select configuration, this 
+               drag-selects with ctrl+alt instead of shift.
+                       + Changed XYWnd::PositionView to position on the center of the 
+               selection, not on the mins.
+
+               27-09-2002
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Added in-editor light envelope drawing. Outer circle is max envelope, 
+               inner fullbright radius. Optional classic mode emulates the similar drawing 
+               from Rituals and Ravens tools (not q3map correct, easier for the level designer 
+               to understand/legacy).
+
+               26-09-2002
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Upped MAX_TEXTUREDIRS to 256 (from 128).
+
+               25-09-2002
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Fixed patches not being drawn in XY window with colour of parent 
+               entity.
+                       + Made paste to camera snap destination spot snap to grid.
+
+               18-09-2002
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Changed Select_Reselect to be much faster.
+
+               12-09-2002
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Fixed curve point drag-selection area not showing properly in XY 
+               views.
+                       + Fixed size info breaking over 9999.9 units.
+                       + Fixed AllocateSelectedPatchHandles not setting patchesmode to 
+               ESelectedPatches.
+                       + Changed the horizontal and vertical tc shift spin control to have a 
+               limit of 8192.
+                       + Moved SPoG's implementation of redisperse cols to a seperate function 
+               and reinstated the old code.
+                       + Added 'Paste to Camera', shortcut Alt+V, which pastes the contents of 
+               the clipboard to the current camera origin.
+                       + Added centerview functionality to 4 window mode. Ctrl+tab will focus 
+               on the selection, or if non existant, on the camera.
+
+               11-09-2002
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Made sure settings set in savedinfo.bin get initialized to their 
+               proper defaults.
+                       + Added botclip filter (filters *botclip* and *monsterclip*).
+
+               10-09-2002
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Removed .reg from normal map saving, can only save as region 
+               using 'Save region'.
+                       + Added outline style cycling (j) cycle between z buffered outlines and 
+               selected colour rendering.
+                       + Added colour dialog to pick the colour of selected surfaces in the 
+               camwindow.
+                       + Third coordinate for clip points now gets set to the center of the 
+               selection.
+                       + Changed arbitrary rotation dialog to accept negative angles as well.
+                       + Changed texture alignment dialog to accept values up to 2 decimal 
+               points.
+                       + Fixed entity inspector to say 'Textures:' in the window title.
+                       NOTE: still broke in floating window mode
+                       + Changed entity inspector so that tab doesn't clear the epair value 
+               field anymore, so it retains the value while jumping to it.
+                       + Disabling camera paint-select now returns selection behaviour for groups to 
+               the old behaviour as well (shift+click selects whole group).
+                       + Changed load_plugin_bitmap to load bitmaps from g_strAppPath if 
+               g_strGameToolsPath fails.
+                       + Added plugin toolbar and api.
+                       + Fixed m_pfnCommitBrushHandleToEntity, wasn't creating brushes 
+               properly (well, not at all really).
+
+               Older changes:
+                                       Arnout <rr2do2@splashdamage.com>
+                       + Added misc_gamemodel drawing.
+                       + Ported camera paint-select over from 1.3.
+                       + Fixed statusbar display of text (removed a bunch of \n's).
+                       + Added area selection in 3d view for patches.
+
+               30/09/2002
+                       TTimo
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=556
+                               quickfix crash bug
+
+               27/09/2002
+                       TTimo
+                       - more CORERADIANTDIR cleanup (q3data)
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=602
+                               added cascading to the entity submenu (doesn't cascade the main menu, only the sub ones, NPC_* for instance)
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=556
+                               with clip and caulk filtered out, won't be selected anymore in camera view (i.e. selecting invisible faces)
+                               added SF_CAMERA to the flags in the selection process
+                               cleanup up various ugly syntaxes in the selection code:
+                               don't ever do if (flags == SF_SINGLEFACE) on a bitmask and assert that the other flags will always be NULL
+                                       don't do arithmetic on bitmasks:
+                                               if ( (flags & SF_ENTITIES_FIRST) && t.brush == NULL)
+                       return Test_Ray (origin, dir, flags - SF_ENTITIES_FIRST);
+                       is WRONG
+                                               using flags & ~SF_ENTITIES_FIRST is the appropriate way
+
+               23/09/2002
+               Riant
+               - new IS scripts to go with recent media updates
+                       Riant & TTimo
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=615
+                               reworked the fix to use "caulk_shader" in .game
+                               updated IS .rul script to generate special values for Sof2 and JKII
+
+               21/09/2002
+               Riant
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=595
+               more texture compression, dialog and settings
+               Michael Schlueter  
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=592
+               fixes to the Linux build system, exclusive q3 or wolf working now
+
+               22/08/2002
+               EvilTypeGuy
+               - Fix @*$&)@)$$ memory leak of my own doing, yes it's really been in there this long.
+               This should help memory usage drastically, especially when flushing & reloading
+               the same sets of textures, GtkRadiant's memory usage no longer becomes heinous.
+
+               14/08/2002
+               EvilTypeGuy
+               - Fix build on some linux boxen by including qertypes.h for proper boolean type declaration
+
+               -- release-1_2_10
+
+               16/08/2002
+               TTimo
+               - STVEF media update finalized (some .def)
+               - 1_2 Core Update for shader manual update
+               - in JKII, typo with nar_shader? replaced by nar_shaddar, with proper support in update too
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
+               Q3/TA media update with cleaned up shaders
+               - validated the update content by a diff between 1.2.9 + 1.2.10-update and 1.2.10 full  
+               - added a DO_NIGHTLY_BOOL to setup.rul AND a warning during setup about update content for games that are not installed
+               - built 1.2.10-sof2, SoF2 full install
+
+               15/08/2002
+               Michael Schlueter
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=590
+               added the option to build a Linux setup with the debug binaries
+
+               TTimo  
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
+               cleaned up shaders, done nightly setup update on Linux
+               updated Linux nightly for 1.2 to use /usr/local/games/GtkRadiant-1.2 as default base
+               - using version 1.2.10-update. Full Sof2 setup will be 1.2.10-sof2
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=426
+               don't straffe when using Ctrl+Shift(+Alt)
+               - camera.so RTCW plugin in Linux setup
+               - quickfix to non-initialized var in camera code
+               - awfull piece of work that had been completely left out, nightly elements for JK2 and STVEF
+               added JKII media update and STVEF media update (for the DIR_GAME elements)
+               JKII nightly is finalized
+
+               14/08/2002
+               TTimo
+               - fixed a missing file
+                       - Linux build quickfix
+               - fixed silly rendering bug
+               - added pref to force texture compression off (hey why would you do that??)
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=466
+               fixed MAX_POINTS_ON_WINDING overflow in q3map (and relevant code to handle in radiant)
+
+               13/08/2002
+               TTimo
+               - cleared up notexture (dead code)
+               - cleaned up QERApp_LoadTextureRGBA gamma table init
+               - having a shot at 1.3 texture compression
+               sees the extension, binds the texture with the currect setting
+               but rendering is fucked .. someone explain?
+
+               08/7/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=586
+               search and destroy Q3Radiant -> Radiant
+
+               07/7/2002
+               SCDS_reyalP
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
+               wolf_entities.def update
+
+               riant
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=548
+               STV:EF updates
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
+               SOF2 updates
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=584
+               JKII updates
+
+               06/7/2002
+               Riant
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
+               Sof2 patches and IS setup    
+               TTimo
+               - game pack prompt asking about STVEF, fixed
+               - mp_examples was leaked and non lighted, fixed
+               - imagepng.dll goes into Sof2 install / modules, and not in DIR_CORE
+               - libpng12.dll needs installed only with Sof2 pack (added 'SOF2 Pogram DLL')
+               default texture scale is 0.125  
+
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=582
+               nomipmap -> nomipmaps in shader manual  
+               - removed libs/pak, this was still being linked in to Radiant, but not used at all  
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=580
+               .PK3 are recognized along .pk3 files (strcmp ->strcasecmp)
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
+               added the RTCW camera plugin to IS setup
+
+               Michael Schlueter
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=581
+               GL warning fix      
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=567
+               GL font display fixes (mostly Linux)
+               applied the changes with some tweaking
+
+               31/6/2002
+               TTimo
+                       - compiling the camera plugin on Linux:
+                       move the GUID and other misc compatibility definitions to include/misc_def.h
+                               GetTickCount being used in camera.so, this is from radiant/missing.cpp (unresolved)
+                               -> use QGetTickCount instead (in main function table)
+
+               30/6/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
+               cleaned the .shader from 'light 1' statements
+               updated the IS script for the updated .shader
+
+               17/6/2002
+               TTimo
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
+               Sof2 support, PNG format
+               wrote imagepng module, dynamic dependencies to zlib and libpng
+               changes in the core:
+               some hardcoded to "sof2.game" for png interface loading and extensions
+               in GetTextureExtension, killed outdated support for texture plugins
+               if ! "sof2.game", png is not loaded, support disabled
+               http://zerowing.idsoftware.com/libpng/
+               correctly configured for VC build (post build steps and dependencies)
+               is required on win32 to build imagepng
+               - added m_pfnGetGameFileName to the main function table (was needed for png stuff)
+               - cleaned up the QERApp_LoadTextureRGBA path
+               using (unsigned char* pPixels, int nWidth, int nHeight)
+               cleaning up internal access path
+               RR2DO2
+               - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
+               camera plugin for RTCW
+               TTimo: wrote the .dsp, post build steps etc.
+               IMPORTANT: you need to have RTCWRADIANTDIR env variable pointing to the RTCW Radiant files
+               (default C:\Program Files\Return To Castle Wolfenstein\Radiant)
+
+
+               12/6/2002
+               RR2DO2
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=299
+                       MP/SP pk3 filtering in VFS
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
+                       .camera support: splines library, camera plugin
+                               TTimo: portability fixups, cons build, guarding pragma, __cdecl BOOL
+                               virtual functions but non-virtual destructor
+                                       declaration with no type
+                                       int idCameraFOV::start - control reaches end of non-void, making it void
+                                       enumeration not handled in switch
+                                       no _MAX_PATH, the portable one is PATH_MAX
+                                       implicit declaration of int _fullpath
+                                       for(int i = 0; ..
+                                       struct _IO_FILE has no member named '_bufsiz'
+                                       stricmp -> Q_stricmp
+                                       attempt at implementation in .h file (InitIglToQgl)
+                               camera stuff still vastly broken (particularly on Linux), need to check in because of new fixes incoming        
+                       djbob   
+                       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=17
+                       quick fix to spawnflags getting corrupted when multiple entities selected
+                               (doesn't completely solve the problems we have with spawnflags yet though)
+
+===============================================================
+END -- merging release-1_2_9 -> merge-post-1_2_10 into trunk - END
+===============================================================
+
+12/12/2002
+  Hydra
+  - #197, HL support update
+
+11/12/2002
+  TTimo
+  - added cmdlib dependency to mapq3.so (fixes unresolved)
+
+25/10/2002
+  Hydra
+  - vfsGetFullPath() can now (optionally) search PK3/WAD files
+  - Half-life map loading is now un-borked (my original patch worked
+    but some conditional code in the patch was incorrectly applied.
+    That, coupled with the missing vfsFileExists and vfsFindFile replacements)
+  - A patch to imagehl/lbmlib.cpp/LoadIDSP() was missed out, causing all sprite
+    models to be reverse-rendered (due to an inverted alphamask)
+  - Renamed HydraToolz to HydraToolz-HL as it's half-life specific
+    changed project files and renamed all appropriate files and directories
+    (for the merge, just delete contrib/hydratoolz and apply the diff)
+
+  - Comments on previous notes:
+
+    - TODO: need to rationalize where the modules are placed and identify HL specific modules
+      (this affects the build system / post build step too)
+      imagehl and spritemodel are halflife specific and can be placed in
+        either $coreradiantdir/modules or $hlradiantdir/modules
+        I've updated the .dsp files so that they are copied to $coreradiantdir/modules
+        spritemodel can actually be used for other engines, not just HL so it makes sense
+        to keep it in $coreradiantdir/modules
+      hydratoolz is a half-life specific plugin and must go in $hlradiantdir/modules as it
+        is NOT to be used for any other engines.  I've also updated the "about text" to
+        reflect this.
+
+14/08/2002
+  EvilTypeGuy
+  - fix build process for textool plugin on some Linux boxen by including qertypes.h
+
+11/06/2002
+  TTimo
+  - spritemodels in build system
+  - applying HL setup patch (att 270, bug 197)
+    - the templating went one filename seperator too far, causing all *.fgl to be modified .. 
+      fixed so that we only have the relevant changes
+    - modules added to main Executable Files, TODO for later will need to identify what is HL specific
+    - .game generation: don't want enginename yet, gamename is ok
+    - updated HL .game generation for eclass_singleload and no_patch   
+    - update hydratoolz location in setup
+    - update maphl in synapse.config
+
+07/06/2002
+  TTimo
+  - realized that \func doesn't work in doxygen, should be \fn (updated everywhere)
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
+    applying the HL patch (see original list of changes below)
+    - ugly eclass API changes
+      eclassfgd/plugin.cpp.rej, eclass API changes involved, a bunch of .rej
+      SupportsMultiple tries to send configuration information from the eclass format file module to the eclass manager
+      dropping it, using a proper configuration node instead (eclass_singleload)
+    - added "no_patch" prop to disable patch support
+      the patch toolbar prompts are only present in prefs if there is patch support
+      otherwise everything is force-disabled
+    - PFN_VFSFINDFILE PFN_VFSFILEEXISTS:
+      one of the problems we have is that the 'manager' code and file format code are in the same module
+      (i.e. vfspk3 / vfswad: two formats, but the manager part is pretty much the same)
+      vfsFindFile(relative filename):
+        this worked by searching through the list of loaded pk3/wad files for the file
+        then trying to search through the search directories
+        - wasn't properly documented about what it does / how is the search performed
+        - not consistent with existing code, duplicate of vfsGetFullPath for the most part
+          can't be added to the VFS API as-is, it would confuse the interface
+        - usage of vfsFindFile in the code doesn't justify the way it proceeds for search
+        foxing it, replacing by calls to vfsGetFullPath
+      vfsFileExists(relative filename):
+        returns wether a file exist, can be flagged to search in pk3/wad or straight filesystem
+        - this is a duplicate / particular case of vfsGetFileCount
+        foxing it too, we need to extend and update vfsGetFileCount instead
+    - mapq3: the changes completely fucked q3 map parsing
+      need reorganization. same module provides parsing for all .map based formats
+      we use wrappers around the actual calls and globals in the module to select formats
+      MAPVERSION_Q2 and MAPVERSION_Q1 don't need to be there yet, they are not supported
+      MAPVERSION_HL means WC >= 2.2
+      (when introduced, MAPVERSION_Q2 would be Q2 or qer+hl plugin (same))
+      MAPVERSION_HL uses "maphl" minor name (instead of mapq2)
+      cleaned up the Q3 read/write code that got broken
+      cleaned up various commenting/hack that deal with Q2!=HL format .. we'll see about Q2 when we actually do it
+      bad cut and paste from cmdlib code, using actual dependency to cmdlib instead (see below for some cmdlib updates)
+    - took out all SafeRead SafeWrite code from cmdlib, removed annoying cmdlib dependency to Error function
+      all file access go through VFS module, the cmdlib 07/06/2002 15:47file code was way old  
+    - radiant/points.cpp pointfile code changes (that's used only for non-monitored compiling now)
+    - applied patch 267 (hydratoolz fixes)
+    - commented out some bworldcraft flagged stuff in mapq3/parse.cpp
+    - updated the .dsw .dsp to compile and copy HL stuff  
+    - TODO: need to rationalize where the modules are placed and identify HL specific modules
+    - TODO: seems to be a synapse crash when unloading plugins (hydratools)
+      (looks like I didn't look at the plugin unload code yet actually)  
+    - TODO: make sure HL setup puts eclass_singleload="1" and no_patch="1" 
+    - TODO: WATCHBSP_KEY and TEXTURE_KEY hardcoded for HL need cleanup
+    - TODO: imagehl duplicates some image functionality
+      imagehl is supposed to be only for HL-specific image formats
+      it 'adds' the required formats to the stuff that image makes available for everyone already
+    - TODO: HL doesn't have a BSP menu!  
+    - TODO: rename mapq3/ into map/, the map module handles all .map formats
+    - TODO: it's likely that we only need a vfs/ module instead of vfspk3/ and vfspak/
+      think about it, see if we really act on this (or do we need to abstract the manager and some file format modules)
+    - TODO: HL synapse.config needs to use maphl
+    - TODO: wtf is enginename="quake2" in hl.game
+    - TODO: I don't have a sample HL map to play with, so I didn't test the changes against
+
+05/06/2002
+  TTimo
+  - fixups to make 1.3 start (Q3 mode)
+  - turned off C++ exception support in the modules/plugins, as we don't use it
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=543
+    exit properly if missing chunks in synapse.config, don't crash
+      
+  Hydra
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=558
+    fix for version check in release build
+
+  ======================================================================================
+  -- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
+     HL support patch
+  ======================================================================================
+  04/6/2002
+    Hydra
+    - Patched in some CVS changes and fixed a little issue with the
+      new entity file loader code.
+  
+  28/5/2002
+    Hydra
+    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=544
+      Selected Entity Bounding Box obscured by brushes fix.
+    - Moved the "wad" keypair creation code from the Map module into
+      a new plugin called HydraToolz, this means that wad keypair is
+      done manually by the user, as in fact it should be.  (as the
+      order of the wads is actually important).
+    - Fixed a problem with the wads in the wad list being re-ordered.
+  
+  27/5/2002
+    Hydra
+    - Created an inital implementation of a sprite model plugin.
+      According to the powers that be, it seems creating a model
+      plugin is hackish.
+      It works ok, but there is no way to attach models (sprites if you will)
+      to non-fixedsize entities (like func_bombtarget)
+      Also, I can't get the alpha map stuff right so I had to invert the alpha
+      mask in the spr loader so that 0xff = not drawn pixel.
+  
+  17/5/2002
+    Hydra
+    - "Wad" keypairs are now used when loading a map and speeds up map loading
+      significantly. This sorts out quite a few issues that could otherwise occur.
+    - Map loader now uses textures from wads listed in the the "wad" keypair first.
+    - Added a texture name mapping cache system to the .map loader
+      this significantly improves load times of maps that don't store texture
+      names along with paths (e.g. "mytexture" not "mytextures/mytexture".)
+    - Added vfsFileExists() to the vfs table (for above) and added it to
+      vfspk3 and vfswad
+    - Map loading and saving times are printed to the console.
+    - Wad file names from the "wad" key pair are logged to the console when
+      a map is loaded
+    - The user is informed if the textures loaded were not found in the
+      wad files in the "wad" keypair.
+    - The user is informed if the textures was not found in any wad file at all
+      (Q2/HL only, the shader module still gives you similar information for other
+      games when a shader activation fails)
+  
+  
+  8/5/2002
+    Hydra
+    - Added basic support in mapq3 for reading maps saved by Worldcraft 2.2+
+      in .map format (It uses [ ]'s round some of the texture co-ordinates)
+      TODO: do we need to be able to save a map in this format too ?
+    - Added support for loading ZHLT style point files (*.lin)
+    - Added wad filename information when loading textures.
+      (This helps take the ambiguity out of which wad files textures come from,
+      so that we can correctly setup the worldspawn "wads" e-pair manually.)
+      Note: This will be removed when the "wads" worldspawn key is built by radiant.
+    - added vfsFindFile() to vfs table.
+    - VFSWAD: vfsLoadFile() no longer ignores paths when loading textures
+      (this was by design, but the design has changed for the better)
+    - When loading a Quake2 map file, vfsFindFile() is used to find the actual path of
+      the shader/texture being loaded.
+      This fixes all the weird issues that crop up when we were able to use non
+      wad-relative texture names (<shader>) and wad-relative(<wadname>/<shader>).
+      (such as having an image loaded twice in memory.)
+      We also now get the correct shader name in the suface inspector too.
+      Note: not sure if this code should stay in the map parser, or wether it should
+      be moved to where shaders are first initialised.
+      Note: maybe this needs to be when a halflife map is loaded, not specifically a
+      quake2 map file.
+    - added EClass_SupportsMultiple to the EClass loader API.
+      Note: this is poop.  FGD files can be additive but radiant makes it so they can't be.
+      This function would not be needed if the eclass loader itself took care of the init,
+      rather then the manager taking care of the init.  Also note that if the loader were
+      to take care of the init then FGD files *CAN* be additive, as it's not down to the
+      format of the FGD files.  However, it'll do for the moment because all the supplied
+      FGD files that come with halflife and it's mods are meant to be used one at a time.
+    - removed support for having an additional (not external) eclass loader.
+      Just ifdef'd for now, grep for USEADDITIONALECLASSLOADER.
+      We never mix entity definition formats and synapse.config allows us to just have the
+      right one and also there is no mechanism for setting g_bHaveEClassExt anymore.
+    - Texture subset on by default for halflife.
+    - default texture scale is now set to 1 instead of 0.5 for halflife.
+      (needs to be 1 for q1/q2 too)
+    - patch toolbar disabled by default for halflife and it's also disabled
+      in the preferences so it can't be turned back on)
+      (needs to be 1 for q1/q2 too)
+    - bsp monitoring disabled by default for halflife
+    - When you drop a light entity the epair "_light" is used instead of "light" (halflife specific)
+    - removed -fs_game additions to the map compiler commands; ZHLT doesn't support it.
+    - saving of contents/flags/values in q2 format maps disabled (ZHLT doesn't like em !#?!)
+      TODO: re-enable for Q2 (but not halflife) format maps when we can
+      can figure out what game/engine combo we're using from within a module
+    - configured mapq3 to have dynamic VFS API too
+    - Added halflife shaderlist.txt parsing back in, it's actually useful
+      afterall (for editor shaders).
+  ======================================================================================
+  -- end HL support patch
+  ======================================================================================
+  
+01/06/2002
+  TTimo
+  - merging 1.2.7 -> 1.2.9 changes into 1.3, merge notes:
+    - the win32 .dsp are a bit different, using the $(CORERADIANTDIR) post build commands now
+    - merged in the JKII/STVEF hardcoded chunks, should probably check that everything is still fine on that end
+      was setting the "dir" epair in project files intead of "gamename" like all other games?
+      (which should really be "fs_game" anyway, I wonder who decided to call it "gamename")
+    - rebuilt a setup. we have a problem with RADIANT_MAJOR RADIANT_MINOR it seems
+    TODO: setup needs to use GtkRadiant-1.<MAJOR> as basename in start menu, and base for installation
+    C:\Program Files\GtkRadiant-1.3 and C:\quake3\Radiant-1.3 etc. for the game packs
+    TODO: add HL setup chunks!
+
+===============================================================
+-- merging release-1_2_7 -> release-1_2_9 into 1.3
+===============================================================
+28/5/2002
+  TTimo
+  - final fixes for Linux 1.2.9 setup
+
+27/5/2002
+  TTimo
+  - bug 521, q3 entities.def trigger_hurt fix
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=542
+  default texture scale is configured in .game
+  defaults to 0.5 (q3/wolf) if nothing specified, under the prop "default_scale"
+  removed the item from the prefs dialog too
+  updated the nightly setup to put the proper param in JKII .game
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=509
+  changing texture window scale changes selected brushes texture
+  re-selecting the previous texture can be done, but is a bit tedious to write
+  made sure we deselect before re-init of the tex window view
+  - fixed linux setup code bug. won't be any update, only a full release on linux
+
+26/5/2002
+  TTimo
+       - parallel cons working at last! was a problem with the targets list ('Default' command)
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=515
+       using the eclass extents for the box if model can't be found
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=435
+       changed the submenu cascading params to avoid the overlap (we fit less stuff now obviously)
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=540
+       that sigchld handler is only used on Linux to report the run times
+       since we are rewriting the whole BSP code stuff, we can drop this for now
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=538
+       removed that prompt and display
+       - we build radiant.x86 in cons scripts, updated the setup code
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
+       updated the setup script to install new wolf_entities.def
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=302
+       added q3map2 URL to global.xlink, updated Linux setup
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=465
+       printing q3map version info through the net stream
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=539
+       fixed various media, some related code, and Linux setup
+  - fixed watchbsp.cpp "jk2.game", was breaking game spawn for wolf (needed else if)
+       
+       SCDS_reyalP
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=504
+       fixed bobtoolz vis viewer to work with RTCW (BSP version)
+       - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
+       update of the Wolf entities file
+
+25/5/2002
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=164
+  corruption on exit, tried to look some more. Cleaned up some source, need looking at Gtk code closer
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=536
+  cleaned up SHADER_NOT_FOUND SHADER_NOTEX internals some more
+  added a clean error exit in case this happens, fixed a crash that would happen anyway (Patch_LODMatchAll)
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=394
+  cleanup/sanitize of the pattern filtering code, it was ugly. did some doxygen documentation
+  fixed part of the print XY code, more broken stuff showed up, dropping it
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=503
+  region compiling was indeed fucked, spog b0rkage
+  fixed so that it works again
+  denying compile with camera out of the region
+  reworked SelectBrush to deal with regioning and select the right brushes
+
+24/5/2002
+  TTimo
+  - Linux build fix
+
+23/5/2002
+  Riant & TTimo
+  - STVEF patch and setup scripts
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=516
+  moved error handling code to it's own file radiant/error.cpp
+  compiled with UNICODE define (that's why I had to isolate), and process the error string
+  so that Gtk can print it (that's only relevant to win32)
+
+22/5/2002
+  TTimo
+  - quickfix, cleanup of the console verbosity
+
+11/5/2002
+  TTimo
+  - final IS script updates for JKII game pack, version 1.2.8-jk2
+  - fixed a bad karma #ifdef _DEBUG chunk in Texture_NextPos (causing crash of release build)
+  - added web url support in .xlink files (strstr on http://)
+
+10/5/2002
+  TTimo
+  - cleaned the build step copy from $(QUAKE3RADIANTDIR) to $(CORERADIANTDIR)
+  - system shaders auto-load: display 'system' in the prefs
+  - force BSP monitoring off in jk2 mode
+  - cleaned up web update check, added HL (3) and Jedi Knight II (number 4) (on the web database too)
+  - updated IS setup script for mapextras.pk3
+  Riant
+  - system shaders auto-load in prefs
+  Raven
+  - mapextras.pk3 as replacement for system.pk3 (system editor textures)
+
+8/5/2002
+  Riant
+  - game pack and patches for JKII support
+  TTimo
+  - .game additions to specify .shader path (shaderlist and shader scripts)
+    NOTE: if we ever use q3map for JKII compiles, that would need to be propagated
+  - reworked the shaderlist to list all the included shaders
+  - built a system.pk3 pack for textures/system/ and textures/radiant/ (misses a few pieces still)
+  - MP / SP mapping mode toggle, SP ignores mp_*.def MP ignores sp_*.def
+  - fs_basepath does not get added during BSP command expansion for JKII mode
+  - more verbose on script location and junk.txt location when monitored compile is disabled
+    (the BSP compilation WANTS to be rewritten, it's getting VERY URGENT)
+  - JKII game back IS setup lands
+
+7/5/2002
+  TTimo
+       - using radiant.x86 as Linux target (instead of radiant, didn't fit with the setup procedure)
+       - bumped version tag
+       - TODO: bug #453 code needs backported from 1.3
+
+6/5/2002
+  TTimo
+  - fixed typo in plugins/mapq3/write.cpp Map_Write
+  g_count_entities = 0; instead of g_count_brushes
+  - more fixes which showed up while merging this with 1.3
+
+-- release-1_2_7 ----------- tagged and Stable-1_2 merging into trunk
+
+02/5/2002
+  Gef
+  - added filtering on unselect for newly created brushes/entities (bugzilla: #374)
+  SPoG
+  - added undo for pasted/cloned brushes
+
+============================================================
+-- end release-1_2_7 -> release-1_2_9 merge
+============================================================
+
+15/05/2002
+  TTimo
+  - rewrote the ref count code cleanly, added some elements to design and todo
+  - wrote the core shutdown code of synapse, 1.3 exits cleanly without crashing (well, in most cases it seems)
+
+10/05/2002
+  TTimo
+  - began writing proper unloading and shutdown of synapse (see libs/synapse/docs/unload.txt) 
+    design doc started, non active modules are unloaded after startup
+    need win32 implementation of ReleaseSO
+  - quickfix on win32 (ReleaseSO)
+  
+07/05/2002
+  SPoG
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=512
+  - cleaned up strHomeMaps and strFSBasePath stuff
+    prompts for maps, models, sounds etc are fs_game-dependant
+
+  ===========================================================================
+  -- merging Stable-1_2 between Stable-1_2-tag and release_1_2_7 into trunk
+  merge ChangeLog
+  =============================================================================
+  07/05/2002
+       - using RADIANT_MAJOR_VERSION and RADIANT_MINOR_VERSION for the version info, this was conflicting with synapse
+       
+       - m_strHomeMaps
+       http://zerowing.idsoftware.com/viewcvs/viewcvs.cgi/GtkRadiant/include/qertypes.h.diff?r1=1.27&r2=1.28&only_with_tag=MAIN
+       http://zerowing.idsoftware.com/archives/gtkradiant/2002-February/002170.html
+       posted on the ML, bringing it back in from 1.2
+       
+       setup scripts:
+         easily merged, as the 1.3 scripts have not been touched mostly
+       
+       qe3.cpp conflict:
+         1.2 tweaks stuff in the QE_*Project* functions
+               1.3 has them mostly commented out
+               applying manually where relevant
+               the project settings stuff is very different, and the changes can't be applied as is
+               given the fixes I had to do in 1.2, I'd expect the current 1.3 version to be fairly broken
+               a complete kill and rewrite of the prefs/project stuff might be our option anyway
+               http://zerowing.idsoftware.com/archives/gtkradiant/2002-May/003038.html
+       qe3.cpp QE_InitVFS conflict:
+         1.3 has some changes when creating the files in a new userprefix (ex. ~/.q3a/baseq3/scripts /maps /maps/prefabs etc.)
+               merged by hand, probably needs to be checked
+       qe3.cpp OpenDialog SaveAsDialog conflict:
+         commented out in 1.3, getting rid of it completely
+       
+       preferences.cpp conflict:
+         1.2 adds CUSTOMSHADEREDITOR_KEY pref
+               1.3 uses a completely different syntax for prefs
+       preferences.cpp conflict:
+               prefab path pref changes conflict with 1.3 pref syntax
+               applying changes manually to 1.3 codebase
+       
+       pmesh.cpp conflict:
+               1.2 adds pref to group / not group patch thickening
+               1.3 changes the way we manipulate entities around that code
+               merged manually, would be worth checking that the thicken pref works
+       
+       pluginmanager.cpp conflicts: synapse completely changes that part
+       on relevant 1.2 thing is the removal of pfnRadiant_Free
+       
+  map.cpp Map_ImportEntities conflict
+               1.3 has bug 453 map conversion promt that was not backported to 1.2 (caused merge to conflict a bit)
+               usin 1.3 code and checking 1.2 changes manually
+  
+       using radiant.x86 as Linux target (instead of radiant, didn't fit with the setup procedure)
+  
+       06/05/2002
+       not merging in .dsw .dsp
+       an eclass.cpp fixed moved to eclass_def.cpp
+       mainframe.cpp is always a bitch to merge, sent several mail comments to list about conflicts that arose
+         MainFrame::OnFileSaveas needed some updates that were not in the diff (correct default prompt)
+               (same for MainFrame::OnFileSaveregion)
+               MainFrame::OnFileNewproject conflicts a bit, changes have been made in 1.2 and 1.3
+               changes in 1.2 seem more crucial, using the 1.2 version, and patched the 1.3 manually over it
+                 (might need to be checked, bug #506)
+      
+       TODO: need to check for parasite g_free that I added back from the file dialog    
+  
+  propagated ChangeLog from Stable-1_2
+  =============================================================================
+       02/5/2002
+         Gef
+         - added filtering on unselect for newly created brushes/entities (bugzilla: #374)
+         SPoG
+         - added undo for pasted/cloned brushes
+         TTimo
+         - shift+left click to open shader editor no longer selects the texture on the way
+           (this was unstable, pCurrentShader could become NULL somehow)
+         - editpad bindings were completely broken
+           attempts to make it work again failed
+               taking it out
+               changed the prefs, on win32 you select between internal shader editor or win32 .shader binding
+               we have lost the ability to jump to a given line, if someone has a good solution for line jumping, let me know
+         - one more fix to the MAJOR / MINOR safe checks stuff
+         - bug #500: oooogly, I removed a line which I should not have :)
+
+       01/5/2002
+         TTimo
+         - "Save selected.." load/save in fs_game sensitive directory too
+         - removed a bunch of unused/broken project settings items
+         removed most of them actually .. project settings are .. ahem
+         - added an optional 'go to url' button in gtk_MessageBox
+
+       30/4/2002
+         Gef
+         - fixed lod drawing of selected patches when patches are filtered
+
+       29/4/2002
+         TTimo
+         - bugzilla #467
+           make patch inspector deny space textures
+           make mapq3 write code drop space textures
+         - bugzilla #132
+           removed remotebasepath and texturepath
+               rewrote the Textures > Load Directory (which was kinda relying on texturepath)
+         - bugzilla #355
+           uploading editpad zip to qeradiant.com misc/ in files section, replacing the win32 message about editpad
+           added editpad quote in qer.com totd
+         - fixing the map load/save dialogs to work correctly with mod settings on win32 (was done on Linux and still broken on win32)
+
+
+       26/4/2002
+         Gef
+         - fixed patches losing their shader if outside region when calling flush/reload 
+           (bugzilla: #492)
+         - blocked textures with spaces from loading in Texture_ShowDirectory with a warning
+           (bugzilla: #467)
+         - fixed a dud shader (liquids.shader -> textures/liquids/ripplewater2_back) didn't have
+           the textures/liquids prefix
+
+       25/4/2002
+         Gef
+         - fixed a broken image link in the shader manual (bugzilla: #486)
+         - changed prtview to use ~/.radiant/<version>/prtview.ini instead of 
+           ~/.q3a/radiant/prtview.ini on linux
+         - fixed prtview loading/saving config (bugzilla: #424)
+         TTimo
+         - removed QERApp_RadiantFree from the function table
+         we can malloc and free across modules configured correctly for the CRT (Common Runtime DLLs)
+         cleaned up related broken malloc / free strategy in the plugins (vfsLoadFile uglyness)
+         - added main build date and version to curry / pk3man / prtview
+
+       23/4/2002
+         SmallPileOfGibs
+         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=229
+         flush and reload was affecting texturing of selected brushes
+         TTimo
+         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=489
+         File > Check for update menu item, jumps to the website and checks for update
+         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=431
+         win32 part, RADIANT_MAJOR RADIANT_MINOR written out by setup
+         - more stuff on File > New Project and common mod setup issues (not finished yet)
+
+       22/4/2002
+         TTimo
+         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=431
+         reworking a bit the installer stuff
+         wrote the version checking
+         needs testing on win32 (RADIANT_MAJOR and RADIANT_MINOR are required in the install now)
+
+       21/4/2002
+         TTimo
+         - trying more seriously to get a new nightly out
+         updating the ChangeLog for current 1.2.7 from this file
+         cleanups, browsing through the bugs to close/update/fix
+         - http://zerowing.idsoftware.com/bugzilla/showattachment.cgi?attach_id=197
+         I kinda fixed that myself already, going through the diff and applying the missing stuff
+         creating the prefabs/ dir in QE_InitVFS
+         - added a line about the games dialog / auto-select at startup in the dialog frame
+
+       15/4/2002
+         TTimo
+         - cleaning some old commented out map load code
+         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=477
+         on Linux:
+           - strHomeMaps was init without taking care of m_strFSGame
+           - SaveAsDialog was not using strHomeMaps
+           NOTE: should strHomeMaps be spcific to Linux, or we will do better if we unify
+         need similar checks on win32
+
+       13/4/2002
+         TTimo
+         - kicking the source to generate new doxygen on zerowing
+
+       09/4/2002
+         Gef
+         - setting the sel_mode accordingly when (i)nverting selection, verts were being drawn when 
+           they shouldn't have been
+
+       05/4/2002
+         Gef
+         - fix File/New Project for mods so it doesn't fail if the dir exists (bugzilla: #459)
+         - add Linux-isms for New Projects & read/write permissions...
+           note: for a total conversion, basepath needs to be manually set
+         - prevent opening multiple internal shader editor dialogs
+         - added preference for using a custom shader editor
+         - set horizontal scrollbar to be automatic instead of never for entity keyval list (bugzilla: #4)
+         - added a call to Select_Reselect() in XYWnd->OnViewEntity() to make sure its modifying the 
+           current selection (bugzilla: #436)
+         - fixed entity dialog passing events through to main window (bugzilla: #454) return values
+           were backwards
+         - patching in the .pfb extension adding stuff (bugzilla: #259)
+         - fixed thickened patches not being grouped (bugzilla: #226). this was supposed to be happening
+           anyway, the entity create code was called before the patches were selected
+
+       02/4/2002
+         EvilTypeGuy
+         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=457
+         add entity #X and brush #X comments back to saved .map files
+
+       24/3/2002
+         Hydra & TTimo
+         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=444
+         only show empty alpha channel warning if the tga texture is actually 32 bit
+         (24 bit would always have empty alpha, the warning was useless in this case)
+
+       19/3/2002
+         Gef
+         http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=217
+         - Set show value to true for angle and movement velocity sliders in preferences
+         - Increased the maximum value of angle velocity from 6 to 100
+
+       18/3/2002
+         SPoG
+         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=419
+               fixed File->Save with region active acts the same as File->SaveRegion for ents
+
+
+  end merge  
+  =============================================================================
+
+16/4/2002
+  SPoG
+  - fixed MDC_XYZ_SCALE value
+
+12/4/2002
+  SPoG
+  - fixed win32 compile error - vc6 being nitpicky
+  - fixed refcount init on CSynapseAPIManager
+  - cleaned up md3model win32 project file
+
+9/4/2002
+  Gef
+  - added nudging for selected brush and patch vertices (bugzilla: #240)
+  - added selected brush vertex highlighting
+  - sorted all the ID_'s in HandleCommand alphabetically to make it easier to track things down
+  - setting the sel_mode accordingly when (i)nverting selection, verts were being drawn when 
+    they shouldn't have been
+
+5/4/2002
+  EvilTypeGuy & djbob
+  - patched in djbob's grid minor/major color settings for gridsize < 1
+    http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=24
+
+1/4/2002
+  TTimo
+  - configured md3model to have dynamic VFS API too
+  - cleaned up texwindow.cpp texture extension loop
+  - updated current HL media with hl's synapse.config
+    http://zerowing.idsoftware.com/stuff/HL-media-0401.zip
+  - checking in new synapse.config for Q3/RTCW
+  - fixed win32 project files, removed hltoggle.h
+  - bumped version to 1.3.3
+  
+31/3/2002
+  TTimo
+  - XML runtime configuration of synapse
+  uses a synapse.config in the gametools path, we can add a line in the .game to specify the file later on
+  - various cleanups and removal of dead code
+  - Linux build system: sanitized CFLAGS, libxml, STLPort and glib include path all in the toplevel Construct file
+  - removed the 'cons -- halflife' option, the binaries are unified again
+  - cleaned up image loading
+
+
+29/3/2002
+  TTimo
+  - patching in Hydra's code for Half-Life, builds and runs on Linux, need to quickfix on win32 now
+  - build system on Linux: some things are still hardcoded into the core, you need a different core
+    for Q3/RTCW or HL for now. do ./cons -- halflife to build HL mode (build trees are seperate)
+  - there is no media / install procedure yet, but a zip with what you may need for install is available:
+    http://zerowing.idsoftware.com/stuff/HL-media-0329.zip
+  - cvs added all the new files
+  - patched various things from the patches, don't have a precise list
+    cleaned up the interface requests, isolated HL specific between TMP_HALFLIFE defines
+    removed 'tga' from imagehl, two modules providing the same API has unexpected results
+    
+  TODO: the image loading is the main problem right now. We should not have any place that scans the 
+  extensions, this is done internally to the image load manager? texwindow.cpp does enumeration of the
+  minors too .. but that may be legal in this case.
+  
+  TODO: synapse config at runtime through XML (rather big piece)
+
+  - fixing build on win32
+  bad coding practices: 'for (GSList *choicelst = ..'
+  added a quick hack include/hltoggle.h for easy switch q3/rtcw or hl compile
+    (remaining hardcoded stuff is temporary)
+
+
+28/3/2002
+  Gef
+  - added linux pthreads support to tools
+  - removed old terrain.c and lightv.c from q3map2 Conscript
+
+27/3/2002
+  Gef
+  - updated cons for q3map 2
+  - minor q3map2 fixes for linux compile errors/warnings
+  - minor warning fix in map.cpp
+  SPoG
+  - changed entity_addtolist to add entities to end of list instead of beginning
+  - added eclass_forname to eclassmanager interface
+  - fixed setting eclass before model-update for entities loaded from map
+  - fixed setting bounding box for models after model-update
+  ydnar - q3map2
+  - fixed crash on -connect and other gremlins related to argument processing
+  - removed flag that prevented Castle's maps from compiling
+
+
+27/3/2002
+
+  Hydra
+
+  Important Changes:
+
+  - Added VFSWAD modules for extracting textures from WAD files.
+  - Added ImageHL for loading textures contained in WAD files
+  - Updated shaders source code so that you can produce ShadersHL.dll
+    (single minor using #ifdefs)
+  - MapQ3 source updated so that it can load and save q2 format maps
+    provides a multiple minors.
+  - Added EClassFGD for loading FGD definition files
+    (I documented this code quite well, if you're interested...)
+  - Added support for iconsprite() settings in the FGD loader, we set
+    eclass_t->skinpath with the name of the sprite
+    TODO: write a sprite model plugin.
+
+  Fixes:
+
+  - Fixed incorrect line numbers being reported when script files had // comments in them
+  - Removed EClass_Create from the EClass manager _EClassManagerTable
+  - Replaced all occurences of "textures/radiant/notex" in shaders.cpp with a define.
+  - Fixed a crash in shaders.cpp when there was no default texture.
+  - Fixed a possible issue with g_bCancel_Map_LoadFile
+  - Added a crash fix for uninitialised patchMesh_t->pSymbiot
+
+  Core Changes Required for HalfLife Support:
+
+  - Set MAX_FLAGS to 16 to support Halflife's extra spawnflags, adjusted
+    entity inspector to display the new spawnflags, updated FGD loader
+    to load them correctly (previously it only loaded the ones with values <8)
+    (Done without breaking the old Q2 code that was commented out)
+  - Added GetTokenExtra to the _ScripLibTable
+  - Kludged texwindow.cpp to allow loading extension other than "tga" and "jpg"
+    TODO: ttimo, we need something in synapse to help with this.
+  - Plugin manager requests different API's depending on .game file used.
+    TODO: this needs to be done on a PER GAME basis, not PER .GAME FILE.
+  - Shaderlist.txt is not parsed on startup if hl.game is used.
+    TODO: this needs to be done on a PER ENGINE basis, not PER GAME.
+
+  Cosmetic Changes:
+
+  - Changed MAPQ3's minor_name from "map" to "mapq3" (also adds "mapq2" as a minor)
+  - Changed XMAP's minor_name from "xmap" to "mapxml"
+  - Changed VFS's minor_name from "quake3" to "pk3", more inline with VFSWAD now.
+  - Changed file/Load to file/Import on the menus
+  - When a shader (Q3/HL) is not found a message is displayed in the console
+    (only once for each shader that is not found).  This is so the user can
+    quickly get a list of missing textures/shaders.
+
+26/3/2002
+  ydnar
+  - initial q3map 2.0 source import
+    new tools/quake3/q3map2 directory
+         common/qfiles.h and common/surfaceflags.h modified
+         affects q3map 1.x too, bumped MAX_MAP_BRUSHSIDES to 0x40000
+         will need to write the build scripts and compile on Linux too
+  SPoG
+  - Re-added dialog prompting user to convert/change-mode/abort when map BP mode
+    conflicts with project settings
+  - large entity/models update
+  +++ include/ientity.h   25 Mar 2002 11:37:54 -0000
+    entity module
+      - interface cleanup
+      - common #defines for easy transition
+  +++ include/igl.h       25 Mar 2002 11:37:55 -0000
+    opengl module
+      - Vertex Arrays support
+  +++ include/imodel.h    25 Mar 2002 11:37:57 -0000
+    model module
+      - interface cleanup
+  +++ libs/mathlib.h      25 Mar 2002 11:37:59 -0000
+    vector macros - cleanup
+    m4x4
+      - documentation of matrix layout
+      - interface for utility functions for axis-angle and quaternion rotations
+      - interface for new utilities for specifically transforming points/normals 
+    aabb
+      - interface for faster aabb-ray test without finding intersection point
+      - interface for utility to calculate an aabb to contain a transformed aabb 
+  +++ libs/mathlib/bbox.c 25 Mar 2002 11:38:01 -0000
+      - cleanup of use of qboolean
+      - implementation of fast aabb-ray-test
+      - implementation of aabb-for-transformed-aabb
+  +++ libs/mathlib/m4x4.c 25 Mar 2002 11:38:02 -0000
+      - implementation of utility for rotation matrix from axis-angle/quaternion
+      - cleanup of implementation of matrix multiplication functions (optimise for in-order array traversal)
+      - implementation of new utilities for specifically transforming points/normals
+  +++ libs/mathlib/ray.c  25 Mar 2002 11:38:02 -0000
+      - replace use of m4x4_transform_vec3 with new point/normal specific utils
+  +++ plugins/mapq3/plugin.cpp    25 Mar 2002 11:38:06 -0000
+      - rename g_EntityTable using #define in ientity.h
+  +++ plugins/mapq3/plugin.h      25 Mar 2002 11:38:06 -0000
+      - rename g_EntityTable using #define in ientity.h
+  +++ plugins/mapxml/xmlparse.cpp 25 Mar 2002 11:38:06 -0000
+      - buffer-safe dtd path construction (without using string class, in case of unknown bugs)
+  +++ plugins/md3model/Conscript  25 Mar 2002 11:38:06 -0000
+      - remove entity-module files from md3model conscript 
+  +++ plugins/md3model/md3model.cpp       25 Mar 2002 11:38:07 -0000
+      - implementation of generic quake-style-model class CModel
+      - implementation of CModel-derived md3/mdc classes
+  +++ plugins/md3model/md3model.dsp       25 Mar 2002 11:38:08 -0000
+      - remove entity-module files from md3model dsp
+  +++ plugins/md3model/md3model.h 25 Mar 2002 11:38:08 -0000
+      - interface for generic quake-style-model class CModel
+      - interface for CModel-derived md3/mdc classes
+  +++ plugins/md3model/md3surface.cpp     25 Mar 2002 11:38:09 -0000
+      - implementation of generic quake-style-model class CSurface
+      - implementation of CSurface-derived md3/md2/mdl/mdc classes
+  +++ plugins/md3model/md3surface.h       25 Mar 2002 11:38:09 -0000
+      - interface for generic quake-style-model class CSurface
+      - interface for CSurface-derived md3/md2/mdl/mdc classes
+  +++ plugins/md3model/plugin.cpp 25 Mar 2002 11:38:10 -0000
+      - provide support to synapse for loading md3/mdc/mdl/md2 models, and mdl images
+  +++ plugins/md3model/plugin.h   25 Mar 2002 11:38:10 -0000
+      - interface for loading md3/mdc/mdl/md2 models, and mdl images 
+  +++ radiant/brush.cpp   25 Mar 2002 11:38:18 -0000
+      - #ifdef remove Group/Brush-Patch-Epair related stuff
+      - const correctness for ValueForKey interface const change
+      - add bounding-box update for models in Brush_Build
+      - remove old brush parsing/writing stuff
+      - remove old eclass-model loading/displaying stuff
+      - enable vertex arrays on light drawing
+      - moved brush is-selected? utility to brush.cpp
+  +++ radiant/brush.h     25 Mar 2002 11:38:18 -0000
+      - comment out interface for old brush parse/write stuff
+      - comment out interface for brush epair stuff
+  +++ radiant/brush_primit.cpp    25 Mar 2002 11:38:20 -0000
+      - remove old brush-primitives parsing/writing stuff
+  +++ radiant/camwindow.cpp       25 Mar 2002 11:38:23 -0000
+      - moved brush-bbox update for models to brush.cpp:Brush_Build
+      - bugfix for material colour setting when drawing models
+  +++ radiant/eclass.cpp  25 Mar 2002 11:38:24 -0000
+      - removed old eclass-model checking/loading stuff
+      - added const checking for Eclass_ForName interface
+  +++ radiant/entity.cpp  25 Mar 2002 11:38:26 -0000
+      - REMOVE THIS FILE
+  +++ radiant/entity.h    25 Mar 2002 11:38:26 -0000
+      - REMOVE THIS FILE
+  +++ radiant/groupdialog.cpp     25 Mar 2002 11:38:29 -0000
+      - change entity creation to not use Entity_Create (function was removed)
+      - commented groups stuff
+  +++ radiant/gtkdlgs.cpp 25 Mar 2002 11:38:36 -0000
+      - const correctness for ValueForKey
+  +++ radiant/gtkmisc.cpp 25 Mar 2002 11:38:39 -0000
+      - added filetype patterns for mdc/mdl/md2
+  +++ radiant/main.cpp    25 Mar 2002 11:38:41 -0000
+      - const correctness fixes
+  +++ radiant/mainframe.cpp       25 Mar 2002 11:38:59 -0000
+      - change selection -> merge entity and selection -> separate from entity to go through mainframe class
+      - implementation of mainframe functions for selection -> merge entity and selection -> separate from entity
+      - made entity grouping and detail/structural settings undoable
+      - commented out old groups stuff
+  +++ radiant/mainframe.h 25 Mar 2002 11:39:01 -0000
+      - interface for mainframe functions for selection -> merge entity and selection -> separate from entity
+  +++ radiant/map.cpp     25 Mar 2002 11:39:04 -0000
+      - const correctness fixes
+  +++ radiant/pluginmanager.cpp   25 Mar 2002 11:39:08 -0000
+      - removed model table
+      - stopped requesting model table from synapse
+      - request undo table from synapse
+      - commented out support for IEpairs stuff - NOTE: to be integrated with entity module
+      - fill interface table for opengl vertex array support 
+      - fill interface table for undo
+  +++ radiant/pmesh.cpp   25 Mar 2002 11:39:18 -0000
+      - cleanup patch cap and patch thicken to create entities using entity module interface (without Entity_Create)
+      - removed old patch parse/write stuff
+      - #ifdef'd out patch epair/groups stuff
+  +++ radiant/qe3.cpp     25 Mar 2002 11:39:21 -0000
+      - const fixes
+      - buffer-safe dtd path construction (without using string class, in case of unknown bugs)
+  +++ radiant/qe3.h       25 Mar 2002 11:39:24 -0000
+      - don't include entity.h, include ientity.h and forward-declare entity-table instead
+      - include imodel.h but don't forward declare model-table
+      - include iundo.h and forward-declare undo table
+      - comment out interface to old patch parse/write stuff
+      - comment out interface to old brush parse/write stuff
+      - comment out iepairs header include.. NOTE: to be integrated with entity module/interface 
+      - include eclass interface (we don't have an eclass.h)
+      - declare interface for CreateEntityFromName (generic useful func)
+      - declare target/targetname utils interface (we don't have a targetname.h)
+  +++ radiant/select.cpp  25 Mar 2002 11:39:27 -0000
+      - cleanup implementation of entity selection-grouping/ungrouping utlities
+  +++ radiant/select.h    25 Mar 2002 11:39:27 -0000
+      - cleanup interface for entity selection-grouping/ungrouping utlities
+  +++ radiant/undo.cpp    25 Mar 2002 11:39:29 -0000
+      - removed workaround for wierd entity_clone behaviour (changed in entity module)
+      - avoid using Entity_FreeEpairs (not exposed by entity module)
+  +++ radiant/xywindow.cpp        25 Mar 2002 11:39:35 -0000
+      - const fixes
+      - cleanup implementation of CreateEntityFromName to be a usful generic utiliy function
+      - enable vertex arrays in XY_Draw
+      - enable undo for right-click dropping entities in XY window
+  TTimo
+  - various fixes to make the above compile on Linux, checkin to cvs
+  - fixing some win32 build stuff
+  
+  Hydra
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=434
+  fixed setSpecialLoad in .def code
+
+19/3/2002
+  Gef
+  - Modified the fix for LoadImage to be more consistent with other code
+  - Applied Hydra's fix for empty alpha channel warnings & cleaned up indentations (tabs) in lbmlib.cpp
+    also added output of the tga type when a tga file fails to load
+  - Reverted my over complex fix (read; mess) for strtok_r to use strtok instead of manual tokenising
+
+17/3/2002
+  Gef
+  - Fixed LoadImage API list not being incremented while trying to find image minors, result was
+    infinite loop when loading images that weren't of the first type (tga)
+  - Fixed cloning giving dtd errors. mapxml/xmlparse.cpp:ParseXMLStream() was using 
+    g_FuncTable.m_pfnGetQERPath() as the dtds path... disabled validation until spog can check 
+    that my fix is the right solution
+  - Added simple formatting to xmap file output so that each node has a new line for readability
+
+13/3/2002
+  TTimo
+  - introduced API List managers
+    we deal with two types of APIManager now, the ones that matching all minors for a given major
+    and the ones that require a fixed list of minors
+  - converted the image loaders to go through a API list manager
+  - fixed various things in synapse (introduced more bugs?)
+  - fixed plugins, realized it was still broken
+
+12/3/2002
+  Hydra & TTimo
+  - EClass_Create in the EClass manager _EClassManagerTable
+  - removed InitFromText from _EClassTable
+
+8/3/2002
+  TTimo
+  - some commented out code cleanups
+  - added eclassfgd/ fgd.so module skeleton
+    loaded up in radiant core as an optional entity format
+    added eclass manager code to deal with the new format if present
+    this still loads .def, the actual .fgd code needs to be written now
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=433
+    added a g_strDTDPath global
+    disabled DTD validation, broken on win32
+  - Str copy constructor (const Str &) working correctly with a __strDup
+
+7/3/2002
+  TTimo
+  - added verbosity in file accesses for CXMLPropertyBag
+  - more fixes to project lookup
+  - dropping dtds/ prefix, this is installation dependent
+  - removed ipluginentities.h, the plugin entities stuff was disabled long time ago already
+  - cleaned up some old commented out stuff
+  - proof of concept synapse builtin module: new class CSynapseClientBuiltin allows to have
+    modules builtin to the application (i.e. statically linked)
+    adding
+      include/ieclass.h (eclass loader API)
+      radiant/eclass_def.cpp (.def class loader, builtin)
+      radiant/eclass_def.h (.def loade, API public to the core)
+
+    NOTE: radiant/eclass_def.cpp needs to be added to the win32 projects  
+  - quickfix to project file loading ("/scripts/")  
+  - introduced an EClass manager, hooked up the .def builtin module through it
+    (not yet possible to push new entity format modules, but .def reading is already fully synapsed)
+
+6/3/2002
+  Gef
+  - Fixed a segfault when getting mUserPathPrefix in CGameDescription::CGameDescription()
+  - added preferences check for fixing target/name collisions
+  - fixed a logical error on my part, where setting g_qeglobals.m_strHomeGame in
+    CGameDescription constructor results in a value from the last file parsed. Moved it
+    to a more appropriate location, where it gets a value from the selected .game file.
+  SPoG
+  - changed g_strGameToolsPath to g_strAppPath in GetQERPath API
+  - fixed mapq3.dtd
+  - enabled DTD validation of xmap files
+  - added mapq3.dtd to setup scripts (not tested)
+  TTimo
+  - added OnActivated() to synapse clients, override to put some init code
+  - fixing default project path lookup and user project increment (again)
+  - fix to linux setup, no trailing slash in basegame items
+    (wolf.game and q3.game)
+  - removed old plugin/modules code, leaving only the synapse implementation
+    recoded image loading and Map_Import/Map_Export  
+    still some temporary solutions and cleanup work to be done
+    removed plugin.cpp from the tree / build system
+
+5/3/2002
+  SPoG
+  - TODO: add default project for wolf to WolfPack CVS module
+  - changed xml project file load to search for DTD "dtds/project.dtd" under radiant path
+  - fixed crash in mapq3 on trying to read uninitialised token ptr
+  - changed .map to be default map format for now
+  - changed runbsp to not hardcode -fs_basepath
+  - added -fs_basepath to quake3 default project
+  - added project.dtd to setup scripts and swapped quakev2.qe4 for default_project.proj (not tested)
+
+4/3/2002
+  TTimo
+  - merged synapse2 branch back into trunk, checked Linux and win32 builds ok
+  - updated the .dsp to work with new libxml2 2.4.16
+  - fixed broken enginepath guessing, and broken project path rotation / saving
+
+28/2/2002
+  Gef
+  - Added extra checks for target/targetname collisions
+  - Find Brush dialog title correction (bugzilla #393)
+
+26/2/2002
+  Gef
+  - Added Entity_Connect() to entity.cpp to avoid duplicating code
+  - Fixed target/targetname collisions - entities being cross-linked when copied
+    Bugzilla #385 : http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=385
+
+16/2/2002
+  Gef
+  - cleaned up the kyro gl_point workaround stuff
+  - taught ClipPoint's (clips & path points) how to draw themselves
+
+8/2/2002
+  Gef
+  - Added mapxml.so to linux setup
+  - strip debug symbols option in setup
+  - removed g_qeglobals.m_strHomeMaps, writing it to project instead
+    fixes a bunch of re-broken path issues. Also uses fs_game now.
+  - Minor grid colour in QER Black & Green theme
+  - Save window's pos/size for all view types in MainFrame::OnDestroy
+
+---------------------------  on branch synapse2
+4/3/2002
+  - modules don't show up in plugins menu, added a dump in console before entering interactive mode
+  - added compile time def for synapse verbosity
+
+3/3/2002
+  - finished converting all the modules to synapse, disabled old ResolveInterface call
+
+24/2/2002
+  - hooked TexTool into Radiant plugin menu through synapse
+  - added iplugin.h which I had forgotten earlier
+  - ported synapse code to compile and run on win32
+
+19/2/2002
+  - SYN_REQUIRE_ANY / multiple API manager code
+    can load multiple interfaces based on a matching pattern
+    converted TexTool to load that way
+
+18/2/2002
+  - added iplugin.h with basic interface for plugins  
+
+13/2/2002
+  - synapse on modules currently disabled,
+    the basics of the code are working fine, need to look at multiple interfaces matches before going further
+  - started converting shaders, requires conversion of a lot more others
+  - image converted to synapse
+  - no longer using GUID in synapse, all done through *_MAJOR strings
+  HOWTO: convert a module to synapse:
+    configure it to link against synapse static lib
+    (+include path to STLPort required)
+    add #include "synapse.h" to the plugin header
+    declare the : public CSynapseClient in plugin header
+    implement it (listing provides and requires, implement the request code)
+
+12/2/2002
+  - vfspk3 converted to synapse
+
+11/2/2002
+  TODO: get rid of all WINAPI crap
+  - debugged the API dependencies solver to actually work  
+  - added newer cons at the head of the tree
+
+10/2/2002
+  TTimo
+  - added the basic code for solving API dependencies and requesting the various tables
+  - more diagnostic printing code fixes
+  - version checkings
+  - some more design work (libs/synapse/doc)
+
+9/2/2002
+  TTimo
+  - some changes to the files layout, cleanup of the diagnostics printing
+  (stuff's mostly broken right now)
+  - reworked the complete Sys_Printf stuff to rely on va_list implementation
+  - include/isynapse.h declared useless and foxed without mercy
+  - added include/irefcount.h
+
+8/2/2002
+  TTimo
+  - adding an experimental Anjuta project file to play around with
+
+7/2/2002
+  TTimo
+  - various fixes to build on linux, listed a bunch of current issues
+  - fixing terrademo.map to remove broken mapobj~1 -> mapobjects
+  -- synapse2 branch --
+  - propagate the code from old synapse branch to a new branch out of 1.3 tree
+    (builds and runs on linux, that's about it for now)
+
+--------------------------- end branch synapse2
+  
+7/2/2002
+  djbob
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=354
+  moved all the preferences code to XML
+
+6/2/2002
+  SPoG
+  - checked all paths conform to: unix dir separators + trailing separator
+  - changed file dialogs for load/save of maps to default to "mapspath"
+  - removed OpenDialog and SaveAsDialog, use file_dialog instead
+  - removed FileSystem paths stored in QEGlobals_t.. replaced by CGameDescription
+  - removed dependence on EnginePath from preferences, replaced by CGameDescription
+  - removed hardcoded g_get_home_dir calls for file dialogs
+  - added validation of project settings entry paths before they are set
+
+5/2/2002
+  EvilTypeGuy
+  - moved filters.cpp related function declarations to filters.h
+    and added #include "filters.h" to brush.cpp, csg.cpp, main.cpp,
+    mainframe.cpp, map.cpp, select.cpp as not all files include
+    qe3.h and qe3.h is a rather monolithic header this seems to be
+    a cleaner solution per SPoG's suggestion...Fixes compilation.
+
+  Gef
+  - contrib/plugins BOOL cleanup (uses qboolean now) fixes X header conflict
+  - cons update for mapxml
+  - SaveAsDialog() changed to match path's used in OpenDialog()
+  - removed radiant/xy.h - moved contents to qe3.h (FilterBrush declaration)
+
+4/2/2002
+  SPoG
+  - changed QE_LoadProject and QE_SaveProject to load/save xml project file format
+  - changed request dialog for project files to loop until a valid file is found
+  - fixed memleaks in CGameDescription constructor for xmlGetProp
+  - added converting gametoolspath unix format when parsed from game file
+
+  - fixed m4x4 lib to use column-major order (more compatible with opengl)
+  - added divergence parameter to ray-point intersection test
+    (now easier to select distant points in perspective views)
+  - cleaned up modelview/projection matrix manipulations in 2d/3d view
+  - cleaned up map modules / interface source files a bit
+
+  - added ability to specify map module version when importing/exporting map
+  - cleaned up file dialog code, returned filename is static and in unix format
+  - save-as dialogs force a file extension depending on filetype selected
+  - added filetype manager to support registering custom file types
+  - fixed loading and cleaning engine path from radiant.ini correctly
+
+3/2/2002
+  EvilTypeGuy
+  - fixed win32 compilation (userpathprefix is Linux specific)
+
+  ETG & Powzer
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=308
+    added preference to allow 'paint drag-select' brushes/faces in 3d camera view
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=389
+    added preference to strafe camera foward/back in 3d view while freelook is active
+
+  ETG & RR2DO2
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=388
+    patch adds ability to strafe up/down/left right while freelook is active
+
+1/2/2002
+  TTimo
+  - bumped to 1.3.1-nightly
+
+-- 1.2 stable branch branched here
+
+  Gef & TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=372
+    http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=376
+    appplied the patch, corrected the mapspath expansion stuff
+  TTimo  
+  - linux nightly setup code
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=384
+    hacked a corrective action in the nightly setup
+
+  SPoG
+  - fixed creating region brushes that fill the entire grid for Save Region
+
+31/1/2002
+
+  Micheal Schlueter
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=375
+  syntax fix to q3map path_init.c
+  
+  Gef
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=279
+  patch 185 == 186
+  tweaking to config stuff in linux setup
+  patch 187
+  Ensures the games directory exists before trying to create a file there
+  patch 177
+  Adds *.cf files & uses them. I think I have all the files in the right places now... maybe
+  (some additional fixes on top by me)
+  
+  ETG
+  quick fix to shader prefs load
+
+29/1/2002
+
+  EvilTypeGuy
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=345
+  more detachable menus fixes
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=334
+  fixes 'load shaders at startup' preference
+
+  SPoG
+  - fixed misc_model "modelscale" and "modelscale_vec" support
+  
+  TTimo
+  - upgraded setup scripts to support nightly build
+  - last minute fix to the modelscale and modelscale_vec code (md3 module)
+
+  ydnar
+  q3map 1.2.4-y2
+
+    New features:
+    - -nopatchfix argument. This disables lightmap patch fixes and makes a map suitable for lighting with -vlight.
+    - Degenerate patches are treated like broken brushes. They are ignored, warned about, and selected in Radiant if you ran with the -connect option (or from the BSP menu). This was what was causing the "0 valued axis" error some people were experiencing.
+
+    New entity keys:
+    - "_lightmapscale" key for brush entities (worldspawn, func_*). This lets a mapper scale the lightmap samplesize per-entity. For large constructions, 2.0 or 3.0 is a fine value, and keeps BSP size down and compile times low. For those areas you want to have high-detail shadows, make a func_group and use a value of 0.25 or so. It will scale the samplesize value for the surface's shader (default 16) or the -samplesize argument.
+    - "modelscale" and "modelscale_vec" keys for misc_models (1.0 = default). This was for proper RTCW support and is available for Quake 3 maps as well. Lets you scale up map models in the world, getting around the MD3 size limitation. The next build of GtkRadiant has SPoG's code to support this in-editor so you can see what effect a scale has.
+    - Flare surfaces are now supressed from the BSP. They serve no purpose other than add to the vert & surfacecount in a BSP. These surfaces were created silently when a shader has "light 1" or "q3map_flareshader X." Use the new -flares switch when BSPing your map to have them emitted.
+
+    Changes:
+    - GtkRadiant 1.2.4-nightly version increment.
+    - Full WolfSDK style lighting enabled with -game wolf, including lightJuniors. This includes linear lights by default (no angle attenuation) and support for the additional RTCW "fade" and "angle" keys, and spawnflag changes, including q3map_nondynamic on light entities. This may require maps being constructed for RTCW with the current toolset to change their light entities. Sorry. :) Note, Wolf-style lighting only works with -light, and not -vlight.
+    - Vertex light stitching now uses a near-ambient light check for dark vertexes as opposed to lower-than-average fixups. This preserves some shadow detail better while getting the buried verts lit properly. Comments encouraged.
+    - Surfaces' samplesize are now stored in the BSP. This change makes BSPs generated from this version incompatible with all other q3maps. The upside is that -samplesize N is no longer necessary on the -light or -vlight stage. This feature is necessary to support the "_lightmapscale" key.
+    - Additional PVS optimizations in lighting.
+
+    Fixes:
+    - Will compile for RTCW properly (1.2.1-y12 didn't).
+    - No more sparklies where fog meets brush faces. They're split properly now.
+    - Crash bug in vlight fixed.
+    - Vertex light fixups/stitching is considerably faster.
+    - Vertex light fixups ONLY stitch faces with lightmaps. For pointlight surfaces you're on your own.
+    - Better snapping logic when merging nearly-coincident vertexes on complex brush windings.
+    - Bug where the .prt file had some bogus or nearly-borked portals. They're cleaned up like everything else now.
+    - A few stupid bugs in path initialization. Should work better. Also includes TTimo's fixes to my code so it would work properly on Linux.
+    - RR2DO2's PCX loading patch for alphamaps. This bug was manifesting itself in the form of offset or incorrect samples being used on terrain entities.
+    - A ton of other minor little fixes here and there.
+
+28/1/2002
+
+  TTimo
+  - win32 fixes
+  - 1.2.4-nightly
+
+  djbob
+  - EClass_ForName fix if malformed name
+
+---- 1.2.3 linux released
+
+  TTimo
+  - fixed BSP version depending on game mode in q3map
+    (home dir guessing is still fucked, have to fix before release)
+  - fixed q3map init_path.c home path bug on init
+
+  Gef
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=369
+    more fixes to texture paths in gensurf
+
+27/1/2002
+  TTimo
+  - switching to v3 project file, forcing reload of template if non-v3
+  need to distribute quakev3.qe4 in setups now (done for linux setup, will have to in win32)
+  - renamed Main to main in q3map init paths
+  - fixes the ~/. inits and init order in q3map
+  - added m_pfnPathForPluginName to the main function table, returns the directory a plugin is running from
+    used in bobtoolz / curry / pk3man to find various files
+    see also todo: http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=368
+  - some fixes to textures loading paths in curry
+  - linux setup copying correct content for curry (pk3 in wolf media) and bobtoolz (bt/ in plugins/)
+  - building 1.2.2 setups  
+  
+  Gef
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=362
+  gensurf fix
+  
+  djbob
+  - bobtoolz update
+  
+  Hydra
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=361
+  fixes a bug with the texture menu loading, now we see the non-shaderlist directories too
+
+26/1/2002
+  Gef - Michael Schlueter - TTimo 
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=279
+  applied several patches (to setup code and to the setup scripts)
+  modified makesdk.pl to update with more content
+  added an "enginepath" attribute to the game file, reworked the handling in editor
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=347
+    took out the refresh command from the plugin menu
+  - more linux fixes:
+    bringing all the plugins to compile again on linux
+    polishing the setup code (all the right files in the right places)
+  - for linux release, bumping ver to 1.2.2
+    win32 will have a 1.2.3-nightly after that
+  - added correct init of ~/.q3a or ~/.wolf
+    *nix systems have a 'prefix' attribute in the .game file to specify
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=359
+    identified the mod compiling problems
+    applying back the old fs_basepath fs_game code to the BSP generation
+    
+  ydnar- TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=351
+    cleaner path init code
+    it doesn't init for ~/.q3a and ~/.wolf paths yet
+
+25/1/2002
+  SPoG
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=352
+  using the wrong matrix stack for XY_Draw caused stack overflow error
+  - texture_mode was set to an invalid enum in wireframe/flatshade mode
+  - changed plugin API to expect gamedir-relative texturenames
+  - fixed gensurf to create faces/patches with gamedir-relative textures
+
+24/1/2002
+  SPoG
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=322
+  added modelscale key check to misc_model entity in md3/entity module
+  added angle key check to eclassmodel class in md3/entity module
+  fixed bugs in BP writing and reading in map module
+  TTimo (commited as SPoG)
+  - fixing permissions on cvsreport and doxygen stuff, upgraded dot
+
+23/1/2002
+  SPoG
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=336
+  plugin API bugfix - fixes textures on stuff created by plugins
+
+---- 1.2.1 was released here
+
+22/1/2002
+  Gef
+  - linux build fixes
+  SCDS_reyalP
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=325
+  wrong file packaged in setup
+  RR2DO2
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=327
+  fix to PCX loading  
+  SPoG
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=298
+  cut & paste bugfix
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=332
+  update origin key on entities
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=333
+  made fixedsize entities not scalable
+
+21/1/2002
+  TTimo
+  - scanning in g_strAppPath/modules/ and plugins/ prior to g_strGameToolsPath
+  using the main path to put general plugins and modules
+  - fixed bobtoolz bug, init of epairs table was relying on wrong params
+  - fixed curry to compile again on 1.2
+  - fixed pk3man to compile again on 1.2
+  - updated IS setup:
+    installing the plugins with the core
+    installing the common modules in the core
+  - Compiling manual, more IS stuff, .xlink etc.
+
+  RR2DO2
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=315
+    patches for improved multimonitor support (with some associated pref items)
+
+  ydnar
+  - more q3map: http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=324
+    - radiosity fixes (proper handling of ambient light)
+    - polygonoffset fixes
+    - lightmaps on patches work better (normal calcs adjusted, planar patches are 
+      box projected like brush sides)
+    - double vfs init in bsp stage removed (this needs to be tested on Linux)
+    - lighting is faster again
+    - a couple crash bugs resolved
+    - other tasty nibbles
+
+20/1/2002
+  EvilTypeGuy
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=313
+  detachable menus set as preference (in layout)
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=255
+  path prompt
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=307
+  patch dialog names
+  ETG & RR2DO2
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=306
+  fix 'Natural' texturing crash
+  ETG & TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=291
+  found out the problem, Wolf SP spawn works now
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=144
+  fixed more problems with model loading vfsExtractRelativePath
+  prolly broke the linux build, just a matter of putting a bunch of #idfdef
+  - fixed an additionnal .pid lock situation, cleaning the global prefs on game .pid lock
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=301
+  fixed md3 tris test selection bug
+  djbob
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=219
+  fixed bobtoolz for 1.2
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=318
+  filter structural
+  RR2DO2
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=305
+  filter in viewmenu for lightgrid brushes (ydnar's q3map)
+  fixes image lib loading bugs
+  Hydra
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=298
+  copy/clone deselects the copied stuff
+  added a pref to deselect or not, and to nudge pasted stuff or not
+
+19/1/2002
+  djbob
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=311
+  IEpair wrapper to access project entity from plugins
+  RR2DO2
+  - missing IncRef in CShaderArray::AddSingle
+  TTimo
+  - game.xlink files in gametools path, is scanned to build items in the Help menu
+  (and the associated code)
+
+18/1/2002
+  Gef / Michael Schlueter / TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=279
+  patches 133 and 138 applied, new setup code
+
+14/1/2002
+  TTimo
+  - adding djbob write access for bobtoolz
+
+13/1/2002
+  ydnar
+  - q3map code updates 1.2.1-y8
+    new lightgrid surface flag feature
+       lightgrid shader and editor image for Wolf and Q3/TA: in the common .pk3 and in all common.shader
+       cvs remove setup/data/baseq3/common-q3r.pk3 (unused, we use common-spog.pk3)
+  TTimo
+  - updating setup to use mapq3 module instead of map (both Wolf and Q3 game packs)
+    (also checked the lightgrid option)
+  - fixed setup.pl bug for template gen from WorkDir/
+  - correct spawning between SP and MP mapping mode
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=297
+    .pid check, console logging and prefs cleanup
+  Wolfen
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=294
+    checked in updates to the manual links page and setup instructions
+    (i.e. new prefs dialog)
+
+12/1/2002
+  Gef & Michael Schlueter
+  - bugs #295 and #279, new patches applied
+  EvilTypeGuy & djbob
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=220
+    patch selection crash
+  EvilTypeGuy
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=260
+    Dense and Very Dense Cylinders have wrong number of rows    
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=292
+    latching patch toolbar settings
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=144
+    win32 long/short pathname bugs reappearing, switching back to short paths for project settings
+  - removed obsolete radiant/vfs.cpp radiant/vfs.h
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=291
+    using new .qe4 for Wolf, fixed stuff editor side (long path names and engine spawn)
+  SCDS_reyalP
+  - http://zerowing.idsoftware.com/bugzilla/showattachment.cgi?attach_id=118
+    realloc bug in terrain
+
+11/1/2002
+  SPoG
+  - unpatched bug #239, unintended duplication of brushes, patch #96
+       Note: bug #239 now unresolved
+  EvilTypeGuy
+  - bug #295 fixes for compile under Linux
+
+10/1/2002
+  SPoG
+  - fixed CEntityEclassModel referencing eclass after eclass has been deleted
+  SPoG - map-module branch
+  - new map module, provides current functionality, using new map interface
+  - cleaned up merging/creating of entity array used by map module
+  - implemented MemStream::printf(const char,...) - can't print strings larger than 1024 currently
+  - changed copy/paste to use the map module, via abstraction of FileStream/MemStream as DataStream
+  - fixed Save Region and Save Selected
+  - new xml map module "mapxml"
+  - cleaned up map.cpp
+
+6/1/2002
+  TTimo
+  - removed m_bPak from pref dialogs (it was dead code)
+
+5/1/2002
+  RR2DO2
+  - q3map terrain blending fix for >5 layers
+  EvilTypeGuy
+  - fs_homepath patch on linux
+  Gef
+  - bug #279, linux setup, patch #102
+  - bug #239, unintended duplication of brushes, patch #96
+  TTimo
+  - added Wolf specific project settings dialog:
+    correct fs_game selection and combo names
+    added multiplayer / single player mapping mode selection
+
+4/1/2002
+  TTimo
+  - adding -game wolf switch to q3map (-game quake3 works too, but it's the default anyway)
+    using different bsp version and different fs_basegame on wolf
+  - updated the setup/win32/setup.pl script to generate from a config file instead of hardcoded
+    (added corresponding q3.cf wolf.cf and all.cf config files)
+  - added a default Start Menu shortcut name (RR2DO2 special)
+  - diffing against Id's internal SOS source and merging in new stuff:
+    - bumped MAX_SURFACE_INFO to 4096 in shaders.c
+       - new terrain code (Jim Dose)
+         ParseTerrain() addition in terrain.c
+         Creates a mapDrawSurface_t from the terrain text
+       - VL_SurfaceRadiosity and VL_SurfaceRadiosity
+         MrElusive's vlight radiosity code
+       - speedups to vis.c and visflow.c (MrElusive)
+
+3/1/2002
+  TTimo
+  - merge gameselect branch back into trunk
+  the IS setup scripts have been updated for the new paths layout
+  developement environment needs to be updated to copy binaries to the right places for debug
+  it is recommended to run a 1.2.1 setup on win32 prior to compile and install debug bins
+  - updated the setup to be more templated for inclusion/non inclusion of game packs on demand
+
+  - propagating recent fixes to Alpha into the trunk
+  based on diffing between Merge-1_1_1 and Merge-1_1_2:
+  =====================================================================
+  13/11/2001
+    djbob
+    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=244
+    reverted again the shader manual and tcMod docs
+
+    TTimo
+    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=214
+    patched aselib.c, was calling strstr badly (relative path extraction)
+
+  12/11/2001
+    djbob
+    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=241
+    applied patch, will release in next nightly
+
+    Spog
+    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=254
+    patch for safe_malloc
+
+    TTimo
+    - fixing STLPort config checks and XML config (CHAR -> xmlChar)
+    - added safe_malloc_info and safe_malloc in the common/ dir
+    - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=179
+    added XML stream version checking between Radiant and q3map
+  ========================================================================  
+  also, manual merge of docs/manual and setup media
+  this merge work is related to bug #280 too:
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=280
+  
+  ydnar
+  - new q3map, radiosity and bug fixes, code merged in with the trunk version
+  (TODO: add more detailed changes log)
+
+  EvilTypeGuy
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=274
+  broken auto caulking fix
+
+  EvilTypeGyu & LordHavoc
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=207
+  (two new files, project settings updated)
+  
+2/1/2002
+  TTimo - branch gameselect
+  - copying over the linux setup binaries (setup, uninstall, setup.gtk)
+  from Alpha branch. Those have the ability to prompt destination path
+  per component.
+  Gef - branch gameselect
+  - patch 101 for bug 279
+  .game files generation by the setup, makesdk.sh and postinstall.sh fixups
+
+1/1/2002
+  Gef - branch gameselect
+  - linux source fix http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=279
+  (we use PATH_MAX as the cross platform define instead of MAX_PATH which only works on win32)
+  
+  TTimo - branch gameselect
+  - cleanup and homogeneisation of the paths for prefs storage
+    m_global_rc_path:
+      win32: g_strAppPath
+      linux: ~/.radiant/<version>/
+    m_rc_path:
+      win32: g_strGameToolsPath
+      linux: ~/.radiant/<version>/<gamename>
+    so that global.pref goes in ~/.radiant/<version>/global.pref
+    and radiant.ini ~/.radiant/<version>/<gamename>/radiant.ini  
+
+27/12/2001
+  TTimo - branch gameselect
+  - global prefs file (global.pref), XML based in core directory
+    stores game selection setting
+       stores autoload setting
+  - dropping 'gameid' from .game file, gonna use a 'gamefile' in global prefs instead
+    (and the .game file name .. thks Gef)
+  - TODO: radiant.log stuff in global prefs?
+
+21/12/2001
+  TTimo - branch gameselect
+  - more Wolf setup tweaking for an experimental build release:
+    quakev2.qe4 project template file
+       using a 'gameid' attribute in the game file to select hardcoded features in the editor binary
+       'basegame' node for lookup of the default project file
+       'engine' node for engine path
+  - added experimental Wolf game pack to IS
+  - added setup/win32/HOWTO with extensive information about the procedure to
+    add new game packs
+  - reading the 'name' attribute in the game node for game selection dialog
+  - TODO: pid files to make safe startup?
+  The .pid stuff should be happening after game selection, since it covers game-specific 
+  preference settings. 
+  - TODO: console logging pref should be a global pref, goes with game autoload?
+
+17/12/2001
+  TTimo - branch gameselect
+  - updating the setup script for experimental 1.2.0 setup:
+  
+  merged some of the docs back into trunk (Radiant manual, some TA docs)
+  will need to perform a complete diffing between Alpha and trunk about docs/manual at some point
+  merged bitmaps from Alpha too
+  
+  added the Q3 modules (image, map, md3model, shaders, vfspk3) to Q3 game pack in setup
+  
+  generating per-game config file q3.game in OnMoved (IS setup)
+  will need equivalent with linux setup of course
+  
+  various other generic fixes to the setup code
+  
+  - multiple games support, list of changes, and TODO:
+  NOTE: this is on a 'gameselect' branch for now
+  Doxygen documentation should be at http://zerowing.idsoftware.com/doxygen
+    for this branch too.
+
+  The installation procedure has changed. The win32 installer is partly ready, linux installer
+  will need to be modified too. The editor binary and the Gtk DLLs are installed in a common
+  location, i.e. 'C:\Program Files\GtkRadiant' typically. The game specific binaries and modules
+  go in the same location as usual, for instance 'C:\Program Files\Quake III Arena\GtkRadiant\'
+  (and also 'C:\Program Files\Quake III Arena\GtkRadiant\modules' 'C:\<..>\plugins')
+
+  The environment variables used by the build system (VC6 project files) have been adapted:
+  $(QUAKE3RADIANTDIR) is still used
+  $(CORERADIANTDIR) is used for the main editor location
+
+  When editor starts, it looks for games/*.game under g_strAppPath and prompts the user for a game
+  Once game is selected, parameters are used for regular startup.
+  You need to write your own q3.game for now, it will be generated by the setup procedure
+  my C:\Program Files\GtkRadiant\games\q3.game looks like that:
+  <?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>
+  <!-- Q3 game definition file -->
+  <!-- those are generated -->
+  <game 
+    name="Quake III Arena / Quake III: Team Arena and modifications"
+       gametools="c:/quake3/Radiant/"
+  />
+
+  given that, the editor does a complete startup, and the basics are here for multiple games
+
+  - precise changes:
+
+  g_strToolsPath renamed to g_strGameToolsPath
+  most of former g_strAppPath uses g_strGameToolsPath
+  the name change was also meant for homogeneity with DIR_GAMETOOLS_* variables we use in the setups
+  g_strAppPath still used, points to the main installation path
+
+  added the game selection code in CPrefsDlg::Init
+  using several classes and a dialog box, parsing XML files
+
+  - TODO:
+  
+  the console 'Radiant.log' doesn't catch the game selection stuff as it is now
+  initialize it to the main install, without the game setting
+  (console logging is a debugging tool anyway, no reason it should go to the proper game folder
+  each time)
+
+  the 'preferences reset/cleanup' code is probably broken, specially when used with the .pid checking
+  since we check for .pid even before we know where the GameTools path is
+
+  on linux, we need to sanitize the ~/.q3a dir usage. Switch to ~/.radiant, use the version tag
+  to maintain things independant, and use the game name to isolate per-game settings?
+  ~/.radiant/1.2.0-nightly/quake3/radiant.ini (.pid, .log)
+  ~/.radiant/1.2.0-nightly/wolf/..
+
+  also, when looking for those files (.ini mostly), win32 stores them in a main installation, and
+  linux has them in ~/.radiant/.. (which is the read/write area). This should be homogenized?
+  Maybe by adding a 'Main' to the readonly path and a new variable with 'RW', pointing to 'Main' on
+  win32 and to ~/.radiant on linux
+
+11/12/2001
+  TTimo
+  - replaced setup/win32/setup.sh by setup/win32/setup.pl
+  same functionality level + abiliy to generate back a template from a work version
+  - major rework on the IS scripts, basics of multiple games support installer
+  clean seperation between editor core and game pack
+  design doc and analysis of custom setup generation, setup script UI requierements
+  see setup/win32/TODO for more details
+
+10/12/2001
+  TTimo
+  - new generation of InstallShield setup
+  using a template/ directory instead of a .zip file
+  requires rewrite of the processing script
+  allows easier maintenance of the IS script
+
+23/11/2001
+  TTimo
+  - yet another update to cvsreport script, 
+  catch the branch and forward the info to user commands too
+  able to build doxygen for several branches selectively now:
+  http://zerowing.idsoftware.com/doxygen 
+
+22/11/2001
+  TTimo
+  - new cvsreport script, should send explicit diff of the CHANGES file now
+
+03/12/2001
+  TTimo - md3-module branch
+  - validated the fixes and the build on linux, ready to merge in trunk
+  SPoG - md3-module branch
+  - changed function naming conventions in mathlib for m4x4, ray, bbox, to be consistent
+  - fixed bug in m4x4_invert
+
+29/11/2001
+  TTimo - md3-module branch
+  - flagged all new mathlib functions that need a name change or an argument order change
+  also added various \todo to point out inconsistencies
+
+28/11/2001
+  TTimo - md3-module branch
+  - updated linux build
+  - fixed CEntityMiscModel and CEntityEclassModel destructors
+    (any destructor should be virtual)
+
+27/11/2001
+  Spog - md3-module branch
+  - stopped texturewindow showing shaders without the "textures/" path
+  - made md3 module functionally identical to current radiant md3 code
+
+22/11/2001
+  TTimo - md3-module branch
+  - fixes to the core for linux build
+  - model.so module builds on linux
+  - added plugins/md3model/doc/md3-design.txt
+  - several doxy-friendly \todo chunks about the module model
+
+  Spog - md3-module branch
+  - fixed aabb_add_aabb() algorithm wasn't very reliable
+  - added VectorMid, VectorNegative and CrossProduct macros to mathlib
+  - added bbox_intersect_plane()
+
+21/11/2001
+  Spog & TTimo - md3-module branch
+  - initial code from Spog following a preparatory design work
+  merging in as new 'md3-module' branch
+  geomlib code merged into mathlib
+  some reorganisation of the source layout and cleanup (more stuff in imodel.h, less in qertypes.h)
+
+  Spog
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=261
+  fix applied
+
+20/23/11/2001
+  TTimo
+  - yet another update to cvsreport script, 
+  catch the branch and forward the info to user commands too
+  able to build doxygen for several branches selectively now:
+  http://zerowing.idsoftware.com/doxygen 
+
+22/11/2001
+  TTimo
+  - new cvsreport script, should send explicit diff of the CHANGES file now
+
+11/2001
+  Spog
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=253
+  additional fixes
+  TTimo
+  - renamed tools/quake3/common/threads.h to qthreads.h
+  avoids a collision with system headers
+
+19/11/2001
+  Spog
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=251
+  Fixed "Move into worldspawn" deleting entities with only one brush
+  Fixed Brush_Move using texture lock on fixedsize entity brushes
+  Fixed Textures > Texture Lock > Rotations toggle checkbox
+
+16/11/2001
+  Gef
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=247
+  applied patch 77, using a notebook layout for preferences dialog
+  also patched in some preferences saving that had been forgotten
+  (such as invert mouse in freelook)
+  
+  Spog
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=253
+  patch 84 + additional modifs, bug still open
+
+15/11/2001
+  Spog
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=252
+  rewritten rendering pipeline for cam window - fixes some hacks, improves speed, 
+  makes rendering modes more consistent with each other
+
+07/11/2001
+  TTimo
+  - more IMAP interface, adding a blind data void *pData to entity_t
+    more info about it and why it's done is in map.cpp, should be a small base for next additions to the editor
+
+31/10/2001
+  TTimo
+  - using IDataStream in map module, moved back some of the module code into the trunk
+
+30/10/2001
+  Gef
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=245
+    applied patch 76
+    
+  TTimo
+  - renaming istream.h to idatastream.h, this had nasty conflicts with OS includes
+  already had to IStream -> IDataStream some time ago anyway
+
+27/10/2001
+  TTimo
+  - updated cvsreport, testing new ver
+  - added a static version of texdef (no memory alloc on the texture name)
+    unused for now, was just experimental
+  Gef
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=245
+    applied patch 75
+
+26/01/2001
+  TTimo
+  - various updates:
+  new GtkSDK precompiled binaries
+  updated libxml2 package (to 2.4.3)
+  updated STLPort (to 4.5)
+    now compiling with STLPort and threading (since we are using threading throughout the app)
+  - exposing the data stream API to the modules, renamed some stuff on the way
+    need to update the map module to use it now
+  - cleanup on qtexture_t definition
+    guarding and disabling chunks of the surface plugin code behind DO_SURFACEPLUGIN
+       (see earlier patch on plugin entities)
+
+25/01/2001
+  Hydra
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=202
+  applied patch commenting out plugin entities code
+  might come back in 1.2 under another implementation
+  the code is still there, only commented out for now
+
+17/01/2001
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=93
+  checking in doxygen content, setting up generation on zerowing
+  auto generation on zerowing upon a commit:
+  http://zerowing.idsoftware.com/doxygen
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=231
+  checked in the patch
+  - switching to a new cvs commit script
+
+14/10/2001
+  TTimo
+  - libs/mathlib library
+    unifies mathlib code squattered all over the tree
+    mainly a merge of tools math code and radiant/mathlib.cpp
+    C implementation, using an extern "C" construct for use from C++
+    need to check on linux, win32 builds ok
+    extracted qboolean code into libs/bytebool.h on the way
+
+11/10/2001
+  TTimo
+  merged TmpMerge-1_1_1 branch back in the trunk, the update process from Alpha 1.1.1 is done
+
+  TTimo - branch TmpMerge-1_1_1
+  looking through all remaining .rej files and applying the failed patches accordingly
+  bobtoolz is broken, but it's not due to the merge
+    the plugin API is different and some things need updated
+    (disabled bobtoolz build in contrib/Construct for now)
+  same for gensurf
+  same for prtview
+  same for textool
+  setup: replaced the existing stuff with 1.1.1 code
+  fixed various things for win32 build, checked correct CRT lib config
+
+10/10/2001
+  TTimo - branch TmpMerge-1_1_1
+  building modules, going through all the .rej
+  merging radiant/missing.h and modules/shaders/missing.h into a single one, moving to libs/
+  exposing BuildShaderList PreloadShaders in _QERAppShadersTable
+  have to review all the remaining .rej to finalize the merge now
+
+04/10/2001
+  TTimo - branch TmpMerge-1_1_1
+  using this branch as temporary location for merge process
+  copied over new binary files. mostly .dsp (prolly broken)
+  and setup/linux/setup.data stuff
+
+25/08/2001
+  TTimo
+  map module successfully loaded and saved q3dm1, the saved file was then loaded back into 1.1-TA without problems
+  rebuilt and checked on win32
+  merged IMap back in trunk, fixed some memory conflicts on win32
+  Took me a lot more time than I would have liked to, but there's a script tied to the CVS server now, which will post on this list a diff of the docs/developer/CHANGES file whenever it gets updated. This will probably be very handy for me since I'll only have to put update information in the CHANGES file instead of having to post on the list too.
+  The script is likely to be a bit laggy, or miss some features (for instance I'd like to extract the branch name .. anyone know how I can get the branch name (Alpha/IMap/HEAD) from the version number?
+  PS: I can email this script to anyone who would like to have a look
+
+22/08/2001
+  TTimo
+  did more work on map module, one big chunk of work left: the core should broadcast interface requests to plugins
+    when it doesn't know how to do it by itself..
+  Gef
+  new doxygen patch, generates output from core (libs/ include/ and radiant/)
+
+21/08/2001
+  TTimo
+  removed Makefile, use cons damnit!
+
+18/08/2001
+  Gef
+  automated documentation via doxygen, new scripts and content
+
+18/08/2001
+  EvilTypeGuy
+  patch for CHAR to xmlChar conversion (xml2 consistency)
+
+09/08/2001
+  TTimo
+  the map module starts to look like something, cleaned up the interface stuff
+  started moving the actual code out in the module and removing it from the core
+  lots of issues raised on the way, some structures to export, and the macro scheme to access API functions more easily
+  it compiles right now, but won't run because it's missing a lot of things .. the process simply happens to be "under way"
+
+04/08/2001
+  TTimo
+  patched more path code, to look for stuff in "bitmaps/" and "modules/" instead of "tools/bitmaps" and "tools/modules"
+  modified the Construct files accordingly
+  merged in radiant/ishaders.cpp diff into plugins/shaders/shaders.cpp (PreloadShaders)
+  merged in radiant/lbmlib.cpp diff into plugins/images/lbmlib.cpp (Sys_FPrintf)
+  checked the .rej and patched a few remaining things
+  NOTE
+    the diffs are space/tab sensisitive, and we used the "beautify source" a bunch of times, so it's a bit fucked now
+    next time, generate the diffs not space sensitive..
+  TODO
+    map loading is fucked, "textures/" prefix issue?
+
+27/07/2001
+  TTimo
+  merging recent changes from Alpha branch into the Trunk
+  this could not be done with a regular cvs merge because we already did a cvs merge of Alpha into trunk some time ago
+  manually built a diff between the current Alpha (now tagged Merge-1_1-TA_1-nightly)
+  and the Alpha we had right after the former cvs merge: -r Alpha -D 2000-05-28
+  binary files ignored in the diff, only going for source stuff
+  built with diff -Nru Reference/ Current/
+  then patch -p1 < patchfile
+  next, started rebuilding:
+    big manual updates were in vfs.cpp and texwindow.cpp
+  cleaned up some VFS stuff .. it had an absurd QERAppFileSystem / QERPlugFileSystem scheme
+  TODO:
+    the ISSetup has not been copied over from Alpha
+    OK check the Construct files
+    OK radiant/ishaders.cpp no longer exists .. apply the patch on the shader module
+    OK radiant/lbmlib.cpp no longer exists .. in the image code?
+    OK look at the *.rej files
+
+03/10/2001
+  TTimo
+  - adding a pref to select patches by BBox, fixes
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=212
+
+02/10/2001
+  TTimo
+  - reverting Spog patch 67 to bug #209, starting from scratch
+  applied again, with HasModel returning NULL safe checks
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=211
+  fixed overlays drawing (XY and Cam)
+
+01/10/2001
+  TTimo
+  - building and distributing q3data (.ase -> .md3 conversion utility)
+  updated q3data to show main GtkRadiant version information and build date
+  - generating a new GUID per-setup
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=206
+  Gef
+  - updated credits.html and links.htm, look much better
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=200
+  - update Z-checker view on camera up and down
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=199
+  Spog
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=209
+  Fixed QERApp_ReloadShaders.. PreloadShaders needs a BuildShaderList call 
+  Fixed Flush & Reload Shaders for md3 models
+
+25/09/2001
+  Gef / djbob
+  - several patches to the key handling code, for linux specific issues and sticky keys
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=191
+  TTimo
+  - fixing q3map bug, not processing the argv correctly
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=192
+  - fixed ToggleCubicClip shortcut Ctrl+\ (win32 Gtk source patch)
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=15
+
+18/09/2001
+  RR2DO2
+  - discreet movement for camera (prefs setting)
+    fixes texture window bug
+    latching view layout changes until restart
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
+  djbob
+  - added back "view > show > show angles" in view filters
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=188
+
+15/09/2001
+  G_Dewan
+  - fixed problems with q3map when not using -connect
+  SPoG
+  - fixed q3map texture projection for brushes belonging to entities with local origin
+  - added SafeOpenRead() check, terminating map->bsp stage if .map file cannot be read
+
+13/09/2001
+  RR2DO2
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=181
+  fixing key handling bug (key pressed with repetition was not properly catched)
+  TTimo
+  - added new Radiant manual elements (GtkRad section) to the win32 full setup
+  - reverting version to nightly, going back to nightly / RC delayed
+  - patched linux setup, now prompting for component path only if at least
+    one of the options is checked. Still need to handle Cancel in dialog though.
+
+12/09/2001
+  TTimo
+  - more fixes to linux script, copy plugins right now
+
+10/09/2001
+  TTimo
+  - patched contrib plugins, using seperate build scheme
+  - fixed textool issues, compiles again
+
+09/09/2001
+  TTimo
+  - sub-menu cascading
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=178
+  - udpated the Q3Radiant manual with some new GtkRadiant stuff
+  - updated the FAQ with 1.1.1 known issues
+  Gef
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=174
+  applied all the patches 
+
+07/09/2001
+  SPoG
+  - fixed qer_editorimages outside "textures/" being ignored
+  - stopped q3map_lightimage being used to set shader image dimensions
+  - changed bsp menu to remove "bsp_", changed menu text in default .qe4
+  - fixed patch LOD update - now always occurs on both cam/xy draw
+
+  djbob
+  - dynamic DEpair class strings in bobtoolz
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=171
+  - decrease VESF verbosity
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=169
+
+  TTimo
+  - fixed Gtk keyboard bug Ctrl + [ and ]
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=15
+
+06/09/2001
+  TTimo
+  - merged FullSetup branch into the trunk, we have basic functionality
+  for a full linux setup (components prompting for path)
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=158
+
+  Gef
+  - CapDialog source cleanup patch (got rid of the namespace)
+
+  RR2DO2
+  - more camera fixes, wheel mouse and texture drag drop
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
+  - additionnal patch to optimize camera refreshes
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
+  
+  djbob
+  - remember last key/pair in entity dialog for easy "apply again"  
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=18
+  - re-enabled texture name edit on PI
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=18
+
+04/09/2001
+  djbob
+  - left pane on status bar
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=166
+  
+  RR2DO2
+  - cam window cursor fix
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
+  
+  TTimo (FullSetup branch)
+  patched setupdb and setup to allow for path prompt in install
+  modified the setup script scheme to go towards a solution similar to what
+    we do under win32 (build a full and nightly build)
+  the binaries in setup.data/ (setup and setup.gtk) still need to be updated 
+    with proper binaries built from setup and setupdb cvs source
+
+03/09/2001
+  TTimo
+  - wheel mouse in texture window on win32 (with a pref setting for increment)
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=160
+  - not saving prefs while exit on sleep
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=157
+  - fixed select all of type (changed behaviour to something that makes more sense?)
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=79
+  
+  Gef
+  - final tweaks to wheel mouse scrolling (locks texwin scrolling and scrollbar update)
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=160
+  - prevent multiple color selection dialog for light entity
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=165
+  
+  djbob & TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=137
+  window positions
+  applied patch to store SI and PI positions
+  storing entity info and map info positions
+  reworked the overall position load/save scheme
+  added an enum for the view style, makes things more readable
+
+02/09/2001
+  TTimo
+  - added/cleanup ToggleFreeMode to camwindow.cpp .. stopped working on cam stuff since RR2DO2 has another patch in preparation
+  Gef
+  - patched Conscript to accept 'cons -- release' on the command line to performa a release build
+  djbob
+  - added patch splitting to bobtoolz
+  - fix to patch control points bug in camera
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=159
+  - handling of NWUV errors in q3map
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=147
+  RR2DO2
+  - new patch for camera control
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
+
+01/09/2001
+  SPoG
+  - Fixed .wal texture support, searches for .wal extension if .tga and .jpg fail
+    NOTE: requires a "pics/colormap.pcx" file to obtain a palette from
+  - Added variable default texture scale in preferences (ini key: TextureDefaultScale)
+
+01/09/2001
+  djbob
+  - fixed surface inspector "fit" bug
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=161
+  - single face deselection on a selected brush
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=153
+
+31/08/2001
+  TTimo
+  - Moved *.def files to scripts/ in win32 setup
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=116
+  - Applied patch for background position on widgets (win32)
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=108
+  - Checked C runtime lib configs
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=135
+  - updating docs (add to CVS, update setups etc.)
+    added TA teams manual to the full setup
+    uploaded on web site
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=97
+  - changed versioning to 1.1.1-nightly, next release will be 1.1.1
+  (the -TA part was removed, since we now support ALL mods)
+  - removed AFX_MANAGE_STATE calls, this is old MFC related code for win32
+  - moved texdef_t::name to private, added const char * GetName()
+  (doesn't fix explosion on exit for win32 debug builds though)
+  - fixed DoTextEdit / EditPad b0rkage (due to recent Q_Exec changes)
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=134
+  - added targetShaderName documentation to shader manual
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=102
+  - added "notta" and "notq3a" documentation to the TA Mapping manual
+  - fixed entities.def on shootable doors and buttons
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=101
+
+  djbob
+  - added MAX_POINT_ON_WINDING error handling
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=129
+  - bobtoolz update
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=123
+
+  RR2DO2
+  - noclip-type camera movement
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=23
+
+30/08/2001
+  TTimo
+  - Fixed CHANGES commit script bug
+  - Fixed -onlyents bug in q3map / origin brushes
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=92
+  - added mouse wheel to the texture window
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=81
+  SPoG
+  - Fixed texture rotation not updating correctly on patches
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=136
+  - Fixed long delay on toggling cubic clip by removing call to Map_BuildBrushData()
+  - Added note in entities.def for default worldspawn _color value
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=105
+  - Added IncRef and DecRef to Patch_FindReplaceTexture()
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=95
+  - Fixed misc_model updating on changing model key or with invalid model
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=138
+
+30/08/2001
+  SPoG
+  - Added negative vertical scale on SET and FIT in patch/surface inspector
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=65
+
+27/08/2001
+  Gef
+  - running makeversion.sh from Conscript
+  - a bunch of patches to cleanup compile warnings on linux
+  - added VectorSnap on float grid
+  - IWindowListener modified to pass float values for X Y in click messages
+  TTimo
+  - fixed crash when adding a misc_model if Gtk dialog is on
+  djbob
+  - md3 filtering for misc_model dialog
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=76
+
+26/08/2001
+  Gef
+  fixed http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=152
+    Kyro II GL drivers bug
+  fixed http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=150
+    using a scrolling textbox for GL extensions in the about list
+  fixed http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=150
+    func_group toggle in cap dialog
+    
+  TTimo
+  fixed running BSP commands on linux
+  fixed http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=133
+    VFS        init on linux
+    
+around 15/08/2001
+  TTimo
+  quakecon fixes: switched to long filenames in project and misc_model dialogs,
+    removed all occurences of win32 conversion to old 8.3 filenames
+  NOTE: this might raise some bugs and issues, but it's the way to go for the future,
+    already fixes more issues than it creates
+
+03/08/2001
+  djbob
+  fixed Radiant hijacks win32 copy/paste
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=36
+
+--- merged Alpha into Trunk, see Merge-1_1-TA-nightly tag
+
+25/07/2001
+  TTimo
+  fixed project dialog to behave right
+  proper .def scanning
+  fixed shader loading with VFS and mod stuff
+  added a local to texwindow.cpp GSList *l_shaderfiles
+    holds the names of the active .shader files
+  modified q3map to read "fs_basepath" and "fs_game"
+  TODO:
+    .def files in the media need to move to <fs_game>/scripts/
+    rename entities-TA.def to entities-ta.def
+
+24/07/2001
+  TTimo
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=116
+  updated cmdlib's Q_Exec to be more widely used through Radiant (during watchbsp.cpp cleanup)
+  patching in MarsMattel's code for mod support, and started fixing:
+    added m_strFSBasePath m_strFSMain m_strFSGame to g_qeglobals to match Q3's filesystem
+    reworked the project file dialog
+    changed the way we load and initialize eclass and shaders to work with mod code
+    updated VFS initialisation code, cleaner and better console output
+    the "game" key in the project file is no longer relevant, only "dir" is
+      (if "dir" is not present, then no mod support, vanilla Q3)
+    changed the loading of the .def files to scan in scripts/, you might need to move your entites.def to use
+    TODO:
+      cleanup .. (search where "basepath" is used for instance)
+      using fs_game when calling q3map
+      fixing project dialog to behave right
+      shader loading using VFS functions (seems to work again but I'm not sure)
+      win32 ver. might be slightly broken
+      .def scanning, don't scan ALL .def
+
+23/07/2001
+  TTimo
+  added version and build info to the log file + current timestamp
+
+22/07/2001
+  SPoG
+  fixed selection of misc_model when viewed as a bounding box
+  
+20/07/2001
+  TTimo
+  cons script for q3map building
+  added general GtkRadiant versioning (version.h) to q3map
+  nightly setup on linux:
+    using the right install path (with GtkRadiant's version name)
+    cleaned up options to only the stuff relevant to nightly
+    fixed Radiant and core binaries path in setup
+    added some template processing of setup.xml (similar to what is being done on win32)
+  
+19/07/2001
+  TTimo
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=112
+  applied ^Fishman's path
+  inclusion of version.h and aboutmsg.h moved to qe3.h
+  changed base path location process (in most cases it will prompt)
+  fixed the path construction to initialize according to the new layout
+
+16/07/2001
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=115
+  fixed wake up crash on linux
+
+12/07/2001
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=117
+  fixed
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=120
+  fixed installer bug on win98, was a problem with cygwin config
+
+11/07/2001
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=64
+  cleanup and fixed
+
+06/07/2001
+  TTimo
+  - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=100
+  can't locate the "textures: in use" problem, has been fixed already?
+  now selecting the right entity in the list, had to go around an inifinite recursion problem
+    (i.e. selection message in the entity class list causes UpdateSel recursion)
+
+04/07/2001
+  TTimo
+  - added botclip to missionpack/common.shader
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=114
+
+01/07/2001
+  TTimo
+  - backported cons scripts to Alpha branch. Type 'cons' at the head to build
+  regular makefiles should soon be outdated..
+
+30/06/2001
+  TTimo
+  - updated the IS script (Gtk changes and and BACK problem)
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=68
+  - bunch of fixed to make it build on win32 against new STLPort
+  http://zerowing.idsoftware.com/STLPort/
+  using an STLPort configured locally in GtkRadiant (with stl_config.h, new file)
+
+29/06/2001
+  TTimo
+  - fixed GDI leak affecting text widgets, specially the console and the entity inspector
+
+18/06/2001
+  TTimo
+  - more win32 project file cleanup, removing libs/libxml2 from the tree
+  - importing back "gtkr_list.h" from 1.2, made Alpha branch STLport compliant too
+    http://www.qeradiant.com/faq/fom-serve/cache/174.html
+
+30/05/2001
+  TTimo
+  - added libxml2 as an external dependency. libxml2 should be installed as a seperate
+  directory on win32. dynamic linking now instead of static previously.
+  - cleaned up q3map win32 project file, removed opengl dependency
+  (the drawflag command line is inoperant now .. I don't think it was used anyway?)
+
+26/07/2001
+  TTimo
+  - checking in Gef's doxygen files
+
+14/06/2001
+  TTimo
+  - added .dsp for map module on win32
+  - fixed several issues with module loading, stability of the debug and release builds
+    http://www.qeradiant.com/faq/index.cgi?file=197
+
+12/06/2001
+  TTimo
+  - got rid of of SysMsg thing, using SysPrintf and SysFPrintf now
+  - got rid of InfoMsg functions (can't remember what it was)
+  - changed the m_pfnError in the plugin API to match Radiant's (void)(char *, ...)
+  - changed Warning to Sys_Warning, as #define to Sys_FPrintf(SYS_WRN,
+  
+11/06/2001
+  TTimo
+  - new map module, in plugins/map, required for execution (linux Makefiles written, win32 needs to be)
+    this is using the imap.h interface
+  - added Sys_ functions to the main table (Sys_BeginWait Sys_EndWait)
+  - got rid of AFX_MANAGE_STATE macros .. those are crappy MFC remnants
+  - reverted Spog's changes to the console logging switches to their original behaviour
+  - removed m_fVersion from the func table .. we use the size of the table to do the checks
+  XMLmap merge from 31/11/2000:
+  - started moving the map loading code into a module
+  
+08/06/2001
+  TTimo
+  - updates to the plugin loading code, verbose a bit more, and more interesting information
+
+05/06/2001
+  TTimo
+  - some fixes to vfspk3 string code, using the proper str implementation
+  http://www.qeradiant.com/faq/index.cgi?file=175
+  - added and tweaked various cons build files, Radiant 1.2 core and required Q3 modules are building now
+  - fixes to image module
+
+04/06/2001
+  TTimo
+  - started using cons for the linux (*NIX) build system
+  see http://www.dsmit.com/cons/
+  
+  SPoG
+  - Fixed drawing too much coordinate text in XY window
+  - Changed grid line drawing in XY window to be more consistent
+  - Fixed clipper-tool-uses-caulk to only apply common/caulk to solid opaque brushes
+    (shaders.dll now parses some new surfaceparms)
+  - Changed shader parsing to pass over layer information in shaders,
+    rather than parsing and ignoring it all
+  - Changed misc_model selection to ignore back-facing triangles
+  - Added axes to show the grid origin in XY window
+  - Changed misc_model rendering and selection to minimise the number of extra
+    transformation calculations
+  - Fixed texture directory listing to allocate and free memory correctly using vfs
+  - Added qglDeleteTextures() to plugin GL API - fixes crash
+  - Fixed image.dll to correctly allocate and free memory for jpgs
+  - Moved modules to /modules from /plugins, updated win32 project files.
+    (linux/mac makefiles will need to be updated)
+  - Changed console logging toggle in main() to automatically disable logging after any successful startup
+  - Changed console logging to only activate when a Release build finds a .pid file
+  - Changed "found .pid" and "logging console output" messageboxes to give a clearer message
+  - Added vfsFreeFile - which is kinda redundant if we use g_free and g_malloc for everything
+  
+31/05/2001
+  TTimo
+  - cleanup of the win32 project file and C++ options.\
+  Turned off exception handling, changed some code generation options and fixed
+  some threaded/non-threaded linking problems
+  - STL in GtkRadiant or a plugin must now use STLPort
+  a custom configured version of STLPort is available at http://zerowing.idsoftware.com/STLPort
+  still need to write some guidelines about it
+  bascially, we are using STL: iostreams disabled, no namespace, no threading, no exceptions
+
+30/05/2001
+  TTimo
+  - removed libxml2 from tree, use a seperate libxml2/ directory next to GtkRadiant/ for win32
+  libxml2 will be distributed seperately as an archive based on official release (same as win32 Gtk SDK)
+  (check on zerowing for the latest archive)
+  libxml2 is now used as dynamic shared object on win32, makes sense since many module will rely on it
+  - cleaned q3map, removed GL dependencies
+  - updated Debug and Release builds on win32, it compiles and runs now
+
+28/05/2001
+  Spog
+  - moved vfsExtractRelativePath and vfsGetFullPath to vfs.cpp in vfspk3,
+    added vfsExtractRelativePath and vfsGetFullPath to IFileSystem. Copied BuildShortPathName() from qe3.cpp to vfs.cpp as a Temp fix.
+  - Changed Error() calls in bmp.cpp as a Temp fix, they relied on definition of Error in qe3.cpp. Should probably use Error() from cmdlib instead.
+  - Fixed unresolved external in jpgload.obj - merged bufsize argument into jpeg_stdio_src from Alpha branch... assuming Alpha is the newer version.
+  - Changed GtkWidget* to void* in image.cpp.. this could be cleaned up more.. i only did enough to make it compile.
+  - Added jpeg.cpp to msvc project for image.dll.. changed declaraction of LoadJPG() in image.cpp to an extern... is this correct?
+  - TODO: update vfs.cpp, vfspak.cpp and vfs.h in plugins/vfspak
+  - fixed unresolved external load_pixmap() - merged load_pixmap declaration from Alpha branch into gtkmisc.cpp
+  - moved vfsBasePromptPath() to qe3.cpp as a Temp fix - not currently required in vfs module, but it will be in future.
+  - two calls to free() in texwindow.cpp freeing memory allocated by vfs module, causing debug assert errors - changed them to g_free()
+  - TODO: Delete vfs.cpp and vfs.h from /radiant
+  TTimo
+  - additional fixes after Spog's merge (linux version), removed messaging.cpp messaging.h (name changed to ui.h ui.cpp)
+    updated linux makefile accordingly
+  - merge of Alpha version into trunk (massive amount of changes and merges, not detailed)
+
+25/05/2001
+  TTimo (Alpha branch)
+  - merged the recent MacOS branch back into Alpha
+  this makes a potential source codebase for a MacOS release
+
+24/05/2001
+  TTimo (Alpha branch)
+  - patching Spog's recent changes to fix linux build
+  using DBL_MAX and FLT_MAX from <limits.h> for float and double max
+
+23/05/2001
+  TTimo (Alpha branch)
+  - testing Spog's write access
+  
+  SPoG (Alpha branch)
+  - Added variable LOD for PatchMeshes based on curvature
+  - Added LOD-matching to eliminate gaps between patches with mismatched LOD
+  - Fixed texture shift/scale on LOD'd PatchMeshes
+  - Added opengl lighting (three infinite light sources)
+  - Added dynamically calculating vertex normals for PatchMeshes, for gl lighting
+  - Added decoding/transforming md3 vertex normals for gl lighting
+  - Changed camera drawing routine to minimise gl state changes
+  - Removed Patch_InsertDelete() - not functional
+  - Added CV lattice to selected patches
+  - Added Per-polygon patch selection
+  - Added Per-polygon misc_model selection
+  - Changed default "patch subdivisions" to 4
+  - Rewrote camwindow drawing to only change opengl state within the camwnd's member functions
+       fixes all rendering modes to be more consistent, speeds up rendering
+
+--------- GtkRadiant 1.1-TA win32 and linux release ----------
+
+13/05/2001
+
+  Spog (patched in TTimo) (Alpha branch)
+  - Fixed "Fix entity-target/targetname collisions" to use next available tN if tN, else use next available name_N
+  - Changed patch point selection to pick already-selected points in preference over non-selected
+  - Changed RemoveCols and RemoveRows to not extrapolate unless a col/row is selected
+
+11/05/2001
+  TTimo (Alpha branch)
+  - final fix pass to the generated version and about message tags
+  - improved texture adjustment code (shift+arrows shortcuts)
+
+  texture adjustment commands now affect the texture relatively to their current orientation
+  they will move along their texture axis, and not along world axis
+  the texture adjustment commands are now interpreted to be more intuitive:
+    Radiant will match the up/down/right/left translation messages to the face that is affected
+       depending on the way the camera is looking at the face, the right move commands will be used
+
+  changes start in Select_ShiftTexture, using new ShiftTextureRelative_Camera
+
+  ShiftTextureRelative_Camera uses several new functions:
+
+  // get the two relative texture axes for the current texturing
+  BrushPrimit_GetRelativeAxes(f, vecS, vecT);
+
+  MatchViewAxes does the matching between up/down/left/right commands and world directions:
+  // vec defines a direction in geometric space and P an origin point
+  // the user is interacting from the camera view
+  // (for example with texture adjustment shortcuts)
+  // and intuitively if he hits left / right / up / down 
+  //   what happens in geometric space should match the left/right/up/down move in camera space
+  // axis = 0: vec is along left/right
+  // axis = 1: vec is along up/down
+  // sgn = +1: same directions
+  // sgn = -1: opposite directions
+  // Implementation:
+  //   typical use case is giving a face center and a normalized vector
+  //   1) compute start and endpoint, project them in camera view, get the direction
+  //     depending on the situation, we might bump into precision issues with that
+  //   2) possible to compute the projected direction independently?
+  //     this solution would be better but right now I don't see how to do it..
+  void CamWnd::MatchViewAxes(const vec3_t P, const vec3_t vec, int &axis, float &sgn)
+
+  // shift a texture (texture adjustments) along it's current texture axes
+  // x and y are geometric values, which we must compute as ST increments
+  // this depends on the texture size and the pixel/texel ratio
+  void ShiftTextureRelative_BrushPrimit( face_t *f, float x, float y)
+
+  those functions are using various new utility functions:
+  
+    // GL matrix product
+    void GLMatMul(vec_t M[4][4], vec_t A[4], vec_t B[4]);
+
+    // project a 3D point onto the camera space
+    // we use the GL viewing matrixes
+    // this is the implementation of a glu function (I realized that afterwards): gluProject
+    void CamWnd::ProjectCamera(const vec3_t A, vec_t B[2])
+
+  - UI abstraction layer (interfaces for Gtk MFC and Q3 UI)
+
+09/05/2001
+  Maj (Alpha branch)
+  - new splash screen
+
+  Spog (patched in by TTimo) (Alpha branch)
+  
+  patcing in changes:
+  - moving void VectorSnap(vec3_t point, int snap); to mathlib
+  - NOTE: STL dependency removed .. leaving this comment
+    this will rely on M$ implementation of STL on win32 and the libstdc++ for linux
+    it should work fine for basic stuff
+      but M$ implementation doesn't follow the standards when it comes to advanced stuff
+    it is probably better to leave the STL header in local files and not go towards including it directly from qe3.h
+
+  Spog's Changelog:
+  
+  rushing this a bit.. make sure you check it doesn't remove anything you 
+  changed. This only contains changes within /radiant .. i'm pretty sure I didn't 
+  change anything else, but i'll check again. Patch below.
+
+  Fixed ctrl+G SnapToGrid, now never creates degenerate face-planes
+  Fixed setting an origin for multiple brushes to use origin point of fixedsize 
+  entities
+  Fixed mirroring and rotation of fixedsize entities including misc_model
+  Fixed undo/redo on multiple entities to link brushes to entities correctly
+  Fixed "view > entities as.." menu to display correct default setting
+  Fixed "view > entities as.." toolbar button to show menu
+  Changed selection-area of edge/vertex control handles to stay constant when 
+  zoomed
+  Fixed undo on ctrl+G SnapToGrid
+  Fixed Selection Invert to set bSelected correctly on patches
+  Fixed XY-window Z selection origin to be g_MaxWorldCoord
+  Changed RotateIcon to draw same size at all zoom levels
+
+  Fixed origin drift on saving misc_model with null md3Class
+  Fixed creation of cap for 'Bevel' type patches
+  Fixed inverted cap being created for 'Endcap' type patches
+  Fixed inverting patches on mirror operations
+  Added snap-selected-to-grid affects only the patch points selected
+  Cleaned up Select_ApplyMatrix and Select_SnapToGrid
+  Added drawing of brush planepts in debug build
+  Fixed texture quality slider adjustment
+  Removed redundant menu items curve > cap > inverted bevel/inverted endcap
+  Fixed texture scrolling not working when scrollbar is disabled
+  Fixed textures with odd dimensions being skewed with texture quality less than 
+  max
+  Changed Patch Inspector Horizontal/Vertical increment to use pixel values 
+  (default 8)
+  Changed Patch Inspector Horizontal increment to subtract from S values but not 
+  T values
+  Changed Patch Inspector Stretch spinner to do something useful
+  Changed Patch Inspector Stretch default amount to 0.5
+  Changed Arbitrary Rotation dialog to reset rotation spinner values to 0 on Apply
+  !! stops output in console window !! - Added sending q3map output 
+  to /temp/junk.txt to bsp commands, in win32 only
+  Fixed Patch_Naturalize to calculate T values backwards, correcting texture 
+  vertical flip
+  Changed patch row/column Insert/Remove to interpolate/extrapolate from existing 
+  curves
+  Fixed point selection on patches when new points are added
+  Fixed redundant edge/vertex handles being created for patch brushes and 
+  fixedsize brushes
+  Fixed refusal to activate brush vertex-drag mode if any patches are selected
+  Partly fixed Undo picking up patch point drags when no points are selected
+  Fixed behaviour of vertex selection on patches
+  Fixed patch point colours in textured mode in cam window
+  Changed patch point selection to update selection pool on each selection click
+
+06/05/2001
+  TTimo (Alpha branch)
+  - more setup script changes, will rely on version information
+    various other fixes in the script file
+
+02/05/2001
+  TTimo (Alpha branch)
+  - added makeversion.sh to the root, will generate version and date files before compilation
+  version.h and date.h
+  - cleanup and fixes to the linux setup scripts
+
+  Spog (CVS add and config by TTimo) (Alpha branch)
+  - win32 setup script, run setup/setup.sh from cygwin to create a working directory for the setup <STILL EXPERIMENTAL>
+
+01/05/2001
+  TTimo (Alpha branch)
+  - fixes to linux version from previous set of patches
+
+19/04/2001
+  Hydra (patched in TTimo) (Alpha branch)
+  http://fenris.lokigames.com/show_bug.cgi?id=3458 :
+  - *.pfb filter
+
+  SpoG (patched in TTimo) (Alpha branch)
+  - updated setup data: entities.def common.shader(Q3) and common-spog.pk3
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=25 :
+  - Patches: Curve > matrix > redisperse > rows/columns
+    I changed this function to treat a patch as multiple 3by3 sections when doing 
+  redispersal of control points. The effect is that green patch points are never 
+  moved. I also removed the call to Patch_Naturalize, so the texture coordinates 
+  are not changed (user can hit ctrl+n to naturalize afterwards if desired).
+  - rewrote the patch_captexture function to be more reliable
+  - Fixed YZ view drawing and selection being mirrored on plane X=0
+  - Fixed X and Z rotation direction to be clockwise as shown on the toolbar button 
+    icons
+  http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=8 :
+  - Fixed: Removed orientation-switching hack to fix 2pt-clip orientation problems, 
+    originally stemming from ass-backwards representation of grid axes. Fixed 
+    clipper to generate 3rd clip point correctly for each axis instead.
+  - Fixed: Stopped clipper-caulker from NOT applying caulk if the first face of a 
+    brush was "common/caulk".
+
+  TTimo (Alpha branch)
+  - removed some unused code in the Gtk file dialog, hopefully stabilizing it
+
+02/04/2001
+  TTimo (Alpha branch)
+  - changed the regular/BP conversion prompt
+
+01/04/2001
+  Spog (patched in by TTimo) (Alpha branch)
+  - Fixed view > show coordinates now affects Z window
+  - Fixed minimum/maximum world coordinates now -65536/65536
+  - Fixed view > show blocks now only draws vertical lines if not XY view
+  - Added variable blocksize (gtkr only displays 1024 < blocksize < 65536)
+  - Changed XY/Z window grid drawing to use floats internally
+  - Fixed broken XY window grid drawing for higher zoom levels
+  - Changed camera and Z-checker icons to stay the same size when zoom level changes
+
+24/03/2001
+  Spog (patched in by TTimo) (Alpha branch)
+  - added filters.cpp to the VC6 Makefile. Linux build needs updating
+  - Changed Filter system to use brush-flags updated only on actions that affect filtering
+  - Changed Filter system to allow further extension and future customisation
+  - Changed show/hide to use brush filter flags
+  - Changed Find/Replace textures to only rebuild brushes that changed.
+  - Changed View > Filter menu shortcuts and behaviour
+  - Fixed various minor spelling errors
+
+  TTimo (Alpha branch)
+  - Fixed the 'Clean' command in preferences, used to remove only Radiant.ini and not SavedInfo.bin
+
+06/03/2001
+  TTimo (Alpha branch)
+  - better parse error information: added the line number of the error in (hopefully) all cases
+
+30/02/2001
+  TTimo (Alpha branch)
+  - texture locking in BP mode for axis flipping and axis rotation (toolbar buttons) (Id bugfix request)
+  - fixed undo in BP mode
+  - MatchToken error message in q3map improved with the script name
+
+27/02/2001
+  TTimo (Alpha branch)
+  - switched linux makefiles to xml2-config instead of xml-config
+  latest version of libxml2 is using xml2-config instead of xml-config now
+
+26/02/2001
+  TTimo (Alpha branch)
+  - fixed a loki_initpath misbehaviour, was overriding the path to the binary with RADIANT_DATA if defined
+
+21/02/2001
+  - Added setup data and a script to build linux setups to the cvs
+  TTimo (Alpha branch)
+  - various printf -> Sys_Printf
+  - added vslick/ directory for Visual Slickedit 6.0 on win32 <- THIS IDE RULES
+
+20/02/2001
+  - Removed "Show Paths" option, already in the filter menu
+
+19/02/2001
+  - Fixed the Enter key handling on the surface inspector (suggested by Spog)
+  - Fixed skewed textures with lower texture quality
+  - Changed the order the include directories are searched under Linux
+
+15/02/2001
+  - Moved the Show Cluster Portals option to the Filter menu
+  - Fixed the rotate and scale toolbar buttons being incorrectly checked
+  - Fixed arbitrary rotation bug (#3073)
+
+14/02/2001
+  - Fixed CreateFont memory leak on glwidget
+
+12/02/2001
+  TTimo (Alpha branch)
+  - fixed save as prefab stuff (right dialog name and overwrite prompt)
+
+10/02/2001
+  TTimo (Alpha branch)
+  - was crashing on win32 boxes where HOME env var was not defined (loading bookmarks)
+
+09/02/2001
+  TTimo (Alpha branch)
+  - change some code in the file dialog to use g_malloc g_free instead of new 
+    for win32 file dialog and malloc for Gtk file dialog. (all of this trying to get rid of
+    some of the crashes)
+
+07/02/2001
+  - Fixed Load command initial path
+  - Fixed some toolbar buttons not being correctly initialized
+
+-----------?
+
+06/02/2001
+  (Alpha branch)
+  - Fixed pk3man file dialog errors
+  - New RC uploaded
+  - Changed conflicting shortcuts: FilterModels = Shift+M, FilterTriggers = Ctrl+Shift+T
+  TTimo (Alpha branch)
+  - fix to hide/show, still selecting hidden brushes
+
+05/02/2001
+  (Alpha branch)
+  - Fixed compile errors (use stat, not _stat)
+  - Removed --nofonts option
+
+04/02/2001
+  TTimo (Alpha branch)
+  - fenris #2866, added a pref to turn on/off name conflicts resolution, rewrote the whole algorithm
+  - fenris #2823, fixed patch and brush dragging in 0.25 0.5 grids (it's an ugly hack btw)
+  - fixed the black squares at end of line in Gtk text boxes
+  RR2DO2 (Alpha branch)
+  - fix to the "entitypath" fixup in QE_CheckProject. might not compile on linux yet (use of _stat?)
+
+03/02/2001
+  TTimo (Alpha branch)
+  - fenris #2867, limiting the amount of "spawnflags" "0" appearing in entities. This bug has work left to do,
+    there are some oddities in the entity inspector behavior described.
+
+02/02/2001
+  (Alpha branch)
+  - Fixed sleep mode not restoring windows correctly
+  - Fixed some minimize/restore issues on floating views mode
+  TTimo (Alpha branch)
+  - fixed more gtkfilesel stuff. pattern filtering works for both Gtk dialogs
+    and win32 native. Also checked on linux that it compiles. Renamed gtkfilesel.h
+    to gtkfilesel-linux.h for consistency.
+
+31/01/2001
+  (Alpha branch)
+  - New file selection widget with filtering, masks and all other shit we need
+  TTimo (Alpha branch)
+  - changed some gtkfilesel API and fixed some bugs on pattern filtering, need to reboot on linux and fix some more
+
+30/01/2001
+  (Alpha branch)
+  - Added an option to keep the Z and XY views on the same window in floating views mode
+  - Did some cleanup
+  TTimo (Alpha branch)
+  - removed the 3 layers in terrain entities limitation, increase version tag to patchlevel 3
+  sent for testing to AstroCreep, bug is still there
+  - fixed one more thing with RC file (get it in the right dir)
+  - worked on file dialog and pattern filtering, still issues left
+
+29/01/2001
+  Jonas (patched in by TTimo) (Alpha branch)
+  - Using RC file to tweak the font size on win32, looks much nicer now!
+  - Fixed fenris #2773: esc key behaviour when group window has focus / dependant on view modes
+
+28/01/2001
+  TTimo (Alpha branch)
+  - Finished fenris #2810 (Snap T to grid), it was a bitch
+  - Fixed fenris #2769: raise the brush max size (it was already big, now it's just not sane)
+  - Fixed fenris #2965: eclass (entities) loading code broken, needs to be checked on linux build before closing
+
+27/01/2001
+  TTimo (Alpha branch)
+  - Fixed vertex edit prefs broken
+  - more fixes in Gtk libs
+  - Fixed clipping + brush primitives bug (#2644)
+  - Fixed clip caulk related issues (#2912)
+  - Added Snap T to grid back (#2810) <- still need to test and validate it, I'm too tired tonight
+
+25/01/2001
+  TTimo (Alpha branch)
+  - New Gtk file selection dialog seems stabilized, built a Gtk SDK for the new Gtk libs.
+
+24/01/2001
+  (Alpha branch)
+  - Fixed elapsed time displayed by q3map
+  - Fixed Radiant loading some TGA files upside down
+  TTimo (Alpha branch)
+  - more work done on the file selector. Added a win32 pref to select between regular win32 file dialog and Gtk one.
+  The advanced file selector is still not stabilized on win32. I am thinking about letting go and sticking to the regular one.
+
+23/01/2001
+  (Alpha branch)
+  - Fixed q3map not finding md3 files under missionpack/
+  - Prompt to save changes when choosing a recent file
+  - Fixed window title when choosing File/Load Map
+  - Don't show hidden brushes in the Z window
+
+22/01/2001
+  (Alpha branch)
+  - More File Dialog fixes
+
+21/01/2001
+  TTimo (Alpha branch)
+  - version first version of the advanced file selector on win32
+  seems to work nicely, but crashes when you actually load something .. needs debugging!
+
+  leo (Alpha branch)
+  - Set correct initial directory for the File/Load command
+
+17/01/2001
+  (Alpha branch)
+  - Fixed q3map is crash if a .shader file is referenced in shaderlist and not found
+
+  TTimo (Alpha branch)
+  - fixed some license headers on gtkfilesel.c, started looking into porting gtkfilesel.c to win32
+
+16/01/2001
+  raistlin
+  - the tree is opened whoooo!
+
+  TTimo (Alpha branch)
+  - replaced the old Id header by the newer version (BIG update, to trunk and Alpha)
+  - switched str.h to BSP
+  - added LGPL license to the sample dll
+
+15/01/2001
+  (Alpha branch)
+  - Added camera window toggle option to all views mode
+
+  TTimo
+  for trunk and Alpha:
+  - renamed TOOL_SOURCE_EULA to LICENSE_ID
+  - renamed CONTRIBUTOR to CONTRIBUTOR_AGREEMENT
+  - added CONTRIBUTORS and LICENSE
+
+14/01/2001
+  (Alpha branch)
+  - plugin SDK is back in setup/ moved the sample dll to be in plugins/, need to rewrite the SDK scripts
+  - built a lightweight plugin SDK with cygwin makefile for the sample plugin
+
+12/01/2001
+  (Alpha branch)
+  - Set map modified flag when deleting a brush
+  - Minimize all windows when the main window is minimized in floating views mode
+
+11/01/2001
+  (Alpha branch)
+  - Cleaned up the View/Show submenu
+  - Fixed texture menu splitting 
+  - Fixed major grid lines on 128 and 256 grids
+  - Load only a single .def file if specified in the project settings
+  - Fixed q3map Makefile
+
+  TTimo
+  (Alpha branch)
+  - Removed plugins/shaders from Alpha branch
+  - got rid of common2/ and code, moved qfiles.h and surfaceflags.h into common/
+  - put the licensing headers in all source files (forgot some? byte me)
+
+10/01/2001
+  leo (Alpha branch)
+  - Added new filter system based on FAKK2 Radiant
+
+  TTimo
+  - fixed whatever could be fixed to make it compile with the new directory layout
+  (Alpha branch)
+  - project files update
+
+09/01/2001
+  (Alpha branch)
+  - Added undo for patch redisperse rows and patch redisperse cols commands
+  - Fixed Show Z Outline menu item
+
+30/11/2000
+  TTimo
+  - removed content flags and value from qtexture_t, these have moved to the IShader
+    (NOTE: qtexture_t != texdef_t, texdef_t still using flags value and content)
+
+  - Rewrote the linux plugins Makefiles
+
+29/11/2000
+  - Improved the way modules are loaded
+  - Added new parameter to QERPlug_RequestInterface
+  - finished VC6 project files conversion for new directory structure
+  - fixed shader blending on terrain maps bug
+08/01/2001
+  - Updated Makefiles for the new directory structure
+  - Fixed View/Show/Entities menu not being checked correctly
+  - Fixed "Invert Selection" command selecting hidden brushes
+  - Fixed "Select All of Type" command not working correctly after the Enitity Window is closed
+  - Fixed grid being drawn even when it's the same color of the background
+  - Fixed "Toggle Size Paint" not turning off
+05/01/2001
+  - Fixed autosave interval being calculated wrong
+  - Fixed autosave path under Linux
+  - Fixed q3map crash when trying to load missing pcx files
+  - Fixed q3map not finding .bmp files for the terrain alpha map
+04/01/2001
+  - Fixed GL stack underflow when loading a misc_model
+03/01/2001
+  - Fixed patches remaining half-selected after "Region set selected" (#2748)
+  - Fixed Surface Inspector spin buttons rate (#2776)
+  - Fixed some shortcuts not appearing on menu items (#2786)
+
+
+================================================================================
+                                  1.1-TA beta
+================================================================================
+
+02/01/2001
+  - Fixed memory problem if a file without extension is entered in the file save dialog.
+  - Fixed double slashes "//" on filenames when saving a map
+  - Fixed pk3man plugin not finding the toolbar bitmaps
+  - Fixed double clicks being considered 2 mouse clicks
+
+  RR2DO2 (applied by TTimo)
+  - Clusterportal filtering ('View > Show > Show clusterportal' toggle)
+
+01/01/2001
+  TTimo
+  - updated Web/ with new stuff, web site ready for release
+  - fixed a crash with multiple edge dragging on win32 (was caused by compiler optimizations,
+    this one was a major pain)
+
+31/12/2000
+  - fixed the file open/save dialogs initial directory
+
+  RR2DO2 (applied by TTimo)
+  - bug fix in the terrain loading speedup
+
+  TTimo
+  - tried to lookup the Z window minimum width problem, added #define DBG_WINDOWPOS code to investigate
+
+30/12/2000
+  RR2DO2 (applied by TTimo)
+  - fix to CSG Merge in the menu drop down (menu was there, command not hooked)
+  - some message formatting fixes
+
+  TTimo
+  - rudimentary pattern matching in file selection, affects the plugin API too
+  - fixed silly bug in the "clipper uses caulk" code
+  - major speedup to the loading code on terrain entities
+  (in mpterra2, from 113s to 4s for the main terrain entity)
+  - patched back the file open/save dialogs initial directory to override in TA mode
+  - fixed Patch output crash in the plugin API
+  - fixed BP conversion in the brush output of the plugin API
+
+  minkey (applied by TTimo)
+  - fix to the m_pfnLoadFile code to use VFS
+
+29/12/2000
+  - Remember main window position in floating views mode
+  - Fixed wake up when running the engine in floating views mode under win32
+
+  TTimo
+  - various fixes and debug hooks for PJ bug reports
+
+28/12/2000
+  - Fixed VFS initialization order
+  - Removed texture menu splitting option from preferences (now it's automatic)
+
+  TTimo
+  - built an initial setup, updated the changelog file for 1.1-TA-beta
+
+27/12/2000
+  - Fixed Q3Map output window being too wide on some errors
+  - Added VFS to q3map
+
+  TTimo
+  - replace a printf in q3map by Sys_Printf (!), which is what should actually be used
+  - added a set of functions to vfs to help with file dialogs, building relative files etc.
+  - reworked the file dialogs so they default in the right location (open/save as/md3 loading/sound loading)
+  - fixed shader editor to work with the right path
+
+26/12/2000
+  TTimo
+  - put the converted HTML manuals (Radiant, shaders and model) in the tree (and the win32 setup)
+  - added the new Terrain and Team Arena mapping manuals (added to the setups too)
+
+  leo
+  - Copy and paste across different instances of Radiant
+  - Fixed wait cursor when copying
+  - Print engine command line to the console
+  - Fix glib warnings when running the engine
+  - Fixed shader files being loaded twice
+  - Texture menu now automatically breaks when it reaches the maximum screen height
+
+24/12/2000
+  - Fixed q3map to compile with the new LoadJPGBuf parameter
+
+  TTimo
+  - added TA paths to the BSP commands and running engine
+  - fixed a bug if running with monitoring disabled (generating the .bat was borked)
+  - changed the -moddir implementation to a global switch in q3map (same as -connect)
+  - moddirparam as a global variable in cmdlib, added a TA_HACK in there
+  - changed the SetQDirFromPath to stick to "baseq3/" when using -moddir
+  TODO: check standalone files
+
+23/12/2000
+  TTimo
+  - fixed some sleep/wake code (crashes and wakeup problems on models)
+  - vfsInitDirectory for TA directory (needs to be checked on linux)
+  - changed my mind on entities.def, if TA is enabled, load entities-TA.def on top of regular entities.def
+
+  mickey (applied by TTimo)
+  - some memory overrun fixes
+
+22/12/2000
+  - Fixed plugin Makefiles to not use private/
+
+  RR2DO2 (applied by leo)
+  - Fixed SetTallBrush undo
+  - Added bug report link to help menu
+
+21/12/2000
+  - Daily Linux compilation fixes
+  - Fixed q3map to read .pk3 files from the directory set by -moddir
+  - Fixed vfs not listing all files correctly
+  - Fixed libjpeg crashing on some jpeg files
+  - Load .def files depending on the current game
+
+20/12/2000
+  - Applied Mickey's patch to fix win32 window position save/load.
+  - removed missing _msize call
+
+  TTimo
+  - cleaned up more g_malloc g_free problems, cleaned a INPUT_BUF_SIZE problem in jpeglib
+
+19/12/2000
+  - More manual updates
+  - Fixed bugs comparing file extensions
+  - Added VFS to the Alpha branch
+
+  TTimo
+  - moved game selection to the project settings
+  - got leo's vfs fixes, started changing the memory allocation scheme to glib
+  - moved 'free' calls to g_free with a #define in cmdlib, Radiant seems to run nicely again
+  - removed calls to _msize .. those were causing heap debug assertion failures
+  - upped more stuff
+
+18/12/2000
+  - Added popup menus with the list of active textures to the find texture dialog
+  - Fixed some menu checkbuttons
+  - Changed max number of shader files parsed by q3map to 128
+  - Updated manual images 
+
+17/12/2000
+  - Fixed bug with the texture window scrollbar range
+
+  Mickey (patched in by TTimo)
+  - fix to the floating windows mode, don't send windows to the desktop when raising something else (#2659)
+
+  TTimo
+  - finalized the merge and move into worldspawn commands by adding the undo stuff
+  - fixed the clamping problems when flipping or mirroring patches
+  - added 0.5 and 0.25 grids
+  - added undo to Select_CompleteTall Select_PartialTall and Select_Inside
+  - added on-the-fly conversion between regular brush coordinates and brush primitives texturing in the plugin API
+
+15/12/2000
+  - Fixed crash on Shift-A (Select all of type)
+  - Save the state of the toolbar buttons
+  - Remember the state of the Show Patch Bounding Box button
+  - Double clicking on an entity on the Entity View tree selects the entity
+  - Sort the list columns of the map info dialog
+  - Fixed a bug that would allow multiple Entity View dialogs
+
+  Mickey (patched in by TTimo)
+  - saving position and size of the entity window between runs and during usage
+
+  TTimo
+  - two new commands in the drop down menu:
+  "move into worldspawn" will move selected brushes to worldspawn and eventually delete entities which end up with no brushes
+  "merge brushes" will merge brushes into an entity (from worldspawn or from another entity)
+  - added cleaned HTML version of the editor manual in the tree
+
+14/12/2000
+  - When pressing a letter key in the entity window list, scroll to the entity starting with the key pressed
+  - Fixed backspace not working on the texture subset entry
+  - Added version check when loading savedinfo.bin
+
+  TTimo
+  - started implementing Select_Merge and Select_Seperate for workflow improvement on terrain maps
+
+13/12/2000
+  - Finished GtkGenSurf
+
+  RR2DO2 (merged in by TTimo)
+  - patch to q3map, added option -custinfoparams for custom surface flags (still need documentation)
+
+  TTimo
+  - zoom out and grid drawing taylored to the world size
+
+12/12/2000
+  TTimo
+  - quick win32 update to gensurf
+  - fixed #2610 (MAX_NETMESSAGE) .. needed a consistent rewrite of the way we parse the stream
+
+11/12/2000
+  - Fixed linux compiler errors from recent changes
+  Not fixed today but I forgot to add those to the Alpha changelog
+  - Fixed multiple Map Info dialogs bug
+  - Fixed texture window not scrolling to the top when a new directory is loaded
+  - Fixed GL Windows grab pointer bug
+  - Fixed crash after map compilation if the map leaked
+  - Fixed q3map crash if MAX_SHADER_FILES is reached
+
+28/11/2000
+  - Fixed sleep mode restoring hidden windows (win32)
+  - Fixed find/replace textures dialog layout and keep it always on top of the main window
+  - Replaced malloc/free calls with g_malloc/g_free to avoid the win32 limitation
+
+27/11/2000
+  - Removed glu.h dependencies
+  - Added new file selection dialog
+  - Removed g_PrefsDlg.m_bDisableAlphaChannel (always FALSE)
+  - Added shortcuts for sleep and simple patch mesh
+  - Fixed crash after sleep mode (no GL context current)
+
+24/11/2000
+  - Rewrote the jpeg functions of the image plugin
+  - Replaced some MFC classes with glib
+  - More shader plugin fixes
+  - Fixed bug with select all entities command
+
+  TTimo
+  - fixed q3map to handle the new LoadJPGBuff length parameter
+
+22/11/2000
+  - Fixed crash in Error() if there's no current GL context
+  - Fixes to the shaders plugin
+
+  TTimo
+  - created VC6 project file for image module
+  - modified the m_pfnError in qerplugin.h to use (char *, ...) construct
+
+21/11/2000
+  - Ensured that the plugins are loaded in the correct order
+  - Added Sys_FPrintf and Sys_Printf to the plugin interfaces
+  - Some VC++ fixes
+
+  TTimo
+  - more fixes to the world size
+  - modified moduleentry_t so it compiles on win32. need to update the code in all modules probably
+  - other minor fixes and updates to get everything building on win32
+
+20/11/2000
+  - Moved image loading code to a plugin
+  - Fixed some bugs in the shader plugin
+  - Now using glGenTextures to set texture ids
+
+19/11/2000
+  TTimo
+  - shader code removed from Radiant core, relies on shader module
+  - added ctrl-alt-LBUTTON = multiple brush select without selecting whole entities (from TA update)
+  - added an XML testing proggy in DevDocs/
+
+18/11/2000
+  TTimo
+  - shader module is compiling
+  - reworked the way we deal with required interfaces,
+  automated the interface request process and added code to check the required modules have been found
+
+17/11/2000
+  - Q1 VFS plugin
+  - Changes to the VFS API to detect the format supported by a plugin
+  - Added checks to PluginManager to load the correct VFS plugin
+
+  TTimo
+  - made a mess with XML MAX_NETMESSAGE error, still not fixed
+  - merged q3map 1.0r (TA update from Id) into the tree - important files modified: surfaceflags.h qfiles.h
+
+08/12/2000
+  TTimo (shit I'm 24 now)
+  - added gtk gensurf, VC6 project files are up to date, linux Makefile not checked
+  - fix some WINAPI stuff on above code
+  - add idata.h for raw access to editor data
+  - new _QERAppShaderTable for shader module -> editor functions
+  - added new entries in various tables (GL, parser etc.)
+  - shader module is well under way
+
+16/11/2000
+  - Added a color selection dialog function to the plugin API
+  - Added profile read/write functions to the plugin API
+
+  TTimo
+  - MAX_NETMESSAGE bug: patched q3map so it sends in several messages if the problem occurs
+  still need to update Radiant to recognize XML nodes split into several messages (using an input buffer)
+  - added a test map for MAX_NETMESSAGE: sput.map
+  - project file for vfspk3and win32 patching
+
+15/11/2000
+  - More plugin cleanup
+  - Added IsEqualGUID() to qerplugin.h
+
+  TTimo
+  - merged Alpha back in (didn't try to merge this CHANGES file)
+  - backported some stuff from the trunk to here, the Sys_Printf, gtk_MessageBox and profile stuff
+  - created VC project file for gtk-based gensurf plugin
+
+14/11/2000
+  - Fixed DumpUnreferencedShaders()
+
+  TTimo
+  - added QE_CheckProjectEntity to check paths are following the right conventions
+
+13/11/2000
+  - Fixed bugs in the vfs plugin
+  - Added support to vfs plugins in Radiant
+
+  TTimo
+  - updated project file to libxml2-2.2.8, use libxml2 as the directory name for whatever version..
+          NOTE: libxml2-2.2.8 needs some patching to compile right..
+
+12/11/2000
+  TTimo
+  - all Radiant functions that might be exported in interfaces need to use the WINAPI calling convention
+  modified the GTK functions code accordingly
+  - started writing the shaders module
+
+10/11/2000
+  - Added new GTK functions to the plugin API
+  - Added 'parent' parameter to MessageBox, file_dialog and dir_dialog
+  - Fixed Help commands (Linux)
+
+09/11/2000
+  - Fixed bug in the Z wnd code
+  - Fixed copy text from the console (win32)
+
+       TTimo
+       - moved the libxml library out of the tree, updated the VC6 project files accordingly
+
+08/11/2000
+       - ZWnd always on top (view #2, win32)
+
+       TTimo
+       - added Escape key to hide the entity inspector
+       - S and Shift+S now act as toggles on the inspectors
+
+07/11/2000
+       - Added ungroup command to right click menu
+       - Fixed message box accelerator bug
+       - Fixed GL error on win32 startup
+
+       TTimo
+       - additions to the BSP interface
+       - fixed DestroyCursor error
+       - clipper caulks faces (and prefs checkbox)
+
+06/11/2000
+       - Cleaned PrtView and TexTool plugins
+       - Fixed bug in texture menu names (#2506)
+       - Added splitters to Entity dialog
+
+       TTimo
+       - started clipper caulk implementation
+       - fix to the pointfile not drawing in 2D views
+       - MAX_BUILD_SIDES in q3map debug stream
+
+05/11/2000
+       - Merged Alpha branch with the trunk
+
+       TTimo
+       - more plugin interface for Q3Build, and plugin SDK additions
+       - merged q3map Realloc back into Alpha branch
+
+04/11/2000
+       - Fixed crash during startup if Zwnd was hidden in views #2 and #3
+       - Fixed ToggleConsole command
+       - Fixed ToggleEntity and ToggleTexture commands in view #2
+       - Fixed plugin Makefiles
+       - Removed -rdynamic from Radiant link options (crashes pk3man plugin)
+
+03/11/2000
+       TTimo
+       - directory reorganisation for the plugin SDK, added an interface/ directory
+
+02/11/2000
+       - Save ZWnd state in views #2 and #3
+       - Entity dlg always on top (linux)
+       - Fixed shortcuts.ini parsing bug
+       - Fixed editpad crash if editpad not present (win32)
+       - Fixed bugs in the internal shader editor
+       - Fixed widget_show if window moved after gtk_widget_set_uposition
+
+================================================================================
+                                    1.1 beta
+================================================================================
+
+31/10/2000
+       - Continue loading if glXGetProcAddressARB is not present (Utah-GLX fix)
+       - Fix BSP commands not working if a map is not in "mapspath" (linux)
+
+30/10/2000
+       - fixed the Region commands, "Region > Set brush" is working
+         Region uses the camera as spawn point.
+       - Fixed view/show menu initialization
+       - Fixed warning when starting view #2
+       - Fixed z wnd in view #3
+       - Fixed win32 sleep mode crashes on views #2 and #3
+       - Added "Restart" message when changing texture quality in the preferences
+       - Cleanup: removed radbsp.cpp (unused) and unzip.cpp (already in pak.a)
+
+29/10/2000
+       - Fixed SIGCHLD handler
+       - Built 1.1b setups
+
+28/10/2000
+       - Fixed q3map bug visbytes > MAX_MAP_VISIBILITY
+       - Fixed clipper display bug
+
+       TTimo
+       - updated quakev2.qe4 with -vlight options
+       - added checks in q3map to prevent crashing on allocating a winding too big
+       will stop with an error now.
+       - added the corresponding editor support for debug messages if MAX_POINTS_ON_WINDING is exceeded
+
+       G_Dewan
+       - improved q3map, reducing minimal memory footprint by about 45Mb
+
+27/10/2000
+       - Fixed crash in BSP debug window
+       - Reorganized the preferences dialog
+       - Fixed q3map Makefile
+       - Fixed +/- bug in win32 (Gtk patch)
+       - Fixed Alt shortcuts bug in win32 (Gtk patch)
+       - Fixed q3map crash when visbytes > MAX_MAP_VISIBILITY
+
+       TTimo
+       - improved snapshots behaviour, doesn't snapshot non-modified maps
+
+26/10/2000
+       - Fixed patch inspector not showing after it has been closed
+       - Added 'Reset' button to entity dialog
+
+25/10/2000
+       - Fixed more grid issues
+       - Fixed load window position bug (saved pos greater than screen resolution)
+       - Fixed selection nudge bug
+       - Improved entity windows layout
+       - Fixed GL font not being recreated when exiting sleep mode
+
+       TTimo
+       - cleaned m_nTextureTweak and m_bSnapTToGrid
+       - improved the CycleCapTexturePatch command, now cycles across the 3 planes only 
+       and works on multiple patches at once
+
+24/10/2000
+       - Added an overwrite prompt when saving files
+       - Fixed 128 and 256 grid display
+       - Commented-out grouping code (not functional yet)
+
+23/10/2000
+       - Fixed q3map to load jpgs under Linux
+       - Fixed wake-up crash when floating windows were closed (#2423)
+
+21/10/2000
+       - More q3map and radiant Makefile fixes
+       - Remember size/position of the entities dialog
+
+20/10/2000
+       - Redirect Gdk warnings
+       - Draw border around active XY wnd
+       - Moved some scripts to the Makefile
+       - Added shift+rclick to zoom in/out
+       - Removed minimize/maximize buttons for z wnd in floating mode under win32
+
+       TTimo
+       - Two new entries in View > Show: Show Outline and Show Axes
+       Show Outline turns on/off colored outline of the current view
+       Show Axes turns on/off display of a small axis base in the 2D view
+       - fix q3map Makefile to use external libxml2 source
+       
+       G_DEWAN
+       - Fix to bogus noshader error message in q3map
+
+19/10/2000
+       - Added new console functions that support colors
+       - Revised linux makefile for debug/release builds
+       - Redirect Gtk warnings to the console
+
+       TTimo
+       - reorganized the entity inspector window, layout depends on the number of flags to get
+       more space in the comment window.
+
+18/10/2000
+       - Fixed add/remove bsp items in project settings dialog
+       - Did some cleanup (removed #define WIN32_CONSOLE)
+       - Fixed console not working in view #3
+       - Fixed warning when exiting in views #2 #3
+
+       TTimo
+       - fix to entity inspector comment window for the eclass_t on win32 (removed the white squares)
+
+17/10/2000
+       - Fixed texwindow not scrolling when last texture is large
+       - Added LOD for patches
+       - Fixed prefab path & user ini in preferences dialog
+
+13/10/2000
+       TTimo (XML branch)
+       - basic architecture for XML feedback is functional
+       see radiant/feedback.cpp radiant/watchbsp.cpp q3tools/common2/inout.c
+       merging back in alpha
+
+04/10/2000
+       TTimo (XML branch)
+       - sax interface is in Radiant, need to add a state machine and proper processing
+
+04/10/2000
+       TTimo (XML branch)
+       - experimental use of SAX interface to parse the stream on the server side, see q3tools/q3map/NetTest
+
+03/10/2000
+       TTimo (XML branch)
+       - adding libxml2 in the repository, based on libxml2-2.2.4 with project files and stuff to build on win32
+
+31/09/2000
+       TTimo (XML branch)
+       - new common2/ dir, output system rewritten through Sys_Printf
+       - experimental use of libxml
+
+28/09/2000
+       TTimo (Inspector branch)
+       - shift+arrows matches the increments from the surface inspector
+       - button 'Match Grid' in the SI to set the increment according to current grid
+
+25/09/2000
+       TTimo (Inspector branch)
+       - fixed crappy bug in SavedInfo.bin upgrade (when the struct sizes don't match)
+       - surface inspector has inc step dialog boxes (+saved in prefs)
+       - face selection is always on (was something weird from the prefs)
+       - undo works better with the surface inspector
+
+25/09/2000
+       - Added ARB_Multitexture support
+
+21/09/2000
+       - Fixed preferences dialog warning
+       - Added new grid sizes
+
+20/09/2000
+       - Fixed small bugs reported from Fenris
+
+17/09/2000
+       TTimo
+       - fixed a bug with template project loading / path to the engine safecheck (a weird hidden one)
+       G_Dewan & TTimo
+       - fixes to the process spawning (Q_Exec in cmdlib) + appropriate warning and error messages
+       Fishman
+       - antialiased drawing in 2D views
+
+14/09/2000 
+       TTimo
+       - radiant.log commandlist.txt and radiant.pid are create in g_strAppPath on win32 and g_strTempPath on linux
+       - moved the splash screen after the .pid code
+       - I suspect a bug in the .pid removal, added a check and message box
+       - help works again on win32, spawning Word with the Q3Rad_Manual.doc (temporary solution of course)
+       - surface inspector: removed all Q2 related stuff, fixed horizontal shift, reorganized the widgets layout
+               hooked the widgets to apply the changes on the fly (the inspectors need a good chunk of work)
+       - fixed a radiant.pid bug
+       - added icon to MSVC6 project (with some help)
+       
+       G_Dewan
+       - fix to BSP menu order getting mixed up
+       - fix to the file dialog
+
+11/09/2000
+       - Added splash screen
+
+25/08/2000 TTimo
+       - launch sleep mode before running game
+       - fixed Map_Snapshot bug
+       - going to sleep works on view n2, raising is still screwed (contexts)
+
+24/08/2000 TTimo
+       - fixed some sleep mode stuff
+       - fixed map snapshot bug
+
+21/08/2000
+       - fixed stuff to build on linux
+       - Merged in q3map 1.0p
+
+18/08/2000
+       - Removed "High Color Textures" option (always on)
+       - Removed "Status Point Size" option
+
+17/08/2000
+       - Fixed win32 console issues
+
+16/08/2000
+       - added g_strTempPath
+       - restore maximized window state
+       - fixed logo.bmp
+
+15/08/2000 TTimo
+       - fixed keyboard shortcuts
+       - fixed engine path in prefs (must use the file dialog to change)
+       - fixed a bug related to engine path and project templates
+
+15/08/2000
+       - Removed QE4 update model option (always on)
+       - Removed Buggy ICD option (always off)
+       - Reorganized the preferences dialog to take a bit less space
+
+14/08/2000 TTimo
+       - using profile.cpp code to read shortcut keys files
+       - moved DevDocs/changelog.txt to data/changelog.txt
+               (data/ should be used for user-side stuff and DevDocs/ for developpers)
+       - added data/quickstart.txt with a beginning of info about the main differences
+               between Q3Radiant 202 and GtkRadiant. to be used as a doc later.
+
+13/08/2000 TTimo
+       - added DevDocs/WIN32SETUP and DevDocs/changelog.txt
+               changelog.txt is end user changes
+               WIN32SETUP the TODO list for install specific stuff
+       - wrapped a first version of the win32 installers (full and patch)
+
+11/08/2000 TTimo
+       - quickfix to put undo/redo back in
+       - added DevDocs/WIN32SETUP, describes what I'm up to with the setup of win32 version
+
+10/08/2000 TTimo
+       - added back the window position saving code that was in earlier tree
+               NOTE: would have rather have it done in prefs than hooked in mainframe_delete and MainFrame::Create
+               (would have been cleaner IMO)
+               NOTE: IT'S STILL BROKEN .. I ADDED THE CODE BUT I MUST BE MISSING SOMETHING
+               NOTE: it doesn't remember the maximized state. It should.
+
+08/08/2000 TTimo
+       - fixed win32 build for GLWidget code, added WINAPI calling convention on all exported stuff
+       - fixed TexTool to compile under win32
+
+07/08/2000 TTimo
+       - fixed some crash with the new jpeg lib
+       - fixed console logging behaviour (was always turned on at startup)
+       - added console logging checkbutton in prefs
+
+07/08/2000
+       - Merged the GLWidget branch
+       - Merged 202 patches
+       - Fixed "clean" button in the preferences dialog
+       - Added pid startup detection
+       - Updated plugin interface with GLWidget functions
+       - Updated TexTool plugin
+
+04/08/2000
+       - Added "errno" string to the Error() message box
+       - More 202 patches
+
+03/08/2000
+       - Merged changes from MFC Radiant 202
+        - Fixed the win32 GLWidget stuff
+02/08/2000
+        - new OpenGL widget to keep all platform specific code in only one file
+
+01/08/2000
+       - Added code to restore the windows when coming out of sleep mode
+       - Rewrote the TexTool plugin
+
+31/07/2000 TTimo
+       - added vc6 projects for PrtView
+       - tested PrtView and Radiant against latest binary release of Gtk (works great)
+
+       Leo:
+       - Updated VC5 projects
+       - Fixed plugin loading under win32
+       - Updated PrtView to compile under win32
+       - Radiant is now iconified when going in sleep mode
+
+30/07/2000 TTimo
+       - prefs dialog for BSP monitoring
+       - Added data/ directory with entities.def and quakev2.qe4
+       - stabilized syntax of v2 project file, same project file for both platforms
+       - added DevDocs/WIN32BETA with a list of stuff to do before going on public beta on win32
+       - added DevDocs/d2u .. handy script to remove linefeeds from DOS files
+       - added radiant/radiant.proj, project file for source navigator (SN rules)
+
+       Leo:
+       - Fixed the logfile crash when ~/.q3a/radiant doesn't exist (fenris #1953)
+
+28/07/2000 TTimo
+       - Fix to the win32 console to use window's default font
+       - Added File > Sleep for experimentation
+               NOTE: we need to keep Radiant minimized when going into sleep mode
+
+28/07/2000
+       - Finished the win32 console replacement
+       - Fixed bug 1952 (map loading segfault)
+       - Added a Makefile to the libs dir
+
+26/07/2000
+       - Added PrtView plugin
+       - Added qvm target to source/Makefile
+       - Another release candidate sent to QA
+
+18/07/2000
+       - Fixed the slow updates issue in the win32 version
+       - Added 3 new variables to fix the paths issue
+
+17/07/2000
+       - Fixed the plugin search directory (broken with the changes to g_strAppPath)
+
+14/07/2000
+       - Increased the timer speed in MainFrame::RoutineProcessing
+       - Added code to release and recreate the contexts to the win32 version
+       - Fixed the mouse capture under win32
+
+13/07/2000
+       - Fixed the new path and bsp problems
+       - Sent new version to QA for testing/release
+
+12/07/2000
+       - Added "tools/" back to g_strAppPath under linux
+
+11/07/2000
+       - Added code to release and the recreate the GL contexts (linux)
+
+10/07/2000
+       - Changed directory structure
+
+09/07/2000
+       - Added CS_OWNDC for win32 with a GDK hack
+
+07/07/2000
+       - Fixed "white textures" bug (gluBuild2DMipmaps bug)
+
+03/07/2000
+TTimo:  - main.cpp l386, removed tools/ appending to g_strAppPath, g_strAppPath is expected to point to the app.. (hope it doesn't break anything)
+
+02/07/2000
+       - Added precompiled headers for faster win32 builds
+
+01/07/2000
+       - Finally got q3asm/lcc working
+
+26/06/2000
+       - 201 patches
+       - Added screenshot option
+       - Added an error message if X is running in 8 bits
+
+23/06/2000
+       - Updated with build 200 source
+
+13/06/2000
+       - Remove --noshare option
+       - Added --nofonts option to workaround a bug using glXUseXFonts in XFree 4.0
+
+04/06/2000
+       - Fixed bug with the Ctrl-X accelerator for the File/Exit menu
+
+02/06/2000
+       - Converting the TexTool plugin
+
+30/05/2000
+       - Changes to the plugin loading code
+
+28/05/2000
+       - Files with an underscore character are now correctly parsed in the MRU menu
+
+25/05/2000
+       - Fixed _exit bugs
+       - Fixed bug in CMapStringToString::SetAt
+       - Fixed copy/paste/clone bug
+
+24/05/2000
+       - Finished applying the 199 patches
+       - Fixed a bug in CShaderArray::SortShaders() that was calling the wrong version of InsertAt()
+       - Added numbers to the MRU menu items
+
+23/05/2000
+       - Fixed the floating point bug in gluBuild2DMipmaps
+       - Fixed the time display after a bsp command is executed
+       - Applied several patches from the 199 version
+       - The console is now visible by default
+
+21/05/2000
+       - Added a replacement for gluBuild2DMipmaps
+
+20/05/2000
+       - Fixed the repeating textures bug when playing a map, "brush_primit" must be set to "1".
+       - Fixed the bug about no current GL context when exiting in computers with 3dfx cards.
+       - Textures in the directory pointed by "texturepath" are now loaded correctly in Radiant.
+       - Fixed bug in q3map where it would require a shaderlist.txt file in ~/.q3a/baseq3/scripts.
+
+19/05/2000
+       - Fixed a bug in the multiple directories hack in libs/pakstuff.cc
+       - Finished the filter in the texture window
+       - The wait cursor is now correctly set in the XY window
+       - Added replacements for gluPerspective and gluLookAt
+       - Textures can now be stored in 2 places:
+       * The path pointed by "texturepath" (defaults to ~/.q3a/baseq3/textures,
+         but can be changed in the project settings)
+       * The base texture path (<install_path>/baseq3/textures)
+       - Radiant and the q3map tool now looks for shaders in ~/.q3a/baseq3/shaderlist.txt
+          and <install_path>/baseq3/scripts/shaderlist.txt
+
+18/05/2000
+       - Plugin menu fixes
+       - Created a simple text editor to edit the shaders (instead of calling an external program)
+       - Copy and paste now work
+       - Fixed some bugs with the MRU menu
+       - Some menu items are now enabled/disabled correctly in MainFrame::RoutineProcessing () 
+       - Added a new command line option (--cdpath) to set the CD-ROM path
+       - Fixed some bugs in the entity window, now it's possible to add/edit/remove properties
+       - New directory paths:
+       * maps now default to ~/.q3a/baseq3/maps
+       * autosave files are saved in ~/.q3a/baseq3/maps
+       * .pk3 files can be in ~/.q3a/baseq3, <install_path>/baseq3 and in the CD-ROM
+
+17/05/2000
+       - Fixed bug deselecting a brush after the surface dialog is open
+       - hide cursor when right-dragging XYWnd
+       - files saved to /tmp are now saved in ~/.q3a/radiant
+       - Disabled undo
+       - Fixed a bug in FillTextureMenu
+       - User can now correctly change the accelerators at run-time
+       - Accelerators are read from ~/.q3a/radiant/radiant.ini
+
+16/05/2000
+       - Finished the patch inspector
+       - Finished the texture toolbar
+       - more small bug fixes
+
+11/05/2000
+       - Finished the GroupDlg stuff
+       - Added support to read pak files from the Quake3 CD-ROM
+       - moved /tmp/paklog.txt to ~/.q3a/radiant/paklog
+       - added functions to replace GetKeyState and SetCursorPos
+       - fixed the command key handlers for the mainwindow
diff --git a/oldstuff/DoxyConfig b/oldstuff/DoxyConfig
new file mode 100644 (file)
index 0000000..b9c0619
--- /dev/null
@@ -0,0 +1,47 @@
+# Included Doxygen Config file
+#---------------------------------------------------------------------------
+# Project name & version number
+#---------------------------------------------------------------------------
+PROJECT_NAME           = 
+PROJECT_NUMBER         = 
+
+#---------------------------------------------------------------------------
+# Where to put the output
+# Note: The images dir should be next to the created html dir within the
+#      output dir.
+#       eg;
+#       [Current Dir]
+#               L__[OUTPUT_DIRECTORY]
+#                      L__[html]
+#                      L__[images]
+#---------------------------------------------------------------------------
+OUTPUT_DIRECTORY       = ../GtkRadiant-doxygen
+
+#---------------------------------------------------------------------------
+# Where to read the sources
+# you can add more than one source...
+# INPUT                   = radiant/ \
+#                           tools/quake3/q3map \
+#                           tools/quake3/q3data
+#
+# Recursive is set on, so setting it to ./ (current dir) would read source
+# files recursively from the current dir down. (which would take a while)
+#
+# eg: To document just include, if the current directory is ../GtkRadiant/ 
+# then...
+#---------------------------------------------------------------------------
+INPUT                  = radiant/
+
+#---------------------------------------------------------------------------
+# Misc settings
+# TAB_SIZE     - sets the indenting for the inline source and the source 
+#                browser
+# INCLUDE_PATH - will include documentation for included files from other
+#                packages. You can specify more than one path the same as
+#                shown in the INPUT example Leave it blank if you don't want 
+#                this.
+# PERL_PATH    - path to the perl executable
+#
+#---------------------------------------------------------------------------
+PERL_PATH              = /usr/bin/perl
+
diff --git a/oldstuff/Doxyfile b/oldstuff/Doxyfile
new file mode 100644 (file)
index 0000000..b87c164
--- /dev/null
@@ -0,0 +1,1117 @@
+# Doxyfile 1.3.6
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+#       TAG = value [value, ...]
+# For lists items can also be appended using:
+#       TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
+# by quotes) that should identify the project.
+
+PROJECT_NAME           = GtkRadiant
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
+# This could be handy for archiving the generated documentation or 
+# if some version control system is used.
+
+PROJECT_NUMBER         = 1.5.0
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
+# base path where the generated documentation will be put. 
+# If a relative path is entered, it will be relative to the location 
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY       = doxygen-out
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
+# documentation generated by doxygen is written. Doxygen will use this 
+# information to generate all constant output in the proper language. 
+# The default language is English, other supported languages are: 
+# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, 
+# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en 
+# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese, 
+# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
+
+OUTPUT_LANGUAGE        = English
+
+# This tag can be used to specify the encoding used in the generated output. 
+# The encoding is not always determined by the language that is chosen, 
+# but also whether or not the output is meant for Windows or non-Windows users. 
+# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES 
+# forces the Windows encoding (this is the default for the Windows binary), 
+# whereas setting the tag to NO uses a Unix-style encoding (the default for 
+# all platforms other than Windows).
+
+USE_WINDOWS_ENCODING   = YES
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
+# include brief member descriptions after the members that are listed in 
+# the file and class documentation (similar to JavaDoc). 
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC      = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
+# the brief description of a member or function before the detailed description. 
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF           = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator 
+# that is used to form the text in various listings. Each string 
+# in this list, if found as the leading text of the brief description, will be 
+# stripped from the text and the result after processing the whole list, is used 
+# as the annotated text. Otherwise, the brief description is used as-is. If left 
+# blank, the following values are used ("$name" is automatically replaced with the 
+# name of the entity): "The $name class" "The $name widget" "The $name file" 
+# "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF       = 
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
+# Doxygen will generate a detailed section even if there is only a brief 
+# description.
+
+ALWAYS_DETAILED_SEC    = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited 
+# members of a class in the documentation of that class as if those members were 
+# ordinary class members. Constructors, destructors and assignment operators of 
+# the base classes will not be shown.
+
+INLINE_INHERITED_MEMB  = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
+# path before files name in the file list and in the header files. If set 
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES        = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
+# can be used to strip a user-defined part of the path. Stripping is 
+# only done if one of the specified strings matches the left-hand part of 
+# the path. It is allowed to use relative paths in the argument list. 
+# If left blank the directory from which doxygen is run is used as the 
+# path to strip.
+
+STRIP_FROM_PATH        = 
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
+# (but less readable) file names. This can be useful is your file systems 
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES            = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
+# will interpret the first line (until the first dot) of a JavaDoc-style 
+# comment as the brief description. If set to NO, the JavaDoc 
+# comments will behave just like the Qt-style comments (thus requiring an 
+# explicit @brief command for a brief description.
+
+JAVADOC_AUTOBRIEF      = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 
+# treat a multi-line C++ special comment block (i.e. a block of //! or /// 
+# comments) as a brief description. This used to be the default behaviour. 
+# The new default is to treat a multi-line C++ comment block as a detailed 
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the DETAILS_AT_TOP tag is set to YES then Doxygen 
+# will output the detailed description near the top, like JavaDoc.
+# If set to NO, the detailed description appears after the member 
+# documentation.
+
+DETAILS_AT_TOP         = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
+# member inherits the documentation from any documented member that it 
+# re-implements.
+
+INHERIT_DOCS           = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
+# tag is set to YES, then doxygen will reuse the documentation of the first 
+# member in the group (if any) for the other members of the group. By default 
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC   = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE               = 2
+
+# This tag can be used to specify a number of aliases that acts 
+# as commands in the documentation. An alias has the form "name=value". 
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
+# put the command \sideeffect (or @sideeffect) in the documentation, which 
+# will result in a user-defined paragraph with heading "Side Effects:". 
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES                = 
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources 
+# only. Doxygen will then generate output that is more tailored for C. 
+# For instance, some of the names that are used will be different. The list 
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C  = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources 
+# only. Doxygen will then generate output that is more tailored for Java. 
+# For instance, namespaces will be presented as packages, qualified scopes 
+# will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA   = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
+# the same type (for instance a group of public functions) to be put as a 
+# subgroup of that type (e.g. under the Public Functions section). Set it to 
+# NO to prevent subgrouping. Alternatively, this can be done per class using 
+# the \nosubgrouping command.
+
+SUBGROUPING            = YES
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
+# documentation are documented, even if no documentation was available. 
+# Private class members and static file members will be hidden unless 
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL            = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
+# will be included in the documentation.
+
+EXTRACT_PRIVATE        = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file 
+# will be included in the documentation.
+
+EXTRACT_STATIC         = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
+# defined locally in source files will be included in the documentation. 
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES  = YES
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
+# undocumented members of documented classes, files or namespaces. 
+# If set to NO (the default) these members will be included in the 
+# various overviews, but no documentation section is generated. 
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS     = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
+# undocumented classes that are normally visible in the class hierarchy. 
+# If set to NO (the default) these classes will be included in the various 
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES     = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 
+# friend (class|struct|union) declarations. 
+# If set to NO (the default) these declarations will be included in the 
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS  = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 
+# documentation blocks found inside the body of a function. 
+# If set to NO (the default) these blocks will be appended to the 
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS      = NO
+
+# The INTERNAL_DOCS tag determines if documentation 
+# that is typed after a \internal command is included. If the tag is set 
+# to NO (the default) then the documentation will be excluded. 
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS          = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
+# file names in lower-case letters. If set to YES upper-case letters are also 
+# allowed. This is useful if you have classes or files whose names only differ 
+# in case and if your file system supports case sensitive file names. Windows 
+# users are advised to set this option to NO.
+
+CASE_SENSE_NAMES       = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
+# will show members with their full class and namespace scopes in the 
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES       = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
+# will put a list of the files that are included by a file in the documentation 
+# of that file.
+
+SHOW_INCLUDE_FILES     = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
+# is inserted in the documentation for inline members.
+
+INLINE_INFO            = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
+# will sort the (detailed) documentation of file and class members 
+# alphabetically by member name. If set to NO the members will appear in 
+# declaration order.
+
+SORT_MEMBER_DOCS       = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 
+# brief documentation of file, namespace and class members alphabetically 
+# by member name. If set to NO (the default) the members will appear in 
+# declaration order.
+
+SORT_BRIEF_DOCS        = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 
+# sorted by fully-qualified names, including namespaces. If set to 
+# NO (the default), the class list will be sorted only by class name, 
+# not including the namespace part. 
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the 
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME     = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or 
+# disable (NO) the todo list. This list is created by putting \todo 
+# commands in the documentation.
+
+GENERATE_TODOLIST      = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or 
+# disable (NO) the test list. This list is created by putting \test 
+# commands in the documentation.
+
+GENERATE_TESTLIST      = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or 
+# disable (NO) the bug list. This list is created by putting \bug 
+# commands in the documentation.
+
+GENERATE_BUGLIST       = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 
+# disable (NO) the deprecated list. This list is created by putting 
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional 
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS       = 
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
+# the initial value of a variable or define consists of for it to appear in 
+# the documentation. If the initializer consists of more lines than specified 
+# here it will be hidden. Use a value of 0 to hide initializers completely. 
+# The appearance of the initializer of individual variables and defines in the 
+# documentation can be controlled using \showinitializer or \hideinitializer 
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES  = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
+# at the bottom of the documentation of classes and structs. If set to YES the 
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES        = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated 
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET                  = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are 
+# generated by doxygen. Possible values are YES and NO. If left blank 
+# NO is used.
+
+WARNINGS               = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED   = NO
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
+# potential errors in the documentation, such as not documenting some 
+# parameters in a documented function, or documenting parameters that 
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR      = YES
+
+# The WARN_FORMAT tag determines the format of the warning messages that 
+# doxygen can produce. The string should contain the $file, $line, and $text 
+# tags, which will be replaced by the file and line number from which the 
+# warning originated and the warning text.
+
+WARN_FORMAT            = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning 
+# and error messages should be written. If left blank the output is written 
+# to stderr.
+
+WARN_LOGFILE           = 
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain 
+# documented source files. You may enter file names like "myfile.cpp" or 
+# directories like "/usr/src/myproject". Separate the files or directories 
+# with spaces.
+
+INPUT                  = radiant/ plugins/ libs/ include/
+
+# If the value of the INPUT tag contains directories, you can use the 
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
+# and *.h) to filter out the source-files in the directories. If left 
+# blank the following patterns are tested: 
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp 
+# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc
+
+FILE_PATTERNS          = 
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
+# should be searched for input files as well. Possible values are YES and NO. 
+# If left blank NO is used.
+
+RECURSIVE              = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should 
+# excluded from the INPUT source files. This way you can easily exclude a 
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE                = 
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories 
+# that are symbolic links (a Unix filesystem feature) are excluded from the input.
+
+EXCLUDE_SYMLINKS       = NO
+
+# If the value of the INPUT tag contains directories, you can use the 
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
+# certain files from those directories.
+
+EXCLUDE_PATTERNS       = */.svn/*
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or 
+# directories that contain example code fragments that are included (see 
+# the \include command).
+
+EXAMPLE_PATH           = radiant/ plugins/ libs/ include/
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
+# and *.h) to filter out the source-files in the directories. If left 
+# blank all files are included.
+
+EXAMPLE_PATTERNS       = 
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
+# searched for input files to be used with the \include or \dontinclude 
+# commands irrespective of the value of the RECURSIVE tag. 
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE      = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or 
+# directories that contain image that are included in the documentation (see 
+# the \image command).
+
+IMAGE_PATH             = 
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should 
+# invoke to filter for each input file. Doxygen will invoke the filter program 
+# by executing (via popen()) the command <filter> <input-file>, where <filter> 
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
+# input file. Doxygen will then use the output that the filter program writes 
+# to standard output.
+
+INPUT_FILTER           = 
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
+# INPUT_FILTER) will be used to filter the input files when producing source 
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES    = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
+# be generated. Documented entities will be cross-referenced with these sources. 
+# Note: To get rid of all source code in the generated output, make sure also 
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER         = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body 
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES         = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
+# doxygen to hide any special comment blocks from generated source code 
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS    = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES (the default) 
+# then for each documented function all documented 
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES (the default) 
+# then for each documented function all documented entities 
+# called/used by that function will be listed.
+
+REFERENCES_RELATION    = YES
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
+# will generate a verbatim copy of the header file for each class for 
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS       = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
+# of all compounds will be generated. Enable this if the project 
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX     = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX    = 5
+
+# In case all classes in a project start with a common prefix, all 
+# classes will be put under the same header in the alphabetical index. 
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX          = 
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
+# generate HTML output.
+
+GENERATE_HTML          = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT            = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION    = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for 
+# each generated HTML page. If it is left blank doxygen will generate a 
+# standard header.
+
+HTML_HEADER            = 
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
+# each generated HTML page. If it is left blank doxygen will generate a 
+# standard footer.
+
+HTML_FOOTER            = 
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
+# style sheet that is used by each HTML page. It can be used to 
+# fine-tune the look of the HTML output. If the tag is left blank doxygen 
+# will generate a default style sheet. Note that doxygen will try to copy 
+# the style sheet file to the HTML output directory, so don't put your own 
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET        = 
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
+# files or namespaces will be aligned in HTML using tables. If set to 
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS     = YES
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
+# will be generated that can be used as input for tools like the 
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP      = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 
+# be used to specify the file name of the resulting .chm file. You 
+# can add a path in front of the file if the result should not be 
+# written to the html output directory.
+
+CHM_FILE               = 
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 
+# be used to specify the location (absolute path including file name) of 
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION           = 
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
+# controls if a separate .chi index file is generated (YES) or that 
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI           = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
+# controls whether a binary table of contents is generated (YES) or a 
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC             = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members 
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND             = NO
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
+# top of each HTML page. The value NO (the default) enables the index and 
+# the value YES disables it.
+
+DISABLE_INDEX          = NO
+
+# This tag can be used to set the number of enum values (range [1..20]) 
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE   = 4
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that 
+# is generated for HTML Help). For this to work a browser that supports 
+# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 
+# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 
+# probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW      = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
+# used to set the initial width (in pixels) of the frame in which the tree 
+# is shown.
+
+TREEVIEW_WIDTH         = 250
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
+# generate Latex output.
+
+GENERATE_LATEX         = YES
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT           = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 
+# invoked. If left blank `latex' will be used as the default command name.
+
+LATEX_CMD_NAME         = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
+# generate index for LaTeX. If left blank `makeindex' will be used as the 
+# default command name.
+
+MAKEINDEX_CMD_NAME     = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
+# LaTeX documents. This may be useful for small projects and may help to 
+# save some trees in general.
+
+COMPACT_LATEX          = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used 
+# by the printer. Possible values are: a4, a4wide, letter, legal and 
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE             = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES         = 
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
+# the generated latex document. The header should contain everything until 
+# the first chapter. If it is left blank doxygen will generate a 
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER           = 
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
+# contain links (just like the HTML output) instead of page references 
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS         = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
+# plain latex in the generated Makefile. Set this option to YES to get a 
+# higher quality PDF documentation.
+
+USE_PDFLATEX           = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
+# command to the generated LaTeX files. This will instruct LaTeX to keep 
+# running if errors occur, instead of asking the user for help. 
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE        = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not 
+# include the index chapters (such as File Index, Compound Index, etc.) 
+# in the output.
+
+LATEX_HIDE_INDICES     = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
+# The RTF output is optimized for Word 97 and may not look very pretty with 
+# other RTF readers or editors.
+
+GENERATE_RTF           = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT             = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
+# RTF documents. This may be useful for small projects and may help to 
+# save some trees in general.
+
+COMPACT_RTF            = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
+# will contain hyperlink fields. The RTF file will 
+# contain links (just like the HTML output) instead of page references. 
+# This makes the output suitable for online browsing using WORD or other 
+# programs which support those fields. 
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS         = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's 
+# config file, i.e. a series of assignments. You only have to provide 
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE    = 
+
+# Set optional variables used in the generation of an rtf document. 
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE    = 
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
+# generate man pages
+
+GENERATE_MAN           = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT             = man
+
+# The MAN_EXTENSION tag determines the extension that is added to 
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION          = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output, 
+# then it will generate one additional man file for each entity 
+# documented in the real man page(s). These additional files 
+# only source the real man page, but without them the man command 
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS              = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will 
+# generate an XML file that captures the structure of 
+# the code including all documentation.
+
+GENERATE_XML           = YES
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put. 
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT             = doxygen-xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema, 
+# which can be used by a validating XML parser to check the 
+# syntax of the XML files.
+
+XML_SCHEMA             = 
+
+# The XML_DTD tag can be used to specify an XML DTD, 
+# which can be used by a validating XML parser to check the 
+# syntax of the XML files.
+
+XML_DTD                = 
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will 
+# dump the program listings (including syntax highlighting 
+# and cross-referencing information) to the XML output. Note that 
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING     = NO
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 
+# generate an AutoGen Definitions (see autogen.sf.net) file 
+# that captures the structure of the code including all 
+# documentation. Note that this feature is still experimental 
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF   = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will 
+# generate a Perl module file that captures the structure of 
+# the code including all documentation. Note that this 
+# feature is still experimental and incomplete at the 
+# moment.
+
+GENERATE_PERLMOD       = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate 
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able 
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX          = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 
+# nicely formatted so it can be parsed by a human reader.  This is useful 
+# if you want to understand what is going on.  On the other hand, if this 
+# tag is set to NO the size of the Perl module output will be much smaller 
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY         = YES
+
+# The names of the make variables in the generated doxyrules.make file 
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 
+# This is useful so different doxyrules.make files included by the same 
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX = 
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor   
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
+# evaluate all C-preprocessor directives found in the sources and include 
+# files.
+
+ENABLE_PREPROCESSING   = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
+# names in the source code. If set to NO (the default) only conditional 
+# compilation will be performed. Macro expansion can be done in a controlled 
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION        = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
+# then the macro expansion is limited to the macros specified with the 
+# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+
+EXPAND_ONLY_PREDEF     = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES        = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that 
+# contain include files that are not input files but should be processed by 
+# the preprocessor.
+
+INCLUDE_PATH           = 
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
+# patterns (like *.h and *.hpp) to filter out the header-files in the 
+# directories. If left blank, the patterns specified with FILE_PATTERNS will 
+# be used.
+
+INCLUDE_FILE_PATTERNS  = 
+
+# The PREDEFINED tag can be used to specify one or more macro names that 
+# are defined before the preprocessor is started (similar to the -D option of 
+# gcc). The argument of the tag is a list of macros of the form: name 
+# or name=definition (no spaces). If the definition and the = are 
+# omitted =1 is assumed.
+
+PREDEFINED             = 
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 
+# this tag can be used to specify a list of macro names that should be expanded. 
+# The macro definition that is found in the sources will be used. 
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED      = 
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
+# doxygen's preprocessor will remove all function-like macros that are alone 
+# on a line, have an all uppercase name, and do not end with a semicolon. Such 
+# function macros are typically used for boiler-plate code, and will confuse the 
+# parser if not removed.
+
+SKIP_FUNCTION_MACROS   = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references   
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles. 
+# Optionally an initial location of the external documentation 
+# can be added for each tagfile. The format of a tag file without 
+# this location is as follows: 
+#   TAGFILES = file1 file2 ... 
+# Adding location for the tag files is done as follows: 
+#   TAGFILES = file1=loc1 "file2 = loc2" ... 
+# where "loc1" and "loc2" can be relative or absolute paths or 
+# URLs. If a location is present for each tag, the installdox tool 
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen 
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES               = 
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE       = 
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
+# in the class index. If set to NO only the inherited external classes 
+# will be listed.
+
+ALLEXTERNALS           = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 
+# in the modules index. If set to NO, only the current project's groups will 
+# be listed.
+
+EXTERNAL_GROUPS        = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script 
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH              = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool   
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or 
+# super classes. Setting the tag to NO turns the diagrams off. Note that this 
+# option is superseded by the HAVE_DOT option below. This is only a fallback. It is 
+# recommended to install and use dot, since it yields more powerful graphs.
+
+CLASS_DIAGRAMS         = YES
+
+# If set to YES, the inheritance and collaboration graphs will hide 
+# inheritance and usage relations if the target is undocumented 
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS   = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
+# available from the path. This tool is part of Graphviz, a graph visualization 
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT               = YES
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
+# will generate a graph for each documented class showing the direct and 
+# indirect inheritance relations. Setting this tag to YES will force the 
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH            = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
+# will generate a graph for each documented class showing the direct and 
+# indirect implementation dependencies (inheritance, containment, and 
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH    = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and 
+# collaboration diagrams in a style similar to the OMG's Unified Modeling 
+# Language.
+
+UML_LOOK               = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the 
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS     = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
+# tags are set to YES then doxygen will generate a graph for each documented 
+# file showing the direct and indirect include dependencies of the file with 
+# other documented files.
+
+INCLUDE_GRAPH          = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
+# documented header file showing the documented files that directly or 
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH      = YES
+
+# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will 
+# generate a call dependency graph for every global function or class method. 
+# Note that enabling this option will significantly increase the time of a run. 
+# So in most cases it will be better to enable call graphs for selected 
+# functions only using the \callgraph command.
+
+CALL_GRAPH             = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY    = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT       = png
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be 
+# found. If left blank, it is assumed the dot tool can be found on the path.
+
+DOT_PATH               = 
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that 
+# contain dot files that are included in the documentation (see the 
+# \dotfile command).
+
+DOTFILE_DIRS           = 
+
+# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
+# this value, doxygen will try to truncate the graph, so that it fits within 
+# the specified constraint. Beware that most browsers cannot cope with very 
+# large images.
+
+MAX_DOT_GRAPH_WIDTH    = 1024
+
+# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
+# this value, doxygen will try to truncate the graph, so that it fits within 
+# the specified constraint. Beware that most browsers cannot cope with very 
+# large images.
+
+MAX_DOT_GRAPH_HEIGHT   = 1024
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
+# graphs generated by dot. A depth value of 3 means that only nodes reachable 
+# from the root by following a path via at most 3 edges will be shown. Nodes that 
+# lay further from the root node will be omitted. Note that setting this option to 
+# 1 or 2 may greatly reduce the computation time needed for large code bases. Also 
+# note that a graph may be further truncated if the graph's image dimensions are 
+# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). 
+# If 0 is used for the depth value (the default), the graph is not depth-constrained.
+
+MAX_DOT_GRAPH_DEPTH    = 0
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
+# generate a legend page explaining the meaning of the various boxes and 
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND        = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
+# remove the intermediate dot files that are used to generate 
+# the various graphs.
+
+DOT_CLEANUP            = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine   
+#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be 
+# used. If set to NO the values of all tags below this one will be ignored.
+
+SEARCHENGINE           = NO
diff --git a/oldstuff/branch-manager b/oldstuff/branch-manager
new file mode 100755 (executable)
index 0000000..2fd5a8f
--- /dev/null
@@ -0,0 +1,344 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+sub OutputOf($@)
+{
+       my ($cmd, @args) = @_;
+       $cmd =~ s/#(\d)/"\$ARG$1"/g;
+       $ENV{"ARG$_"} = $args[$_-1]
+               for 1..@args;
+
+       open my $fh, '-|', $cmd
+               or die "popen $cmd: $!";
+
+       $ENV{"ARG$_"} = ''
+               for 1..@args;
+
+       undef local $/;
+       my $ret = <$fh>;
+       close $fh;
+
+       return $ret;
+}
+
+my %conf = 
+(
+       master => '',
+       revisions_applied => ''
+);
+my @revisions_applied = (); # array of [first, last] ranges
+
+sub LoadSettings()
+{
+       open my $fh, '<', ".patchsets"
+               or return;
+       while(<$fh>)
+       {
+               chomp;
+               /^([^=]*?)\s*=\s*(.*?)$/s
+                       or next;
+               die "Invalid config item: $1 (allowed: @{[sort keys %conf]})"
+                       if not exists $conf{$1};
+               $conf{$1} = $2;
+       }
+
+       @revisions_applied = map { /^(\d+)-(\d+)$/s or die "Invalid revision spec $_"; [$1, $2]; } split /,/, $conf{revisions_applied};
+}
+
+sub WriteSettings()
+{
+       $conf{revisions_applied} = join ',', map { "$_->[0]-$_->[1]" } @revisions_applied;
+
+       open my $fh, '>', ".patchsets"
+               or die "writing settings: $!";
+       for(sort keys %conf)
+       {
+               print $fh "$_ = $conf{$_}\n";
+       }
+}
+
+sub AddPatch($$)
+{
+       my ($first, $last) = @_;
+       die "Invalid range" if $first > $last;
+
+       my @rev = sort { $a->[0] <=> $b->[0] } (@revisions_applied, [$first, $last]);
+
+       my $i = 0;
+       while($i < @rev - 1)
+       {
+               my $a = $rev[$i][0];
+               my $b = $rev[$i][1];
+               my $c = $rev[$i+1][0];
+               my $d = $rev[$i+1][1];
+
+               if($b >= $c)
+               {
+                       die "overlapping patch: $a-$b overlaps $c-$d";
+               }
+               if($b == $c - 1)
+               {
+                       splice @rev, $i, 2, [$a, $d];
+                       next;
+               }
+               ++$i;
+       }
+
+       @revisions_applied = @rev;
+}
+
+sub RemovePatch($$)
+{
+       my ($first, $last) = @_;
+       die "Invalid range" if $first > $last;
+
+       my @rev = sort { $a->[0] <=> $b->[0] } (@revisions_applied);
+
+       my $i = 0;
+       while($i < @rev)
+       {
+               my $a = $rev[$i][0];
+               my $b = $rev[$i][1];
+
+               if($first >= $a && $last <= $b)
+               {
+                       # this is the range
+                       my @replacement;
+
+                       if($first == $a && $last == $b)
+                       {
+                               @replacement = ();
+                       }
+                       elsif($first == $a)
+                       {
+                               @replacement = ([$last + 1, $b]);
+                       }
+                       elsif($last == $b)
+                       {
+                               @replacement = ([$a, $first - 1]);
+                       }
+                       else
+                       {
+                               @replacement = ([$a, $first - 1], [$last + 1, $b]);
+                       }
+                       splice @rev, $i, 1, @replacement;
+                       @revisions_applied = @rev;
+                       return;
+               }
+       }
+
+       die "could not remove range: not in set";
+}
+
+sub GetUnappliedRanges($)
+{
+       my ($lastrev) = @_;
+       my @unapplied = ();
+
+       my $cur = 0;
+       for(@revisions_applied)
+       {
+               my ($a, $b) = @$_;
+               if($a - 1 >= $cur + 1)
+               {
+                       push @unapplied, [$cur + 1, $a - 1];
+               }
+               $cur = $b;
+       }
+       if($lastrev >= $cur + 1)
+       {
+               push @unapplied, [$cur + 1, $lastrev];
+       }
+       return @unapplied;
+}
+
+sub GetMasterRev()
+{
+       my $svninfo = OutputOf 'svn info #1', $conf{master};
+       $svninfo =~ /^Last Changed Rev: (\d+)$/m
+               or die "could not get svn info";
+       return $1;
+}
+
+sub GetLog($$)
+{
+       my ($first, $last) = @_;
+       my $log = OutputOf 'svn log -r#1:#2 #3', $first, $last, $conf{master};
+       $log =~ s/^-*$//gm;
+       $log =~ s/\n+/\n/gs;
+       $log =~ s/^\n//s;
+       $log =~ s/\n$//s;
+       return $log;
+}
+
+sub GetDiff($$)
+{
+       my ($first, $last) = @_;
+       return OutputOf 'svn diff -r#1:#2 #3', $first-1, $last, $conf{master};
+}
+
+my ($cmd, @args) = @ARGV;
+$cmd = 'help' if not defined $cmd;
+
+if($cmd eq 'info')
+{
+       LoadSettings();
+       for(@revisions_applied)
+       {
+               my ($a, $b) = @$_;
+               print "Applied: $a to $b\n";
+       }
+       for(GetUnappliedRanges(GetMasterRev()))
+       {
+               my ($a, $b) = @$_;
+               print "Unapplied: $a to $b\n";
+       }
+}
+elsif($cmd eq 'unmerged-diff')
+{
+       LoadSettings();
+       my @autoadd = ();
+       for(GetUnappliedRanges(GetMasterRev()))
+       {
+               my ($a, $b) = @$_;
+               my $log = GetLog $a, $b;
+               if($log eq '')
+               {
+                       push @autoadd, [$a, $b];
+                       next;
+               }
+               $log =~ s/^/  /gm;
+               print "Unapplied: $a to $b\n";
+               print "$log\n";
+               print GetDiff $a, $b;
+               print "\n";
+       }
+       for(@autoadd)
+       {
+               my ($a, $b) = @$_;
+               print "Autofilled revision hole $a to $b\n";
+               AddPatch $a, $b;
+       }
+       WriteSettings() if @autoadd;
+}
+elsif($cmd eq 'unmerged')
+{
+       LoadSettings();
+       my @autoadd = ();
+       for(GetUnappliedRanges(GetMasterRev()))
+       {
+               my ($a, $b) = @$_;
+               my $log = GetLog $a, $b;
+               if($log eq '')
+               {
+                       push @autoadd, [$a, $b];
+                       next;
+               }
+               $log =~ s/^/  /gm;
+               print "Unapplied: $a to $b\n";
+               print "$log\n\n";
+       }
+       for(@autoadd)
+       {
+               my ($a, $b) = @$_;
+               print "Autofilled revision hole $a to $b\n";
+               AddPatch $a, $b;
+       }
+       WriteSettings() if @autoadd;
+}
+elsif($cmd eq 'merge')
+{
+       my ($first, $last, $force) = @args;
+       die "Usage: $0 merge first last [--force]"
+               if not defined $first;
+       $last = $first if not defined $last;
+
+       die "Usage: $0 merge first last"
+               if "$first$last" =~ /[^0-9]/;
+
+       die "There is an uncommitted merge"
+               if -f '.commitmsg' and $force ne '--force';
+
+       LoadSettings();
+       AddPatch $first, $last;
+
+       print OutputOf 'svn merge -r#1:#2 #3', ($first - 1), $last, $conf{master};
+       print "You may also want to run $0 unmerged to fill possible revision holes\n";
+       print "Make sure there are no conflicts, then run $0 commit\n";
+       print "To abort, use $0 revert\n";
+       
+       open my $fh, '>>', '.commitmsg'
+               or die "open .commitmsg";
+       print $fh GetLog $first, $last;
+       print $fh "\n";
+       close $fh;
+
+       WriteSettings();
+}
+elsif($cmd eq 'undo')
+{
+       my ($first, $last, $force) = @args;
+       die "Usage: $0 undo first last"
+               if not defined $first;
+       $last = $first if not defined $last;
+
+       die "Usage: $0 merge first last"
+               if "$first$last" =~ /[^0-9]/;
+
+       die "There is an uncommitted merge"
+               if -f '.commitmsg' and $force ne '--force';
+
+       LoadSettings();
+       RemovePatch $first, $last;
+
+       print OutputOf 'svn merge -r#2:#1 #3', ($first - 1), $last, $conf{master};
+       print "Make sure there are no conflicts, then run $0 commit\n";
+       print "To abort, use $0 revert\n";
+
+       open my $fh, '>>', '.commitmsg'
+               or die "open .commitmsg";
+       print $fh "undo the following merge:\n", GetLog $first, $last;
+       close $fh;
+
+       WriteSettings();
+}
+elsif($cmd eq 'commit')
+{
+       system 'vim .commitmsg';
+       print "Hit Enter if OK to commit, Ctrl-C otherwise...\n";
+       my $ok = <STDIN>;
+       if(!system 'svn commit -F .commitmsg')
+       {
+               unlink '.commitmsg';
+       }
+}
+elsif($cmd eq 'revert')
+{
+       if(!system 'svn revert -R .')
+       {
+               unlink '.commitmsg';
+       }
+}
+elsif($cmd eq 'init')
+{
+       my ($master, $rev) = @args;
+       $conf{master} = $master;
+       @revisions_applied = [1, $rev];
+       WriteSettings();
+}
+else
+{
+       print <<EOF;
+Usage:
+  $0 init masterrepo rev
+  $0 info
+  $0 unmerged
+  $0 unmerged-diff
+  $0 merge rev1 [rev2] [--force]
+  $0 undo rev1 [rev2] [--force]
+  $0 commit
+  $0 revert
+EOF
+}
diff --git a/oldstuff/conftest.cpp b/oldstuff/conftest.cpp
new file mode 100644 (file)
index 0000000..10b7a62
--- /dev/null
@@ -0,0 +1,6 @@
+#include <stdio.h> /* jpeglib.h needs it */
+#include CONFTEST_HEADER
+int main(){
+       (void) CONFTEST_SYMBOL;
+       return 0;
+}
diff --git a/oldstuff/cross-Makefile.conf b/oldstuff/cross-Makefile.conf
new file mode 100644 (file)
index 0000000..caba2e6
--- /dev/null
@@ -0,0 +1,10 @@
+# Usage:
+# copy this file to Makefile.conf
+# edit the paths in here
+
+# how to call the mingw tools
+MINGW_EXEC_PREFIX = i486-mingw32-
+
+# use mingw32
+include mingw-Makefile.inc
+include mingw-radiantdeps-Makefile.inc
diff --git a/oldstuff/generic_cpp.py b/oldstuff/generic_cpp.py
new file mode 100644 (file)
index 0000000..62d51ed
--- /dev/null
@@ -0,0 +1,40 @@
+# Copyright (C) 2001-2006 William Joseph.
+# For a list of contributors, see the accompanying CONTRIBUTORS file.
+# 
+# This file is part of GtkRadiant.
+# 
+# GtkRadiant is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# GtkRadiant is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with GtkRadiant; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
+
+import os
+import sys
+
+def svnAddText(filename):
+  os.system("svn add " + filename);
+  os.system("svn ps svn:eol-style native " + filename);
+
+def createCPPTemplate(filename, name):
+  file = open(filename, "wt")
+  file.write("\n")
+  file.write("#include \"" + name + ".h\"\n")
+  file.write("\n")
+  file.close()
+
+if __name__ == "__main__":
+  name = sys.argv[1]
+  location = sys.argv[2]
+  filename = os.path.join(location, name + ".cpp")
+  createCPPTemplate(filename, name)
+  svnAddText(filename)
diff --git a/oldstuff/generic_h.py b/oldstuff/generic_h.py
new file mode 100644 (file)
index 0000000..9f8b7e9
--- /dev/null
@@ -0,0 +1,41 @@
+# Copyright (C) 2001-2006 William Joseph.
+# For a list of contributors, see the accompanying CONTRIBUTORS file.
+# 
+# This file is part of GtkRadiant.
+# 
+# GtkRadiant is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# GtkRadiant is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with GtkRadiant; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
+
+import os
+import sys
+
+def svnAddText(filename):
+  os.system("svn add " + filename);
+  os.system("svn ps svn:eol-style native " + filename);
+
+def createHeaderTemplate(filename, name):
+  file = open(filename, "wt")
+  file.write("\n")
+  file.write("#if !defined(_INCLUDED_" + name.upper() + "_H_)\n")
+  file.write("#define _INCLUDED_" + name.upper() + "_H_\n")
+  file.write("\n")
+  file.write("#endif\n")
+
+if __name__ == "__main__":
+  name = sys.argv[1]
+  location = sys.argv[2]
+  filename = os.path.join(location, name + ".h")
+  createHeaderTemplate(filename, name)
+  svnAddText(filename)
diff --git a/oldstuff/generic_module.py b/oldstuff/generic_module.py
new file mode 100644 (file)
index 0000000..e055e8f
--- /dev/null
@@ -0,0 +1,59 @@
+# Copyright (C) 2001-2006 William Joseph.
+# For a list of contributors, see the accompanying CONTRIBUTORS file.
+# 
+# This file is part of GtkRadiant.
+# 
+# GtkRadiant is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# GtkRadiant is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with GtkRadiant; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
+
+import os
+import sys
+
+def svnAddText(filename):
+  os.system("svn add " + filename);
+  os.system("svn ps svn:eol-style native " + filename);
+
+def createHeaderTemplate(filename, name):
+  file = open(filename, "wt")
+  file.write("\n")
+  file.write("#if !defined(INCLUDED_" + name.upper() + "_H)\n")
+  file.write("#define INCLUDED_" + name.upper() + "_H\n")
+  file.write("\n")
+  file.write("#endif\n")
+
+def createCPPTemplate(filename, name):
+  file = open(filename, "wt")
+  file.write("\n")
+  file.write("#include \"" + name + ".h\"\n")
+  file.write("\n")
+  file.close()
+
+if __name__ == "__main__":
+  if not len(sys.argv) == 2:
+    print "usage: " + sys.argv[0] + " <module-path>"
+    
+  path = sys.argv[1]
+  name = os.path.split(path)[1];
+  
+  h = os.path.normpath(path + ".h")
+  print "writing " + h;
+  createHeaderTemplate(h, name)
+  svnAddText(h)
+
+  cpp = os.path.normpath(path + ".cpp")
+  print "writing " + cpp;
+  createCPPTemplate(cpp, name)
+  svnAddText(cpp)
+  
diff --git a/oldstuff/install-dlls-fedora.sh b/oldstuff/install-dlls-fedora.sh
new file mode 100755 (executable)
index 0000000..5f88229
--- /dev/null
@@ -0,0 +1,30 @@
+#!/bin/sh
+set -x
+
+DLL_PATH=/usr/i686-w64-mingw32/sys-root/mingw/bin
+
+cd install
+
+STARTDIR=`pwd`
+
+COPYDEPS() 
+{
+       FILE=$1
+       if [ -e "$FILE" ] ;then
+               DEPS=`objdump -p "$FILE" 2>/dev/null |grep -i "DLL Name"|sort |uniq|cut -d\  -f3 |egrep -vi '(GDI32.dll|KERNEL32.dll|USER32.dll|msvcrt.dll|MSIMG32.DLL|ole32.dll|OPENGL32.DLL|SHELL32.DLL|WS2_32.dll)' || true`
+                               
+               for DEP in $DEPS; do
+                       basename -a "$STARTDIR"/*.dll | grep -v "*.dll"|sort >  "$STARTDIR"/.HAVES
+                       if ! cat "$STARTDIR"/.HAVES | grep "$DEP" >/dev/null ;then
+                               cp -v "$DLL_PATH"/"$DEP" "$STARTDIR" 2>/dev/null
+                               COPYDEPS "$DLL_PATH"/"$DEP"
+                       fi
+                       rm -f "$STARTDIR"/.HAVES
+               done
+       fi
+}
+
+for i in *.exe;do
+       COPYDEPS "$i";
+done
+
diff --git a/oldstuff/install-dlls.sh b/oldstuff/install-dlls.sh
new file mode 100755 (executable)
index 0000000..60ca8db
--- /dev/null
@@ -0,0 +1,196 @@
+#!/bin/sh
+
+set -ex
+
+: ${WHICHDLL:=which}
+: ${GTKDIR:=/gtk}
+: ${CP:=cp}
+: ${CAT:=cat}
+: ${MKDIR:=mkdir -p}
+: ${INSTALLDIR:=.}
+
+for DLL in \
+       freetype6.dll \
+       intl.dll \
+       libatk-1.0-0.dll \
+       libcairo-2.dll \
+       libexpat-1.dll \
+       libfontconfig-1.dll \
+       libgdkglext-win32-1.0-0.dll \
+       libgdk_pixbuf-2.0-0.dll \
+       libgdk-win32-2.0-0.dll \
+       libgio-2.0-0.dll \
+       libglib-2.0-0.dll \
+       libgmodule-2.0-0.dll \
+       libgobject-2.0-0.dll \
+       libgthread-2.0-0.dll \
+       libgtkglext-win32-1.0-0.dll \
+       libgtk-win32-2.0-0.dll \
+       libjpeg-8.dll \
+       libpango-1.0-0.dll \
+       libpangocairo-1.0-0.dll \
+       libpangoft2-1.0-0.dll \
+       libpangowin32-1.0-0.dll \
+       libpng14-14.dll \
+       libxml2-2.dll \
+       zlib1.dll \
+       libgcc_s_sjlj-1.dll \
+       libstdc++-6.dll \
+; do
+       $CP "`$WHICHDLL $DLL`" $INSTALLDIR/
+done
+
+$MKDIR $INSTALLDIR/etc/fonts
+$CAT > $INSTALLDIR/etc/fonts/fonts.conf <<EOF
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<!-- /etc/fonts/fonts.conf file to configure system font access -->
+<fontconfig>
+
+<!--
+       DO NOT EDIT THIS FILE.
+       IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
+       LOCAL CHANGES BELONG IN 'local.conf'.
+
+       The intent of this standard configuration file is to be adequate for
+       most environments.  If you have a reasonably normal environment and
+       have found problems with this configuration, they are probably
+       things that others will also want fixed.  Please submit any
+       problems to the fontconfig bugzilla system located at fontconfig.org
+
+       Note that the normal 'make install' procedure for fontconfig is to
+       replace any existing fonts.conf file with the new version.  Place
+       any local customizations in local.conf which this file references.
+
+       Keith Packard
+-->
+
+<!-- Font directory list -->
+
+       <dir>WINDOWSFONTDIR</dir>
+       
+       <dir>~/.fonts</dir>
+
+<!--
+  Accept deprecated 'mono' alias, replacing it with 'monospace'
+-->
+       <match target="pattern">
+               <test qual="any" name="family">
+                       <string>mono</string>
+               </test>
+               <edit name="family" mode="assign">
+                       <string>monospace</string>
+               </edit>
+       </match>
+
+<!--
+  Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
+-->
+       <match target="pattern">
+               <test qual="any" name="family">
+                       <string>sans serif</string>
+               </test>
+               <edit name="family" mode="assign">
+                       <string>sans-serif</string>
+               </edit>
+       </match>
+
+<!--
+  Accept deprecated 'sans' alias, replacing it with 'sans-serif'
+-->
+       <match target="pattern">
+               <test qual="any" name="family">
+                       <string>sans</string>
+               </test>
+               <edit name="family" mode="assign">
+                       <string>sans-serif</string>
+               </edit>
+       </match>
+
+<!--
+  Load local system customization file
+-->
+       <include ignore_missing="yes">conf.d</include>
+
+<!-- Font cache directory list -->
+
+       <cachedir>WINDOWSTEMPDIR_FONTCONFIG_CACHE</cachedir>
+       <cachedir>~/.fontconfig</cachedir>
+
+       <config>
+<!--
+  These are the default Unicode chars that are expected to be blank
+  in fonts.  All other blank chars are assumed to be broken and
+  won't appear in the resulting charsets
+ -->
+               <blank>
+                       <int>0x0020</int>       <!-- SPACE -->
+                       <int>0x00A0</int>       <!-- NO-BREAK SPACE -->
+                       <int>0x00AD</int>       <!-- SOFT HYPHEN -->
+                       <int>0x034F</int>       <!-- COMBINING GRAPHEME JOINER -->
+                       <int>0x0600</int>       <!-- ARABIC NUMBER SIGN -->
+                       <int>0x0601</int>       <!-- ARABIC SIGN SANAH -->
+                       <int>0x0602</int>       <!-- ARABIC FOOTNOTE MARKER -->
+                       <int>0x0603</int>       <!-- ARABIC SIGN SAFHA -->
+                       <int>0x06DD</int>       <!-- ARABIC END OF AYAH -->
+                       <int>0x070F</int>       <!-- SYRIAC ABBREVIATION MARK -->
+                       <int>0x115F</int>       <!-- HANGUL CHOSEONG FILLER -->
+                       <int>0x1160</int>       <!-- HANGUL JUNGSEONG FILLER -->
+                       <int>0x1680</int>       <!-- OGHAM SPACE MARK -->
+                       <int>0x17B4</int>       <!-- KHMER VOWEL INHERENT AQ -->
+                       <int>0x17B5</int>       <!-- KHMER VOWEL INHERENT AA -->
+                       <int>0x180E</int>       <!-- MONGOLIAN VOWEL SEPARATOR -->
+                       <int>0x2000</int>       <!-- EN QUAD -->
+                       <int>0x2001</int>       <!-- EM QUAD -->
+                       <int>0x2002</int>       <!-- EN SPACE -->
+                       <int>0x2003</int>       <!-- EM SPACE -->
+                       <int>0x2004</int>       <!-- THREE-PER-EM SPACE -->
+                       <int>0x2005</int>       <!-- FOUR-PER-EM SPACE -->
+                       <int>0x2006</int>       <!-- SIX-PER-EM SPACE -->
+                       <int>0x2007</int>       <!-- FIGURE SPACE -->
+                       <int>0x2008</int>       <!-- PUNCTUATION SPACE -->
+                       <int>0x2009</int>       <!-- THIN SPACE -->
+                       <int>0x200A</int>       <!-- HAIR SPACE -->
+                       <int>0x200B</int>       <!-- ZERO WIDTH SPACE -->
+                       <int>0x200C</int>       <!-- ZERO WIDTH NON-JOINER -->
+                       <int>0x200D</int>       <!-- ZERO WIDTH JOINER -->
+                       <int>0x200E</int>       <!-- LEFT-TO-RIGHT MARK -->
+                       <int>0x200F</int>       <!-- RIGHT-TO-LEFT MARK -->
+                       <int>0x2028</int>       <!-- LINE SEPARATOR -->
+                       <int>0x2029</int>       <!-- PARAGRAPH SEPARATOR -->
+                       <int>0x202A</int>       <!-- LEFT-TO-RIGHT EMBEDDING -->
+                       <int>0x202B</int>       <!-- RIGHT-TO-LEFT EMBEDDING -->
+                       <int>0x202C</int>       <!-- POP DIRECTIONAL FORMATTING -->
+                       <int>0x202D</int>       <!-- LEFT-TO-RIGHT OVERRIDE -->
+                       <int>0x202E</int>       <!-- RIGHT-TO-LEFT OVERRIDE -->
+                       <int>0x202F</int>       <!-- NARROW NO-BREAK SPACE -->
+                       <int>0x205F</int>       <!-- MEDIUM MATHEMATICAL SPACE -->
+                       <int>0x2060</int>       <!-- WORD JOINER -->
+                       <int>0x2061</int>       <!-- FUNCTION APPLICATION -->
+                       <int>0x2062</int>       <!-- INVISIBLE TIMES -->
+                       <int>0x2063</int>       <!-- INVISIBLE SEPARATOR -->
+                       <int>0x206A</int>       <!-- INHIBIT SYMMETRIC SWAPPING -->
+                       <int>0x206B</int>       <!-- ACTIVATE SYMMETRIC SWAPPING -->
+                       <int>0x206C</int>       <!-- INHIBIT ARABIC FORM SHAPING -->
+                       <int>0x206D</int>       <!-- ACTIVATE ARABIC FORM SHAPING -->
+                       <int>0x206E</int>       <!-- NATIONAL DIGIT SHAPES -->
+                       <int>0x206F</int>       <!-- NOMINAL DIGIT SHAPES -->
+                       <int>0x2800</int>       <!-- BRAILLE PATTERN BLANK -->
+                       <int>0x3000</int>       <!-- IDEOGRAPHIC SPACE -->
+                       <int>0x3164</int>       <!-- HANGUL FILLER -->
+                       <int>0xFEFF</int>       <!-- ZERO WIDTH NO-BREAK SPACE -->
+                       <int>0xFFA0</int>       <!-- HALFWIDTH HANGUL FILLER -->
+                       <int>0xFFF9</int>       <!-- INTERLINEAR ANNOTATION ANCHOR -->
+                       <int>0xFFFA</int>       <!-- INTERLINEAR ANNOTATION SEPARATOR -->
+                       <int>0xFFFB</int>       <!-- INTERLINEAR ANNOTATION TERMINATOR -->
+               </blank>
+<!--
+  Rescan configuration every 30 seconds when FcFontSetList is called
+ -->
+               <rescan>
+                       <int>30</int>
+               </rescan>
+       </config>
+
+</fontconfig>
+EOF
diff --git a/oldstuff/install-dylibs.sh b/oldstuff/install-dylibs.sh
new file mode 100755 (executable)
index 0000000..6b9e530
--- /dev/null
@@ -0,0 +1,68 @@
+#!/bin/sh
+
+set -ex
+
+: ${OTOOL:=otool}
+: ${CP:=cp}
+: ${INSTALLDIR:=.}
+: ${EXE:=ppc}
+: ${MACLIBDIR:=/sw/lib}
+: ${CAT:=cat}
+
+
+finkgetdeps()
+{
+       otool -L "$1" | grep "$MACLIBDIR" | while read -r LIB STUFF; do
+               [ -z "${LIB##*:}" ] && continue # first line
+               [ -f "$INSTALLDIR/${LIB##*/}" ] && continue
+               cp -vL "$LIB" "$INSTALLDIR"
+               finkgetdeps "$LIB"
+       done
+}
+
+
+finkgetdeps "$INSTALLDIR/radiant.$EXE"
+echo Warning: this only works if only ONE version of gtk-2.0 and pango is installed
+
+getlib()
+{
+       LAST=
+       for LIB in "$@"; do
+               [ -f "$LIB" ] || continue
+               LAST=$LIB
+       done
+       cp -L "$LAST" "$INSTALLDIR"
+       finkgetdeps "$LAST"
+}
+
+getlib "$MACLIBDIR"/gtk-2.0/*/loaders/libpixbufloader-bmp.so "$MACLIBDIR"/gdk-pixbuf-2.0/*/loaders/libpixbufloader-bmp.so
+getlib "$MACLIBDIR"/pango/*/modules/pango-basic-fc.so
+getlib "$MACLIBDIR"/pango/*/modules/pango-basic-x.so
+
+#cp -L "$MACLIBDIR"/../etc/fonts/fonts.conf "$INSTALLDIR"
+#cp -L "$MACLIBDIR"/../etc/fonts/fonts.dtd "$INSTALLDIR"
+#cp -L "$MACLIBDIR"/../etc/gtk-2.0/gdk-pixbuf.loaders "$INSTALLDIR"
+#cp -L "$MACLIBDIR"/../etc/pango/pangorc "$INSTALLDIR"
+
+$CAT > "$INSTALLDIR/../netradiant.sh" <<EOF
+#!/bin/sh
+
+MY_DIRECTORY="\${0%/*}" # cut off the script name
+MY_DIRECTORY="\${MY_DIRECTORY%/*}" # cut off MacOS
+MY_DIRECTORY="\${MY_DIRECTORY%/*}" # cut off Contents
+
+export DYLD_LIBRARY_PATH="\$MY_DIRECTORY/Contents/MacOS/install"
+export PANGO_RC_FILE="\$MY_DIRECTORY/Contents/MacOS/install/pangorc"
+export GDK_PIXBUF_MODULE_FILE="\$MY_DIRECTORY/Contents/MacOS/install/gdk-pixbuf.loaders"
+export FONTCONFIG_FILE="\$MY_DIRECTORY/Contents/MacOS/install/fonts.conf"
+
+cd "\$MY_DIRECTORY/Contents/MacOS/install"
+if [ -x /usr/bin/open-x11 ]; then
+       env LC_ALL="en_US.UTF-8" /usr/bin/open-x11 ./radiant.$EXE "$@" &
+else
+       env LC_ALL="en_US.UTF-8" ./radiant.$EXE "$@" &
+fi
+EOF
+
+chmod 755 "$INSTALLDIR/../netradiant.sh"
+
diff --git a/oldstuff/merge-from-zerowing.sh b/oldstuff/merge-from-zerowing.sh
new file mode 100755 (executable)
index 0000000..e8dc07e
--- /dev/null
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+basecommit=`git log --pretty=format:%H --grep=::zerowing-base`
+baserev=`git log --pretty=format:%s --grep=::zerowing-base | cut -d = -f 2 | cut -d ' ' -f 1`
+
+newbaserev=`svn info https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/ | grep ^Revision | cut -d ' ' -f 2`
+
+echo "$baserev -> $newbaserev"
+
+merge()
+{
+       if ! svn diff -r"$baserev":"$newbaserev" "$1" | git apply --reject --ignore-space-change --directory="$2"; then
+               if find . -name \*.rej | grep .; then
+                       echo "you have to fix these conflicts"
+                       bash
+                       echo "succeeded?"
+                       read -r LINE
+                       if [ x"$LINE" != x"y" ]; then
+                               exit 1
+                       fi
+               fi
+       fi
+}
+
+# GtkRadiant 1.5 changes
+git clean  -xdf
+
+# ZeroRadiant's q3map2 changes
+merge https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/branches/1.5 /
+merge https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/trunk/tools/quake3 tools/quake3
+merge https://zerowing.idsoftware.com/svn/radiant/GtkRadiant/trunk/libs/picomodel libs/picomodel
+
+git commit -a -m"::zerowing-base=$newbaserev" -e
diff --git a/oldstuff/mingw-Makefile.conf b/oldstuff/mingw-Makefile.conf
new file mode 100644 (file)
index 0000000..a128182
--- /dev/null
@@ -0,0 +1,18 @@
+# Usage:
+# copy this file to Makefile.conf
+# edit the paths in here
+
+# how to get pkg-config
+PKGCONFIG ?= $(RADIANT_DEPENDENCIES_PREFIX)/gtk/bin/pkg-config.exe
+
+# extra utils
+GIT ?= $(RADIANT_DEPENDENCIES_PREFIX)/util/bin/git
+SVN ?= $(RADIANT_DEPENDENCIES_PREFIX)/util/bin/svn
+
+# these two need the "start" workaround, or they seem to crash (TODO figure out why)
+WGET ?= start $(RADIANT_DEPENDENCIES_PREFIX)/util/bin/wget
+UNZIPPER ?= start $(RADIANT_DEPENDENCIES_PREFIX)/util/bin/unzip
+
+# use mingw32
+include mingw-Makefile.inc
+include mingw-radiantdeps-Makefile.inc
diff --git a/oldstuff/mingw-Makefile.inc b/oldstuff/mingw-Makefile.inc
new file mode 100644 (file)
index 0000000..d72cfe2
--- /dev/null
@@ -0,0 +1,15 @@
+# how to call the mingw tools
+MINGW_EXEC_PREFIX ?=
+
+# set the environment for make
+OS = Win32
+
+#CPPFLAGS_XML =
+#LIBS_XML = -lxml2
+
+CC = $(MINGW_EXEC_PREFIX)gcc
+CXX = $(MINGW_EXEC_PREFIX)g++
+LDD =
+RANLIB = $(MINGW_EXEC_PREFIX)ranlib
+AR = $(MINGW_EXEC_PREFIX)ar
+WINDRES = $(MINGW_EXEC_PREFIX)windres
diff --git a/oldstuff/mingw-fedora-Makefile.conf b/oldstuff/mingw-fedora-Makefile.conf
new file mode 100644 (file)
index 0000000..d957d4d
--- /dev/null
@@ -0,0 +1,17 @@
+# Usage:
+# copy this file to Makefile.conf
+# edit the paths in here
+
+# how to call the mingw tools
+MINGW_TARGET_ARCH=i686
+#MINGW_TARGET_ARCH=x86_64
+MINGW_EXEC_PREFIX = $(MINGW_TARGET_ARCH)-w64-mingw32-
+
+# use custom pkg-config
+PKGCONFIG = $(MINGW_EXEC_PREFIX)pkg-config
+
+# use custom dll install script
+DLLINSTALL = install-dlls-fedora.sh
+
+# use mingw32
+include mingw-Makefile.inc
diff --git a/oldstuff/mingw-radiantdeps-Makefile.inc b/oldstuff/mingw-radiantdeps-Makefile.inc
new file mode 100644 (file)
index 0000000..82e750e
--- /dev/null
@@ -0,0 +1,15 @@
+# where the dependencies package is extracted
+RADIANT_DEPENDENCIES_PREFIX = $(HOME)/netradiant-dependencies-mingw32/
+
+# run the prefix fixing tool
+IGNORETHIS := $(shell cd $(RADIANT_DEPENDENCIES_PREFIX) && ./fixprefix.sh)
+
+# set the environment for make
+CFLAGS +=
+CXXFLAGS +=
+CPPFLAGS += -I$(RADIANT_DEPENDENCIES_PREFIX)/radiantdeps/include
+LDFLAGS += -L$(RADIANT_DEPENDENCIES_PREFIX)/radiantdeps/lib
+CPPFLAGS += -I$(RADIANT_DEPENDENCIES_PREFIX)/gtk/include
+LDFLAGS += -L$(RADIANT_DEPENDENCIES_PREFIX)/gtk/lib
+PKG_CONFIG_PATH := $(RADIANT_DEPENDENCIES_PREFIX)/gtk/lib/pkgconfig:$(RADIANT_DEPENDENCIES_PREFIX)/radiantdeps/lib/pkgconfig:$(PKG_CONFIG_PATH)
+WHICHDLL = $(RADIANT_DEPENDENCIES_PREFIX)/whichdll.sh
diff --git a/oldstuff/uncrustify.cfg b/oldstuff/uncrustify.cfg
new file mode 100644 (file)
index 0000000..4951686
--- /dev/null
@@ -0,0 +1,925 @@
+# Uncrustify 0.44
+
+#
+# General options
+#
+
+# The type of line endings
+newlines                                 = lf       # auto/lf/crlf/cr
+
+# The original size of tabs in the input
+input_tab_size                           = 4        # number
+
+# The size of tabs in the output (only used if align_with_tabs=true)
+output_tab_size                          = 4        # number
+
+# The ascii value of the string escape char, usually 92 (\) or 94 (^). (Pawn)
+string_escape_char                       = 92       # number
+
+# Alternate string escape char for Pawn. Only works right before the quote char.
+string_escape_char2                      = 0        # number
+
+#
+# Indenting
+#
+
+# The number of columns to indent per level.
+# Usually 2, 3, 4, or 8.
+indent_columns                           = 4        # number
+
+# How to use tabs when indenting code
+# 0=spaces only
+# 1=indent with tabs, align with spaces
+# 2=indent and align with tabs
+indent_with_tabs                         = 2        # number
+
+# Whether to indent strings broken by '\' so that they line up
+indent_align_string                      = true    # false/true
+
+# The number of spaces to indent multi-line XML strings.
+# Requires indent_align_string=True
+indent_xml_string                        = 0        # number
+
+# Spaces to indent '{' from level
+indent_brace                             = 0        # number
+
+# Whether braces are indented to the body level
+indent_braces                            = false    # false/true
+
+# Disabled indenting function braces if indent_braces is true
+indent_braces_no_func                    = false    # false/true
+
+# Indent based on the size of the brace parent, ie 'if' => 3 spaces, 'for' => 4 spaces, etc.
+indent_brace_parent                      = false    # false/true
+
+# Whether the 'namespace' body is indented
+indent_namespace                         = false    # false/true
+
+# Whether the 'class' body is indented
+indent_class                             = false    # false/true
+
+# Whether to indent the stuff after a leading class colon
+indent_class_colon                       = false    # false/true
+
+# True:  indent continued function call parameters one indent level
+# False: align parameters under the open paren
+indent_func_call_param                   = false    # false/true
+
+# Same as indent_func_call_param, but for function defs
+indent_func_def_param                    = false    # false/true
+
+# Same as indent_func_call_param, but for function protos
+indent_func_proto_param                  = false    # false/true
+
+# Same as indent_func_call_param, but for class declarations
+indent_func_class_param                  = false    # false/true
+
+# Same as indent_func_call_param, but for class variable constructors
+indent_func_ctor_var_param               = false    # false/true
+
+# Double the indent for indent_func_xxx_param options
+indent_func_param_double                 = false    # false/true
+
+# The number of spaces to indent a continued '->' or '.'
+# Usually set to 0, 1, or indent_columns.
+indent_member                            = 0        # number
+
+# Spaces to indent single line ('//') comments on lines before code
+indent_sing_line_comments                = 0        # number
+
+# Spaces to indent 'case' from 'switch'
+# Usually 0 or indent_columns.
+indent_switch_case                       = 0        # number
+
+# Spaces to shift the 'case' line, without affecting any other lines
+# Usually 0.
+indent_case_shift                        = 0        # number
+
+# Spaces to indent '{' from 'case'.
+# By default, the brace will appear under the 'c' in case.
+# Usually set to 0 or indent_columns.
+indent_case_brace                        = 0        # number
+
+# Whether to indent comments found in first column
+indent_col1_comment                      = false    # false/true
+
+# How to indent goto labels
+#  >0 : absolute column where 1 is the leftmost column
+#  <=0 : subtract from brace indent
+indent_label                             = 1        # number
+
+# Same as indent_label, but for access specifiers that are followed by a colon
+indent_access_spec                       = 1        # number
+
+# If an open paren is followed by a newline, indent the next line so that it lines up after the open paren (not recommended)
+indent_paren_nl                          = false    # false/true
+
+# Controls the indent of a close paren after a newline.
+# 0: Indent to body level
+# 1: Align under the open paren
+# 2: Indent to the brace level
+indent_paren_close                       = 0        # number
+
+# Controls the indent of a comma when inside a paren.If TRUE, aligns under the open paren
+indent_comma_paren                       = false    # false/true
+
+# Controls the indent of a BOOL operator when inside a paren.If TRUE, aligns under the open paren
+indent_bool_paren                        = false    # false/true
+
+# If an open square is followed by a newline, indent the next line so that it lines up after the open square (not recommended)
+indent_square_nl                         = false    # false/true
+
+# Don't change the relative indent of ESQL/C 'EXEC SQL' bodies
+indent_preserve_sql                      = false    # false/true
+
+#
+# Spacing options
+#
+
+# Add or remove space around arithmetic operator '+', '-', '/', '*', etc
+sp_arith                                 = add     # ignore/add/remove/force
+
+# Add or remove space around assignment operator '=', '+=', etc
+sp_assign                                = add     # ignore/add/remove/force
+
+# Add or remove space around boolean operators '&&' and '||'
+sp_bool                                  = add         # ignore/add/remove/force
+
+# Add or remove space around compare operator '<', '>', '==', etc
+sp_compare                               = add     # ignore/add/remove/force
+
+# Add or remove space inside '(' and ')'
+sp_inside_paren                          = add         # ignore/add/remove/force
+
+# Add or remove space between nested parens
+sp_paren_paren                           = add      # ignore/add/remove/force
+
+# Whether to balance spaces inside nested parens
+sp_balance_nested_parens                 = false    # false/true
+
+# Add or remove space between ')' and '{'
+sp_paren_brace                           = add         # ignore/add/remove/force
+
+# Add or remove space before pointer star '*'
+sp_before_ptr_star                       = ignore   # ignore/add/remove/force
+
+# Add or remove space between pointer stars '*'
+sp_between_ptr_star                      = ignore   # ignore/add/remove/force
+
+# Add or remove space after pointer star '*', if followed by a word.
+sp_after_ptr_star                        = ignore   # ignore/add/remove/force
+
+# Add or remove space before reference sign '&'
+sp_before_byref                          = ignore   # ignore/add/remove/force
+
+# Add or remove space after reference sign '&', if followed by a word.
+sp_after_byref                           = ignore   # ignore/add/remove/force
+
+# Add or remove space before '<>'
+sp_before_angle                          = ignore   # ignore/add/remove/force
+
+# Add or remove space after '<>'
+sp_after_angle                           = ignore   # ignore/add/remove/force
+
+# Add or remove space between '<>' and '(' as found in 'new List<byte>();'
+sp_angle_paren                           = ignore   # ignore/add/remove/force
+
+# Add or remove space between '<>' and a word as in 'List<byte> m;'
+sp_angle_word                            = ignore   # ignore/add/remove/force
+
+# Add or remove space before '(' of 'if', 'for', 'switch', and 'while'
+sp_before_sparen                         = add   # ignore/add/remove/force
+
+# Add or remove space inside if-condition '(' and ')'
+sp_inside_sparen                         = add   # ignore/add/remove/force
+
+# Add or remove space after ')' of 'if', 'for', 'switch', and 'while'
+sp_after_sparen                          = ignore   # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of 'if', 'for', 'switch', and 'while'
+sp_sparen_brace                          = add   # ignore/add/remove/force
+
+# Add or remove space before empty statement ';' on 'if', 'for' and 'while'
+sp_special_semi                          = ignore   # ignore/add/remove/force
+
+# Add or remove space before ';'
+sp_before_semi                           = ignore   # ignore/add/remove/force
+
+# Add or remove space before ';' in non-empty 'for' statements
+sp_before_semi_for                       = ignore   # ignore/add/remove/force
+
+# Add or remove space before a semicolon of an empty part of a for statment.
+sp_before_semi_for_empty                 = ignore   # ignore/add/remove/force
+
+# Add or remove space after the final semicolon of an empty part of a for statment: for ( ; ; <here> ).
+sp_after_semi_for_empty                  = ignore   # ignore/add/remove/force
+
+# Add or remove space before '[' (except '[]')
+sp_before_square                         = ignore   # ignore/add/remove/force
+
+# Add or remove space before '[]'
+sp_before_squares                        = ignore   # ignore/add/remove/force
+
+# Add or remove space inside '[' and ']'
+sp_inside_square                         = ignore   # ignore/add/remove/force
+
+# Add or remove space after ','
+sp_after_comma                           = ignore   # ignore/add/remove/force
+
+# Add or remove space before ','
+sp_before_comma                          = remove   # ignore/add/remove/force
+
+# Add or remove space between 'operator' and operator sign
+sp_after_operator                        = ignore   # ignore/add/remove/force
+
+# Add or remove space after cast
+sp_after_cast                            = ignore   # ignore/add/remove/force
+
+# Add or remove spaces inside cast parens
+sp_inside_paren_cast                     = ignore   # ignore/add/remove/force
+
+# Add or remove space between 'sizeof' and '('
+sp_sizeof_paren                          = remove   # ignore/add/remove/force
+
+# Add or remove space after the tag keyword (Pawn)
+sp_after_tag                             = ignore   # ignore/add/remove/force
+
+# Add or remove space inside enum '{' and '}'
+sp_inside_braces_enum                    = ignore   # ignore/add/remove/force
+
+# Add or remove space inside struct/union '{' and '}'
+sp_inside_braces_struct                  = ignore   # ignore/add/remove/force
+
+# Add or remove space inside '{' and '}'
+sp_inside_braces                         = ignore   # ignore/add/remove/force
+
+# Add or remove space inside '<' and '>'
+sp_inside_angle                          = ignore   # ignore/add/remove/force
+
+# Add or remove space between return type and function name
+# A minimum of 1 is forced except for pointer return types.
+sp_type_func                             = ignore   # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function declaration
+sp_func_proto_paren                      = remove   # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function definition
+sp_func_def_paren                        = remove   # ignore/add/remove/force
+
+# Add or remove space inside empty function '()'
+sp_inside_fparens                        = remove   # ignore/add/remove/force
+
+# Add or remove space inside function '(' and ')'
+sp_inside_fparen                         = add         # ignore/add/remove/force
+
+# Add or remove space between ']' and '(' when part of a function call.
+sp_square_fparen                         = ignore   # ignore/add/remove/force
+
+# Add or remove space between ')' and '{' of function
+sp_fparen_brace                          = ignore   # ignore/add/remove/force
+
+# Add or remove space between function name and '(' on function calls
+sp_func_call_paren                       = remove   # ignore/add/remove/force
+
+# Add or remove space between a constructor/destructor and the open paren
+sp_func_class_paren                      = ignore   # ignore/add/remove/force
+
+# Add or remove space between 'return' and '('
+sp_return_paren                          = ignore   # ignore/add/remove/force
+
+# Add or remove space between '__attribute__' and '('
+sp_attribute_paren                       = ignore   # ignore/add/remove/force
+
+# Add or remove space between macro and value
+sp_macro                                 = ignore   # ignore/add/remove/force
+
+# Add or remove space between macro function ')' and value
+sp_macro_func                            = ignore   # ignore/add/remove/force
+
+# Add or remove space between 'else' and '{' if on the same line
+sp_else_brace                            = ignore   # ignore/add/remove/force
+
+# Add or remove space between '}' and 'else' if on the same line
+sp_brace_else                            = ignore   # ignore/add/remove/force
+
+# Add or remove space between 'catch' and '{' if on the same line
+sp_catch_brace                           = ignore   # ignore/add/remove/force
+
+# Add or remove space between '}' and 'catch' if on the same line
+sp_brace_catch                           = ignore   # ignore/add/remove/force
+
+# Add or remove space between 'finally' and '{' if on the same line
+sp_finally_brace                         = ignore   # ignore/add/remove/force
+
+# Add or remove space between '}' and 'finally' if on the same line
+sp_brace_finally                         = ignore   # ignore/add/remove/force
+
+# Add or remove space between 'try' and '{' if on the same line
+sp_try_brace                             = ignore   # ignore/add/remove/force
+
+# Add or remove space between get/set and '{' if on the same line
+sp_getset_brace                          = ignore   # ignore/add/remove/force
+
+# Add or remove space before the '::' operator
+sp_before_dc                             = ignore   # ignore/add/remove/force
+
+# Add or remove space after the '::' operator
+sp_after_dc                              = ignore   # ignore/add/remove/force
+
+# Add or remove around the D named array initializer ':' operator
+sp_d_array_colon                         = ignore   # ignore/add/remove/force
+
+# Add or remove space after the '!' (not) operator.
+sp_not                                   = remove   # ignore/add/remove/force
+
+# Add or remove space after the '~' (invert) operator.
+sp_inv                                   = remove   # ignore/add/remove/force
+
+# Add or remove space after the '&' (address-of) operator.
+# This does not affect the spacing after a '&' that is part of a type.
+sp_addr                                  = remove   # ignore/add/remove/force
+
+# Add or remove space around the '.' or '->' operators
+sp_member                                = remove   # ignore/add/remove/force
+
+# Add or remove space after the '*' (dereference) operator.
+# This does not affect the spacing after a '*' that is part of a type.
+sp_deref                                 = remove   # ignore/add/remove/force
+
+# Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7'
+sp_sign                                  = remove   # ignore/add/remove/force
+
+# Add or remove space before or after '++' and '--', as in '(--x)' or 'y++;'
+sp_incdec                                = remove   # ignore/add/remove/force
+
+# Add or remove space after the scope '+' or '-', as in '-(void) foo;' or '+(int) bar;'
+sp_after_oc_scope                        = ignore   # ignore/add/remove/force
+
+# Add or remove space after the colon in message specs
+# '-(int) f: (int) x;' vs '+(int) f : (int) x;'
+sp_before_oc_colon                       = ignore   # ignore/add/remove/force
+
+# Add or remove space after the (type) in message specs
+# '-(int) f: (int) x;' vs '+(int)f : (int)x;'
+sp_after_oc_type                         = ignore   # ignore/add/remove/force
+
+#
+# Code alignment (not left column spaces/tabs)
+#
+
+# Whether to keep non-indenting tabs
+align_keep_tabs                          = false    # false/true
+
+# Whether to use tabs for alinging
+align_with_tabs                          = true            # false/true
+
+# Whether to bump out to the next tab when aligning
+align_on_tabstop                         = false    # false/true
+
+# Whether to left-align numbers
+align_number_left                        = false    # false/true
+
+# Align variable definitions in prototypes and functions
+align_func_params                        = false    # false/true
+
+# The span for aligning variable definitions (0=don't align)
+align_var_def_span                       = 0        # number
+
+# How to align the star in variable definitions.
+#  0=Part of the type
+#  1=Part of the variable
+#  2=Dangling
+align_var_def_star_style                 = 0        # number
+
+# How to align the '&' in variable definitions.
+#  0=Part of the type
+#  1=Part of the variable
+#  2=Dangling
+align_var_def_amp_style                  = 0        # number
+
+# The threshold for aligning variable definitions (0=no limit)
+align_var_def_thresh                     = 0        # number
+
+# Whether to align the colon in struct bit fields
+align_var_def_colon                      = false    # false/true
+
+# Whether to align inline struct/enum/union variable definitions
+align_var_def_inline                     = false    # false/true
+
+# The span for aligning on '=' in assignments (0=don't align)
+align_assign_span                        = 0        # number
+
+# The threshold for aligning on '=' in assignments (0=no limit)
+align_assign_thresh                      = 0        # number
+
+# The span for aligning on '=' in enums (0=don't align)
+align_enum_equ_span                      = 0        # number
+
+# The threshold for aligning on '=' in enums (0=no limit)
+align_enum_equ_thresh                    = 0        # number
+
+# The span for aligning struct/union (0=don't align)
+align_var_struct_span                    = 0        # number
+
+# The threshold for aligning struct/union member definitions (0=no limit)
+align_var_struct_thresh                  = 0        # number
+
+# The span for aligning struct initializer values (0=don't align)
+align_struct_init_span                   = 0        # number
+
+# The minimum space between the type and the synonym of a typedef
+align_typedef_gap                        = 0        # number
+
+# The span for aligning single-line typedefs (0=don't align)
+align_typedef_span                       = 0        # number
+
+# How to align typedef'd functions with other typedefs
+# 0: Don't mix them at all
+# 1: align the open paren with the types
+# 2: align the function type name with the other type names
+align_typedef_func                       = 0        # number
+
+# Controls the positioning of the '*' in typedefs. Just try it.
+# 0: Align on typdef type, ignore '*'
+# 1: The '*' is part of type name: typedef int  *pint;
+# 2: The '*' is part of the type, but dangling: typedef int *pint;
+align_typedef_star_style                 = 0        # number
+
+# Controls the positioning of the '&' in typedefs. Just try it.
+# 0: Align on typdef type, ignore '&'
+# 1: The '&' is part of type name: typedef int  &pint;
+# 2: The '&' is part of the type, but dangling: typedef int &pint;
+align_typedef_amp_style                  = 0        # number
+
+# The span for aligning comments that end lines (0=don't align)
+align_right_cmt_span                     = 0        # number
+
+# If aligning comments, mix with comments after '}' and #endif with less than 3 spaces before the comment
+align_right_cmt_mix                      = false    # false/true
+
+# The span for aligning function prototypes (0=don't align)
+align_func_proto_span                    = 0        # number
+
+# The span for aligning function prototypes (0=don't align)
+align_oc_msg_spec_span                   = 0        # number
+
+# Whether to align macros wrapped with a backslash and a newline.
+# This will not work right if the macro contains a multi-line comment.
+align_nl_cont                            = false    # false/true
+
+# The minimum space between label and value of a preprocessor define
+align_pp_define_gap                      = 0        # number
+
+# The span for aligning on '#define' bodies (0=don't align)
+align_pp_define_span                     = 0        # number
+
+#
+# Newline adding and removing options
+#
+
+# Whether to collapse empty blocks between '{' and '}'
+nl_collapse_empty_body                   = false    # false/true
+
+# Don't split one-line braced assignments - 'foo_t f = { 1, 2 };'
+nl_assign_leave_one_liners               = true    # false/true
+
+# Don't split one-line braced statements inside a class xx { } body
+nl_class_leave_one_liners                = false    # false/true
+
+# Don't split one-line enums: 'enum foo { BAR = 15 };'
+nl_enum_leave_one_liners                 = true    # false/true
+
+# Don't split one-line get or set functions
+nl_getset_leave_one_liners               = true    # false/true
+
+# Don't split one-line function definitions - 'int foo() { return 0; }'
+nl_func_leave_one_liners                 = true    # false/true
+
+# Don't split one-line if/else statements - 'if(a) b++;'
+nl_if_leave_one_liners                   = false    # false/true
+
+# Add or remove newlines at the start of the file
+nl_start_of_file                         = ignore   # ignore/add/remove/force
+
+# The number of newlines at the start of the file (only used if nl_start_of_file is 'add' or 'force'
+nl_start_of_file_min                     = 0        # number
+
+# Add or remove newline at the end of the file
+nl_end_of_file                           = add   # ignore/add/remove/force
+
+# The number of newlines at the end of the file (only used if nl_end_of_file is 'add' or 'force')
+nl_end_of_file_min                       = 0        # number
+
+# Add or remove newline between '=' and '{'
+nl_assign_brace                          = ignore   # ignore/add/remove/force
+
+# Add or remove newline between '=' and '[' (D only)
+nl_assign_square                         = ignore   # ignore/add/remove/force
+
+# Add or remove newline after '= [' (D only). Will also affect the newline before the ']'
+nl_after_square_assign                   = ignore   # ignore/add/remove/force
+
+# The number of newlines after a block of variable definitions
+nl_func_var_def_blk                      = 0        # number
+
+# Add or remove newline between a function call's ')' and '{', as in:
+# list_for_each(item, &list) { }
+nl_fcall_brace                           = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'enum' and '{'
+nl_enum_brace                            = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'struct and '{'
+nl_struct_brace                          = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'union' and '{'
+nl_union_brace                           = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'if' and '{'
+nl_if_brace                              = remove   # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'else'
+nl_brace_else                            = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'else if' and '{'
+# If set to ignore, nl_if_brace is used instead
+nl_elseif_brace                          = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'else' and '{'
+nl_else_brace                            = ignore   # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'finally'
+nl_brace_finally                         = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'finally' and '{'
+nl_finally_brace                         = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'try' and '{'
+nl_try_brace                             = ignore   # ignore/add/remove/force
+
+# Add or remove newline between get/set and '{'
+nl_getset_brace                          = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'for' and '{'
+nl_for_brace                             = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'catch' and '{'
+nl_catch_brace                           = ignore   # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'catch'
+nl_brace_catch                           = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'while' and '{'
+nl_while_brace                           = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'do' and '{'
+nl_do_brace                              = ignore   # ignore/add/remove/force
+
+# Add or remove newline between '}' and 'while' of 'do' statement
+nl_brace_while                           = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'switch' and '{'
+nl_switch_brace                          = ignore   # ignore/add/remove/force
+
+# Add or remove newline when condition spans two or more lines
+nl_multi_line_cond                       = false    # false/true
+
+# Force a newline in a define after the macro name for multi-line defines.
+nl_multi_line_define                     = false    # false/true
+
+# Whether to put a newline before 'case' statement
+nl_before_case                           = false    # false/true
+
+# Whether to put a newline after 'case' statement
+nl_after_case                            = false    # false/true
+
+# Newline between namespace and {
+nl_namespace_brace                       = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'template<>' and 'class'
+nl_template_class                        = ignore   # ignore/add/remove/force
+
+# Add or remove newline between 'class' and '{'
+nl_class_brace                           = ignore   # ignore/add/remove/force
+
+# Add or remove newline after each ',' in the constructor member initialization
+nl_class_init_args                       = ignore   # ignore/add/remove/force
+
+# Add or remove newline between return type and function name in definition
+nl_func_type_name                        = ignore   # ignore/add/remove/force
+
+# Add or remove newline between return type and function name in a prototype
+nl_func_proto_type_name                  = ignore   # ignore/add/remove/force
+
+# Add or remove newline between a function name and the opening '('
+nl_func_paren                            = ignore   # ignore/add/remove/force
+
+# Add or remove newline after '(' in a function declaration
+nl_func_decl_start                       = ignore   # ignore/add/remove/force
+
+# Add or remove newline after each ',' in a function declaration
+nl_func_decl_args                        = ignore   # ignore/add/remove/force
+
+# Add or remove newline before the ')' in a function declaration
+nl_func_decl_end                         = ignore   # ignore/add/remove/force
+
+# Add or remove newline between function signature and '{'
+nl_fdef_brace                            = remove   # ignore/add/remove/force
+
+# Whether to put a newline after 'return' statement
+nl_after_return                          = false    # false/true
+
+# Whether to put a newline after semicolons, except in 'for' statements
+nl_after_semicolon                       = false    # false/true
+
+# Whether to put a newline after brace open.
+# This also adds a newline before the matching brace close.
+nl_after_brace_open                      = false    # false/true
+
+# If nl_after_brace_open and nl_after_brace_open_cmt are true, a newline is
+# placed between the open brace and a trailing single-line comment.
+nl_after_brace_open_cmt                  = false    # false/true
+
+# Whether to put a newline after a virtual brace open.
+# These occur in un-braced if/while/do/for statement bodies.
+nl_after_vbrace_open                     = false    # false/true
+
+# Whether to alter newlines in '#define' macros
+nl_define_macro                          = false    # false/true
+
+# Whether to not put blanks after '#ifxx', '#elxx', or before '#endif'
+nl_squeeze_ifdef                         = false    # false/true
+
+# Add or remove newline before 'if'
+nl_before_if                             = ignore   # ignore/add/remove/force
+
+# Add or remove newline after 'if'
+nl_after_if                              = ignore   # ignore/add/remove/force
+
+# Add or remove newline before 'for'
+nl_before_for                            = ignore   # ignore/add/remove/force
+
+# Add or remove newline after 'for'
+nl_after_for                             = ignore   # ignore/add/remove/force
+
+# Add or remove newline before 'while'
+nl_before_while                          = ignore   # ignore/add/remove/force
+
+# Add or remove newline after 'while'
+nl_after_while                           = ignore   # ignore/add/remove/force
+
+# Add or remove newline before 'switch'
+nl_before_switch                         = ignore   # ignore/add/remove/force
+
+# Add or remove newline after 'switch'
+nl_after_switch                          = ignore   # ignore/add/remove/force
+
+# Add or remove newline before 'do'
+nl_before_do                             = ignore   # ignore/add/remove/force
+
+# Add or remove newline after 'do'
+nl_after_do                              = ignore   # ignore/add/remove/force
+
+# Whether to double-space commented-entries in struct/enum
+nl_ds_struct_enum_cmt                    = false    # false/true
+
+# Whether to double-space before the close brace of a struct/union/enum
+nl_ds_struct_enum_close_brace            = false    # false/true
+
+# Add or remove a newline around a class colon.
+# Related to pos_class_colon, nl_class_init_args, and pos_comma.
+nl_class_colon                           = ignore   # ignore/add/remove/force
+
+# Change simple unbraced if statements into a one-liner
+# 'if(b)\n i++;' => 'if(b) i++;'
+nl_create_if_one_liner                   = true    # false/true
+
+# Change simple unbraced for statements into a one-liner
+# 'for (i=0;i<5;i++)\n foo(i);' => 'for (i=0;i<5;i++) foo(i);'
+nl_create_for_one_liner                  = false    # false/true
+
+# Change simple unbraced while statements into a one-liner
+# 'while (i<5)\n foo(i++);' => 'while (i<5) foo(i++);'
+nl_create_while_one_liner                = false    # false/true
+
+#
+# Positioning options
+#
+
+# The position of boolean operators in wrapped expressions
+pos_bool                                 = ignore   # ignore/lead/trail
+
+# The position of the comma in wrapped expressions
+pos_comma                                = ignore   # ignore/lead/trail
+
+# The position of the comma in the constructor initialization list
+pos_class_comma                          = ignore   # ignore/lead/trail
+
+# The position of colons between constructor and member initialization
+pos_class_colon                          = ignore   # ignore/lead/trail
+
+#
+# Line Splitting options
+#
+
+# Try to limit code width to N number of columns
+code_width                               = 0        # number
+
+# Whether to fully split long 'for' statements at semi-colons
+ls_for_split_full                        = false    # false/true
+
+# Whether to fully split long function protos/calls at commas
+ls_func_split_full                       = false    # false/true
+
+#
+# Blank line options
+#
+
+# The maximum consecutive newlines
+nl_max                                   = 0        # number
+
+# The number of newlines after a function prototype, if followed by another function prototype
+nl_after_func_proto                      = 0        # number
+
+# The number of newlines after a function prototype, if not followed by another function prototype
+nl_after_func_proto_group                = 0        # number
+
+# The number of newlines after '}' of a multi-line function body
+nl_after_func_body                       = 0        # number
+
+# The number of newlines after '}' of a single line function body
+nl_after_func_body_one_liner             = 0        # number
+
+# The minimum number of newlines before a multi-line comment.
+# Doesn't apply if after a brace open or another multi-line comment.
+nl_before_block_comment                  = 0        # number
+
+# The minimum number of newlines before a single-line C comment.
+# Doesn't apply if after a brace open or other single-line C comments.
+nl_before_c_comment                      = 0        # number
+
+# The minimum number of newlines before a CPP comment.
+# Doesn't apply if after a brace open or other CPP comments.
+nl_before_cpp_comment                    = 0        # number
+
+# Whether to force a newline after a mulit-line comment.
+nl_after_multiline_comment               = false    # false/true
+
+# The number of newlines before a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
+# Will not change the newline count if after a brace open.
+# 0 = No change.
+nl_before_access_spec                    = 0        # number
+
+# The number of newlines after a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
+# 0 = No change.
+nl_after_access_spec                     = 0        # number
+
+# Whether to remove blank lines after '{'
+eat_blanks_after_open_brace              = false    # false/true
+
+# Whether to remove blank lines before '}'
+eat_blanks_before_close_brace            = false    # false/true
+
+#
+# Code modifying options (non-whitespace)
+#
+
+# Add or remove braces on single-line 'do' statement
+mod_full_brace_do                        = ignore   # ignore/add/remove/force
+
+# Add or remove braces on single-line 'for' statement
+mod_full_brace_for                       = ignore   # ignore/add/remove/force
+
+# Add or remove braces on single-line function defintions. (Pawn)
+mod_full_brace_function                  = ignore   # ignore/add/remove/force
+
+# Add or remove braces on single-line 'if' statement
+mod_full_brace_if                        = add      # ignore/add/remove/force
+
+# Don't remove braces around statements that span N newlines
+mod_full_brace_nl                        = 0        # number
+
+# Add or remove braces on single-line 'while' statement
+mod_full_brace_while                     = ignore   # ignore/add/remove/force
+
+# Add or remove unnecessary paren on 'return' statement
+mod_paren_on_return                      = ignore   # ignore/add/remove/force
+
+# Whether to change optional semicolons to real semicolons
+mod_pawn_semicolon                       = false    # false/true
+
+# Add parens on 'while' and 'if' statement around bools
+mod_full_paren_if_bool                   = false    # false/true
+
+# Whether to remove superfluous semicolons
+mod_remove_extra_semicolon               = false    # false/true
+
+# If a function body exceeds the specified number of newlines and doesn't have a comment after
+# the close brace, a comment will be added.
+mod_add_long_function_closebrace_comment = 0        # number
+
+# If a switch body exceeds the specified number of newlines and doesn't have a comment after
+# the close brace, a comment will be added.
+mod_add_long_switch_closebrace_comment   = 0        # number
+
+# If TRUE, will sort consecutive single-line 'import' statements [Java, D]
+mod_sort_import                          = false    # false/true
+
+# If TRUE, will sort consecutive single-line 'using' statements [C#]
+mod_sort_using                           = false    # false/true
+
+# If TRUE, will sort consecutive single-line '#include' statements [C/C++] and '#import' statements [Obj-C]
+# This is generally a bad idea, as it may break your code.
+mod_sort_include                         = false    # false/true
+
+#
+# Comment modifications
+#
+
+# Try to wrap comments at cmt_witdth columns
+cmt_width                                = 0        # number
+
+# Whether to group c-comments that look like they are in a block
+cmt_c_group                              = false    # false/true
+
+# Whether to put an empty '/*' on the first line of the combined c-comment
+cmt_c_nl_start                           = false    # false/true
+
+# Whether to put a newline before the closing '*/' of the combined c-comment
+cmt_c_nl_end                             = false    # false/true
+
+# Whether to group cpp-comments that look like they are in a block
+cmt_cpp_group                            = false    # false/true
+
+# Whether to put an empty '/*' on the first line of the combined cpp-comment
+cmt_cpp_nl_start                         = false    # false/true
+
+# Whether to put a newline before the closing '*/' of the combined cpp-comment
+cmt_cpp_nl_end                           = false    # false/true
+
+# Whether to change cpp-comments into c-comments
+cmt_cpp_to_c                             = false    # false/true
+
+# Whether to put a star on subsequent comment lines
+cmt_star_cont                            = false    # false/true
+
+# The number of spaces to insert at the start of subsequent comment lines
+cmt_sp_before_star_cont                  = 0        # number
+
+# The number of spaces to insert after the star on subsequent comment lines
+cmt_sp_after_star_cont                   = 0        # number
+
+# The filename that contains text to insert at the head of a file if the file doesn't start with a C/C++ comment.
+# Will substitue $(filename) with the current file's name.
+cmt_insert_file_header                   = ""         # string
+
+# The filename that contains text to insert before a function implementation if the function isn't preceeded with a C/C++ comment.
+# Will substitue $(function) with the function name and $(javaparam) with the javadoc @param and @return stuff.
+# Will also substitute $(fclass) with the class name: void CFoo::Bar() { ... }
+cmt_insert_func_header                   = ""         # string
+
+# The filename that contains text to insert before a class if the class isn't preceeded with a C/C++ comment.
+# Will substitue $(class) with the class name.
+cmt_insert_class_header                  = ""         # string
+
+#
+# Preprocessor options
+#
+
+# Control indent of preprocessors inside #if blocks at brace level 0
+pp_indent                                = ignore   # ignore/add/remove/force
+
+# Whether to indent #if/#else/#endif at the brace level (true) or from column 1 (false)
+pp_indent_at_level                       = false    # false/true
+
+# Add or remove space after # based on pp_level of #if blocks
+pp_space                                 = ignore   # ignore/add/remove/force
+
+# Sets the number of spaces added with pp_space
+pp_space_count                           = 0        # number
+
+# The indent for #region and #endregion in C# and '#pragma region' in C/C++
+pp_indent_region                         = 0        # number
+
+# Whether to indent the code between #region and #endregion
+pp_region_indent_code                    = false    # false/true
+
+# If pp_indent_at_level=true, sets the indent for #if, #else, and #endif when not at file-level
+pp_indent_if                             = 0        # number
+
+# Control whether to indent the code between #if, #else and #endif when not at file-level
+pp_if_indent_code                        = false    # false/true
+
+# Whether to indent '#define' at the brace level (true) or from column 1 (false)
+pp_define_at_level                       = false    # false/true
+
+# You can force a token to be a type with the 'type' option.
+# Example:
+# type myfoo1 myfoo2
+#
+# You can create custom macro-based indentation using macro-open, 
+# macro-else and macro-close.
+# Example:
+# macro-open  BEGIN_TEMPLATE_MESSAGE_MAP
+# macro-open  BEGIN_MESSAGE_MAP
+# macro-close END_MESSAGE_MAP
diff --git a/uncrustify.cfg b/uncrustify.cfg
deleted file mode 100644 (file)
index 4951686..0000000
+++ /dev/null
@@ -1,925 +0,0 @@
-# Uncrustify 0.44
-
-#
-# General options
-#
-
-# The type of line endings
-newlines                                 = lf       # auto/lf/crlf/cr
-
-# The original size of tabs in the input
-input_tab_size                           = 4        # number
-
-# The size of tabs in the output (only used if align_with_tabs=true)
-output_tab_size                          = 4        # number
-
-# The ascii value of the string escape char, usually 92 (\) or 94 (^). (Pawn)
-string_escape_char                       = 92       # number
-
-# Alternate string escape char for Pawn. Only works right before the quote char.
-string_escape_char2                      = 0        # number
-
-#
-# Indenting
-#
-
-# The number of columns to indent per level.
-# Usually 2, 3, 4, or 8.
-indent_columns                           = 4        # number
-
-# How to use tabs when indenting code
-# 0=spaces only
-# 1=indent with tabs, align with spaces
-# 2=indent and align with tabs
-indent_with_tabs                         = 2        # number
-
-# Whether to indent strings broken by '\' so that they line up
-indent_align_string                      = true    # false/true
-
-# The number of spaces to indent multi-line XML strings.
-# Requires indent_align_string=True
-indent_xml_string                        = 0        # number
-
-# Spaces to indent '{' from level
-indent_brace                             = 0        # number
-
-# Whether braces are indented to the body level
-indent_braces                            = false    # false/true
-
-# Disabled indenting function braces if indent_braces is true
-indent_braces_no_func                    = false    # false/true
-
-# Indent based on the size of the brace parent, ie 'if' => 3 spaces, 'for' => 4 spaces, etc.
-indent_brace_parent                      = false    # false/true
-
-# Whether the 'namespace' body is indented
-indent_namespace                         = false    # false/true
-
-# Whether the 'class' body is indented
-indent_class                             = false    # false/true
-
-# Whether to indent the stuff after a leading class colon
-indent_class_colon                       = false    # false/true
-
-# True:  indent continued function call parameters one indent level
-# False: align parameters under the open paren
-indent_func_call_param                   = false    # false/true
-
-# Same as indent_func_call_param, but for function defs
-indent_func_def_param                    = false    # false/true
-
-# Same as indent_func_call_param, but for function protos
-indent_func_proto_param                  = false    # false/true
-
-# Same as indent_func_call_param, but for class declarations
-indent_func_class_param                  = false    # false/true
-
-# Same as indent_func_call_param, but for class variable constructors
-indent_func_ctor_var_param               = false    # false/true
-
-# Double the indent for indent_func_xxx_param options
-indent_func_param_double                 = false    # false/true
-
-# The number of spaces to indent a continued '->' or '.'
-# Usually set to 0, 1, or indent_columns.
-indent_member                            = 0        # number
-
-# Spaces to indent single line ('//') comments on lines before code
-indent_sing_line_comments                = 0        # number
-
-# Spaces to indent 'case' from 'switch'
-# Usually 0 or indent_columns.
-indent_switch_case                       = 0        # number
-
-# Spaces to shift the 'case' line, without affecting any other lines
-# Usually 0.
-indent_case_shift                        = 0        # number
-
-# Spaces to indent '{' from 'case'.
-# By default, the brace will appear under the 'c' in case.
-# Usually set to 0 or indent_columns.
-indent_case_brace                        = 0        # number
-
-# Whether to indent comments found in first column
-indent_col1_comment                      = false    # false/true
-
-# How to indent goto labels
-#  >0 : absolute column where 1 is the leftmost column
-#  <=0 : subtract from brace indent
-indent_label                             = 1        # number
-
-# Same as indent_label, but for access specifiers that are followed by a colon
-indent_access_spec                       = 1        # number
-
-# If an open paren is followed by a newline, indent the next line so that it lines up after the open paren (not recommended)
-indent_paren_nl                          = false    # false/true
-
-# Controls the indent of a close paren after a newline.
-# 0: Indent to body level
-# 1: Align under the open paren
-# 2: Indent to the brace level
-indent_paren_close                       = 0        # number
-
-# Controls the indent of a comma when inside a paren.If TRUE, aligns under the open paren
-indent_comma_paren                       = false    # false/true
-
-# Controls the indent of a BOOL operator when inside a paren.If TRUE, aligns under the open paren
-indent_bool_paren                        = false    # false/true
-
-# If an open square is followed by a newline, indent the next line so that it lines up after the open square (not recommended)
-indent_square_nl                         = false    # false/true
-
-# Don't change the relative indent of ESQL/C 'EXEC SQL' bodies
-indent_preserve_sql                      = false    # false/true
-
-#
-# Spacing options
-#
-
-# Add or remove space around arithmetic operator '+', '-', '/', '*', etc
-sp_arith                                 = add     # ignore/add/remove/force
-
-# Add or remove space around assignment operator '=', '+=', etc
-sp_assign                                = add     # ignore/add/remove/force
-
-# Add or remove space around boolean operators '&&' and '||'
-sp_bool                                  = add         # ignore/add/remove/force
-
-# Add or remove space around compare operator '<', '>', '==', etc
-sp_compare                               = add     # ignore/add/remove/force
-
-# Add or remove space inside '(' and ')'
-sp_inside_paren                          = add         # ignore/add/remove/force
-
-# Add or remove space between nested parens
-sp_paren_paren                           = add      # ignore/add/remove/force
-
-# Whether to balance spaces inside nested parens
-sp_balance_nested_parens                 = false    # false/true
-
-# Add or remove space between ')' and '{'
-sp_paren_brace                           = add         # ignore/add/remove/force
-
-# Add or remove space before pointer star '*'
-sp_before_ptr_star                       = ignore   # ignore/add/remove/force
-
-# Add or remove space between pointer stars '*'
-sp_between_ptr_star                      = ignore   # ignore/add/remove/force
-
-# Add or remove space after pointer star '*', if followed by a word.
-sp_after_ptr_star                        = ignore   # ignore/add/remove/force
-
-# Add or remove space before reference sign '&'
-sp_before_byref                          = ignore   # ignore/add/remove/force
-
-# Add or remove space after reference sign '&', if followed by a word.
-sp_after_byref                           = ignore   # ignore/add/remove/force
-
-# Add or remove space before '<>'
-sp_before_angle                          = ignore   # ignore/add/remove/force
-
-# Add or remove space after '<>'
-sp_after_angle                           = ignore   # ignore/add/remove/force
-
-# Add or remove space between '<>' and '(' as found in 'new List<byte>();'
-sp_angle_paren                           = ignore   # ignore/add/remove/force
-
-# Add or remove space between '<>' and a word as in 'List<byte> m;'
-sp_angle_word                            = ignore   # ignore/add/remove/force
-
-# Add or remove space before '(' of 'if', 'for', 'switch', and 'while'
-sp_before_sparen                         = add   # ignore/add/remove/force
-
-# Add or remove space inside if-condition '(' and ')'
-sp_inside_sparen                         = add   # ignore/add/remove/force
-
-# Add or remove space after ')' of 'if', 'for', 'switch', and 'while'
-sp_after_sparen                          = ignore   # ignore/add/remove/force
-
-# Add or remove space between ')' and '{' of 'if', 'for', 'switch', and 'while'
-sp_sparen_brace                          = add   # ignore/add/remove/force
-
-# Add or remove space before empty statement ';' on 'if', 'for' and 'while'
-sp_special_semi                          = ignore   # ignore/add/remove/force
-
-# Add or remove space before ';'
-sp_before_semi                           = ignore   # ignore/add/remove/force
-
-# Add or remove space before ';' in non-empty 'for' statements
-sp_before_semi_for                       = ignore   # ignore/add/remove/force
-
-# Add or remove space before a semicolon of an empty part of a for statment.
-sp_before_semi_for_empty                 = ignore   # ignore/add/remove/force
-
-# Add or remove space after the final semicolon of an empty part of a for statment: for ( ; ; <here> ).
-sp_after_semi_for_empty                  = ignore   # ignore/add/remove/force
-
-# Add or remove space before '[' (except '[]')
-sp_before_square                         = ignore   # ignore/add/remove/force
-
-# Add or remove space before '[]'
-sp_before_squares                        = ignore   # ignore/add/remove/force
-
-# Add or remove space inside '[' and ']'
-sp_inside_square                         = ignore   # ignore/add/remove/force
-
-# Add or remove space after ','
-sp_after_comma                           = ignore   # ignore/add/remove/force
-
-# Add or remove space before ','
-sp_before_comma                          = remove   # ignore/add/remove/force
-
-# Add or remove space between 'operator' and operator sign
-sp_after_operator                        = ignore   # ignore/add/remove/force
-
-# Add or remove space after cast
-sp_after_cast                            = ignore   # ignore/add/remove/force
-
-# Add or remove spaces inside cast parens
-sp_inside_paren_cast                     = ignore   # ignore/add/remove/force
-
-# Add or remove space between 'sizeof' and '('
-sp_sizeof_paren                          = remove   # ignore/add/remove/force
-
-# Add or remove space after the tag keyword (Pawn)
-sp_after_tag                             = ignore   # ignore/add/remove/force
-
-# Add or remove space inside enum '{' and '}'
-sp_inside_braces_enum                    = ignore   # ignore/add/remove/force
-
-# Add or remove space inside struct/union '{' and '}'
-sp_inside_braces_struct                  = ignore   # ignore/add/remove/force
-
-# Add or remove space inside '{' and '}'
-sp_inside_braces                         = ignore   # ignore/add/remove/force
-
-# Add or remove space inside '<' and '>'
-sp_inside_angle                          = ignore   # ignore/add/remove/force
-
-# Add or remove space between return type and function name
-# A minimum of 1 is forced except for pointer return types.
-sp_type_func                             = ignore   # ignore/add/remove/force
-
-# Add or remove space between function name and '(' on function declaration
-sp_func_proto_paren                      = remove   # ignore/add/remove/force
-
-# Add or remove space between function name and '(' on function definition
-sp_func_def_paren                        = remove   # ignore/add/remove/force
-
-# Add or remove space inside empty function '()'
-sp_inside_fparens                        = remove   # ignore/add/remove/force
-
-# Add or remove space inside function '(' and ')'
-sp_inside_fparen                         = add         # ignore/add/remove/force
-
-# Add or remove space between ']' and '(' when part of a function call.
-sp_square_fparen                         = ignore   # ignore/add/remove/force
-
-# Add or remove space between ')' and '{' of function
-sp_fparen_brace                          = ignore   # ignore/add/remove/force
-
-# Add or remove space between function name and '(' on function calls
-sp_func_call_paren                       = remove   # ignore/add/remove/force
-
-# Add or remove space between a constructor/destructor and the open paren
-sp_func_class_paren                      = ignore   # ignore/add/remove/force
-
-# Add or remove space between 'return' and '('
-sp_return_paren                          = ignore   # ignore/add/remove/force
-
-# Add or remove space between '__attribute__' and '('
-sp_attribute_paren                       = ignore   # ignore/add/remove/force
-
-# Add or remove space between macro and value
-sp_macro                                 = ignore   # ignore/add/remove/force
-
-# Add or remove space between macro function ')' and value
-sp_macro_func                            = ignore   # ignore/add/remove/force
-
-# Add or remove space between 'else' and '{' if on the same line
-sp_else_brace                            = ignore   # ignore/add/remove/force
-
-# Add or remove space between '}' and 'else' if on the same line
-sp_brace_else                            = ignore   # ignore/add/remove/force
-
-# Add or remove space between 'catch' and '{' if on the same line
-sp_catch_brace                           = ignore   # ignore/add/remove/force
-
-# Add or remove space between '}' and 'catch' if on the same line
-sp_brace_catch                           = ignore   # ignore/add/remove/force
-
-# Add or remove space between 'finally' and '{' if on the same line
-sp_finally_brace                         = ignore   # ignore/add/remove/force
-
-# Add or remove space between '}' and 'finally' if on the same line
-sp_brace_finally                         = ignore   # ignore/add/remove/force
-
-# Add or remove space between 'try' and '{' if on the same line
-sp_try_brace                             = ignore   # ignore/add/remove/force
-
-# Add or remove space between get/set and '{' if on the same line
-sp_getset_brace                          = ignore   # ignore/add/remove/force
-
-# Add or remove space before the '::' operator
-sp_before_dc                             = ignore   # ignore/add/remove/force
-
-# Add or remove space after the '::' operator
-sp_after_dc                              = ignore   # ignore/add/remove/force
-
-# Add or remove around the D named array initializer ':' operator
-sp_d_array_colon                         = ignore   # ignore/add/remove/force
-
-# Add or remove space after the '!' (not) operator.
-sp_not                                   = remove   # ignore/add/remove/force
-
-# Add or remove space after the '~' (invert) operator.
-sp_inv                                   = remove   # ignore/add/remove/force
-
-# Add or remove space after the '&' (address-of) operator.
-# This does not affect the spacing after a '&' that is part of a type.
-sp_addr                                  = remove   # ignore/add/remove/force
-
-# Add or remove space around the '.' or '->' operators
-sp_member                                = remove   # ignore/add/remove/force
-
-# Add or remove space after the '*' (dereference) operator.
-# This does not affect the spacing after a '*' that is part of a type.
-sp_deref                                 = remove   # ignore/add/remove/force
-
-# Add or remove space after '+' or '-', as in 'x = -5' or 'y = +7'
-sp_sign                                  = remove   # ignore/add/remove/force
-
-# Add or remove space before or after '++' and '--', as in '(--x)' or 'y++;'
-sp_incdec                                = remove   # ignore/add/remove/force
-
-# Add or remove space after the scope '+' or '-', as in '-(void) foo;' or '+(int) bar;'
-sp_after_oc_scope                        = ignore   # ignore/add/remove/force
-
-# Add or remove space after the colon in message specs
-# '-(int) f: (int) x;' vs '+(int) f : (int) x;'
-sp_before_oc_colon                       = ignore   # ignore/add/remove/force
-
-# Add or remove space after the (type) in message specs
-# '-(int) f: (int) x;' vs '+(int)f : (int)x;'
-sp_after_oc_type                         = ignore   # ignore/add/remove/force
-
-#
-# Code alignment (not left column spaces/tabs)
-#
-
-# Whether to keep non-indenting tabs
-align_keep_tabs                          = false    # false/true
-
-# Whether to use tabs for alinging
-align_with_tabs                          = true            # false/true
-
-# Whether to bump out to the next tab when aligning
-align_on_tabstop                         = false    # false/true
-
-# Whether to left-align numbers
-align_number_left                        = false    # false/true
-
-# Align variable definitions in prototypes and functions
-align_func_params                        = false    # false/true
-
-# The span for aligning variable definitions (0=don't align)
-align_var_def_span                       = 0        # number
-
-# How to align the star in variable definitions.
-#  0=Part of the type
-#  1=Part of the variable
-#  2=Dangling
-align_var_def_star_style                 = 0        # number
-
-# How to align the '&' in variable definitions.
-#  0=Part of the type
-#  1=Part of the variable
-#  2=Dangling
-align_var_def_amp_style                  = 0        # number
-
-# The threshold for aligning variable definitions (0=no limit)
-align_var_def_thresh                     = 0        # number
-
-# Whether to align the colon in struct bit fields
-align_var_def_colon                      = false    # false/true
-
-# Whether to align inline struct/enum/union variable definitions
-align_var_def_inline                     = false    # false/true
-
-# The span for aligning on '=' in assignments (0=don't align)
-align_assign_span                        = 0        # number
-
-# The threshold for aligning on '=' in assignments (0=no limit)
-align_assign_thresh                      = 0        # number
-
-# The span for aligning on '=' in enums (0=don't align)
-align_enum_equ_span                      = 0        # number
-
-# The threshold for aligning on '=' in enums (0=no limit)
-align_enum_equ_thresh                    = 0        # number
-
-# The span for aligning struct/union (0=don't align)
-align_var_struct_span                    = 0        # number
-
-# The threshold for aligning struct/union member definitions (0=no limit)
-align_var_struct_thresh                  = 0        # number
-
-# The span for aligning struct initializer values (0=don't align)
-align_struct_init_span                   = 0        # number
-
-# The minimum space between the type and the synonym of a typedef
-align_typedef_gap                        = 0        # number
-
-# The span for aligning single-line typedefs (0=don't align)
-align_typedef_span                       = 0        # number
-
-# How to align typedef'd functions with other typedefs
-# 0: Don't mix them at all
-# 1: align the open paren with the types
-# 2: align the function type name with the other type names
-align_typedef_func                       = 0        # number
-
-# Controls the positioning of the '*' in typedefs. Just try it.
-# 0: Align on typdef type, ignore '*'
-# 1: The '*' is part of type name: typedef int  *pint;
-# 2: The '*' is part of the type, but dangling: typedef int *pint;
-align_typedef_star_style                 = 0        # number
-
-# Controls the positioning of the '&' in typedefs. Just try it.
-# 0: Align on typdef type, ignore '&'
-# 1: The '&' is part of type name: typedef int  &pint;
-# 2: The '&' is part of the type, but dangling: typedef int &pint;
-align_typedef_amp_style                  = 0        # number
-
-# The span for aligning comments that end lines (0=don't align)
-align_right_cmt_span                     = 0        # number
-
-# If aligning comments, mix with comments after '}' and #endif with less than 3 spaces before the comment
-align_right_cmt_mix                      = false    # false/true
-
-# The span for aligning function prototypes (0=don't align)
-align_func_proto_span                    = 0        # number
-
-# The span for aligning function prototypes (0=don't align)
-align_oc_msg_spec_span                   = 0        # number
-
-# Whether to align macros wrapped with a backslash and a newline.
-# This will not work right if the macro contains a multi-line comment.
-align_nl_cont                            = false    # false/true
-
-# The minimum space between label and value of a preprocessor define
-align_pp_define_gap                      = 0        # number
-
-# The span for aligning on '#define' bodies (0=don't align)
-align_pp_define_span                     = 0        # number
-
-#
-# Newline adding and removing options
-#
-
-# Whether to collapse empty blocks between '{' and '}'
-nl_collapse_empty_body                   = false    # false/true
-
-# Don't split one-line braced assignments - 'foo_t f = { 1, 2 };'
-nl_assign_leave_one_liners               = true    # false/true
-
-# Don't split one-line braced statements inside a class xx { } body
-nl_class_leave_one_liners                = false    # false/true
-
-# Don't split one-line enums: 'enum foo { BAR = 15 };'
-nl_enum_leave_one_liners                 = true    # false/true
-
-# Don't split one-line get or set functions
-nl_getset_leave_one_liners               = true    # false/true
-
-# Don't split one-line function definitions - 'int foo() { return 0; }'
-nl_func_leave_one_liners                 = true    # false/true
-
-# Don't split one-line if/else statements - 'if(a) b++;'
-nl_if_leave_one_liners                   = false    # false/true
-
-# Add or remove newlines at the start of the file
-nl_start_of_file                         = ignore   # ignore/add/remove/force
-
-# The number of newlines at the start of the file (only used if nl_start_of_file is 'add' or 'force'
-nl_start_of_file_min                     = 0        # number
-
-# Add or remove newline at the end of the file
-nl_end_of_file                           = add   # ignore/add/remove/force
-
-# The number of newlines at the end of the file (only used if nl_end_of_file is 'add' or 'force')
-nl_end_of_file_min                       = 0        # number
-
-# Add or remove newline between '=' and '{'
-nl_assign_brace                          = ignore   # ignore/add/remove/force
-
-# Add or remove newline between '=' and '[' (D only)
-nl_assign_square                         = ignore   # ignore/add/remove/force
-
-# Add or remove newline after '= [' (D only). Will also affect the newline before the ']'
-nl_after_square_assign                   = ignore   # ignore/add/remove/force
-
-# The number of newlines after a block of variable definitions
-nl_func_var_def_blk                      = 0        # number
-
-# Add or remove newline between a function call's ')' and '{', as in:
-# list_for_each(item, &list) { }
-nl_fcall_brace                           = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'enum' and '{'
-nl_enum_brace                            = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'struct and '{'
-nl_struct_brace                          = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'union' and '{'
-nl_union_brace                           = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'if' and '{'
-nl_if_brace                              = remove   # ignore/add/remove/force
-
-# Add or remove newline between '}' and 'else'
-nl_brace_else                            = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'else if' and '{'
-# If set to ignore, nl_if_brace is used instead
-nl_elseif_brace                          = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'else' and '{'
-nl_else_brace                            = ignore   # ignore/add/remove/force
-
-# Add or remove newline between '}' and 'finally'
-nl_brace_finally                         = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'finally' and '{'
-nl_finally_brace                         = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'try' and '{'
-nl_try_brace                             = ignore   # ignore/add/remove/force
-
-# Add or remove newline between get/set and '{'
-nl_getset_brace                          = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'for' and '{'
-nl_for_brace                             = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'catch' and '{'
-nl_catch_brace                           = ignore   # ignore/add/remove/force
-
-# Add or remove newline between '}' and 'catch'
-nl_brace_catch                           = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'while' and '{'
-nl_while_brace                           = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'do' and '{'
-nl_do_brace                              = ignore   # ignore/add/remove/force
-
-# Add or remove newline between '}' and 'while' of 'do' statement
-nl_brace_while                           = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'switch' and '{'
-nl_switch_brace                          = ignore   # ignore/add/remove/force
-
-# Add or remove newline when condition spans two or more lines
-nl_multi_line_cond                       = false    # false/true
-
-# Force a newline in a define after the macro name for multi-line defines.
-nl_multi_line_define                     = false    # false/true
-
-# Whether to put a newline before 'case' statement
-nl_before_case                           = false    # false/true
-
-# Whether to put a newline after 'case' statement
-nl_after_case                            = false    # false/true
-
-# Newline between namespace and {
-nl_namespace_brace                       = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'template<>' and 'class'
-nl_template_class                        = ignore   # ignore/add/remove/force
-
-# Add or remove newline between 'class' and '{'
-nl_class_brace                           = ignore   # ignore/add/remove/force
-
-# Add or remove newline after each ',' in the constructor member initialization
-nl_class_init_args                       = ignore   # ignore/add/remove/force
-
-# Add or remove newline between return type and function name in definition
-nl_func_type_name                        = ignore   # ignore/add/remove/force
-
-# Add or remove newline between return type and function name in a prototype
-nl_func_proto_type_name                  = ignore   # ignore/add/remove/force
-
-# Add or remove newline between a function name and the opening '('
-nl_func_paren                            = ignore   # ignore/add/remove/force
-
-# Add or remove newline after '(' in a function declaration
-nl_func_decl_start                       = ignore   # ignore/add/remove/force
-
-# Add or remove newline after each ',' in a function declaration
-nl_func_decl_args                        = ignore   # ignore/add/remove/force
-
-# Add or remove newline before the ')' in a function declaration
-nl_func_decl_end                         = ignore   # ignore/add/remove/force
-
-# Add or remove newline between function signature and '{'
-nl_fdef_brace                            = remove   # ignore/add/remove/force
-
-# Whether to put a newline after 'return' statement
-nl_after_return                          = false    # false/true
-
-# Whether to put a newline after semicolons, except in 'for' statements
-nl_after_semicolon                       = false    # false/true
-
-# Whether to put a newline after brace open.
-# This also adds a newline before the matching brace close.
-nl_after_brace_open                      = false    # false/true
-
-# If nl_after_brace_open and nl_after_brace_open_cmt are true, a newline is
-# placed between the open brace and a trailing single-line comment.
-nl_after_brace_open_cmt                  = false    # false/true
-
-# Whether to put a newline after a virtual brace open.
-# These occur in un-braced if/while/do/for statement bodies.
-nl_after_vbrace_open                     = false    # false/true
-
-# Whether to alter newlines in '#define' macros
-nl_define_macro                          = false    # false/true
-
-# Whether to not put blanks after '#ifxx', '#elxx', or before '#endif'
-nl_squeeze_ifdef                         = false    # false/true
-
-# Add or remove newline before 'if'
-nl_before_if                             = ignore   # ignore/add/remove/force
-
-# Add or remove newline after 'if'
-nl_after_if                              = ignore   # ignore/add/remove/force
-
-# Add or remove newline before 'for'
-nl_before_for                            = ignore   # ignore/add/remove/force
-
-# Add or remove newline after 'for'
-nl_after_for                             = ignore   # ignore/add/remove/force
-
-# Add or remove newline before 'while'
-nl_before_while                          = ignore   # ignore/add/remove/force
-
-# Add or remove newline after 'while'
-nl_after_while                           = ignore   # ignore/add/remove/force
-
-# Add or remove newline before 'switch'
-nl_before_switch                         = ignore   # ignore/add/remove/force
-
-# Add or remove newline after 'switch'
-nl_after_switch                          = ignore   # ignore/add/remove/force
-
-# Add or remove newline before 'do'
-nl_before_do                             = ignore   # ignore/add/remove/force
-
-# Add or remove newline after 'do'
-nl_after_do                              = ignore   # ignore/add/remove/force
-
-# Whether to double-space commented-entries in struct/enum
-nl_ds_struct_enum_cmt                    = false    # false/true
-
-# Whether to double-space before the close brace of a struct/union/enum
-nl_ds_struct_enum_close_brace            = false    # false/true
-
-# Add or remove a newline around a class colon.
-# Related to pos_class_colon, nl_class_init_args, and pos_comma.
-nl_class_colon                           = ignore   # ignore/add/remove/force
-
-# Change simple unbraced if statements into a one-liner
-# 'if(b)\n i++;' => 'if(b) i++;'
-nl_create_if_one_liner                   = true    # false/true
-
-# Change simple unbraced for statements into a one-liner
-# 'for (i=0;i<5;i++)\n foo(i);' => 'for (i=0;i<5;i++) foo(i);'
-nl_create_for_one_liner                  = false    # false/true
-
-# Change simple unbraced while statements into a one-liner
-# 'while (i<5)\n foo(i++);' => 'while (i<5) foo(i++);'
-nl_create_while_one_liner                = false    # false/true
-
-#
-# Positioning options
-#
-
-# The position of boolean operators in wrapped expressions
-pos_bool                                 = ignore   # ignore/lead/trail
-
-# The position of the comma in wrapped expressions
-pos_comma                                = ignore   # ignore/lead/trail
-
-# The position of the comma in the constructor initialization list
-pos_class_comma                          = ignore   # ignore/lead/trail
-
-# The position of colons between constructor and member initialization
-pos_class_colon                          = ignore   # ignore/lead/trail
-
-#
-# Line Splitting options
-#
-
-# Try to limit code width to N number of columns
-code_width                               = 0        # number
-
-# Whether to fully split long 'for' statements at semi-colons
-ls_for_split_full                        = false    # false/true
-
-# Whether to fully split long function protos/calls at commas
-ls_func_split_full                       = false    # false/true
-
-#
-# Blank line options
-#
-
-# The maximum consecutive newlines
-nl_max                                   = 0        # number
-
-# The number of newlines after a function prototype, if followed by another function prototype
-nl_after_func_proto                      = 0        # number
-
-# The number of newlines after a function prototype, if not followed by another function prototype
-nl_after_func_proto_group                = 0        # number
-
-# The number of newlines after '}' of a multi-line function body
-nl_after_func_body                       = 0        # number
-
-# The number of newlines after '}' of a single line function body
-nl_after_func_body_one_liner             = 0        # number
-
-# The minimum number of newlines before a multi-line comment.
-# Doesn't apply if after a brace open or another multi-line comment.
-nl_before_block_comment                  = 0        # number
-
-# The minimum number of newlines before a single-line C comment.
-# Doesn't apply if after a brace open or other single-line C comments.
-nl_before_c_comment                      = 0        # number
-
-# The minimum number of newlines before a CPP comment.
-# Doesn't apply if after a brace open or other CPP comments.
-nl_before_cpp_comment                    = 0        # number
-
-# Whether to force a newline after a mulit-line comment.
-nl_after_multiline_comment               = false    # false/true
-
-# The number of newlines before a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
-# Will not change the newline count if after a brace open.
-# 0 = No change.
-nl_before_access_spec                    = 0        # number
-
-# The number of newlines after a 'private:', 'public:', 'protected:', 'signals:', or 'slots:' label.
-# 0 = No change.
-nl_after_access_spec                     = 0        # number
-
-# Whether to remove blank lines after '{'
-eat_blanks_after_open_brace              = false    # false/true
-
-# Whether to remove blank lines before '}'
-eat_blanks_before_close_brace            = false    # false/true
-
-#
-# Code modifying options (non-whitespace)
-#
-
-# Add or remove braces on single-line 'do' statement
-mod_full_brace_do                        = ignore   # ignore/add/remove/force
-
-# Add or remove braces on single-line 'for' statement
-mod_full_brace_for                       = ignore   # ignore/add/remove/force
-
-# Add or remove braces on single-line function defintions. (Pawn)
-mod_full_brace_function                  = ignore   # ignore/add/remove/force
-
-# Add or remove braces on single-line 'if' statement
-mod_full_brace_if                        = add      # ignore/add/remove/force
-
-# Don't remove braces around statements that span N newlines
-mod_full_brace_nl                        = 0        # number
-
-# Add or remove braces on single-line 'while' statement
-mod_full_brace_while                     = ignore   # ignore/add/remove/force
-
-# Add or remove unnecessary paren on 'return' statement
-mod_paren_on_return                      = ignore   # ignore/add/remove/force
-
-# Whether to change optional semicolons to real semicolons
-mod_pawn_semicolon                       = false    # false/true
-
-# Add parens on 'while' and 'if' statement around bools
-mod_full_paren_if_bool                   = false    # false/true
-
-# Whether to remove superfluous semicolons
-mod_remove_extra_semicolon               = false    # false/true
-
-# If a function body exceeds the specified number of newlines and doesn't have a comment after
-# the close brace, a comment will be added.
-mod_add_long_function_closebrace_comment = 0        # number
-
-# If a switch body exceeds the specified number of newlines and doesn't have a comment after
-# the close brace, a comment will be added.
-mod_add_long_switch_closebrace_comment   = 0        # number
-
-# If TRUE, will sort consecutive single-line 'import' statements [Java, D]
-mod_sort_import                          = false    # false/true
-
-# If TRUE, will sort consecutive single-line 'using' statements [C#]
-mod_sort_using                           = false    # false/true
-
-# If TRUE, will sort consecutive single-line '#include' statements [C/C++] and '#import' statements [Obj-C]
-# This is generally a bad idea, as it may break your code.
-mod_sort_include                         = false    # false/true
-
-#
-# Comment modifications
-#
-
-# Try to wrap comments at cmt_witdth columns
-cmt_width                                = 0        # number
-
-# Whether to group c-comments that look like they are in a block
-cmt_c_group                              = false    # false/true
-
-# Whether to put an empty '/*' on the first line of the combined c-comment
-cmt_c_nl_start                           = false    # false/true
-
-# Whether to put a newline before the closing '*/' of the combined c-comment
-cmt_c_nl_end                             = false    # false/true
-
-# Whether to group cpp-comments that look like they are in a block
-cmt_cpp_group                            = false    # false/true
-
-# Whether to put an empty '/*' on the first line of the combined cpp-comment
-cmt_cpp_nl_start                         = false    # false/true
-
-# Whether to put a newline before the closing '*/' of the combined cpp-comment
-cmt_cpp_nl_end                           = false    # false/true
-
-# Whether to change cpp-comments into c-comments
-cmt_cpp_to_c                             = false    # false/true
-
-# Whether to put a star on subsequent comment lines
-cmt_star_cont                            = false    # false/true
-
-# The number of spaces to insert at the start of subsequent comment lines
-cmt_sp_before_star_cont                  = 0        # number
-
-# The number of spaces to insert after the star on subsequent comment lines
-cmt_sp_after_star_cont                   = 0        # number
-
-# The filename that contains text to insert at the head of a file if the file doesn't start with a C/C++ comment.
-# Will substitue $(filename) with the current file's name.
-cmt_insert_file_header                   = ""         # string
-
-# The filename that contains text to insert before a function implementation if the function isn't preceeded with a C/C++ comment.
-# Will substitue $(function) with the function name and $(javaparam) with the javadoc @param and @return stuff.
-# Will also substitute $(fclass) with the class name: void CFoo::Bar() { ... }
-cmt_insert_func_header                   = ""         # string
-
-# The filename that contains text to insert before a class if the class isn't preceeded with a C/C++ comment.
-# Will substitue $(class) with the class name.
-cmt_insert_class_header                  = ""         # string
-
-#
-# Preprocessor options
-#
-
-# Control indent of preprocessors inside #if blocks at brace level 0
-pp_indent                                = ignore   # ignore/add/remove/force
-
-# Whether to indent #if/#else/#endif at the brace level (true) or from column 1 (false)
-pp_indent_at_level                       = false    # false/true
-
-# Add or remove space after # based on pp_level of #if blocks
-pp_space                                 = ignore   # ignore/add/remove/force
-
-# Sets the number of spaces added with pp_space
-pp_space_count                           = 0        # number
-
-# The indent for #region and #endregion in C# and '#pragma region' in C/C++
-pp_indent_region                         = 0        # number
-
-# Whether to indent the code between #region and #endregion
-pp_region_indent_code                    = false    # false/true
-
-# If pp_indent_at_level=true, sets the indent for #if, #else, and #endif when not at file-level
-pp_indent_if                             = 0        # number
-
-# Control whether to indent the code between #if, #else and #endif when not at file-level
-pp_if_indent_code                        = false    # false/true
-
-# Whether to indent '#define' at the brace level (true) or from column 1 (false)
-pp_define_at_level                       = false    # false/true
-
-# You can force a token to be a type with the 'type' option.
-# Example:
-# type myfoo1 myfoo2
-#
-# You can create custom macro-based indentation using macro-open, 
-# macro-else and macro-close.
-# Example:
-# macro-open  BEGIN_TEMPLATE_MESSAGE_MAP
-# macro-open  BEGIN_MESSAGE_MAP
-# macro-close END_MESSAGE_MAP