a20938a16994a33c7cf909401cd1caf354aa0a46
[xonotic/netradiant.git] / CHANGES
1 This is the changelog for developers, != changelog for the end user 
2 that we distribute with the binaries. (see changelog)
3
4 13/12/2006
5 - Added tremoulus-support to q3map2
6
7 08/12/2006
8 namespace
9 - Entity names are now drawn for group entities in Doom3 and Quake 3 mode (namespace)
10 - Fixed translucent brushes becoming invisible when selected (Shaderman)
11
12 06/11/2006
13 namespace
14 - (TODO) Texture sizes sometimes vary wildly. New texture browser option: View -> Fixed Size.
15   Code parts taken from DarkRadiant. (Shaderman)
16 - Added new texture browser option: View -> Hide Image Missing. (Shaderman)
17 - Fixed new D3 lights don't have a light_radius key. (Shaderman)
18 - Fixed hotkey collision (paste to camera/view menu). New View shortcut = ALT+W. (Shaderman)
19 - Fixed .wad MMB 3d view texture selection bug. (Shaderman)
20
21 04/11/2006
22 namespace
23 - Added warzow-support to q3map2
24
25 12/10/2006
26 namespace
27 - Updated help menu web links (removed map-center.com, added ETB documentation) (Shaderman)
28 - Added check for existing worldspawn if a new one should be added with the entity menu (Shaderman)
29 - Fixed Entity -> Ungroup (Topsun)
30 - Fixed hotkey collision ALT+M (filter botclip/Modify menu). New Modify shortcut = ALT+O (Shaderman)
31 - Updated Window Layout images (Shaderman)
32 - Fixed (TODO) XYWindow: save show-workzone option (Shaderman)
33 - Fixed (TODO) Toolbar: add shortcut to tooltips for toolbar buttons (Shaderman)
34 - Fixed (TODO) GUI: detachable submenus (Shaderman)
35
36 09/10/2006
37 namespace
38 - Added option to toggle the camera window stats on/off (Shaderman)
39   (view --> show --> show stats)
40
41
42 08/10/2006
43 namespace
44 - Fix for bug 1106 - .wad files don't get listed in the textures menu (Shaderman)
45   (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1106)
46 - Added initial support for Prey (Shaderman)
47 - Fixed entity inspector sliders to always show (Shaderman)
48 - Added NOTES subsection to the entity inspector listing .def "editor_usage*" values (Shaderman)
49
50 07/10/2006
51 namespace
52 - Added "select inside" and "select touching"
53   Both functions now work with multiple selectionbrushes, allowing complex
54   selection operations.
55 - Added entries for the selectionfunctions in "Edit" and the main toolbar.
56
57 06/10/2006
58 namespace
59 - Changed ETB not to show any texture if a tag search doesn't match anything (Shaderman)
60 - Added View -> Filter -> "Invert filters/Reset filters" function (Shaderman)
61 - Fixed (TODO) Textures: remove "shaders only" option for doom3 (Shaderman)
62 - Fixed show shaders / shader only / shader info for doom3 and .wad file games (Shaderman)
63
64 03/10/2006
65 namespace
66 - Fix for Bug 1113 (Topsun)
67   (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1113)
68
69 03/10/2006
70 namespace
71 - Changed ETB tag toolbar to a notebook with tag/texture pages (Shaderman)
72 - Added a context menu (add/delete/rename tag) to the ETB tag tree view (Shaderman)
73 - Added new win32 installer HOWTO (Shaderman/Topsun)
74
75 01/10/2006
76 namespace
77 - Added missing xml files for win32 installer
78
79 30/09/2006
80 namespace
81 - Fixed Etb saving custom tags to global tagfile (Shaderman/namespace)
82 - Fixed postbuild step for brushexport, shaderplug and sunplug (Shaderman)
83 - Added installersupport for new files and plugins (Shaderman)
84
85 30/09/2006
86 namespace
87 - Added LocalLcPath to plugin interface
88 - Added enhanced Texturebrowser (ETB) by Shaderman
89 - Added shaderplug by Shaderman, accompanies the ETB
90 - Added xmltagging lib by Shaderman, accompanies the ETB
91 - Added new icons for ETB, Console, Entityinspector and Lighteditor
92 - Fixed minor warning in Sunplug Project
93 - Fixed PATH_MAX namecollision in ptrview plugin on Linux
94 - Final fix for 64 bit patch.h issue
95
96
97
98 12/09/2006
99 namespace
100 - Fixed 64 Bit issue in patch.h, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1109
101   for details
102
103 11/09/2006
104 namespace
105 - Fixed unnecessary warnings, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1108
106   for details
107
108 11/09/2006
109 namespace
110 - Added sunplug (Mapcoordinator-plugin for ET) by Topsun
111   ET only: setting mapcoordsmins and mapcoordsmaxs in the worldspawn
112   Tester: Shaderman
113 - Added brushexport Plugin by namespace
114   Exports selected brushes as wavefront object.
115   Tester: Shaderman
116
117 11/09/2006
118 namespace
119 - Fixed compile error on x86_64, see http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1105
120   for details.
121
122 09/09/2996
123 namespace
124 - Added strafing for the camerawindow while holding ctrl
125 - Additional forward movement can be enabled by pressing shift during strafe
126
127 22/08/2006
128 SPoG
129 - Added VFS support for locating the archive a file was loaded from.
130 - Changed Doom3 entity definition parser to gracefully handle parse errors.
131 - Fixed crash when loading entity definitions in quake4 1.3 point release.
132
133 13/08/2006
134 SPoG
135 - Disabled 'detail' content flag checkbox in quake2 Surface Inspector.
136
137 22/07/2006
138 SPoG
139 - Fixed doom3 func_static with model not appearing to move when dragged. 
140 - Changed ASE model loader to parse material names the same way as DoomEdit.
141 - Fixed title of wait-dialog when loading a model.
142 - Fixed doom3 func_static with blank 'model' key being invisible.
143 - Changed doom3 func_static model creation to replace selected models.
144 - Added support for loading both .ent and .def files at the same time.
145
146 09/07/2006
147 Shaderman
148 - Updated win32 libxml2 package to 2.6.24.
149 namespace
150 - Ported win32 stack-backtrace to use new DebugHelp API.
151 - Added stack-backtrace functionality for Linux/OSX.
152
153 11/06/2006
154 SPoG
155 - Fixed arbitrary rotation X and Y axes appearing to be transposed.
156
157 04/06/2006
158 SPoG
159 - Fixed crash when deleting items from Build menu.
160
161 03/06/2006
162 SPoG
163 - Changed doom3 entity creation to add model key for brush-entities.
164 - Fixed crash in Save Region.
165 - Fixed detail brushes being turned structural when texture is set.
166
167 29/05/2006
168 SPoG
169 - Changed default doom3 light_radius to be taken from the entity-definition.
170 - Fixed error when entering and exiting camera freemove with LMB pressed.
171   http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1090
172
173 13/05/2006
174 LordHavoc
175 - Added -fPIC for Linux builds to support x86_64.
176 - Removed static-linked libstdc++ hack for non-final builds.
177 - Removed gcc explicit linking hack for non-final builds.
178 - Added workaround for gcc static-member-pointer-as-template-argument bug.
179 - Fixed bobtoolz linux compile errors.
180 - Added Nexuiz and Darkplaces support.
181 SPoG
182 - Changed 'inconsistent vertex count' assert to be non-fatal.
183 - Changed 'failed to remove accelerator' assert to be non-fatal.
184 - Fixed crash due to broken module dependencies.
185 - Fixed default settings for Build Monitoring.
186 - Fixed nudge-selection when using the drag tool mode.
187 - Added support for patches in texture-painting tool.
188
189 30/04/2006
190 SPoG
191 - Fixed memory leak in signals library.
192 - Ported bobtoolz to use new module APIs.
193
194 01/04/2006
195 SPoG
196 - Added key-observer interface to entity module API.
197 - Rewrote callback library to add support for return-values.
198 - Added minimal API to support bobtoolz plugin.
199 - Refactored brush for-each functions to take Functor instead of Visitor.
200 - Added signals library.
201
202 31/03/2006
203 SPoG
204 - Changed doom3 light creation to use size of selected brushes.
205
206 20/03/2006
207 SPoG
208 - Fixed crash when resetting preferences after startup failure.
209 - Fixed crash on next-leak-spot with build-monitoring enabled.
210 - Fixed doom3/quake4 blended-decal rendering when toggling lighting mode.
211 - Fixed fit-texture with rotated texture transforms.
212
213 20/03/2006
214 SPoG
215 - Changed Copy/Paste to work on face textures if any faces are selected.
216 - Fixed GTK_WIDGET_REALIZED assert when selecting entities (linux).
217
218 28/02/2006
219 namespace, SPoG
220 - Added drag-resizing for doom3/quake4 light_radius boxes.
221
222 25/02/2006
223 SPoG
224 - Fixed objects sometimes dissappearing when at high zoom level in Ortho views.
225
226 24/02/2006
227 SPoG
228 - Added GPL text to win32 installer.
229 - Fixed gtk wimp theme not working after using gtkthemeselector.
230
231 21/02/2006
232 namespace
233 - Added command to toggle lighting/textured modes, shortcut F3.
234
235 20/02/2006
236 SPoG
237 - Fixed crash when disabling lighting for a second time.
238
239 19/02/2006
240 SPoG
241 - Fixed crash when loading invalid ASE models.
242
243 11/02/2006
244 SPoG
245 - Added install.py script.
246 - Updated COMPILING instructions.
247 - Fixed transparency rendering on quake3 shaders.
248 - Fixed hint/caulk filtering for Jedi Academy shaders.
249
250 04/02/2006
251 SPoG
252 - Added Radiant Manual shortcut to win32 installation.
253 - Added 'use alternative texture projection' option to prefs.
254 - Fixed caching bug causing import-map to not reload modified maps.
255 - Added blended-decal rendering for doom3 and quake4.
256
257 30/01/2006
258 SPoG
259 - Added expand-selection-to-entities with default shortcut ctrl+alt+e.
260 - Fixed crash in gtk file-chooser with some versions of GTK+.
261
262 29/01/2006
263 SPoG
264 - Changed create-group-entity to re-select brushes after creation.
265
266 26/01/2006
267 SPoG
268 - Changed far-clip-plane setting to increase exponentially with distance.
269 - Fixed selected entities moving when drag-resizing brushes.
270 - Changed patches to be selectable from the back in wireframe views.
271 - Speed improvements for transform-selection code.
272
273 25/01/2006
274 SPoG
275 - Added default-texture-scale option to preferences.
276 - Added default-grid-spacing option to preferences.
277
278 23/01/2006
279 Shamus
280 - Fixed editing of doom3/quake4 faces with negative texture scale factors.
281
282 22/01/2006
283 SPoG
284 - Fixed shortcut for toggle-far-clip.
285 - Fixed broken link in 1.5 user docs.
286
287 10/01/2006
288 SPoG
289 - Changed script parser to ignore comments that start in the middle of tokens.
290 - Added support for editor_int/editor_string keys in doom3 entity definitions.
291 - Changed doom3/quake4 .mtr and .guide searching to look in subfolders.
292 - Added experimental support for doom3/quake4 projected lights.
293
294 20/12/2005
295 SPoG
296 - Added support for quake4 .guide material templates.
297 - Fixed GCC4 compile errors with anonymous enums.
298 - Added light_radius and light_center GUI to doom3 entity inspector.
299
300 10/12/2005
301 SPoG
302 - Added support for loading and saving Quake4 map format.
303 - Added support for built-in shader images such as _noFalloff.
304 - Added experimental code to render projected lights.
305 - Added support for loading quake4 entity definitions.
306 - Fixed picomodel bug loading .lwo files with texture names >64 in length.
307
308 22/10/2005
309 SPoG
310 - Fixed minor memory leak in zip-archive reader.
311
312 21/10/2005
313 SPoG
314 - Fixed model rotation using free-rotation tool.
315 - Fixed behaviour of angle/rotation keys for Doom3 entities.
316 - Added entity angle-editing for entities that display a model.
317 - Stopped size-info being drawn if selection has zero size.
318 - Added support for 'angle' key on doom3 entities.
319
320 20/10/2005
321 SPoG
322 - Fixed minor one-time memory leak in build-shader-list.
323 - Added functional free-scale tool.
324 - Improved precision preservation for free-rotation and free-scale tools.
325 - Fixed misc_model rotation using free-rotation tool.
326
327 09/10/2005
328 SPoG
329 - Added entity angle-editing using rotate-tool or rotation toolbar buttons.
330 - Fixed start-on-primary-monitor (win32).
331 - Fixed camera-view freelook when window is on secondary monitor (win32).
332
333 05/10/2005
334 paxed
335 - Added texture-lock toolbar button.
336 SPoG
337 - Added stack-trace output to all debug popup messages (win32).
338 - Fixed vertex/edge selection behaviour on undoing brush edits.
339 - Changed doom3 light centre rendering to use a point instead of a box.
340 - Changed map and shader parsers to gracefully handle bad data.
341
342 24/09/2005
343 SPoG
344 - Fixed crash when importing a file after deleting the world entity.
345 - Changed copy/paste/import to select world brushes instead of world entity.
346 - Added win32-specific stack-trace logging support.
347
348 31/08/2005
349 SPoG
350 - Fixed clipper removing brushes on incorrect side of clip-plane when flipped.
351
352 21/08/2005
353 SPoG
354 - Optimised light-dragging.
355 - Changed connect-entities to not break existing connections where possible.
356
357 24/07/2005
358 SPoG
359 - Fixed q3 entity definition for item_health_small.
360
361 02/07/2005
362 SPoG
363 - Fixed build menu becoming empty if editing of default menu is cancelled.
364
365 01/07/2005
366 SPoG
367 - Fixed snap-planes-to-integer preference not being saved.
368
369 26/06/2005
370 SPoG
371 - Changed doom3 light_radius box to draw flat-shaded translucent in camera view.
372 - Fixed progress window not being shown when loading maps.
373 - Refactored shortcut handling to make focussed widgets override global shortcuts.
374   Allows using ctrl+c to copy console text, undo/redo without main-window focus.
375
376 23/06/2005
377 SPoG
378 - Fixed crash when handling assert/error before gtk_init.
379 - Changed Help menu to display only the help menu relevant to the current game.
380
381 21/06/2005
382 SPoG
383 - Fixed double-maps-directory when using non-native file open dialog on win32.
384 - Changed find/replace-textures window to update when selecting textures with MMB.
385 - Fixed handling of non-UTF-8 wad-names in textures menu.
386
387 20/06/2005
388 SPoG
389 - Changed home-path prefix to be optional on linux/osx for q1/q2.
390 - Changed OpenGL module to work correctly with GL_VERSION 2.0.0.
391 - Fixed spawnflags in Enemy Territory entity definitions.
392 - Added missing Enemy Territory entity types.
393
394 19/06/2005
395 SPoG
396 - Changed clipper-point selection/rendering to behave the same at all zoom levels.
397 - Changed clipper-point selection to always pick the closest point to the cursor.
398 - Fixed clipper colour not being updated until after restarting.
399 - Fixed QE tool not deselecting edges when left-clicking on a vertex without shift.
400 - Fixed grid rendering with grid settings other than 8-unit.
401 - Fixed textures menu always behaving as if show-shaderlist-only is enabled.
402
403 18/06/2005
404 SPoG
405 - Added saving of camera render mode preference.
406 - Changed default camera render mode to Textured for Doom3.
407 - Changed default texture render mode to Trilinear.
408
409 17/06/2005
410 SPoG
411 - Ported Team Arena entity definitions to xml format.
412 - Added xml q3 entity-definitions to win32 and linux setups.
413
414 14/06/2005
415 SPoG
416 - Fixed QE-tool component-drag selecting components of unselected brushes.
417
418 13/06/2005
419 SPoG
420 - Changed clipper mode and component-editing modes to be mutually exclusive.
421 - Changed camera A/Z/D/C keys to obey "discrete movement" checkbox.
422 - Added support for up/down movement in freelook mode.
423 - Fixed clipper-tool-uses-caulk option.
424 - Added prompt for engine path at startup if not found.
425
426 12/06/2005
427 SPoG
428 - Added entity-inspector GUI support for func_button/func_door direction attribute.
429 - Added angle/model/sound GUI to entity-inspector for old-style entity-definitions.
430 - Added clipper-plane rendering using stippled back-face-culled polygon.
431 - Fixed entity-inspector failing to handle non-ascii characters in entity keys.
432
433 11/06/2005
434 SPoG
435 - Fixed entity-inspector window position changing while hidden.
436
437 09/06/2005
438 SPoG
439 - Fixed region-set-selected for model entities.
440
441 08/06/2005
442 SPoG
443 - Added option to enable or disable snapping brush planes to integer on map load/save.
444 - Added 0.125 grid.
445 - Changed grid rendering to always show major/minor grid colours whatever the zoom level.
446 - Increased maximum zoom level for XY views.
447
448 06/06/2005
449 SPoG
450 - Added 'File > Refresh models' - reloads models that have changed outside Radiant.
451
452 05/06/2005
453 SPoG
454 - Fixed model files not being closed after being read.
455 - Fixed build menu dialog not saving changes to build commands.
456 - Changed build menu to save xml only if changed by user.
457 - Fixed CSG-merge.
458 - Reduced CSG-merge tolerance for misaligned brushes.
459 Michael Kluskens
460 - Updated STVEF default build menu to version 2 format.
461 - Updated STVEF game configuration file and removed synapse.config.
462
463 02/04/2005
464 SPoG
465 - Changed HashTable insert/remove operations to not invalidate iterators.
466 - Changed ReferenceCache realise/unrealise to take advantage of new HashTable behaviour.
467 - Refactored containers to use std::swap.
468 - Refactored bitfield.h.
469 Tr3B
470 - Fixed endianness for .lwo loading on linux.
471 - Extended q3map2 mathlib functionality.
472
473 28/03/2005
474 SPoG
475 - Specialised filters list for doom3 entity/material types.
476 - Added ASE-loader support for shader names specified as a bitmap absolute-path.
477 - Fixed monitored-compile debug-feedback display.
478 - Added TGA-loader support for vertical and horizontal flipping.  
479 - Enabled auto-generation of smooth normals for all LWO models.
480
481 27/03/2005
482 Tr3B
483 - Fixed map-xml module.
484 - Added support for qer_trans keyword in doom3 materials.
485
486 08/03/2005
487 SPoG
488 - Added GUI updates during map load and engine-path/game-dir changes.
489 - Fixed main window being hidden behind another application on closing a floating window.
490
491 07/03/2005
492 SPoG
493 - Fixed crash when selecting the root node in the entity-list window.
494 - Fixed detail flag saving for quake3 map format.
495
496 06/03/2005
497 SPoG
498 - Optimised type-casts for scene-graph type system.
499 - Disabled substitution of 'unspecified' for entity key values that match the default.
500 - Refactored module-system api - added globalModuleServer().
501 - Fixed rotation origin for doom3 func_static models.
502
503 05/03/2005
504 SPoG
505 - Added support for doom3 model-entity 'skin' key.
506 - Added noshadows/nospecular/nodiffuse/falloff doom3 light keys to entity-inspector.
507
508 04/03/2005
509 SPoG
510 - Added camera move up/down one floor.
511 - Added support for 'unspecified' contents/flags/value for Quake2 brush faces.
512
513 26/02/2005
514 SPoG
515 - Added auto-complete for shader attributes in entity inspector.
516 - Added support for doom3-material heightmap to normalmap conversion.
517
518 22/02/2005
519 SPoG
520 - Fixed missing prefix attribute in quake game configuration file.
521 - Added auto-completion for find/replace-textures texture-name entries.
522 - Removed redundant buttons and options in find/replace-textures window.
523
524 21/02/2005
525 SPoG
526 - Added auto-completion for surface-inspector texture-name entry.
527
528 20/02/2005
529 SPoG
530 - Fixed failure to load shaders containing '.' such as Heretic II model skins.
531 - Removed unused legacy cmdlib functions.
532 - Added support for fractional repeat values to brush-fit-texture.
533
534 19/02/2005
535 SPoG
536 - Changed entity-connect-selected to use the parent entity of a selected brush.
537 - Added q2map and bspc to installation packages.
538 Jamie Wilkinson
539 - Fixed path to q2map in quake2 build-menu.
540
541 13/02/2005
542 SPoG
543 - Fixed crash in 'Misc > Find Brush' when searching for a non-existent brush.
544   http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1059
545 - Limited the maximum number of sides of a prefab brush-cone to 32.
546
547 11/02/2005
548 SPoG
549 - Changed display of angled box-entities to show un-rotated bounding boxes.
550
551 10/02/2005
552 SPoG
553 - Disabled rotation of light entities for games other than Doom 3.
554
555 09/02/2005
556 David Constanzo
557 - Fixed episode flag names on Quake item_sigil and func_episodegate entities.
558   http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1056
559 - Added detailed description of Quake item_sigil and func_episodegate entities.
560 SPoG
561 - Fixed position of light-entity names.
562 - Fixed q3map2 feedback xml streams containing non-UTF-8 text.
563 - Optimised Locale<->UTF-8 text conversion.
564
565 08/02/2005
566 SPoG
567 - Fixed selecting a texture not resetting the current selected texture-projection.
568 - Added handling of OpenGL drivers that don't implement all reported extensions. 
569
570 07/02/2005
571 SPoG
572 - Added support for multi-byte UTF-8 characters in xml content (not markup).
573 - Added UTF-8 support in entity-inspector, prefs dialog, recent-files menu, console.
574 - Fixed potentially misaligned objects.
575
576 05/02/2005
577 SPoG
578 - Added rendering of entity names for non-group entities.
579 - Removed context-dependent opengl calls before opengl context is created.
580
581 04/02/2005
582 SPoG
583 - Fixed crash when printing extended-ascii text in the console.
584 - Added conversion of extended-ascii text to utf8 for gtk text-buffer widgets.
585
586 03/02/2005
587 David Constanzo
588 - Fixed typo in Quake entity-definitions.
589 SPoG
590 - Fixed undo of brush-set-structural and brush-make-structural.
591 - Refactored image-loader module api.
592 - Added full support for Quake II and Heretic II surface-flags in surface-inspector.
593 - Fixed crash in patch-inspector for games other than doom3.
594
595 01/02/2005
596 SPoG
597 - Changed shader-list and entity-definition searching to also search base-dir.
598
599 29/01/2005
600 SPoG
601 - Fixed title of floating entities/console/textures window.
602 - Fixed destruction of floating windows on shutdown.
603 - Added shortcut handling when entity-inspector/texture-browser are active.
604 David Constanzo
605 - Fixed crash while auto-saving snapshots.
606   http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1049
607
608 28/01/2005
609 SPoG
610 - Added rendering of fixed S/T tesselation on doom3 patches.
611 - Changed creation of doom3 func_static entities to prompt for a model.
612 - Fixed zero-sized primitives being rendered for culled entity-connection-lines.
613
614 25/01/2005
615 SPoG
616 - Added support for setting fixed S/T tesselation on doom3 patches.
617 - Changed patch inspector to be completely non-modal.
618
619 24/01/2005
620 SPoG
621 - Added support for rotating lights using the rotation tool.
622
623 23/01/2005
624 SPoG
625 - Fixed crash on startup with texture-subsets enabled.
626   http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=1045
627 - Added support for doom3 lights combined with brushes and patches.
628 - Added support for doom3 light_origin on lights.
629 - Added support for doom3 light_rotation and rotation key on lights.
630
631 22/01/2005
632 SPoG
633 - Fixed crash when accessing links from help menu.
634 - Fixed broken links in help menu.
635 - Added game-specific docs to win32 setup.
636 - Changed q3 connect-entities to preserve existing targetname key.
637 - Changed q3 connect-entities to generate targetname key based on target classname.
638
639 21/01/2005
640 SPoG
641 - Moved information in synapse.config into .game files.
642 - Added api versioning for module-system.
643
644 20/01/2005
645 SPoG
646 - Fixed keys/values for brush entities not being editable unless parent is selected.
647 - Fixed brush-entities not being deleted when the last child brush is deleted.
648 - Fixed scenarios where worldspawn is not the first entity in the map.
649
650 19/01/2005
651 SPoG
652 - Fixed numerical instability in brush winding-generation.
653
654 16/01/2005
655 SPoG
656 - Added Jedi Academy support to linux installer.
657 - Fixed main-window jumping to front during autosave.
658 - Fixed saving of empty brushes.
659 Jame Wilkinson
660 - Fixed build errors when compiling for big-endian target.
661
662 15/01/2005
663 SPoG
664 - Fixed launching q3map2 from build-menu on linux/osx.
665 - Added version checking of generated config files.
666 - Fixed key-up events being missed while holding ctrl/shift/alt.
667 - Fixed texture-compression support.
668 Jago
669 - Changed q1 trigger_relay and trigger_counter to be point entities.
670
671 11/01/2005
672 SPoG
673 - Changed brush-save to not write non-contributing faces.
674 - Fixed rendering artifacts on outlines of selected box-entities.
675
676 10/01/2005
677 SPoG
678 - Added patch-cap-cylinder.
679
680 09/01/2005
681 SPoG
682 - Fixed texture-browser scroll-to-selected-texture.
683 - Added brush face texture painting.
684
685 08/01/2005
686 SPoG
687 - Fixed ungroup-selected-entities.
688 - Added 'Entity' menu.
689 - Removed items unrelated to entity-creation from xy-window right-click menu.
690 - Fixed minor memory leaks in core.
691 - Removed code that ignores empty alpha-channel in tga loader.
692 - Fixed memory leak in model module.
693 - Fixed memory leaks in picomodel library: ase and lwo loaders.
694 - Changed default tool to 'QE' tool.
695
696 04/01/2005
697 SPoG
698 - Changed start-on-primary-screen default to 'true' with multiple screens.
699 - Added enter/escape as shortcuts for OK/Cancel buttons on modal dialogs.
700 - Disabled mouse-chase scrolling in XY window when drag-selecting.
701 - Fixed xlink I/O warnings on linux.
702 - Removed light-creation 'intensity' dialog in doom3 config.
703 - Changed the default vertical size of the shortcut-list window to 400. 
704 - Fixed patch-creation with zero-sized workzone.
705 - Fixed crash when rendering doom3 light_radius box.
706
707 03/01/2005
708 SPoG
709 - Added arbfp1/arbvp1 vertex/fragment program lighting support.
710 - Fixed colour-selection dialog not going away after OK/Cancel.
711 - Fixed tangent/bitangent calculation on degenerate patches.
712 - Added resizing of patches with QE tool.
713
714 02/01/2005
715 SPoG
716 - Added stippled hidden-line rendering for rotate/translate manipulators.
717 - Refactored high-level camera/orthographic rendering functions.
718 - Fixed failure to load models with back-slashes in path.
719 - Improved peformance of doom3 lighting with large models.
720
721 01/01/2005
722 SPoG
723 - Changed entity renderering to draw connections for culled entities.
724 - Fixed runtime errors on shutdown after cycling between lighting/textured.
725 - Fixed 'Cancel' button in modal dialogs behaving like 'OK' button.
726 - Changed 'clip' brush filtering to use shader parameters instead of names.
727 - Added rendering of origin-point for selected model entities.
728 - Fixed doom3 light-interaction updates for model entities.
729
730 31/12/2004
731 SPoG
732 - Removed menu-splitting functionality.
733 - Refactored entity-class menu construction.
734 - Replaced const_reference with ConstReference.
735 - Renamed string_t to CopiedString.
736 - Changed code using Str::Format and Str::operator+= to use StringOutputStream.
737 - Refactored shortcut command parsing code.
738 - Changed light entity rendering to show light_radius box only in doom3 config.
739 - Added 2x overbrightening for doom3 lighting preview.
740
741 16/12/2004
742 SPoG
743 - Changed default doom3 light_radius to 300.
744 - Fixed initial value of doom3 light_center.
745 - Reduced frequency of gui updates during map load.
746
747 13/12/2004
748 SPoG
749 - Fixed crash in monitored-compile feedback dialog.
750
751 12/12/2004
752 SPoG
753 - Added visualisation of halflife texture-projection format.
754 - Added texture-lock for halflife texture-projection format.
755 - Changed brush-texture-lock default to enabled for doom3 and halflife.
756
757 11/12/2004
758 SPoG
759 - Refactored script-tokeniser.
760 - Fixed doom3 lighting on ATI cards.
761 - Added support for list attributes in entity definitions.
762 - Added utf8-normalisation on text printed to console.
763 - Fixed missing default_build_menu.xml in halflife game config.
764
765 10/12/2004
766 SPoG
767 - Fixed missing commas in entity-inspector comments.
768 - Added support for default values in entity-definitions.
769
770 09/12/2004
771 SPoG
772 - Enabled doom3 realtime lighting preview.
773
774 05/12/2004
775 SPoG
776 - Fixed gcc compile warnings in patch.cpp.
777 - Added q1 and q2 support to linux installer.
778
779 02/12/2004
780 SPoG
781 - Added highlighting of entity-list nodes that have selected descendants.
782
783 29/11/2004
784 SPoG
785 - Fixed xy-window failing to update after map-load.
786
787 28/11/2004
788 SPoG
789 - Fixed error on shutdown when game-select dialog is disabled.
790 - Added surface/light-interaction debugging mode.
791 - Added per-plane light-culling for brush faces.
792 - Added support for bump shaders using 'blend' layer keyword.
793 - Added support for light-shaders.
794 - Fixed edge/border clamping on light-attenuation textures.
795 - Added 'Lighting' camera render-mode for doom3 config.
796
797 25/11/2004
798 SPoG
799 - Fixed right-click-menu on linux.
800
801 13/11/2004
802 SPoG
803 - Changed light-entity to draw radii only when selected.
804
805 07/11/2004
806 SPoG
807 - Fixed shortcuts for creating n-sided brush-prisms.
808
809 19/10/2003
810 SPoG
811 - Fixed user-customisable shortcuts support.
812
813 16/10/2003
814 SPoG
815 - Added restore-main-window call when a modal-dialog dialog-box is shown.
816
817 13/10/2003
818 Jamie Wilkinson
819 - Fixed SConstruct cpu detection on Power Macintosh.
820 - Added more verbose warning settings for gcc builds.
821 SPoG
822 - Changed buffered-text-input-stream API to not use magic EOF value.
823
824 06/10/2004
825 Jamie Wilkinson
826 - Fixed debug-break on non-x86 platforms.
827
828 05/10/2004
829 SPoG
830 - Fixed new doom3 entities not being given unique names.
831
832 02/10/2004
833 SPoG
834 - Fixed autosave causing the main-window to jump to the front.
835 - Fixed window-title when changing view direction in floating-windows layout.
836 - Added status information to wait dialogs.
837 - Changed map-save to overwrite/refresh files modified/deleted outside radiant.
838 - Changed component selection in QE tool to treat near-equal points as one.
839 - Added texture browser window to View menu.
840 - Changed white overlay in camera-window to draw hidden lines in 75% grey.
841 - Reduced point-size for vertex/edge/face handles by 2/3.
842
843 25/09/2004
844 SPoG
845 - Added component-editing for curves on doom3 entities.
846 - Added normalisation of translation for texture-lock on doom3 brushes.
847 - Added update of surface inspector for texdef changes caused by texture-lock.
848 - Changed floating-windows layout to centre all ortho views on center-xy-views.
849 - Stopped autosave from saving unmodified maps after first-time load.
850 Shamus
851 - Textool improvements.
852
853 21/09/2004
854 Michael Schlueter
855 - Changed file-chooser dialogs to use GtkFileChooser.
856
857 20/09/2004
858 SPoG
859 - Added basic rendering for 'curve_CatmullRomSpline' on doom3 entities.
860
861 19/09/2004
862 SPoG
863 - Added basic rendering for 'curve_Nurbs' on doom3 entities.
864
865 18/09/2004
866 SPoG
867 - Added doom3 entity-definition editor_usage* key support.
868 - Added doom3 entity-definition editor_* key info to entity-inspector comments.
869 - Added specialised attribute-entry in entity-inspector for boolean attributes.
870 - Fixed crash in find-brush when entering the index of a fixed-size entity.
871 - Added support for rendering doom3 'targetN' -> 'name' entity connections.
872 - Changed connect-entities to use 'targetN' and 'name' keys on doom3 entities.
873 - Improved handling of brushes with near-duplicate planes.
874 - Fixed crash in snap-to-grid on brushes with non-contributing faces.
875
876 17/09/2004
877 Michael Schlueter
878 - Fixed gcc build errors.
879 SPoG
880 - Fixed stability problems with doom3 brush-entities.
881
882 16/09/2004
883 SPoG
884 - Added automatic renaming of entity target/name keys for paste and import-map.
885
886 13/09/2004
887 SPoG
888 - Fixed rotation/mirror toolbar buttons using wrong axes in certain situations.
889 - Fixed incorrect filter settings display in filters menu.
890 - Added automatic renaming of entity target/name keys when cloned.
891 - Fixed quake2 support.
892
893 12/09/2004
894 SPoG
895 - Added shortcut support for all menu commands and toolbar buttons.
896 - Fixed patch shader-name saving for doom3 patches created by user.
897
898 10/09/2004
899 SPoG
900 - Fixed patch-cap-endcap and patch-cap-reverse-endcap.
901
902 09/09/2004
903 SPoG
904 - Fixed status-bar labels showing 'Label' at startup.
905 - Fixed textures-menu grouping bug.
906 - Fixed mirroring on brushes with doom3 plane-defs.
907
908 08/09/2004
909 SPoG
910 - Changed patch-cap-selected to prompt for cap type only once.
911 - Fixed infinite-loop in patch-cap-selected.
912 - Changed autosave to only save if the map has changed since the last autosave.
913 - Changed "file exists, overwrite?" to go back to the file-chooser if 'no' is selected.
914
915 07/09/2004
916 Michael Schlueter
917 - Removed unused source files - qsysprintf, gtkfilesel.
918 - Changed linux exectuable-path resolution to use '/proc/self/exe'.
919 - Changed 'file exists, overwrite?' prompt to default to 'no'.
920
921 06/09/2004
922 SPoG
923 - Fixed crash when handling duplicate shader definitions.
924 - Fixed crash on startup after changing game-type (sp/mp).
925 - Changed compute-axis-base to be more stable in degenerate cases.
926 Michael Schlueter
927 - Cleaned up loki_path stuff.
928 Shamus
929 - Added textool rotation manipulator.
930
931 01/09/2004
932 Michael Schlueter
933 - Changed linux installer to copy *.game files from game-packs instead of generating them.
934
935 29/08/2004
936 SPoG
937 - Moved doom3 shader parsing into a separate function.
938 - Fixed saving of visibility of yz-side and xz-front in floating-windows layout.
939 - Added inheritance of doom3 entityDef 'editor_* *' keys.
940 - Added support for doom3 entityDef 'editor_* *' keys other than 'editor_var'.
941 - Changed entity-inspector attributes panel to be scrollable.
942 - Changed shaders module to load *.mtr for doom3 instead of using shaderlist.
943 - Improved doom3 material parsing.
944 - Fixed crash loading maps containing patches with large numbers of control points.
945 - Changed face-selection in camera view to use polygon test.
946 - Changed face-selection-mode rendering in camera view to cull back-faces.
947 - Changed shaders module to use diffusemap on doom3 shaders with no qer_editorimage.
948
949 28/08/2004
950 SPoG
951 - Fixed undefined-behaviour bug causing a crash with gcc optimisation.
952 - Fixed opengl extension support on linux.
953 - Added support for half-life .fgd entity-definitions.
954 - Fixed loading of half-life maps with texture-names containing '{'.
955
956 26/08/2004
957 SPoG
958 - Updated win32 install to use gtk+-2.4.7 and gtk-wimp-0.6.2.
959 - Removed 'unknown model type: ""' and 'Texture load failed: ""' errors.
960 - Changed pivot-point calculation to use entity-origin for fixed-size entities.
961 - Fixed errors drawing selection-rectangle in floating-windows layout.
962 - Fixed shortcuts becoming disabled in floating-windows layout.
963 - Removed snap-to-integer on entity angle/angles/scale keys.
964 - Fixed dragging of doom3 brush-entities.
965 Michael Schlueter
966 - Fixed gcc compiler error and warnings.
967 - linux installer fixes.
968
969 25/08/2004
970 Michael Schlueter
971 - Changed linux build system to copy '$GAME.game/*' for installer.
972 - Changed linux installer to use 1.5's module set.
973 - Removed optimisation from linux build to fix optimiser-related crash.
974 - Added Doom3 support to linux installer.
975 SPoG
976 - Changed texdef export to not snap shift/rotate to integer.
977
978 17/08/2004
979 SPoG
980 - Fixed texture-browser height update bug.
981 - Changed texture-browser to show only the texture-set selected from the menu.
982 - Fixed bug loading quake maps.
983
984 16/08/2004
985 SPoG
986 - Fixed shortcuts for shift/rotate/scale-texture on patches.
987 - Fixed patch-inspector rows/cols combos not being cleared between selections.
988 - Changed entity/brush counts to use counters instead of polling every second.
989 - Changed archivewad module to check lump types and ignore non-miptex files.
990 - Added support for worldcraft/hammer half-life map format.
991
992 15/08/2004
993 SPoG
994 - Added doom3 md5mesh loader.
995 - Added support for doom3 entityDef 'model' key.
996 - Changed textures-menu to show/load only shaders in the form 'textures/<menu-item>/*'.
997 - Fixed texture-browser height calculation bug.
998 - Added support for doom3 entityDef 'editor_var *' key.
999 - Fixed support for patchDef3 subdivision settings.
1000
1001 14/08/2004
1002 Chronos
1003 - Added doom3 light_radius and light_center rendering.
1004 SPoG
1005 - Disabled default-shaders for doom3.
1006 - Added one-click dragging of vertices/edges/faces on brushes and patches.
1007 - Fixed detail flag being lost on brush-clone or save-as.
1008
1009 12/08/2004
1010 SPoG
1011 - Fixed workzone being invalidated when a brush is deleted.
1012 - Fixed pivot updates when switching from translate-tool to rotate-tool.
1013 - Fixed crash in misc_model.
1014 - Changed file_dialog to show '*.*' when pattern is not specified.
1015 - Added undo support for patch-inspector XYZUV tweaking.
1016 - Removed 'Apply'/'Done' buttons from patch-inspector.
1017
1018 11/08/2004
1019 redfella
1020 - Converted RTCW entities.def to xml format.
1021 SPoG
1022 - Added support for "name" key for doom3 entities.
1023
1024 10/08/2004
1025 SPoG
1026 - Added support for loading text files from VFS archives.
1027
1028 09/08/2004
1029 SPoG
1030 - Changed .map writer to always use decimal notation for floats.
1031 - Added filtering of monster_clip/full_clip/player_clip.
1032 - Added support for inheritance in doom3 entity-definitions.
1033 - Fixed doom3 patchDef2 material-name import/export.
1034
1035 06/08/2004
1036 SPoG
1037 - Doom3 support:
1038   - Map load/save.
1039   - Materials parsing.
1040   - entityDef parsing.
1041   - Fixed brush-primitives texturing bug.
1042   - Added texture-lock for brush-primitives texturing on all transforms.
1043   - Added support for model/rotation/origin keys on func_ entities.
1044 - Added DDS image module.
1045
1046 03/08/2004
1047 SPoG
1048 - Fixed copy/paste copying all brushes of an entity when only one is selected.
1049 - Fixed discrete-camera-movement shortcuts becoming disabled after using freemove-camera.
1050
1051 27/07/2004
1052 Shallow
1053 - Converted ET entities.def to xml format.
1054
1055 26/07/2004
1056 SPoG
1057 - Fixed SI when not in face-selection mode.
1058 - Changed patch-create-prefab to use current workzone.
1059 - Changed engine attribute to be optional in game-description.
1060
1061 24/07/2004
1062 SPoG
1063 - Changed module server to support wildcard modules.
1064 - Cleaned up docs/developer, added README.
1065 - Removed old TODO.
1066
1067 23/07/2004
1068 Shamus
1069 - Initial version of textool.
1070 MindLink
1071 - Fixed const bug for vs.net 2005 compiler.
1072
1073 22/07/2004
1074 SPoG
1075 - Fixed copy/paste and export-selected failing to export stuff.
1076
1077 19/07/2004
1078 SPoG
1079 - Updated win32 setup scripts for q1 entity definitions.
1080
1081 18/07/2004
1082 SPoG
1083 - Updated win32 setup scripts.
1084 - Fixed bug loading 8-bit bmp with <256 palette entries.
1085 - Added support for loading textures from arbitrary locations.
1086 - Changed shaders module to load notex/shadernotex from bitmaps/ in .bmp format.
1087 - Fixed bugs in brush-primitives texdef code.
1088
1089 17/07/2004
1090 SPoG
1091 - Added STV:EF support to win32 installer.
1092 - Moved hardcoded game-specific configuration stuff into .game files.
1093
1094 16/07/2004
1095 SPoG
1096 - Fixed crash bug in brush edge/vertex/face selection.
1097
1098 15/07/2004
1099 SPoG
1100 - Moved .def files from <enginepath>/<basegame>/scripts/ to <radiantpath>/<gamefilename>/<game>/.
1101 - Changed entity inspector UI to be driven by entities xml.
1102
1103 14/07/2004
1104 SPoG
1105 - Fixed map load/save in brusb-primitives mode.
1106 - Added files required to run in brush-primitives mode.
1107 - Added support for changing engine-path while a map is loaded.
1108
1109
1110 11/07/2004
1111 SPoG
1112 - Changed entity inspector to support custom UI for each entity-class.
1113
1114 10/07/2004
1115 SPoG
1116 - Added support for experimental xml version of .def format.
1117 - Rewrote token parser.
1118 - Rewrote .def parser.
1119 - Fixed failure to read show-workzone preference.
1120 - Refactored quake3 entities module.
1121
1122 03/07/2004
1123 SPoG
1124 - Changed QE-style Drag tool to move as well as resize.
1125 - Fixed shortcuts becoming disabled.
1126 - Fixed loading file types with upper-case extensions.
1127
1128 30/06/2004
1129 AcidDeath
1130 - Added support for plugin submenus.
1131
1132 27/06/2004
1133 SPoG
1134 - Added build-menu-command editing.
1135 - Fixed texture-object reshuffle caused by changing gamma.
1136 - Refactored vfs/shaders/renderstates/eclass/texturemenu unrealise/realise systems.
1137
1138 26/06/2004
1139 SPoG
1140 - Added printf-formatting support to output streams.
1141 - Added error/warning printing to xml parser.
1142 - Changed build-menu xml format to allow easier editing.
1143 - Added sample plugin.
1144
1145 25/06/2004
1146 SPoG
1147 - Changed paste and import-map to select pasted/imported entities and world brushes.
1148
1149 24/06/2004
1150 SPoG
1151 - Changed create-entity API to use eclass instead of classname.
1152 - Changed nodes with unknown entity types to use a group-entity if the node has children.
1153
1154 18/06/2004
1155 SPoG
1156 - Changed image-loaders interface to use a file object instead of VFS.
1157 - Changed model-loader interface to support in-place model reloading.
1158 - Changed picomodel-loader module to support configuration of suppported model types in synapse.config.
1159 - PicoModel: added support for loading models from an abstract input stream.
1160
1161 14/06/2004
1162 SPoG
1163 - Refactored texture browser.
1164 - Removed GLWindow.
1165 - Fixed mousewheel movement in camera window.
1166
1167 13/06/2004
1168 SPoG
1169 - Added load-entire-wad from textures menu in Quake/HL mode.
1170 - Fixed bug with writing negative integers to .map format.
1171 - Fixed texture-browser hide-unused to show only in-use shaders. 
1172 - Fixed texture-browser scrollbar positioning and origin-clamping.
1173 - Fixed prompting to save unchanged new maps.
1174 - Changed unsaved-changes message box default to "Yes, save" instead of "OK, don't save".
1175 - Changed all message boxes to appear centrally.
1176 - Removed minimize/maximize buttons from all message boxes.
1177
1178 12/06/2004
1179 SPoG
1180 - Disabled shortcut keys during drags.
1181 - Fixed window updates for edge/vertex multi-selection.
1182 - Added apply/cancel on enter/escape for texture-browser filter entry.
1183 - Changed undo system to use explicit start/finish pair to specify undoable operations.
1184 - Changed undo system to print undoable command after command completion instead of before.
1185 - Added printing of movement parameters for translate/rotate manipulator drags.
1186 - Changed brush-subtract to not delete the selection after subtracting.
1187 - Fixed texture browser to not display textures if only in-use by nodes in the undo-queue.
1188 - Fixed another workzone-update performance issue causing area-selection to be slow.
1189 - Added code to brush build-B-Rep to handle duplicate edges.
1190
1191 10/06/2004
1192 SPoG
1193 - Added lazy evaluation of local->world transforms and world-space AABBs.
1194 - Added shortcut key for translate mode, default 'W'.
1195 - Added toolbar buttons for edge/face/vertex modes.
1196 - Changed Escape shortcut to deselect-components if components are selected.
1197
1198 02/06/2004
1199 SPoG
1200 - Fixed performance bug with workzone updates not being lazily evaluated.
1201 - Fixed brush edge-graph bug by removing degenerate winding edges.
1202
1203 01/06/2004
1204 SPoG
1205 - Added mode information to status bar.
1206 - Added console feedback describing undoable commands executed.
1207 - Fixed assertion failures on updating degenerate edge/vertex selections.
1208 - Fixed detail brushes turning structural when clipped.
1209
1210 31/05/2004
1211 SPoG
1212 - Added support for more than one edge/vertex selected per brush.
1213
1214 29/05/2004
1215 SPoG
1216 - Refactored groupdialog - decoupled notebook from console/textures/entity pages.
1217 - Fixed crash in patch tesselator.
1218 - Fixed floating windows startup crash.
1219 - Fixed null texture name for patches.
1220
1221 28/05/2004
1222 SPoG
1223 - Hide arrows on translate manipulator when obscured by square part.
1224 - Workaround for main window not being brought to front when a floating window is closed.
1225 - Fixed rendering of selected components of degenerate brush faces.
1226 - Fixed double typedef in picomodel.
1227 - Fixed bug in allocator stuff.
1228 - Fixed up clipper tool button state.
1229 - Added workzone updates when selection bounds change.
1230 - Fixed transient setting on floating inspector windows.
1231
1232 27/05/2004
1233 Tr3b
1234 - Fixed gcc build errors.
1235 SPoG
1236 - Fixed crash bug in game selection dialog.
1237
1238 26/05/2004
1239 SPoG
1240 - Cleaned up project settings.
1241 - Changed autosave/snapshots to only save modified maps.
1242 - Refactored build menu.
1243
1244 23/05/2004
1245 SPoG
1246 - Fixed minor picomodel ase loader smoothing-groups bug.
1247
1248 19/05/2004
1249 SPoG
1250 - Allocator system improvements, fixed warnings
1251
1252 18/05/2004
1253 SPoG
1254 - PicoModel: added support for per-vertex smoothing-group, used in generation of normals.
1255 - PicoModel ASE loader: added support for per-face 'MESH_SMOOTHING' id.
1256 - PicoModel: changed normal generation code to create smooth normals across texcoord/colour discontinuities.
1257 - Fixed cosmetic menu bug.
1258 - Fixed file handle leak in tga loader.
1259 - Added experimental allocator system.
1260
1261 15/05/2004
1262 Tr3b
1263 - Fixed gcc build errors.
1264
1265 11/05/2004
1266 SPoG
1267 - Fixed version.h custom build step on win32
1268 - Refactored preferences dialog to eliminate dependencies on other modules.
1269 - Redesigned preferences dialog ui layout.
1270
1271 06/05/2004
1272 SPoG
1273 - Refactored texture browser.
1274
1275 05/05/2004
1276 SPoG
1277 - Upgraded win32 gtk2 version to 2.4.1.
1278 - Migrated from GtkCombo to GtkComboBox.
1279 - Texture browser improvements.
1280 - Fixed malloc/free mismatch bug.
1281
1282 05/05/2004
1283 SPoG
1284 - Refactored surface inspector and texture browser.
1285
1286 02/05/2004
1287 Nurail
1288 - Added imageq2 module with support for quake2 and heretic2 texture formats: wal, m8, m32.
1289
1290 30/04/2004
1291 SPoG
1292 - Changed texture window not to auto-scroll when selecting faces.
1293 - Changed surface inspector to apply shader seperately from shift/scale/rotate.
1294 - Changed selected face tracking to use separate selection list.
1295
1296 26/04/2004
1297 SPoG
1298 - Added per-file change tracking - only modified (unsaved) files are saved by SaveMap().
1299
1300 18/04/2004
1301 SPoG
1302 - Fixed texture-increment-matches-grid.
1303 - Changed selecting a texture to only change the shader on the selected brushes.
1304 - Changed 'Axial' button in surface inspector to reset the texdef for selected brushes/faces.
1305 - Removed MAX_TEXTUREDIRS limit.
1306
1307 11/04/2004
1308 SPoG
1309 - OS library module added to wrap calls to rename/unlink/access/stat.
1310 - OpenGL-view selection tests constrained to current window.
1311 - Cleaned up OpenURL.
1312 - Added jk2 and sof2 support to win32 installer.
1313
1314 09/04/2004
1315 TTimo
1316 - update the OSX setup / .info generation code
1317
1318 08/04/2004
1319 SPoG
1320 - Added integer quantisation for brush edge/vertex drags to fix FP-drift on planes.
1321 TTimo
1322 - fix for scons 0.95
1323 - re-enable Python >= 2.1 version check
1324 - OSX 10.3: remove obsolete dlsym_auto_underscore (bug #920)
1325 - OSX: disable q2 tools build (broken thread code)
1326
1327 07/04/2004
1328 SPoG
1329 - Moved profile.cpp into a separate static library.
1330
1331 06/04/2004
1332 SPoG
1333 - Refactored preferences to be more modular.
1334 - Fixed preferences being corrupted if a crash occurs during preference saving.
1335 - Refactored window position saving.
1336 - Fixed bug in radio button creation in preferences dialog.
1337
1338 24/03/2004
1339 SPoG
1340 - Changed surface inspector to unfocus after pressing escape or return, to enable shortcuts.
1341 - Added refresh of surface inspector for shift/scale/rotate-texdef shortcuts.
1342 - Fixed bug causing some operations to be applied twice.
1343
1344 21/03/2004
1345 SPoG
1346 - Added depth-test and normalisation for translate-manipulator rendering.
1347 - Added basic clipper-preview rendering.
1348
1349 18/03/2004
1350 SPoG
1351 - Added maya-style arrow-heads to translate manipulator.
1352 - Changed square part of translate manipulator to be viewplane-oriented.
1353 - Changed square part of translate manipulator to take priority for selection.
1354
1355 15/03/2004
1356 SPoG
1357 - Added recalculation of pivot-point when grid size changes.
1358 - Changed win32 SHGetFolderPath to link with shfolder.lib instead of shell32.lib.
1359 - Fixed failure to recover brushes from an invalid state.
1360
1361 14/03/2004
1362 SPoG
1363 - Improved event handling to make manipulator-dragging smoother in complex scenes.
1364 - Refactored camera window camera-movement handling.
1365
1366 06/03/2004
1367 SPoG
1368 - Fixed vertex/edge undo failing to update selected-vertex position.
1369
1370 29/02/2004
1371 SPoG
1372 - Re-enabled next-xy-view in floating windows mode.
1373 - Reinstated light-radius rendering.
1374 - Added Wolfenstein support to win32 setup.
1375
1376 24/02/2004
1377 SPoG
1378 - Changed create-brush-prism to use correct dimension for prism radius.
1379 - Changed freelook selection to use window-centre position.
1380
1381 22/02/2004
1382 SPoG
1383 - Optimised undo for adding/removing scenegraph nodes.
1384 - Changed entity-list view to sort the tree by name.
1385
1386 18/02/2004
1387 SPoG
1388 - Moved default shaderlist to <AppPath>/<GameFileName>/<GameName>/default_shaderlist.txt
1389 - Moved user shaderlist to <AppData>/<Version>/<GameFileName>/<GameName>/shaderlist.txt
1390
1391 11/02/2004
1392 SPoG
1393 - Refactored clipboard copy/paste code to allow re-use.
1394
1395 10/02/2004
1396 SPoG
1397 - Fixed false-positive-intersection bug in CSG subtract algorithm.
1398
1399 07/02/2004
1400 SPoG
1401 - SceneGraph: Refactored per-instance functionality.
1402 - Fixed intermittent culling bug caused by bad bounding boxes.
1403 - Fixed missing ToggleCubicClip shortcut.
1404 - Removed modal buttons from Surface Inspector.
1405 - Changed Surface Inspector keys:
1406   - Escape: revert not-yet-committed values to previous state.
1407   - Enter: commit not-yet-committed values immediatly.
1408 - Changed Surface Inspector to update when selection changes.
1409
1410 31/01/2004
1411 SPoG
1412 - Cleaned up functional.h template usage with typedefs.
1413 - Fixed autosave path.
1414 - Added q1 component to installer.
1415 - Added radiant_manual component to installer.
1416 - Added q3-example-maps package to installer.
1417
1418 29/01/2004
1419 SPoG
1420 - Added error reporting for module system initialisation failure.
1421 - Added MSI package creation tools in setup/win32.
1422   note: requires MSI SDK binaries in http://zerowing.idsoftware.com/radiant-files/msi/msitools.zip
1423 - Added initial version of scripts to build basic win32 setup.
1424
1425 26/01/2004
1426 SPoG
1427 - Added storing EnginePath for each game in local.pref.
1428 - Added EnginePath editing to prefs dialog.
1429 - Added vfs shutdown/init when gamename changes.
1430 - Added vfs shutdown/init when enginepath changes.
1431
1432 25/01/2004
1433 SPoG
1434 - Fixed filtering updates.
1435 - Moved default bsp menu to <AppPath>/<GameFileName>/default_build_menu.xml
1436 - Moved user bsp menu to <AppData>/<Version>/<GameFileName>/build_menu.xml
1437 - Moved synapse.config to <AppPath>/<GameFileName>/synapse.config
1438 - Moved game-specific .xlink files to <AppPath>/<GameFileName>/*.xlink
1439
1440 25/01/2004
1441 SPoG
1442 - Redesigned filter system:
1443   - Filtered status updated when filterable attributes change.
1444   - Supports per-brush-face filtering.
1445 - Removed long-dead project-settings stuff:
1446   - Moved gamemode and gamename storage into local.pref temporarily.
1447   - Moved bsp commands over to a new format, disabled gui editing for now.
1448
1449 20/01/2004
1450 SPoG
1451 - Changed win32 Application Data path lookup to use win32 API instead of getenv.
1452
1453 14/01/2004
1454 SPoG
1455 - Fixed main menu mnemonics.
1456 - Fixed crash on exit after viewing pointfile.
1457
1458 13/01/2004
1459 SPoG
1460 - Fixed not always resetting 
1461 component-mode when selection is cleared.
1462
1463 11/01/2004
1464 Tr3B
1465 - Added parse/write support for BrushDef3 and PatchDef3.
1466   Requires editing synapse.config to enable.
1467 SPoG
1468 - Rearranged menus:
1469   File = new/open/import/export
1470   Edit = manipulate scene hierarchy and selection
1471   View = toggle entityinspector/entitylist/surfaceinspector/camera/xy
1472     edit camera/xy parameters
1473     filters/hideshow/region
1474   Modify = transform scene elements
1475   Build = bsp menu
1476 - Fixed Brush-Primitives support:
1477   Requires editing synapse.config to enable.
1478   Supports load/save of BP mapfiles, and editing BP texdefs in surface inspector
1479   (Not yet possible to convert between formats).
1480   
1481 15/12/2003
1482 SPoG
1483 - Changed user-prefs to be stored in user-profile directory on win32.
1484
1485 14/12/2003
1486 SPoG
1487 - Fixed entitylist window visibility tracking.
1488 - Implemented find/replace-shader for patches.
1489 - Changed get-texture-from-selected to update find/replace-shader dialog.
1490 - Implemented reparent-selected for more than one selected node.
1491 - Added checks to stop assignment of invalid texture names.
1492 - Fixed uninitialised texture-compression setting.
1493 - Fixed bsp menu.
1494
1495 ------- spog_branch merged to trunk
1496
1497 10/12/2003
1498 SPoG
1499 - Ported imagehl module.
1500 - Ported imagepng module.
1501
1502 03/12/2003
1503 SPoG
1504 - Changed brush winding generation to use use double precision planes.
1505 - Fixed tracking of modifier key state.
1506
1507 29/11/2003
1508 SPoG
1509 - Replaced mathlib with c++ vector/matrix library.
1510 - Added expression-templates for common vector/matrix operations.
1511
1512 21/11/2003
1513 SPoG
1514 - Refactored component-selection stuff.
1515 - Ported m4x4_t library to c++ Matrix4.
1516
1517 16/11/2003
1518 SPoG
1519 - Changed shortcuts.ini to be written automatically.
1520 - Moved more prefs into specific modules.
1521 - Changed c++ NULL usage to 0 for maximum portability.
1522
1523 11/11/2003
1524 SPoG
1525 - #include cleanup.
1526 - Added debug output/assert for module initialisation.
1527
1528 09/11/2003
1529 SPoG
1530 - Refactored status bar stuff.
1531 - Refactored window updates to use closures.
1532 - General cleanup and refactoring.
1533
1534 08/11/2003
1535 SPoG
1536 - Increased priority of window redraw events.
1537 - Ported model module to new module system.
1538
1539 07/11/2003
1540 SPoG
1541 - Refactored window updates.
1542
1543 05/11/2003
1544 SPoG
1545 - Changed menubar/toolbars to be non-detachable.
1546 - Fixed empty-undos created when left-clicking in XY window.
1547 - Refactored camera modelview/projection matrix updates. 
1548 - Moved application-specific code out of mainframe.cpp.
1549 - Reinstated brush/entity count in statusbar.
1550
1551 04/11/2003
1552 SPoG
1553 - Reinstated instant status-bar updates.
1554
1555 30/10/2003
1556 SPoG
1557 - Fixed crosshair cursor in clipper mode.
1558
1559 29/10/2003
1560 SPoG
1561 - Changed camera to maintain valid projection/modelview matrices.
1562 - Moved manipulator-transform update from frustum class to selection system.
1563 - Removed frame-rate dependency in 3d-window freelook.
1564
1565 27/10/2003
1566 SPoG
1567 - Smoothed out xy-window mouse-chasing.
1568 - Changed mouse-chasing to occur 16 pixels inside the window edges.
1569 - Changed xy-window to maintain valid projection/modelview matrices.
1570 - Fixed invalid workzone generated when deselecting with no selection.
1571
1572 26/10/2003
1573 SPoG
1574 - Ported changes from trunk between rev 3818 and rev 4036.
1575
1576 25/10/2003
1577 SPoG
1578 - Refactored xy-window mouse event handling.
1579
1580 22/10/2003
1581 SPoG
1582 - Fixed freelook focus-out event.
1583 - Changed selection mouse event handling to use modifiers on button-release.
1584
1585 21/10/2003
1586 SPoG
1587 - Refactored all mouse event handling for camera window.
1588 - Changed menus/toolbars/accelerators to use anonymous closures.
1589
1590 20/10/2003
1591 SPoG
1592 - Fixed get-pointer-in-screen-coordinates on win32.
1593 - Changed patch prefs to use preference-system module.
1594 - Fixed selection of side-on faces.
1595 - Changed brush rendering to avoid glPushClientAttrib - workaround for ATI driver issue.
1596
1597 19/10/2003
1598 SPoG
1599 - Changed VFS directory initialisation to occur after module initialisation.
1600 - Changed load-preferences to occur after module initialisation.
1601 - Added preference-system module.
1602 - Changed undo prefs to use preference-system module.
1603 - Restored splash screen with non-intrusive behaviour.
1604 - Cleaned up main-toolbar creation.
1605 - Fixed floating windows behaviour when main window is minimised.
1606 - Changed shader-list parsing to use new script tokeniser.
1607 - Changed deprecated code using GtkPixmap to use GtkImage.
1608 - Removed bitmap-loading from core.
1609 - Removed pc-speaker beep on map-save.
1610
1611 17/10/2003
1612 SPoG
1613 - Fixed crash when trying to undo on an empty undo queue.
1614 - Refactored gtkdlgs, using helper functions to create common widgets.
1615 - Changed Dialog class to use std::list for data.
1616
1617 13/10/2003
1618 SPoG
1619 - Refactored entity inspector.
1620 - Removed miscellaneous unused functions.
1621 - Refactored qe3 header.
1622 - Moved texture-window preferences into texwindow.cpp.
1623
1624 12/10/2003
1625 SPoG
1626 - Moved layout-mode dependant code into main-frame creation.
1627 - Replaced prefs system with new import/export system.
1628 - Fixed gcc3.3 build errors.
1629
1630 11/10/2003
1631 SPoG
1632 - Moved unnecessary methods from MainFrame into free functions.
1633 - Removed unsupported toolbar buttons and menu items.
1634 - Changed misc->gamma to not require restart.
1635 - Fixed unmaximised window-size when loading main window maximised.
1636 - Fixed saving of rotate increment preference.
1637
1638 10/10/2003
1639 SPoG
1640 - Fixed keyboard shortcuts intercepting input to texture-subsets text-entry.
1641
1642 09/10/2003
1643 SPoG
1644 - Fixed gcc3 build errors, compiled and tested on linux.
1645
1646 08/10/2003
1647 SPoG
1648 - Fixed brush snap-to-grid creating huge coordinate values.
1649 - Fixed minor bug in selection menu.
1650
1651 07/10/2003
1652 SPoG
1653 - Cleaned up MainFrame.
1654 - Added quantisation of plane pts when dragging.
1655 - Fixed create-empty-brush bug.
1656
1657 06/10/2003
1658 SPoG
1659 - Moved control of camera keyboard-accelerators into camera window module.
1660
1661 05/10/2003
1662 SPoG
1663 - Separated keyboard-accelerators from menu items, using functors.
1664 - Completed factoring out HandleCommand.
1665
1666 04/10/2003
1667 SPoG
1668 - Changed 4-way-split mode to automatically reposition separators when window size changes.
1669 - Fixed gtk error in floating-entity/textures/console window.
1670 - Fixed position of console horizontal pane separator.
1671
1672 03/10/2003
1673 SPoG
1674 - Work-in-progress factoring out HandleCommand.
1675
1676 02/10/2003
1677 SPoG
1678 - Fixed pink icons on main window on win32.
1679 - Replaced g_bIgnoreCommands with signal block/unblock.
1680 - Refactored MainFrame startup.
1681
1682 01/10/2003
1683 SPoG
1684 - Fixed entity-window redraw on selection change.
1685 - Moved control over VFS init/shutdown to module system.
1686 - Fixed failure to release translucency render-states.
1687 - Added support for realise/unrealise of all opengl texture objects.
1688 - Refactored startup/shutdown logic.
1689   Changed quit commands to do nothing but call gtk_main_quit().
1690   Added code after gtk_main() to destroy stuff.
1691 - Changed 25ms timeout-handler to an idle-handler for window updates.
1692   (reduces redraw-request response time on fast machines)
1693 - Moved gl-shutdown control to glwidget.
1694   Textures are realised/unrealised when the shared context is created/destroyed.
1695 - Fixed lack of a valid gl context when unrealising gl textures.
1696
1697 30/09/2003
1698 SPoG
1699 - Added support for translucent entity rendering.
1700
1701 29/09/2003
1702 SPoG
1703 - Changed all global modules to use GlobalModule helper templates.
1704 - Ported qgl.c to c++.
1705 - Changed win32 project to dynamic-link with opengl32.lib.
1706
1707 28/09/2003
1708 SPoG
1709 - Added new experimental xml preference import/export system.
1710 - Refactored dialog base class:
1711   Moved common dialog-element-creation code into helper functions.
1712   Changed UpdateData to use per-element callback functions.
1713 - Refactored preferences dialog.
1714
1715 26/09/2003
1716 SPoG
1717 - Reversed winding order for circle primitives.
1718
1719 25/09/2003
1720 SPoG
1721 - Fixed slow selection response in large maps.
1722
1723 21/09/2003
1724 SPoG
1725 - Added sharing of global modules within a client.
1726 - Added quake map module and wal image module.
1727 - Ported mip image module and hlw image module.
1728 - Cleaned up imagehl module.
1729 - Fixed crash in pcx image module.
1730 - Rewrote md3 model module.
1731 - Ported mdl, md2 and mdc model modules.
1732 - Added filtering of q1/q2 clip brushes.
1733 - Added ati-crash-workaround rendering path.
1734 - Upgraded to gtk+-2.2.4 on win32:
1735   Fixed capslock affecting shortcut-keys.
1736 - Upgraded to gtkglext-1.0.4 on win32.
1737 - Fixed copy/paste.
1738 - Added shortcut-key support to entity treeview.
1739
1740 17/09/2003
1741 SPoG
1742 - Fixed failure to call vfsFreeFile on an empty buffer.
1743 - Fixed calling convention for dlls in new module system.
1744 - Changed map.cpp to support maps without a worldspawn entity.
1745 - Fixed crash on attempting to clone a map root.
1746 - Added filter-update calls after loading or cloning stuff.
1747 - Fixed reference cache failing to save a file.
1748
1749 16/09/2003
1750 SPoG
1751 - Refactored client-side module system code for direct module access.
1752 - Changed shaders, vfs, model, brush, patch and entity module interfaces
1753   to use abstract base class.
1754 - Removed unused functions from shaders and vfs interfaces.
1755
1756 15/09/2003
1757 SPoG
1758 - Removed synapse dependencies for win32 makefiles.
1759 - Added find-first-module-of-type helper function.
1760
1761 14/09/2003
1762 SPoG
1763 - Added new lightweight module system:
1764   Initialises each module the first time it is requested.
1765   Does not allow configurations with cyclic runtime dependencies.
1766   Provides templates for simple type-safe client-side implementation.
1767   Requires no client-side linkage.
1768 - Split radiant API into multiple APIs:
1769   core, textures, scenegraph, selection, renderstate, filters, filetypes.
1770 - Ported radiant, core, mapq3, mapxml, md3model, entity, shaders, image,
1771   vfspk3, archivewad, archivepak, archivezip to new module system.
1772
1773 11/09/2003
1774 SPoG
1775 - Removed edge and vertex integer-snapping during selection.
1776
1777 10/09/2003
1778 SPoG
1779 - Replaced map in referencecache.cpp with a hashtable.
1780 - Changed ReferenceCache interface to take a path string,
1781   which can be either absolute or relative.
1782
1783 08/09/2003
1784 SPoG
1785 - Cleaned up qertypes.h - split into multiple files.
1786 - Moved texdef stuff into itexdef.h.
1787 - Fixed shutdown destruction order bug. 
1788
1789 07/09/2003
1790 SPoG
1791 - Refactored texwindow.cpp.
1792   Moved texture management code into textures.cpp.
1793   Added textures api.
1794   Replaced globals from texwindow.h with accessor functions.
1795 - Cleaned up shaders module.
1796   Removed color-shader stuff.
1797   Rewrote shader-activation logic to use textures API.
1798   Removed appshaders API.
1799 - Refactored shutdown logic.
1800   Moved non-mainframe shutdown stuff into Radiant_Shutdown().
1801   Added deferred render-state realisation.
1802 - Fixed failure to create gl contexts in 16-bit mode for latest nvidia drivers.
1803 - Changed hashtable template to use traits parameter
1804   for case-insensitive hasher and keyequal functions.
1805 - Removed unused functions from qerplugin API.
1806
1807 02/09/2003
1808 SPoG
1809 - Refactored code to remove global-object accesses:
1810   Passing global objects as parameters to functions.
1811 - Refactored texwindow.
1812 - Moved synapse server out of pluginmanager.
1813   Changed pluginmanager to handle nothing but IPlugin stuff.
1814
1815 01/09/2003
1816 SPoG
1817 - Refactored scenelib.h, split into multiple files.
1818 - Refactored #includes related to scenelib.h.
1819 - Refactored preferences for xywindow and camwindow.
1820 - Refactored references to g_pParentWnd in xywindow and camwindow.
1821
1822 30/08/2003
1823 SPoG
1824 - Ported changes from trunk since 17/08/2003.
1825 - Ported all changes from bug800-spog_branch (vfs rewrite and q1 support).
1826
1827 29/08/2003
1828 SPoG
1829 - Refactored component-selection stuff.
1830 - Fixed selection-tracking bug in patches.
1831
1832 28/08/2003
1833 SPoG
1834 - Added support for line-strips to Selectors.
1835 - Fixed selection for entity treeview.
1836 - Refactored external-resource loading.
1837
1838 20/08/2003
1839 SPoG
1840 - Fixed snap-to-grid in edge and vertex modes.
1841 - Added a default model to use when a model load fails.
1842
1843 19/08/2003
1844 SPoG
1845 - Changed snap-to-grid to vastly reduce the possibility of creating an invalid plane.
1846
1847 17/08/2003
1848 SPoG
1849 - Ported changes from trunk since 01/08/2003.
1850
1851 12/08/2003
1852 SPoG
1853 - Changed entity key/value tracking to only track keys already added to the entity.
1854 - Fixed bug causing undo system to track scene changes during a queue-flush operation.
1855
1856 12/08/2003
1857 SPoG
1858 - Fixed bug in project settings bsp-commands display.
1859 - Fixed empty undos being created by rotation buttons.
1860 - Fixed rotation pivot for rotation buttons.
1861
1862 09/08/2003
1863 SPoG
1864 - Added property svn:eol-style=native to all text files.
1865 - Added property evn:eol-style=CRLF to all dsp and dsw files.
1866 - Partially ported bobtoolz to use new spog_branch module APIs.
1867 - Removed Sys_UpdateScene.
1868 - Added Map_Name() for access to currentmap variable.
1869 - Added initial drag-n-drop support for graph tree-model.
1870
1871 01/08/2003
1872 SPoG
1873 - Fixed uninitialised refcount in entity key class.
1874 - Fixed memory leak in shader parsing.
1875 - Added reference-counting holder for worldspawn node.
1876 - Moved string class and utilities into a new header in libs dir.
1877 - Fixed external-file-resource cache to use case-insensitive name compare on win32.
1878 - Fixed shaders to use case-insensitive name compare.
1879 - Fixed shader module to display SHADER_NOT_FOUND when appropriate.
1880 - Changed the default texture name to "NULL" instead of SHADER_NOT_FOUND.
1881 - Changed move-into-entity to perform parent-selection-to-last-selected-node.
1882 - Added a new implementation of GtkTreeModel operating directly on the scenegraph.
1883 - Fixed disable-screen-updates to queue update requests instead of ignoring them.
1884 - Merged from trunk (tag head-cvs2svn-2).
1885
1886 22/07/2003
1887 SPoG
1888 - Changed scale/flip-selection to use the manipulator as a pivot point.
1889 - Added OnShutdown callback for CSynapseClient, used in entity module.
1890 - Fixed console updates when loading maps/models.
1891
1892 20/07/2003
1893 SPoG
1894 - Added renderer support for qer_alphatest and qer_cull.
1895 - Merged 'picomodule' module into 'model' module.
1896 - Added rendering of area-selection rectangle.
1897
1898 19/07/2003
1899 SPoG
1900 - Merged from trunk.
1901
1902 18/07/2003
1903 SPoG
1904 - Disabled deleting classname key in entity inspector window.
1905 - Cleaned up some stuff in selection system.
1906 - Added basic versions of std::mem_fun and std::bind1st to function-object library.
1907
1908 10/07/2003
1909 SPoG
1910 - Implemented connect-entities.
1911
1912 09/07/2003
1913 SPoG
1914 - Completed local-space rotation manipulator.
1915 - Fixed cloning objects within a misc_model subgraph.
1916 - Fixed crash bug in loading certain models.
1917
1918 06/07/2003
1919 SPoG
1920 - Added function-object library header, similar to boost::function.
1921 - Changed undo system to improve performance.
1922 - Refactored entity inspector implementation.
1923
1924 22/06/2003
1925 SPoG
1926 - Refactored selection observing stuff.
1927 - Changed shader parsing to use new tokeniser.
1928 - Changed implementation of entities to use generic container.
1929 - Refactored entity wrapper system.
1930 - Fixed undo on delete/reset entity keys.
1931
1932 21/06/2003
1933 SPoG
1934 - Added rendering of target/targetname connection lines.
1935 - Moved entity and eclass stuff out of qertypes.h into ientity and ieclass.
1936 - Refactored entity_t to hide it behind Entity interface.
1937 - Removed global project settings entity.
1938 - Cleaned up bsp-command editing in project settings dialog.
1939
1940 17/06/2003
1941 SPoG
1942 - Fixed back-face-culling for selections by working in screen-space.
1943
1944 16/06/2003
1945 SPoG
1946 - Added workaround for nvidia driver opengl vertex arrays bug.
1947
1948 15/06/2003
1949 SPoG
1950 - Refactored Patch implementation.
1951 - Refactored scene graph system to allow multiple graph instances.
1952
1953 13/06/2003
1954 SPoG
1955 - Added snap-selected-components-to-grid for faces edges and vertices.
1956
1957 11/06/2003
1958 SPoG
1959 - Improved normal-quantisation code.
1960
1961 10/06/2003
1962 SPoG
1963 - Changed renderer vertex types to be struct instead of typedef'd array.
1964 - Added experimental quantisation of normals.
1965
1966 05/06/2003
1967 SPoG
1968 - Fixed intermittent crash in face-fit-texture.
1969 - Changed patch rendering to display components only in vertex mode.
1970
1971 02/06/2003
1972 SPoG
1973 - Added nameable interface for scene graph nodes.
1974 - Fixed undo for set-detail and set-structural.
1975 - Added rendering of arrow for angled entities.
1976
1977 01/06/2003
1978 SPoG
1979 - Fixed handling of invalid planes during brush b-rep build.
1980 - Refactored brush copy-construction/assignment.
1981 - Fixed lack of rebuild after removing empty faces.
1982 - Added lightjunior entity display.
1983 - Fixed display of spawnflags/info for selected entity.
1984 - Fixed update of entity window on setting spawnflags.
1985 - Fixed botclip filtering.
1986 - Fixed uninitialised alpha channel on jpg images by ignoring alpha.
1987
1988 31/05/2003
1989 SPoG
1990 - Cleaned up undo calls in brush and patch implementation.
1991 - Changed brush implementation to defer rebuilds until needed.
1992 - Fixed undo for find/replace shader.
1993 - Refactored brush implementation, removed empty-face list.
1994 - Fixed crash on loading unrecognised entities containing brushes.
1995 - Fixed crashes in renderer caused by state-stack underflow.
1996 - Fixed handling of invalid and duplicate planes during brush editing.
1997 - Fixed failure to save brush faces during save-as.
1998 - Refactored brush data members.
1999
2000 28/05/2003
2001 SPoG
2002 - Fixed crash on selecting stuff from entity list window.
2003
2004 27/05/2003
2005 SPoG
2006 - Fixed window title after save-as.
2007
2008 22/05/2003
2009 SPoG
2010 - Refactored selection system interface slightly.
2011 - Removed old brushwrapper stuff.
2012 - Fixed clipper-split-selection to keep both parts selected.
2013
2014 21/05/2003
2015 SPoG
2016 - Added select-faces-by-shader.
2017 - Fixed find/replace-shader.
2018
2019 19/05/2003
2020 SPoG
2021 - Fixed rotation on misc_model.
2022
2023 13/05/2003
2024 SPoG
2025 - Fixed lack of undo on create-n-sided-brush.
2026
2027 29/04/2003
2028 SPoG
2029 - Fixed per-face find/replace and per-face nudge rotation.
2030
2031 25/04/2003
2032 SPoG
2033 - Fixed find-brush.
2034 - Changed rotation buttons to use perfect precision for 90-degree rotations.
2035
2036 24/04/2003
2037 SPoG
2038 - Added find-dir-for-relative-filename and find-dir-for-absolute-filename to vfs.
2039 - Changed resource manager to handle per-mod resources using vfs.
2040 - Changed resource manager to allow resources with absolute paths.
2041 - Fixed selection-test behaving like an ellipse instead of a rectangle.
2042
2043 23/04/2003
2044 SPoG
2045 - Changed selection test to choose closest-to-cursor over closest-to-camera.
2046
2047 22/04/2003
2048 SPoG
2049 - Fixed reference counting on shaders loaded from a texture directory.
2050 - Fixed show-in-use and show-all shaders.
2051 - Fixed undo for patch-set-shader.
2052 - Changed shaders module to use STL map container instead of CShaderArray.
2053 - Fixed SelectAllOfType for entities and patches.
2054 - Cleaned up unused functions in shaders API.
2055 - Decoupled selecting a texture in texture window from applying a texture to selection.
2056
2057 21/04/2003
2058 SPoG
2059 - Fixed memory leaks in image loaders, texdef_t, csg subtract, picomodel module.
2060 - Fixed uninitialised memory references in renderer, texdef_t, eclass loader, undo system.
2061 - Refactored tga loader.
2062 - Cleaned up image module, enabled pcx and bmp loaders.
2063
2064 17/04/2003
2065 SPoG
2066 - Fixed shift-texture on selected brush faces.
2067 - Changed brush b-rep algorithm to have higher tolerance for similar planes.
2068 - Changed brush b-rep algorithm to always produce a valid connectivity graph.
2069 - Added setting/getting shader for patches.
2070
2071 16/04/2003
2072 SPoG
2073 - Fixed tracking of in-use shaders (though undo queue still keeps shader references).
2074 - Changed brush faces to store state in undo-system cleanly.
2075 - Fixed flush & reload shaders and sleep/wake.
2076 - Ensured that shaders are never leaked.
2077 - Fixed bool conversion warnings.
2078
2079 15/04/2003
2080 SPoG
2081 - Added clamping of planepts on export to nearest 65536th of 1 unit.
2082 - Changed m4x4 rotation functions to use double-precision for angles in radians.
2083 - Changed m4x4 quaternion rotation to use double-precision internally.
2084 - Changed float printing to use %g instead of %f (strips trailing zeros).
2085
2086 13/04/2003
2087 SPoG
2088 - Fixed brush import failing to update bounding boxes.
2089
2090 11/04/2003
2091 SPoG
2092 - Refactored Brush class into Brush, BrushInstance and BrushNode.
2093 - Fixed various flaws stopping brush b-rep algorithm from being 100% reliable.
2094
2095 02/04/2003
2096 SPoG
2097 - Changed manipulator to move to position of selected brush components.
2098
2099 01/04/2003
2100 SPoG
2101 - Fixed xml parser failing to resolve predefined entities.
2102
2103 31/03/2003
2104 SPoG
2105 - Fixed asserts in brush manipulation when creating invalid brushes.
2106 - Removed automatic update of current texdef.
2107 - Added Get Texture and Set Texture to textures menu.
2108
2109 29/03/2003
2110 SPoG
2111 - Fixed array template failing to free zero-sized allocations.
2112 - Changed clipper mode to behave as a component-editing-mode.
2113 - Removed right-click-to-drop-clip-point - use X and leftclick instead.
2114
2115 28/03/2003
2116 SPoG
2117 - Changed scene graph to sort objects in ascending order of creation time.
2118
2119 27/03/2003
2120 SPoG
2121 - Fixed bug in clone-selection causing only first selected brush to be cloned.
2122 - Optimised select-all for brush/patch components.
2123 - Changed edge/face/vertex toggles to toggle correctly.
2124
2125 26/03/2003
2126 SPoG
2127 - Removed win32/x dependencies from gl interface.
2128 - Removed win32/glib dependencies from core interface.
2129 - Replaced void* in gtk helper functions with forward-declared GtkWidget.
2130 - Changed gtk helper functions to return enumerated values instead of win32 IDOK.
2131 - Removed WINAPI macro for __stdcall from all interfaces.
2132 - Removed unnecessary dependencies from core stdafx/qe3 header.
2133
2134 25/03/2003
2135 SPoG
2136 - Changed class-level render states to be static for Brush and Patch.
2137 - Refactored brush implementation - breaking it up into smaller parts.
2138 - Added refcounted ptr template to track refcounts.
2139 - Fixed refcount bug introduced by new clone-selection.
2140 - Fixed warnings in brush implementation.
2141 - Cleaned up plugin interface header inclusion.
2142
2143 24/03/2003
2144 SPoG
2145 - Fixed crash on building unbounded brushes in release build.
2146 - Changed assertion failures to be non-fatal in release build.
2147 - Moved OS-specific gl headers into separate files.
2148 - Moved app-shaders interface into a separate file.
2149 - Cleaned up dependencies for brush implementation.
2150
2151 23/03/2003
2152 SPoG
2153 - Added per-instance selection of patch vertices.
2154 - Fixed per-instance vertex selection rendering on multiple instances.
2155 - Refactored patch/brush render code.
2156 - Changed manipulator transforms to convert to local space before applying.
2157 - Fixed selection test for picomodule meshes.
2158 - Fixed selection test winding order for triangles.
2159 - Fixed update of window title on new-map and load-map.
2160 - Changed selection to work with exactly side-on faces.
2161 - Refactored instance implementation to reduce code bloat.
2162 - Fixed map export always exporting root.
2163
2164 21/03/2003
2165 SPoG
2166 - Fixed external resource tracking to preserve uppercase characters in names.
2167 - Changed clone-selection to not use global copy/paste.
2168
2169 20/03/2003
2170 SPoG
2171 - Changed map-save to save all saveable files that the map references.
2172
2173 16/03/2003
2174 SPoG
2175 - Moved hashtable and hashfunc into libs.
2176 - Cleaned up renderer interface and selection interface.
2177 - Refactored frustum testing class.
2178
2179 12/03/2003
2180 SPoG
2181 - Moved winding-specific stuff from brush obj to winding obj.
2182 - Refactored filter subsystem to remove dependency on entity/brush/patch.
2183
2184 07/03/2003
2185 SPoG
2186 - Fixed crash when clicking cancel from patch cap-dialog.
2187 - Changed selection tests to ignore back-facing faces.
2188
2189 05/03/2003
2190 SPoG
2191 - Fixed failure to release cloned scene graph nodes.
2192 - Fixed selection manager failing to release render states.
2193 - Fixed eclass system failing to release render states.
2194
2195 04/03/2003
2196 SPoG
2197 - Fixed writing-past-end of vertex arrays in brush rendering.
2198 - Fixed releasing data stored in undo system when deleting undoables.
2199 - Fixed crash in misc_model when model fails to load.
2200 - Fixed undo for clone/rotate/flip/nudge/set-texture operations.
2201 - Cleaned up surface dialog.
2202
2203 01/03/2003
2204 SPoG
2205 - Changed clipper split-selection to keep result selected.
2206 - Cleaned up and finalised picomodule, adding to cvs.
2207
2208 28/02/2003
2209 SPoG
2210 - Cleaned up entity list window.
2211 - Fixed crash on freeing a map while entity list node is selected.
2212 - Fixed crash on clone/copy of externally referenced brushes.
2213 - Added multiple-selection support to entity list.
2214 - Added updating entity list selection display on selection changes.
2215
2216 26/02/2003
2217 SPoG
2218 - Added stl_warnings include.
2219 - Fixed tracking of map-modified-since-last-saved.
2220
2221 24/02/2003
2222 SPoG
2223 - Fixed missing map-release when map-load fails.
2224 - Changed map-rename (save-as) to flush undo queue.
2225 - Fixed bug in exporting selections.
2226
2227 23/02/2003
2228 SPoG
2229 - Fixed redo on changing misc_model "model" key.
2230
2231 22/02/2003
2232 SPoG
2233 - Changed undo interface to factor out global undo system.
2234
2235 21/02/2003
2236 SPoG
2237 - Started cleaning up Map subsystem.
2238
2239 20/02/2003
2240 SPoG
2241 - Added 'clone subgraph' feature to core, using direct xml import/export.
2242 - Added 'save' feature to reference cache.
2243 - Added scope timer object.
2244 - Changed scene graph interface to allow setting scene root.
2245 - Changed core to use reference cache to track current map.
2246 - Removed mapmodel module.
2247 - Fixed relative paths for loading maps as misc_model.
2248
2249 19/02/2003
2250 SPoG
2251 - Changed model/map modules to register their file types on load.
2252 - Added map module manager to support unlimited map loader modules.
2253
2254 18/02/2003
2255 SPoG
2256 - Changed vertex buffer template to support resizing.
2257 - Changed vertex buffer search algorithm to iterate instead of recurse.
2258
2259 17/02/2003
2260 SPoG
2261 - Fixed sorting bug with render-states.
2262 - Fixed colour state when disabling gl_color_array.
2263 - Fixed unterminated loop in scenegraph traversal.
2264 - Fixed freeing project entity twice on shutdown (infinite loop).
2265 - Fixed failing to destroy the scene graph on exit (oops).
2266
2267 07/02/2003
2268 SPoG
2269 - Added updating current texdef when a face is selected.
2270 - Fixed crash when creating a brush with duplicate planes.
2271
2272 06/02/2003
2273 SPoG
2274 - Fixed various issues with 'save region'.
2275 - Changed default current texdef to use game-specific scale.
2276 - Changed brush creation to use current texdef.
2277 - Changed clipper to use current texdef.
2278 - Fixed bug in selection counting for patch control points.
2279
2280 05/02/2003
2281 SPoG
2282 - Fixed reversed solid-selection-outline preference.
2283 - Finished factoring out face_t.
2284 - Added script token writer interface for map export.
2285 - Changed map export interface to use script token writer.
2286
2287 04/02/2003
2288 SPoG
2289 - Added depth-buffer-write enable/disable feature to renderer.
2290 - Changed Pointfile class to use renderer.
2291 - Continued factoring out face_t.
2292
2293 03/02/2003
2294 SPoG
2295 - Fixed temporary objects leaving dangling references in the undo system.
2296 - Changed import-map to not modify existing selection.
2297
2298 02/02/2003
2299 SPoG
2300 - Fixed frustum culling for transformed nodes.
2301 - Fixed hide/filter/region to work independently.
2302 - Added highlighting of selected brush faces in component mode.
2303 - Fixed bug detecting thin area-selection if dragged down or left.
2304 - Renamed brush_type to Brush.
2305 - Renamed face_type to Face.
2306 - Started factoring out face_t.
2307
2308 01/02/2003
2309 SPoG
2310 - Improved edge and vertex manipulation.
2311 - Removed unnecessary graph traversals for rendering/selection.
2312
2313 31/01/2003
2314 SPoG
2315 - Merged changes since last merge from merge-1_2_10-post to spog_branch.
2316 - Merged changes since last merge from HEAD to spog_branch.
2317 - Tagged HEAD after merging as 'merge-spog_branch-post'.
2318 - Added walker to merge sibling worldspawns.
2319 - Merged changes to Construct for PPC from trunk.
2320 - Fixed over-enthusiastic worldspawn merging.
2321 - Fixed misc_model "angle" key setting pitch instead of yaw.
2322 - Fixed entity set-key-value changing scene-graph topology.
2323
2324 30/01/2003
2325 SPoG
2326 - Added subgraph traversal feature to scenegraph traversal.
2327
2328 29/01/2003
2329 SPoG
2330 - Changed scene graph implementation to allow nested traversals.
2331
2332 28/01/2003
2333 SPoG
2334 - Fixed angles key order for misc_model.
2335
2336 27/01/2003
2337 SPoG
2338 - Fixed typo causing set-texture-of-selection to behave incorrectly.
2339
2340 26/01/2003
2341 SPoG
2342 - Replaced all tabs with spaces in CHANGES.
2343 - Fixed entity bounds updates for 'light'.
2344 - Fixed code that doesn't conform to c++ standard as enforced by gcc.
2345
2346 24/01/2003
2347 SPoG
2348 - Added missing file: icharstream.h.
2349 - Fixed bug with synchronisation of brush-face instance data.
2350 - Added .map format import/export interfaces.
2351 - Removed last remnants of IBrush.
2352 - Removed IPatch.
2353 - Moved walkers defined in in mainframe.cpp to appropriate places.
2354
2355 23/01/2003
2356 SPoG
2357 - Changed scenegraph traversals to use a compiled graph.
2358
2359 20/01/2003
2360 SPoG
2361 - Changed selection interface to hide per-instance data.
2362 - Added streaming tokeniser for .map format.
2363 - Changed mapq3 module to use streaming tokeniser.
2364 - Added xml stream interface for input and output.
2365 - Added xml stream parser based on libxml2 SAX.
2366 - Changed mapxml module to use xml stream input.
2367 - Changed brush and patch to use xml stream input.
2368 - Added xml stream writer.
2369 - Changed mapxml module to use stream output.
2370 - Changed brush and patch to use xml stream output.
2371
2372
2373 16/01/2003
2374 SPoG
2375 - Disabled pivot updates while selection is being manipulated.
2376 - Changed pivot calculation to use instanced world-bounding-box.
2377 - Fixed crash bug in PositionView.
2378
2379 14/01/2003
2380 SPoG
2381 - Merged with branch merge-1_2_10-post at tag spog_merge_merge-1_2_10-post
2382 - Removed 10k+ lines of unused #if 0 code.
2383 - Removed unused declarations in qe3.h.
2384 - Removed brush and face types from qertypes.h.
2385 - Removed plugin API stuff dependant on brush type.
2386 - Added per-instance selection for brush faces.
2387
2388 08/01/2003
2389 SPoG
2390 - Added selection counters for primitive/component modes.
2391 - Added face-drag mode (default shortcut key = F).
2392 - Added face-centre-point rendering/selection/editing.
2393
2394 07/01/2003
2395 SPoG
2396 - Changed selection to work per-instance.
2397
2398 06/01/2003
2399 SPoG
2400 - Changed selector interface to allow per-entity selection tests.
2401
2402 06/12/2002
2403 SPoG
2404 - Added selection-test and selector objects to clean up selection system.
2405 - Unified key modifiers for selection in both primitive and component modes.
2406 - Added mapmodel module to load .map and .xmap as misc_model.
2407
2408 02/12/2002
2409 SPoG
2410 - Added debug rendering of a selection test.
2411 - Fixed bugs in triangle/line clipper, making selection work properly.
2412 - Refactored selection system interface.
2413 - Added undo for texture nudge.
2414 - Fixed minor render-state bug.
2415
2416 29/11/2002
2417 SPoG
2418 - Optimised wireframe drawing of brushes with back-face culling.
2419 - Optimised brush-winding generation.
2420 - Changed winding generation to be more robust with large world extents.
2421 - Fixed crashes with unbounded-face and degenerate-edge cases.
2422
2423 20/11/2002
2424 SPoG
2425 - Completed rotation manipulator.
2426 - Added translation manipulator for the default editing mode.
2427 - Changed XY mouse-chaser speed to depend on distance mouse moved outside window.
2428
2429 15/11/2002
2430 SPoG
2431 - Added initial version of maya-style manipulators - rotation manipulator.
2432
2433 07/11/2002
2434 SPoG
2435 - Fixed false asserts in Brush ConstructPrefab.
2436 - Undo system optimisation - uses binary-sorted container to speed up finding already-added objects.
2437 - Fixed crash when transforming objects which don't support edit_interface.
2438 - Fixed clone command to nudge the selection after cloning.
2439 - Fixed clipper to remove brushes that are completely behind the clip plane.
2440
2441 06/11/2002
2442 SPoG
2443 - Brushes: cleaned up per-face operations to use face visitor pattern.
2444 - Fixed setting brush face texdef, with fully functioning undo on individual brush faces.
2445
2446 04/11/2002
2447 SPoG
2448 - Refactored renderer to two objects, camera and XY renderer - XY uses entity shaders.
2449 - Experimental pivot object.. work-in-progress.
2450 - Modified scene-graph instance-caching to maintain multiple instances within nodes.
2451 - Fixed undo bug, deleting a void* doesn't call the destructor.
2452 - Rewrote filters system to work with scene graph system.
2453 - Cleaned up quake entity module to provide same functionality as before.
2454 - Refactored render-state cache to use generic hashtable and reference-cache templates.
2455
2456 19/10/2002
2457 SPoG - spog_branch - experimental - work-in-progress
2458 - added scene graph library: defines interfaces, generic graph node types,
2459   re-usable systems for traversals, traversal paths, node containers,
2460   multiple-instance caching of world-space-transforms/bounding-volumes/visibility.
2461 - added scene graph traversals to replace all traversals of 'active_brushes',
2462   'selected_brushes', 'filtered_brushes' and 'entities' linked-lists.
2463 - added view module: view-volume-culling system acting on the scene graph,
2464   uses scene heirarchy to minimise culling tests per frame.
2465 - added opengl-state module: sorts opengl-state objects (shaders) to minimise
2466   opengl state changes during rendering.
2467 - added renderer module: culls objects outside the view volume,
2468   gathers non-culled renderable objects from the scene graph,
2469   keeps track of state during traversal, adds renderable objects to correct opengl-state.
2470 - added selection module: sets view volume to the selection box/ray, culls
2471   objects outside the view volume, gathers non-culled selectable objects
2472   from the scene graph (entity/primitive/component),
2473   selects gathered objects (select/toggle/cycle) or moves things if already-selected.
2474 - added patch module: encapsulates a patch as a scene graph node,
2475   optimised patch tesselation.
2476 - added brush module: encapsulates a brush as a scene graph node,
2477   adapts multiple-brush operations to use the scene graph.
2478 - adapted entity module: encapsulates an entity as a scene graph node/subtree,
2479   shares common code between different visualised entity types.
2480 - adapted model module: encapsulates a model as a scene graph node/subtree.
2481 - added undo module: completely new compact infinite-undo-system,
2482   operates on undoable objects, uses minimal-state data to store objects,
2483   uses refcounting to undo "deleted" objects.
2484
2485 TODO: cleanup: many simple things are still broken or not functioning in the right way..
2486 see !\todo items in the code (not all are documented yet though).
2487 Selection module probably needs refactoring some more - perhaps split off the move-already-selected stuff.
2488 The dependencies are still pretty bad.. need to refactor stdafx.h/qertypes.h.
2489 Some of the above modules are not really modules, they're static-linked to the core, but could easily be dynamic-linked.
2490 The interfaces to brushes and entities still expose brush_t and entity_t for backwards-compatibility.
2491 NOTE: some todos are #if 0 because their functionality is (or will be) replaced by the new systems.
2492
2493 ------ branch point - spog_branch
2494
2495 30/08/2003
2496 SPoG
2497 - Ported changes from trunk.
2498
2499 17/08/2003
2500 SPoG
2501 - Ported changes from trunk.
2502 - Added quake pack to win32 setup scripts.
2503 - Fixed crash in RunBsp.
2504
2505 17/05/2003
2506 SPoG
2507 - Renamed stream interfaces with C and I prefix.
2508 - Shoehorned bytestream into idatastream.
2509 - Moved member classes out of IArchive, replaced with member typedefs.
2510 - Renamed filesystem, path, dynamic string, file input stream with C and I prefix.
2511 - Documented filesystem, path, dynamic string, file input stream.
2512 - Cleaned up game-specific encapsulation classes a little.
2513
2514 16/05/2003
2515 TTimo
2516 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=815
2517   found out about string_t that slept through my reviews
2518
2519 Updated list of broken stuff on this branch:
2520
2521 - include/bytestream.h: remove this file, extend idatastream.h header
2522 from the code conventions:
2523   include/ directory:
2524   This directory is holding the API header files for the synapse modules (plus a few build control and version related headers)
2525   All headers that describe synapse APIs should start with an i: ishader.h igl.h 
2526
2527   The few files in include/ that don't start with a lowercase i are specific files for build control and configuration.
2528   Regular developement never creates non i-prefixed files in include/
2529   
2530 the merge with IDataStream goes like this (note the corrected class names):
2531 class IInputStream
2532 class IOutputStream
2533
2534 class IDataStream : public IInputStream, IOutputStream
2535
2536 class ISeekableStream
2537 class ISeekableInputStream : public IInputStream, public ISeekableStream
2538 class ISeekableOutputStream : public IOutputStream, public ISeekableStream
2539
2540 typedef unsigned int size_type; goes away, use size_t
2541
2542 - include/iarchive.h
2543
2544 renamed VisitorFunc to IArchiveVisitor
2545 move it out of IArchive class (keep it in iarchive.h though)
2546 from code conventions:
2547   Don't declare classes inside classes. Makes the code harder to read and isn't useful to anything.
2548
2549 - remove libs/bytestreamutils.h
2550 put that functionality into the IStream stuff / idatastream.h stuff
2551 anything you retrieve from an IStream should be endian-correct
2552
2553 - libs/filestream.h
2554 I'd rather see a header without embedded code, and a .cpp file for it
2555
2556 - libs/fs_filesystem.h libs/fs_path.h
2557 those totally lack documentation about what they are doing
2558 same as above. way too much embedded code. makes things harder to maintain. implement in a .cpp
2559 and as usual, name the classes correctly, C and I prefixes
2560
2561 - gamespecific_t: rename correctly to CGameSpecific
2562 I like the idea of gathering all hardocded game-specific behaviours inside one same class.
2563 But is it really the topic of bug800?
2564
2565 - gamespecific_executable_t: rename correctly to CGameSpecificExecutable
2566 shouldn't this be merged with CGameSpecific?
2567
2568 12/05/2003
2569 SPoG
2570 - Fixed win32 build error (win32 has no <dirent.h>).
2571 - Added dir_good() check to handle failure of dir_open() in posix DIR wrapper.
2572 - Renamed dynamic_string_t and path_t to DynamicString and UnixPath respectively.
2573 - Removed unnecessary use of 'inline' and 'virtual' keywords in class definitions (bad habit).
2574 - Documented archive interface.
2575
2576 09/05/2003
2577 TTimo
2578 - some easy fixes to get it to startup on Linux
2579 - tagging the current source as bug800-spog, preparing rollback
2580
2581
2582 SPoG
2583 - Added an implementation of IArchive to do OS filesystem access.
2584 - Changed vfspk3 to use above implementation for OS filesystem access.
2585 - Added const qualifiers to vfsGetFullPath and everything dependant on it.
2586 - Changed vfsGetFileList to use "*" to indicate all-files instead of a NULL pointer.
2587 - Extended IArchive interface to allow for extra filesystem functionality.
2588   Added method to check if a file exists quickly.
2589   Added method to traverse the filesystem with control on start-dir and depth of recursion.
2590 - Defined implementation requirements for IArchive.
2591   An archive contains a heirarchy of directories and files, and may contain empty directories.
2592   An archive can be traversed in directory order.
2593   Directories can be distinguished from files during a traversal.
2594   Directory paths will always end with a separator.
2595   File entries can be opened as an IArchiveFile.
2596   IArchiveFile provides a simple non-seekable input stream which can only be read forwards.
2597   Any number of files may be opened and read from an archive simultaneously.
2598   An archive may be released while one or more files are still open, the files will remain valid until released.
2599 - Changed archivepak, archivezip and archivewad to implement all IArchive requirements.
2600 - Factored common code from archive implementations out into new lib/headers:
2601   fs_filesystem.h: a templated filesystem container, with iterators and efficient traversal.
2602   fs_path.h: a dynamic filesystem path object, with separator checking and efficient memory management.
2603   ibytestream.h: abstract interfaces for input byte streams.
2604   bytestream.h: utilities operating on abstract input byte streams.
2605   filestream.h: a c++ wrapper for stdc FILE object, implementing a seekable input stream.
2606 - Added a new pkzip-reader implementation, designed to be orthogonal to the compression library used.
2607 - Added a zlib input stream object, which decompresses data from an abstract byte stream on the fly.
2608 - Removed archivezip code copy/pasted/hacked from zlib and unzip.c, replaced by pkzip-reader and zlib input stream.
2609 - Changed vfsLoadFile to return 0 for a zero-sized file, only returning -1 if it failed to load the file.
2610 - Removed halflife-specific disabling of shader-loading, thereby allowing common-hydra.shader to work.
2611 - Added archivezip, archivewad and archivepak to win32 setup scripts.
2612 - Updated win32 setup scripts for halflife media.
2613 - Updated cons scripts for archivezip, archivewad and archivepak.
2614 - Added printing of warnings when vfs functions are given invalid input paths.
2615
2616
2617 -------- branchpoint: "bug800-spog_branch"
2618
2619
2620 30/08/2003
2621 SPoG
2622 - Ported changes from trunk since branch point.
2623
2624 11/08/2003
2625 SPoG
2626 - Split qe3.h up into multiple headers.
2627 - Cleaned up use of win32 symbols:
2628   WINAPI macro for module functions removed.
2629   GUID for module interfaces replaced by string.
2630   boolean replaced by bool.
2631   MB_OK etc gui defines replaced by enumerations.
2632 - Removed plugin stuff deprecated by synapse from qerplugin.h.
2633 - Cleaned up use of glib symbols:
2634   guint32, gdouble, gboolean typedefs removed from non-glib-dependent code.
2635   TRUE/FALSE replaced by c++ bool true/false.
2636 - Removed all "extern" function declarations.
2637 - Removed dependency on MainFrame from preferences.h.
2638 - Moved synapse server and pluginmanager instances to pluginmanager.cpp.
2639 - Split pluginmanager.cpp into three parts:
2640   Radiant's synapse client stuff in plugin.cpp.
2641   Implementation of brush/entity/patch-handles stuff in pluginapi.cpp.
2642   Synapse server init/shutdown in pluginmanager.cpp.
2643 - Added forward-declarations to avoid including other headers.
2644 - Replaced CString usage with Str;
2645 - Removed unused brush-scripts stuff.
2646 - Cleaned up patch-vertex-area-selection logic.
2647 - Removed very old code chunks that were commented or #if 0.
2648 - Replaced project-entity with a dedicated key/value string map.
2649
2650 ---- branch point - spog-cleanup
2651
2652 06/12/2003
2653 SCDS_ReyalP
2654 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=930
2655   shortcuts to change texture window scale
2656
2657 02/12/2003
2658 SCDS_ReyalP
2659 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=913
2660   fix for single monitor window positioning save
2661 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=924
2662   fixes to CenterXYView shortcut, correctly bound to Shift+Control+Tab now
2663 TTimo
2664 - add a 'q3map2' command line to win32_install.py, factorize and remove win32_install_q3map2.py
2665
2666 -- linux 1.3.14 test build 1
2667
2668 29/11/2003
2669 TTimo
2670 - heretic2 has no q2map. linux setup tries to install and breaks
2671   removed faulty setup line
2672 - cleaned more Linux setup fuckage caused by q2/her2
2673   a tip: rm -rf build install before building and testing a new setup
2674
2675 28/11/2003
2676 ydnar
2677 - full SCC purge of the vs.net project files (for real this time)
2678 - added seperate Q3Map2 build targets
2679 - added seperate Q3Map2 post-build Python script
2680 - _skybox entity support
2681 - _skybox and _decal in entities.def (Q3)
2682
2683 -- win32 1.3.14 test build 1
2684
2685 28/11/2003
2686 djbob
2687 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=899
2688   bobtoolz update (icon functionality is in menu too)
2689 djbob & TTimo
2690 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=842
2691   migration of the win32 build system to vs.net/VC7
2692   new libxml and libpng packages are required:
2693   http://zerowing.idsoftware.com/libxml/
2694   http://zerowing.idsoftware.com/libpng/
2695   updated win32_install.py for new names and paths
2696 TTimo
2697 - assraped the vcproj with sed to remove Scc entries
2698 SCDS_ReyalP
2699 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=88
2700   2D background image plugin
2701 TTimo
2702 - putting together win32 setup updates for 1.3.14
2703   msvcr70.dll goes in core directory
2704   bkgrnd2d plugin content
2705   changed file paths (libxml/libpng)
2706   .xlink for new JA content
2707
2708 27/11/2003
2709 TTimo
2710 - using a central scons.signatures file for checksums
2711 - version bump to 1.3.14
2712 - a libxml-related build bug in qe3.cpp on Debian sid
2713 - it looks like Sid no longer has inflate_mask exported from /usr/lib/libz.so
2714   switched the mask to be defined in our source
2715   this may be a problem on other distros, and on holy box (Woody)
2716 SCDS_ReyalP
2717 - bug 921 and 922, Z floating window fixes
2718 - bug 926, hullcaulk, hintskip, subtlehint
2719 EvilTypeGuy
2720 - bug 505 - select all faces with a given texture
2721
2722 19/11/2003
2723 ydnar
2724 - clipper tool plane points default to 1st selected patch mesh
2725
2726 17/11/2003
2727 TTimo
2728 - upgraded server to subversion 0.33
2729
2730 -- released 1.3.13
2731
2732 10/11/2003
2733 SCDS_reyalP
2734 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=917
2735   floating windows startup crash
2736
2737 09/11/2003
2738 TTimo
2739 - fix M4_GAME_ET ( OSX setup )
2740 AstroCreep
2741 - cleaned up JA shader scripts
2742
2743 01/11/2003
2744 ydnar
2745 - Merged ASE submaterial/subobject code from BirdDawg
2746 - Made Q2/Heretic2 tools not use precompiled headers to eliminate Win32 compilation errors
2747 - Added glColor4ubv() support to the GL function table
2748 - Changed PicoModel rendering to use glColor4ubv() instead of 4 divides and pass-by-value glColor4f()
2749 - Fixed bug 900 by setting alpha to 255 explicitly in image module, rather than 3 input components,
2750   which was borking Q3Map2 jpeg loading, and thus compiles
2751
2752 24/10/2003
2753 TTimo
2754 - bump to 1.3.13
2755 Anders
2756 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
2757 new osx patch, fixes strip bug in setup. merging setup patches to a single file
2758 SCDS_reyalP
2759 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=900
2760 Some jpegs get garbaged alpha channel
2761
2762 22/10/2003
2763 -- merge https://zerowing.idsoftware.com:666/radiant/GtkRadiant/branches/Release-1.3.12/
2764   19/10/2003
2765   TTimo
2766   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
2767     scons BUILD=info to generate a tarball and it's .info
2768
2769   18/10/2003
2770   Spog
2771   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=888
2772     patch for 16 bit RGBA support in glwidget
2773
2774   -- released 1.3.12 Linux
2775
2776   14/10/2003
2777   TTimo
2778   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=879
2779     fixed hellish dlclose issue only occuring with holy builds
2780
2781   -- released 1.3.12 win32
2782 -- end merge
2783 Arnout
2784 - added epsilon testing to hashtable compares to eliminate almost-identical vertices
2785 - pico surfaces now use the normals from LWO vertices
2786
2787 21/10/2003
2788 Arnout
2789 - added hashtable for faster vertex matching during LWO surface generation
2790 - model rendering now uses DrawElements and will use vertex colours in wireframe/flats shade mode 
2791
2792 20/10/2003
2793 Arnout
2794 - added LWO support to picomodel.
2795     shader names are derived from surface name
2796     only geometry from layer 0 is used
2797 - added support for 'vertical flipped' TGAs
2798
2799 19/10/2003
2800 Arnout
2801 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=893
2802   fixed starton primary monitor
2803   fixed mouse pointer setting on win32 to properly translate gdk's offset coordinate system in windows' one
2804   
2805 -- released 1.3.12 win32
2806
2807 11/10/2003
2808 Spog
2809 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=865
2810   fix texture subsets
2811 TTimo
2812 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=889
2813   misc update, missing JA system textures
2814 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=824
2815   fixed .pref file trashing
2816 Nurail
2817 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=881
2818   BSP monitoring disabled by default in Q2
2819
2820 09/10/2003
2821 TTimo
2822 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=883
2823   more JA pack: shaders and mapextras.pk3 textures
2824 - fix Q2 win32_install.py to put the tools at the right spot
2825 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=878
2826   correctly support PNG images with an alpha channel
2827 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=885
2828   fix console to refresh during a texture directory load
2829 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=739
2830   fix weird Shift + Control + Z causing a Redo in non-floating window mode
2831
2832 07/10/2003
2833 Nurail & TTimo
2834 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
2835   Q2 tools, added -fs_basepath. Need corresponding setup and .proj updates
2836 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=875
2837   fixed broken surface properties in Q2 surface plugin
2838 TTimo
2839 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
2840   more fixes, build paths in scons, take out INSTALL config on command line (not functional + not need)
2841   added Q2 tools back to Linux setup
2842 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
2843   using "*" as the shaders minor in surface plugin
2844 - updated makeself copy to the latest from icculus.org cvs
2845 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=574
2846   sprite plugins, tweak to make it functional for all games
2847 - updated Q2 tools .dsp
2848 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=876
2849   more Jedi Academy setup work and content
2850   moving imagepng.dll module to the core, as now both Sof2 and JA need it
2851   sample maps reorg, new siege_hoth_sample.map
2852 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=874
2853   a lot more models - using a dynamic File Group in IS to cope with that
2854 - Q2 IS setup fix, was not properly putting stuff in baseq2/
2855   IS setup: tweak to Q2 tools stuff
2856
2857 06/10/2003
2858 TTimo
2859 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=872
2860   Q2 setup needs to be cleaned up and unified between win32 and Linux
2861   using INSTALL_Q2 and TOOLS_Q2 in SCons script to install the Q2 tools
2862   fixed the setup build dependencies to reference the Q2 tools targets
2863   moved the Q2 specific modules imagewad and vfspak to q2/modules
2864
2865 05/10/2003
2866 TTimo
2867 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=871
2868   updating the gtk2 version to 2.2.4
2869   adding an SVN module with the Gtk2 developer package: checkout gtk2-win32
2870   updating IS to the new files
2871   sed'ing the .dsp to replace src-gtk2 by gtk2-win32
2872 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=609
2873   Q2 tools: comment out dupe strupr on win32
2874   update IS setup to missing Q2 stuff ( vfspak and tools )
2875 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=866
2876   Fixed Camera inspector window not refreshing. Was a missing top level gtk_widget_show call
2877
2878 03/10/2003
2879 Nurail
2880 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=609
2881   quake2 tools build scripts
2882   Linux setup updates - Q2 game pack in Linux setup
2883 TTimo
2884 - scan through all URL links in game.xlink to update them
2885 - added JA links (Raven and MapCenter forums)
2886
2887 30/09/2003
2888 TTimo
2889 - update all synapse.config, win32 .dsw and install_win32.py for new surface module
2890 - Jedi Academy and Quake II game packs in IS setups
2891 - hardcoded hacks in editor core for JA, copied over from JKII
2892 - bug #867, disable sleep by default
2893 - q3map2 bug fix
2894
2895 Nurail
2896 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=862
2897   Q2's 'no patch' stuff
2898
2899 29/09/2003
2900 TTimo
2901 - OSX: fixup setup.xml.in
2902
2903 -- merge bug856 back into trunk
2904 16/09/2003
2905 Nurail
2906 - new patch + win32 stuff for surface module
2907 TTimo
2908 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=804
2909   refactored the XML synapse.config handling:
2910     better detection of invalid XML file
2911     less code, factorized to CSynapseClient::ConfigXML
2912 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=828
2913   fixing bobtoolz 'shaders' major loading issues
2914   added '*' minor. to be used with lots of caution. only if the given major will have a single API such as 'shaders'
2915   also, map module was missing a VFS entry in non-HL configs. that's bad karma, using a minor "*" instead
2916   NOTE: on a lot of modules we could be using a '*' entry instead of having lines in synapse.config
2917 - took out obsolete md3model
2918
2919 15/09/2003
2920 Nurail
2921 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=856
2922   quake2 surface module
2923
2924 07/09/2003
2925 Nurail & TTimo
2926 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=856
2927   a surface inspector module to customize per-game API
2928   removing DO_SURFACEPLUGIN define (enabled implicitely)
2929   removing bSurfacePropertiesPlugin (true implicitely)
2930   remove SI_SetActiveInRadiant, it's always on by default
2931   why was USE_UNDOTABLE_DEFINE taken out? - put back in
2932   removed DBG_PLUGIN define and related code, that stuff is from way back and no longer relevant
2933   cleanup QERApp_FreeShaders in shader module from DO_SURFACEPLUGIN stuff
2934   the WINAPI stuff in interfaces is not needed, that's an old remnant. Cleaned up
2935 -- end merge bug856 back into trunk
2936
2937 19/09/2003
2938 Justin Blur
2939 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=785
2940   fix ~/.radiant permission bug
2941 Nurail & TTimo
2942 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=849
2943   http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=851
2944   win32 updates for the new modules and install_win32.py
2945
2946 16/09/2003
2947 Nurail & Hydra
2948 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=848
2949   q2 map format minor
2950
2951 08/09/2003
2952 Tr3B
2953 - imagepng.so / PNG format support in Linux
2954   NOTE: atm no official supported Linux game by GtkR uses this
2955
2956 07/09/2003
2957 Nurail
2958 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=851
2959   imagewal.so module / wal image format
2960 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=840
2961   md2 support in picomodel
2962
2963 06/09/2003
2964 Nurail & TTimo
2965 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=848
2966   renaming mapq3.so to map.so
2967   added hooks for Q2 map format load/save to single map module (minor mapq2)
2968 Nurail
2969 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=849
2970   vfspak port to synapse and updates
2971
2972 04/09/2003
2973 SPoG
2974 - Fixed crash in RunBsp caused by passing an invalid pointer to printf.
2975 - Changed console to wrap long lines instead of using horizontal scrollbar.
2976
2977 30/08/2003
2978 Anders & TTimo
2979 - OSX setup, new patch to make scons SETUP=1 produce a .run
2980 - don't put bspc Linux binary in the setup
2981
2982 30/08/2003
2983 Anders & TTimo
2984 - OSX setup, new patch to make scons SETUP=1 produce a .run
2985 - don't put bspc Linux binary in the setup
2986
2987 26/08/2003
2988 Anders
2989 - more scons OSX, start on setup stuff
2990
2991 25/08/2003
2992 TTimo
2993 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=855
2994   make 'move into worldspawn' work again
2995 Anders Gudmundson & TTimo
2996 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=826
2997   OSX scons build system
2998
2999 24/08/2003
3000 ydnar
3001 - Removed "test.cpp" from radiant.dsp (merge artifact?)
3002 - Added ddslib to radiant.dsw
3003 - Correctly set lib deps for q3map2.dsp for ddslib
3004 - [bug 852] Increased buffers from 260 bytes on Win32 to 4096 bytes
3005
3006 TTimo
3007 - bump to ver 1.3.12
3008 - EnsurePythonVersion broke in 0.91 (commented out)
3009
3010 David Hogue
3011 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=844
3012   q3data Linux. q3data can read .ase and turn them into .md3
3013
3014 23/08/2003
3015 ydnar
3016 - Added ddslib to repository, based on nvidia sample code, cleaned up a bit
3017   straight C, loads DXT1, DXT3 and DXT5 format DDS textures.
3018
3019 22/08/2003
3020 TTimo
3021 - https://zerowing.idsoftware.com:666/viewsvn/
3022 - Arnout's commit email script - try #2
3023   the commit script doesn't handle viewsvn root remaps (radiant instead of radiant.svn)
3024   adding a prefix to the report
3025
3026 04/08/2003
3027 TTimo
3028 - conversion from CVS to Subversion:
3029 repository convert completed (with revml)
3030 module repositories glued together in a single one
3031 hooking email commit scripts and backup scripts
3032 - Python >= 2.1 required instead of 2.2
3033
3034 01/08/2003
3035 SPoG
3036 - Changed gl widget to request maximum available depth buffer precision.
3037 - Changed all uses of deprecated GtkCList and GtkCTree to use GtkTreeView/Model.
3038 - Fixed directory handle leakage in synapse module search.
3039 - Fixed dir_dialog always returning NULL for Textures -> Load Directory.
3040
3041 23/07/2003
3042 SPoG
3043 - Ported focus_out_event handlers in gensurf to gtk2 signals system.
3044 - Fixed failure to load models for entities other than misc_model.
3045 - Fixed crash in model module shutdown caused by mismatched resource capture/release.
3046
3047 22/07/2003
3048 TTimo
3049 - fix q3map2 .dsp for correct glib-2.0 includes (common/vfs.c)
3050 - camera plugin installs to core now (RTCW and ET)
3051 - fixups to the merged setup stuff
3052 - patched cvsreport to provide explicit diff for some files #2
3053 - fix to work with scons 0.90 / added LIBPREFIX ('lib') where needed
3054   https://sourceforge.net/tracker/?func=detail&atid=398971&aid=766975&group_id=30337
3055 SPoG
3056 - Fixed crash in cmdlib ExtractFileBase when source filename is an empty string.
3057
3058 20/07/2003
3059 TTimo
3060 - SCons scripts for the ported plugins: bobtoolz, camera, prtview, gensurf
3061 - ET Linux setup script + new plugins
3062 - q3map2.x86 is installed and wrapped through a q3map2 script (libstdc++ LD_LIBRARY_PATH)
3063 - update ChangeLog and credits
3064 - put back the GTKRAD_DIR in .fgl
3065
3066 19/07/2003
3067 SPoG
3068 - Tagged trunk before merge as bug537-merge-3.
3069 - Tagged branch port_gtk2_20030307 as gtk2-merge-final.
3070 - Merged changes since tag bug537-merge-2 into trunk.
3071 - Removed gtk dependency from plugin toolbar interface.
3072 - Ported prtview, bobtoolz and gensurf to gtk2.
3073
3074 18/07/2003
3075 Anders Gud
3076 - OSX build fix
3077
3078 16/07/2003
3079 TTimo
3080 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=814
3081   merging ET support code into to trunk
3082 - cvsreport 0.3.0 - http://www.nongnu.org/cvsreport/
3083   rolling out this ver since old cvsreport setup broke
3084 - fixup to build on Linux (including fixing plugin builds)
3085
3086 -- release-1_3_8-ET
3087
3088 02/07/2003
3089 TTimo
3090 - new setup build, with patches and updates from SD
3091 - local fixing of bobtoolz dependency against libcmd, and itoolbar.h gtk header bustage
3092
3093 19/06/2003
3094 TTimo
3095 - missing plugins. add them to .dsw for default build, add them to IS setup:
3096   camera, gensurf, bobtoolz, prtview
3097 - fixup bobtoolz code for VC6. for(int i=0 causing duplicate definition errors
3098 - removed pk3man from IS (we no longer distribute/maintain it)
3099   TODO: cvs remove the IS files for it
3100 - re-enabled plugins in build by default, disabled curry and textool
3101   TODO: following error when bring up About box of bobtoolz:
3102   BobToolz::ERROR->Failed To Load Exclusion List: C:\Program Files\GtkRadiant-ET-1.3\plugins\bobtoolz.dllbt\bt-el2.txt
3103
3104 18/06/2003
3105 TTimo
3106 - add ET game pack. from Arnout's full dump of editor source + game pack data
3107   trunk tagged at ET-tag for this
3108 - Dlg_SdAskCorePath:
3109     szDir   = "C:\\Program Files\\GtkRadiant-ET-1.<<RADIANT_MAJOR>>";
3110
3111 09/06/2003
3112 ydnar
3113 - Added Q3Map2 keys/entities to Quake 3 entities.def
3114 - Removed obsolete vlight keys from Quake 3 entities.def
3115 - Added MD5 functionality to mathlib, from:
3116   http://sourceforge.net/projects/libmd5-rfc/
3117
3118 ------- merged changes since tag bug537-merge-2 from branch port_gtk2_20030307 to trunk
3119
3120 TTimo
3121 - try checkin on branch see if cvsreport 0.3.0 will verbose it
3122
3123 08/07/2003
3124 SPoG
3125 - Fixed recent-files list for file names containing underscores.
3126
3127 07/07/2003
3128 SPoG
3129 - Fixed crash and file-type bugs in gtk file-dialog.
3130 TTimo
3131 - converted the setup code from perl to python
3132 - added copy over of libgcc_s and libstdc++, and LD_LIBRARY_PATH in the wrapper script
3133
3134 06/07/2003
3135 SPoG
3136 - Changed console popup menu to include cut/copy/paste as well as clear.
3137
3138 05/07/2003
3139 SPoG
3140 - Fixed the way surface-inspector dialog responds to escape key.
3141
3142 04/07/2003
3143 TTimo
3144 - linux building / SCons
3145   0.90 is broken, use 0.14 for now. added version check
3146   adding scons SETUP=1 option to spawn setup build
3147   enable back vfswad in scons
3148   TODO: grab Conscript-setup, convert it to python in build_setup function
3149
3150 02/07/2003
3151 TTimo
3152 - building a win32 setup, using -gtk2 suffix (game packs in Radiant-1.3-gtk2 and core in GtkRadiant-1.3-gtk2)
3153 SPoG
3154 - Ported vfswad to gtk2.
3155 - Fixed memory leak in vfspk3 directory search.
3156 - Added vfswad to win32_install.py.
3157
3158 09/06/2003
3159 TTimo
3160 - tagging setup/ as gtk2_setup_rollback
3161   rolling back trunk setup code to the branch to build an experimental release
3162 - merge trunk to branch:
3163 -- tagged HEAD with bug537-merge-2
3164 -- merge HEAD between bug537 and bug537-merge-2 into the branch --
3165   31/05/2003
3166   TTimo
3167   - grab back vfswad code that I forgot in bug 800 rollback
3168   - add prtview back to the project, fix it to build (#817)
3169
3170   27/05/2003
3171   djbob
3172   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=817
3173     prtview fixes, upgrade to synapse
3174
3175   -- release-1_3_8
3176 -- end merge HEAD between bug537 and bug537-merge-2 into the branch --
3177 - freshly merged in vfswad is broken
3178 - freshly merged in prtview is broken
3179 - q3radiant.dsp -> GtkRadiant.dsp, outputs GtkRadiant.exe
3180 - removed vc5 dsps
3181 SPoG
3182 - Updated win32 setup stuff to use gtk2 dlls.
3183 - Modified setup.pl to run correctly (tested on cygwin perl 5.6).
3184
3185 08/06/2003
3186 TTimo
3187 - Linux:
3188   check gcc 3.x, better ldd check
3189   add gcc version to about message
3190   kill old cons stuff
3191 - added q3map2.x86 scons build  
3192 - header conflict libs/cmdlib.h tools/quake3/common/cmdlib.h
3193   grepped through q3map2 source to change #include "cmdlib.h" to common/cmdlib.h
3194 - killed more cons files remnants
3195 SPoG
3196 - Improved error reporting for win32 setup system.
3197 - Fixed errors reported when running setup scripts.
3198 - Fixed scale of xor selection rectangle in XY window.
3199
3200 07/06/2003
3201 SPoG
3202 - Fixed X Window System error when entering freelook on *nix.
3203
3204 06/06/2003
3205 SPoG
3206 - Fixed copy/paste on *nix.
3207 - Changed copy/paste on *nix to use GtkClipboard api.
3208 - Changed copy/paste on win32 to be non-window-specific.
3209 - Further cleaned up MainFrame::Create.
3210 - Changed freelook to use gdk_window_get_origin instead of gdk_window_get_root_origin to place the cursor.
3211
3212 05/06/2003
3213 SPoG
3214 - Fixed grey statusbar in 4-way-split mode.
3215 - Redirected gtk messages before creating main window.
3216 - Removed unused XYFriend hack from camwindow.
3217
3218 04/06/2003
3219 TTimo
3220 - win32_install.py settings loaded/saved from site.conf
3221
3222 02/06/2003
3223 TTimo
3224 - fixed python running with no output. Make sure VC6 finds native Python before any cygwin Python
3225   look at the Directories settings in Tools > Options to either kill the c:\cygwin\bin path, or have Python path first
3226 - renamed dupe files to avoid header collision and general confusion between entity and model
3227 - added win32_install.py to perform post-build install (need to load the configuration paths from a non-cvs stored site.conf file)
3228
3229 01/06/2003
3230 TTimo
3231 - bind gen.dsp to makeversion.py
3232 - added a run_python.bat to check for python presence and execute
3233
3234 27/05/2003
3235 TTimo
3236 - write makeversion.py module - hook it up to SCons build - cleaner, easier to use
3237 - comment out vfswad build lines. source is still not in tree (bug 800 aftermath I think)
3238
3239 18/05/2003
3240 SPoG
3241 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
3242   Changed Sys_FPrintf_VA to immediately process console events during map load.
3243   Changed startup to create main window after QE_Init().
3244   Fixed loading last map on startup.
3245   Fixed crash on exit.
3246   Fixed colour dialog.
3247 TTimo
3248 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
3249   have to delay merging back to trunk. 
3250   have a behaviour problem between debug and release builds.
3251   while debug is fine, release is screwed (see bug item)
3252
3253 -- tagged HEAD with bug537
3254 -- merge HEAD between merge-gtk2-20030413 and bug537 into the branch -----
3255   11/05/2003
3256   Dan Olofson & TTimo
3257   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=812
3258     workaround for ATI drivers bug (polygon backfaces)
3259     use Preferences > 2D Display/rendering > ATI cards with broken drivers
3260   Riant
3261   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=806
3262     updated synapse.config for SoF2 png
3263   TTimo
3264   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=805
3265     dir_dialog is broken - is only used in prefab path prompt
3266
3267   -- release-1_3_7
3268
3269   14/04/2003
3270   TTimo
3271   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=801
3272     moved "ignoring sprite for entity.." to be a _DEBUG only thing
3273   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=802
3274     fixed models not drawing on win32. was a setup bug
3275   - OSX setup build updates - added dependency against libpng3-shlibs
3276   - added openurl.sh to open urls on *nix (with setup updates)
3277   Riant  
3278   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=803
3279     RTCW - default_project.proj in setup
3280
3281   13/04/2003
3282   Michael Schlueter & EvilTypeGuy
3283   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=684
3284     imagepng building under Linux
3285   Riant & TTimo  
3286   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=797
3287     fixed texture compression support
3288   TTimo
3289   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=799
3290     regen project file from template on version upgrade
3291     updated all default_project.proj to have "version" "1"
3292   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=798
3293     missing modules/bitmaps/model_reload_entity.bmp from Linux setup
3294 -- end merge HEAD between merge-gtk2-20030413 and bug537 into the branch -----
3295   
3296 17/05/2003
3297 TTimo
3298 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=537
3299   http://www.qeradiant.com/wikifaq/index.php?Gtk2%20build%20notes
3300   went through the new dll dependencies, listed required files preparing for a single zip package
3301   updated all the project files to rely on src-gtk2/
3302
3303 13/04/2003
3304 SPoG
3305 - Tagged HEAD with 'merge-gtk2-20030413' and merged HEAD --> port_gtk2_20030307.
3306
3307 12/04/2003
3308 SPoG
3309 - Added gtk-2.x libraries to win32 setup.
3310 - Changed win32 setup to use 'dynamic' file-groups, making it possible to add files without
3311   modifying installshield scripts.
3312 - Modified win32/setup.pl to copy setup data to dynamic file-group directories.
3313
3314 30/03/2003
3315 TTimo
3316 - added scons scripts. the scons engine is included in the tree. you just need to have python
3317   have ldd -r safe check on .so  
3318   TODO:
3319   - make sure it's gcc3
3320   - check OSX
3321   - add q3map2 build
3322
3323 29/03/2003
3324 TTimo
3325 - tracked and fixed the startup bomb on Debian sid:
3326   `pkg-config gtk+-2.0 --libs`
3327   -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
3328   http://www.gnu.org/manual/ld-2.9.1/html_chapter/ld_2.html#SEC3
3329   --export-dynamic
3330     When creating a dynamically linked executable, add all symbols to the dynamic symbol table. 
3331     The dynamic symbol table is the set of symbols which are visible from dynamic objects at run time. 
3332     If you do not use this option, the dynamic symbol table will normally contain only those symbols 
3333     which are referenced by some dynamic object mentioned in the link. If you use dlopen to load 
3334     a dynamic object which needs to refer back to the symbols defined by the program, rather than 
3335     some other dynamic object, then you will probably need to use this option when linking the program 
3336     itself.
3337   this causes symbol confusion, shaders.so's g_ShaderTable suddenly resolves to the core's g_ShaderTable
3338   one is a 'shaders' API, the other an 'appshaders' .. everything gets badly mixed up
3339   added a check in the cons script, using `pkg-config gtk+-2.0 --libs-only-L` `pkg-config gtk+-2.0 --libs-only-l`
3340   (same for gtkglext)
3341     
3342 28/03/2003
3343 TTimo
3344 - propagate jpeg compile fix from bug750 branch
3345 - use PKG_CONFIG_PATH when building radiant/ (alternate gtkglext-1.0)
3346 - on OSX, you need gtk+2-dev package, and pkgconfig, atk1
3347   build gtkglext from source http://gtkglext.sourceforge.net
3348
3349 17/03/2003
3350 TTimo
3351 - updated the build system to glib2/gtk2/gtkglext
3352   atm it compiles and starts on my dev box (Debian Sid)
3353   but doesn't reach end of initialization, hangs on
3354    q = (qtexture_t*)g_hash_table_lookup (g_ShadersTable.m_pfnQTexmap (), stdName);
3355    in shaders.cpp QERApp_Try_Texture_ForName
3356   need to have the gtk2 dev packages, and libgtkglext1-dev
3357
3358 12/03/2003
3359 SPoG
3360 - Replaced alpha-blended area-selection rect with XOR rect.
3361 - Fixed YX/XZ/YZ toggle in floating windows layout.
3362 - Cleaned up xor rectangle code.
3363
3364 11/03/2003
3365 SPoG
3366 - Fixed console scroll-to-last-text-inserted.
3367 - Fixed console error/warning colours.
3368 - Refactored or removed WIN32-specific gtk-related stuff.
3369 - Removed win32 SetCapture/ReleaseCapture on GLWindow.
3370 - Removed win32 gtk_main_iteration calls in glwindow mousemoved.
3371 - Cleaned up start-on-primary-monitor stuff.
3372 - Changed main window to use standard save/load window position/size.
3373 - Replaced deprecated gtk_widget_set_uposition with gtk_window_move.
3374 - Removed win32/X gl functions from igl.
3375 - TODO: replace/remove deprecated gtk_widget_usize.
3376
3377 10/03/2003
3378 SPoG
3379 - Changed fonts in win32 rc file to 8pt tahoma.
3380 - Fixed flat-grey gui in Regular layout mode.
3381 - Changed main-window save/restore maximized to use gtk API.
3382 - Fixed button_press_event handling on console/entity/entitylist windows.
3383
3384 09/03/2003
3385 SPoG
3386 - Fixed crash on shutdown after changing floating-z-window preference.
3387 - Removed win32_realize_floating hack.
3388 - Refactored MainFrame::Create to make it more readable.
3389 - Fixed key_press_event handlers for entity/surface/patch dialogs.
3390 - Fixed delete_event handlers for dialogs derived from Dialog class.
3391
3392 08/03/2003
3393 SPoG
3394 - Fixed viewport for entity window comment text.
3395 - Fixed x-shrinking for entity window comment text.
3396 - Fixed menu underscore shortcut hack in MRU list.
3397 - Changed groupdialog to connect switch_page signal after creating all pages. 
3398 - Changed gl widget to use gtkglext/pango to create fonts.
3399 - Cleaned up gtkglext glwidget implementation.
3400 - Reduced border size on toolbar widgets.
3401 - Replaced font with font_name in win32 rc file.
3402 - Added viewports for all scrolled text boxes.
3403 - Fixed entities/textures/console window title update when page is changed.
3404 - Fixed floating windows not being transient to main window (don't want them on taskbar).
3405
3406 07/03/2003
3407 SPoG
3408 - Created a new branch for the port to gtk 2.x. 
3409 - Fixed menu underscore shortcuts to use gtk_label_new_with_mnemonic.
3410 - Fixed global keyboard shortcuts by using mainframe_keypress.
3411 - Fixed use of deprecated gtk_color_selection_get_color.
3412 - Removed use of deprecated gtk_paned_set_gutter_size.
3413 - Replaced deprecated gtk_widget_draw with gtk_widget_queue_draw.
3414 - Replaced deprecated gtk_object_get/set_data with g_object_get/set_data.
3415 - Replaced deprecated gdk functions with 2.x equivalents.
3416
3417
3418 ----- branch port_gtk2_20030307 ------
3419
3420
3421 13/04/2003
3422 Michael Schlueter & EvilTypeGuy
3423 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=684
3424   imagepng building under Linux
3425 Riant & TTimo  
3426 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=797
3427   broken texture compression support
3428
3429
3430
3431 31/01/2003
3432 SPoG
3433 - bug #752 - Construct fix for ppc, patch applied.
3434
3435 26/01/2003
3436 TTimo
3437 - bug #750 - revamp of the setup stuff on Linux
3438   (under way, see bug for progress - feel free to help!)
3439 - reworked the cons scripts, setup is hooked in to cons now
3440   also, added gcc version select on command line, using Cons_gcc.pm utility
3441
3442 22/01/2003
3443 TTimo
3444 - merged merge-1_2_10-post back to trunk
3445
3446
3447 ===============================================================
3448 -- merging release-1_2_9 -> merge-post-1_2_10 into trunk
3449    trunk before merge is tagged pre-merge-1_2_10
3450 ===============================================================
3451
3452 22/01/2003
3453 TTimo
3454 - finished up the TODO items, turned into bug items or dropped them. branch is ready to move back in to trunk
3455
3456 18/01/2003
3457 TTimo
3458 - fixed ID_SELECTION_MERGE
3459
3460 17/01/2003
3461 TTimo
3462 - fixups
3463   FlushReloadSelectedToolbarButton -> CFlushReloadSelected
3464   incorrect naming: RadiantToolbarModuleManager -> CRadiantToolbarModuleManager
3465   ToolbarButton -> IToolbarButton, and C* implementations
3466   http://www.qeradiant.com/wikifaq/admin.php?Code%20Conventions
3467
3468 14/01/2003
3469 ydnar
3470 - Minor Cons fix for OS X (bug 729)
3471
3472 13/01/2003
3473 ydnar
3474 - GtkRadiant now builds on OS X, Linux, and Win32 out of the same tree
3475 - OSX build uses gtkfileselect-linux now, as the Darwin version was broken/old
3476   fixme: change this to use OS X open dialog box or something?
3477 - Minor fixes to a few files to fix gcc warnings
3478 - Model module now builds on OS X and Linux, using Synapse properly
3479 - PicoModel change to invert T coordinate on ASE models
3480 - Q3Map2 change to export ASE models with T coordinate flipped
3481 - Misc Q3Map2 changes
3482
3483 09/01/2003
3484 ydnar
3485 - Updated Construct with Darwin/OS X ld flags for 4MB stack size
3486 - Misc Q3Map2 updates (2.3.35-dev)
3487
3488 05/01/2003
3489 ydnar
3490 - "angles" key now properly ordered, to work with current mathlib
3491   (also changed in Q3Map2)
3492
3493 31/12/2002
3494 ydnar
3495 - PicoModel: Minor fix to MDC loader (naming/define)
3496 - Q3Map2: 2.3.34-pre-1 updates
3497 - MapXML dsp unix->dos newlines
3498
3499 29/12/2002
3500 SPoG
3501 - Merged q3map2-texturing prefs key.
3502 - Merged vfs check for gamemode project key.
3503
3504 27/12/2002
3505 TTimo
3506 - fix GetTickCount stuff
3507 - added q3map2 cons script
3508 - fixed Linux build
3509
3510 23/12/2002
3511 SPoG
3512 - Added model cache API, moved model cache implementation from entity module to core. 
3513 - Added file-type registry API, replaced core file-type manager with registry.
3514 - Changed model module to register supported file types with core registry.
3515 - Removed or #ifdef'd non-functional code from model module.
3516 - Added support for misc_gamemodel and model_static to entity module.
3517 - Cleaned up entity module's on-epair-changed API.
3518 - Moved light-entity-specific code to a seperate file in entity module.
3519 - Cleaned up file dialog interface - specify file-type-lists with a string.
3520
3521 22/12/2002
3522 SPoG
3523 - Ported camera plugin to synapse, adding support for camera and ui APIs.
3524
3525 20/12/2002
3526 SPoG
3527 - Fixed default prefs setting for selected-brushes-camera, gridmajor-alt and gridminor-alt.
3528 - Merged CEntityEclassModel::Draw in entity module.
3529 - Ported imagepng module to synapse.
3530 - Fixed warning for CamDragMultiSelect preference bool used as int.
3531
3532 19/12/2002
3533 SPoG
3534 - Fixed white-textures bug caused by texture compression preferences.
3535 - Ported light-radius rendering to 1.3 entity module.
3536
3537 18/12/2002
3538 SPoG
3539 - Merged win32 project files, with the exception of camera plugin.
3540 - Ported model module to synapse API.
3541 - Redesigned toolbar API to remove gtk-dependency from toolbar plugins.
3542 - Refactored window-position preference save/load.
3543
3544 17/12/2002
3545 TTimo
3546 - kick doxygen generation for branch merge-1_2_10-post
3547
3548 15/12/2002
3549 TTimo
3550 - having the linux version compile and start again. took out numerous elements while merging, built a list of TODO stuff
3551   the main thing to do being to bring the win32 build back up too, then to go through TODO list and fix stuff
3552   until the win32 version runs too, I check this in to a seperate branch merge-1_2_10-post
3553 - There is quite a massive update in mainframe.cpp switch case for all events.
3554   Looks like it's just a reordering of stuff, but it looks bad in the diffs.
3555 - added m_MapReg pattern
3556
3557 - At some point, I'm thinking that forcing correct TAB/SPACE conversion on the server end would be a good thing to have.
3558   Nazisticly forcing the formatting sounds like the only viable solution.
3559
3560                 11/12/2002
3561                 RR2DO2
3562                 - #418, mdc load and display (RTCW)
3563                 - #597, CenterCamera shortcut
3564                 Use Ctrl+Shift+TAB to center the views onto the current camera location
3565                 - #714, bitmap loading fixes and speedups
3566                 - #715, fixed Alt+Shift cycle/drill select to work with brush-based entities
3567                 EvilTypeGuy
3568                 - #718, fix compilation warnings
3569                 Riant
3570                 - #707, fixed HM mode in STV:EF
3571
3572                 10/12/2002
3573                 EvilTypeGuy
3574                 - Fix gcc3 compilation warning
3575                 EvilTypeGuy and X-Man
3576                 - Fix OpenURL so browser launching works on XDarwin (Mac) systems.
3577
3578                 8/12/2002
3579                 RR2DO2
3580                 - #710, AssignSound pattern
3581                 - #711, SoF2 model_static drawing
3582                 - #713, sync 2d and 3d rendering of models
3583                 - #238, apply 0..1 T range when Fitting a patch (instead of 0..-1 previously)
3584                 - #633, Add ability to change default color in 3D window Misc > Colors > Camera background
3585                 ydnar
3586                 - Q3Map 2.3.33 (see changes.q3map2.txt)
3587                 - Quake 3 + TA common.shader updates (q3map_terrain, hint)
3588
3589                 3/12/2002
3590                 TTimo
3591                 - merging Stable-1_2-Apple into Stable-1_2
3592                 - why INSTALL.TXT? re-used INSTALL, updated to point to wiki
3593                 - why the -machinedump test against i386-redhat-linux? removed
3594                 - using $is_darwin flag instead of $gcc_machine tests in the build scripts:
3595                 gotta leave some room for a Linux ppc build, and darwin x86
3596                 exporting it for use in sub scripts
3597                 - the addition of ccache support broke some Apple SConstruct patches to $ENV{PATH}, fixing
3598                 merged version is compiling fine on Debian Sid
3599                 checking in on a branch, need to validate win32 build and OSX build before applying in Stable-1_2
3600
3601                 -- release-1_2_11
3602
3603                 30/11/2002
3604                 TTimo
3605                 - added seaw0lf to credits
3606                 - ydnar's changelog.q3map2, added to global.xlink and Linux setup
3607                 - 1.2.11 version tag
3608                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=699
3609                 updated IS setup for q3map_terrain keyword
3610                 also fixed details in STVEF media
3611                 Arnout
3612                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=569
3613                 http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=698
3614                 fixed drill select, Ctrl bug in vertex mode, and updated changelog.txt
3615
3616                 29/11/2002
3617                 TTimo
3618                 - 1.2.11-rc1
3619                 - update changelog credits links for release
3620                 - update linux setup, putting EULA and new README instructions  
3621
3622                 28/11/2002
3623                 ydnar
3624                 - Removed redundant 'p' from "developers"
3625                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=637 - fixed
3626                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=694 - fixed
3627                 - Updated to Q3Map 2.3.32
3628                 - Added epsilon to texture plane choose code to eliminate numerical
3629                 inconsistencies on brush faces slanted at 45 degree angles (bug 637)
3630                 - Fixed bug in lightmap export after lighting when map contains 0 BSP lightmaps
3631                 - Adjusted some light tracing constants to fix certain brush/patch seam shadows
3632                 - Tinkered with skylight code again
3633                 - Fixed bug where lightgrid would be black if level was compiled with -nogrid
3634                 - Fixed -approx code to work in floating-point space, using _minlight
3635                 - Fixed bug where vertex light code was using invalid pvs data to create
3636                 light list for surface, leading to incorrect vertex lighting
3637                 - Fixed related bug in anti-light-leak code that was causing brush faces to go
3638                 black (bug 694)
3639                 - New: _minlight sets _minvertexlight and (new) _mingridlight automatically
3640                 - New: _mingridlight key to set minimum grid lighting
3641
3642                 TTimo
3643                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=637
3644                 added preference setting in Preferences > BSP monitoring
3645                 added an item on the wiki
3646
3647                 27/11/2002
3648                 TTimo
3649                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
3650                 picomodel-based model.dll module (new model.dll, removed md3module.dll)
3651                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=664
3652                 media/setup updates for q3map2 support
3653                 added modified quakev3.qe4, bumped internal version to 4 for all games
3654                 SOF2 and JKII were forcing BSP monitoring off because of sof2map, now only printing a warning
3655                 added -rename to SOF2 BSP phase
3656                 Q3 & RTCW new templates are working
3657                 haven't tested the STVEF & SOF2 versions
3658                 updated IS setup scripts to make sure quakev3.qe4 is updated in nightly release
3659                 (not needed on Linux, we will be doing a full release)
3660                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
3661                 updated win32 setup to provide right model.dll stuff
3662                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=621
3663                 typo was causing memory error
3664
3665                 RR2DO2 & TTimo
3666                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=662
3667                 more model fixes, fixed the Linux build to build model.so
3668                 added search path to modules/ for bitmaps
3669                 model reload, patch and bitmap
3670
3671                 26/11/2002
3672                 RR2DO2
3673                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=569
3674                 area select - Alt+Shift for area select (complete tall)
3675                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=621
3676                 broken undo creating ghost undo entities (and trashes memory)
3677                 partly fixes the issue, it's a memory error still
3678                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=659
3679                 updates to RTCW camera plugin - works in 4 view mode
3680                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
3681                 more fixes to plugin API
3682
3683                 TTimo
3684                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=638
3685                 libpng in the core DLLs instead of SoF2 (for q3map2 dependencies)
3686                 putting q3map2 binary with the Core Binaries
3687
3688                 25/11/2002
3689                 TTimo
3690                 - added ccache support to cons build system - http://ccache.samba.org/
3691
3692                 21/11/2002
3693                 ydnar
3694                 - minor bugfix to PicoModel ASE material loader
3695                 - Q3Map2 updated to 2.3.31 (Splash Damage)
3696                 - Stitching the edges of lightmaps on patches that wrap around (cyls and cones)
3697                         so the seam is no longer visible
3698                 - The -patchmeta switch works better now, the patches are still stored in the
3699                         BSP for collision, but are pre-tesselated into nonplanar meta surfaces for
3700                         more efficient rendering
3701                 - Better, more uniform lightmap sample position finding on patch meshes
3702                 - Moved q3map_tcMod and q3map_alphaMod processing to the final phase
3703                 - New: q3map_skylight AMOUNT ITERATIONS to replace surfacelight on sky surfaces
3704                         for much faster and more uniform sky illumination
3705                 - Fixed bug in PicoModel ASE material parsing code
3706                 - Fixed a few seam/lightmap precision/projection errors
3707                 - Increased MAX_SHADER FILES to 1024 and fixed overrun error when more than that
3708                         number of shaders was listed in shaderlist.txt
3709                 - Increased a few compiler maximums for larger maps
3710                 - New: -np N switch on BSP phase, works like -shadeangle, in that it forces all
3711                         planar shaders to be nonplanar with the shading angle specified
3712                 - New: -nohint switch on BSP phase, omits hint brushes from compile for testing
3713                 - New: -debugaxis switch on light mode. Colors lightmaps based on their lightmap
3714                         axis (which direction the lightmap was projected on)
3715                 - New: -debugorigin switch on light mode. Colors lightmaps based on the luxel
3716                         origin relative to the raw lightmap's bounding box
3717                 - New: -debugcluster switch on light mode. Colors lightmaps based on the pvs
3718                         cluster the luxel falls into
3719                 - New: -convert switch to convert BSP to ASE file (experimental)
3720                 - New: q3map_lightmapmergable directive to allow terrain to be mapped onto a
3721                         single lightmap page for seamless terrain shadows    
3722
3723                 18/11/2002
3724                 TTimo
3725                         - fixed pk3man build system to work with new cons layout
3726                         - fixing linux setup system to work with new cons layout
3727                         Linux 1.2.11 will be a full setup, much easier that way
3728                         - update makeself to the latest (and best) version
3729                         - add q3map2 to Linux setup. goes in core (g_strAppPath)
3730                         NOTE: has a dynamic dependency to libpng
3731                         - pk3man still has issues with the zlib code that's been thrown in it
3732                         unresolved which I don't have time to look at
3733                                 since we plan to drop pk3man in 1.3, dropping it now is just as good
3734                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=644
3735                         detect GOTY install     from registry and use it as default path
3736
3737                 13/11/2002
3738                 TTimo
3739                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=639
3740                 reworked to have the UI in game settings dialog
3741                 (this is strictly win32 thing, if that broke Linux build, then fix the typos)
3742                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=630
3743                 mouse AngleSpeed setting was getting clobbered. fixed and upped the max values
3744                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=623
3745                 applied a fix, rolls back the values when the compression formats are not supported
3746                 fix ain't very clean, if we have to deal with extensions some more, we need to deal with the settings persistance better
3747                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=624
3748                 updated the setup code for town_*.shader (both in full setup and update)
3749                 updated files in WolfPack
3750                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=672
3751                 using a QE4_VERSION define, added a message if there's a project template with wrong version
3752
3753                 12/11/2002
3754                 TTimo
3755                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=671
3756                 guard junk.txt path between " "
3757                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
3758                 fix to CommitBrushHandleToEntity stuff
3759
3760                 RR2DO2
3761                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=660
3762                 previously you could select patch control points when patch selected + vertex edit (V) in 2D view. Works in camera view now
3763
3764                 12/11/2002
3765                 TTimo
3766                 - nudging zerowing to trigger Stable-1_2-Apple doxygen generation
3767                 http://zerowing.idsoftware.com/doxygen/
3768
3769                 11/11/2002
3770                 TTimo
3771                 - http://ttimo.net/web/anjuta
3772                 modified the .prj to work with the cons patches (linked dirs)
3773                 still way experimental
3774                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
3775                 fixing linking for radiant.x86
3776
3777                 10/11/2002
3778                 RR2DO2
3779                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=669
3780                         patch inspector bug - fixed
3781                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=663
3782                                 fucked up change in the plugin API caused breakage of several plugins
3783                 still have to fix bobtoolz http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=665
3784                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=661
3785                         Undolevels not set properly
3786                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=660
3787                                 drag selection to the camwindow for patches in controlpoint edit mode
3788                                 (not sure about the actual shortcuts, Ctrl+Alt on my current Linux setup)
3789
3790                 TTimo
3791                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=657
3792                         mark map modified on editing entity keys
3793                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
3794                         added the correct link and ldflags statements to have static linking everywhere
3795                                 didn't check gcc 3 build, check correct static on Debian Sid and holy box
3796                                 has a $staticstdcxx in Construct to toggle On/Off if needed
3797
3798                 09/11/2002
3799                 TTimo
3800                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=651
3801                 reworking the cons building. support for gcc2 and gcc3
3802                         cons -- gcc=<gcc-name>
3803                                 read gcc version and configure accordingly
3804                                 changed _NO_STLPORT to Q_NO_STLPORT
3805                                 independant BASE_CFLAGS and BASE_CXXFLAGS
3806                                 correcting usage of CC/CXX for c/cpp source and linking
3807                                 fixed missing -lz in vfspk3.so
3808                                 changed the way we build curry.so, works from the GtkRadiant tree now
3809                                 (NOTE: gcc 3.2 build of curry.so spews quite a few warnings)
3810                                 tweaked the way we do -fno-rtti -fno-exception
3811
3812                 04/11/2002
3813                 TTimo
3814                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=638
3815                 .qe4 version 4, udpated q3's .qe4 template, update setup to put q3map2 in the right place
3816                         bumped version to 1.2.11-test for test setups
3817
3818                 03/11/2002
3819                 ydnar
3820                 - fixed bug in jpeg loading code (4 components instead of 3 for RGB images, mh)
3821                 - updated PicoModel to 0.8.8 and Q3Map2 sundry fixes (2.3.29):
3822                 - Merged with latest CVS, fixed minor issues with matrix order
3823                 - Fixed minor Sys_FPrintf/Sys_Printf substitution typo in Q3Map2
3824                 - Expanded debug colors to 12 for debugging surface meshes
3825                 - PicoModel: fixed ASE loader to support > 1 texture coordinate per-vertex,
3826                 so more models supported correctly, also loading vertex normals
3827                 - PicoModel: md3 shader names are now cleaned. Suffixes (such as .tga or .jpg)
3828                 are stripped, and \ path separators are changed to /
3829                 - New: Add :q3map to the end of any shader name, and it will be interpreted as
3830                 the named shader minus :q3map. Example:
3831                 textures/shaderlab/concrete:q3map -> textures/shaderlab/concrete
3832                 One potential use is the -approx feature to collapse lightmapped  surfaces
3833                 into vertexlit surfaces, saving lightmap space/memory
3834                 - New: q3map_clipModel -- does what you think it does, sort of. This code ix
3835                 really experimental, and should *only* be used on large models such as terrain
3836                 (not small decorative models). This code will be evolving. Note: the shader's
3837                 surfaceparms are inherited by the magic clip brush, so if you have nonsolid
3838                 in your model's shader that uses q3map_clipModel, then the brush will also
3839                 be nonsolid
3840
3841                 03/11/2002
3842                 TTimo
3843                 - cleaning up some cons stuff, checking that the setup building process is still good on Linux
3844                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
3845                 updated Linux setup to put the bitmap
3846
3847                 02/11/2002
3848                 ydnar
3849                 - PicoModel: replaced stricmp with _pico_stricmp
3850
3851                 02/11/2002
3852                 ydnar
3853                 - PicoModel: added obj.c and ms3d.c, removed wfobj.c
3854
3855                 02/11/2002
3856                 ydnar - seaw0lf
3857                 - Updated Q3Map2 to 2.3.29 sources
3858                 2.3.29
3859                         - Merged with latest CVS, fixed minor issues with matrix order
3860                 2.3.28
3861                 - Bug 654 (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=654):
3862                 Fixed problem where brush faces, drawsurfaces, and surfaceparms weren't living
3863                 together in perfect harmony (terrain surfaceparms now inherited by brushes)
3864                 - Nodraw fog works now, albeit when you're underneath, surfaces above don't get
3865                 fogged properly. Could be good for foggy water where you want the above-water
3866                 portions to only be occluded by the water surface
3867                 - Bug 656 (http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=656):
3868                 Number of lightgrid points displayed (byte size is currently out of proportion
3869                 due to internal storage format) when Q3Map is called with the -info switch
3870                 - Fixed wack surface merging bug where code would attempt to merge triangles not
3871                 adjacent to the current set, causing bad lightmap projections on nonplanar
3872                 surfaces
3873                 - Fixed tiny 1-character bug in 2d lightmap texture allocator where adjacent
3874                 luxels were being checked for occlusion rather than the actual source luxel
3875                 2.3.27
3876                 - Fixed minor bug in scriplib bugfix where the last character in a file wasn't
3877                 being read.
3878                 - Fixed bug where 0-area or bogus triangles were causing crash in MapRawLightmap
3879                 if they used a shader with a normalmap (thanks ShadowSpawn)
3880                 - Fixed bug where lightmaps were getting hosed levelwide on a prerelease version
3881                 of 2.3.27
3882                 - Fixed bug where lightmaps were getting knackered on models and certain patches
3883                 - Merged latest PicoModel version from seaw0lf, adding support for ASE and WF OBJ
3884                 models (preliminary)
3885                 - Increased MAX_MAP_PLANES to 0x40000 (~256k)
3886                 2.3.26
3887                 - Now using GtkRadiant's libpng and zlib config (linked as DLLs)
3888                 - Fixed bug in script parser where repeat calls to GetToken() were causing
3889                 memory corruption
3890                 - Fixed SOF2 -rename bug
3891                 - When using -game sof2 or -game jk2, the -flares argument is implied
3892                 - Added -noflares argument to disable the above behavior
3893                 - Added support for flares on entities. Use one of the following keys:
3894                 "_flare" "1" -- use default flare (different for each game)
3895                 "_flareshader" "path/to/flareshader" -- use a specific flare shader
3896                 Note: This only matters in SOF2/JK2 now. Make a light targetted (a spotlight)
3897                 to get it to aim the correct direction, otherwise it defaults to pointing 
3898                 downward. You cannot have omnidirectional flares
3899                 - Lightgrid size is automatically increased to accomodate large maps. The
3900                 MAX_MAP_LIGHTGRID error will never happen again
3901                 - Update PicoModel to 0.8.7 sources
3902                 - ASE support
3903                         - Alias|Wavefront OBJ support
3904                         - <modelname>.remap shader remapping suport
3905                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=655
3906                 handle grayscale jpegs gracefully
3907                 - mathlib: fixed VectorClear(), got rid of braces
3908                 - scriplib: fixed double-free memory corruption bug
3909                 - radiant: added new color scheme to emulate Lightwave/Maya/3DS Max
3910
3911                 02/11/2002
3912                 TTimo
3913                 - too many issues with build system reading system's libjpeg.h instead of libs/libjpeg.h
3914                 renamed libs/libjpeg.h to libs/radiant_libjpeg.h, updated sources
3915
3916                 29/10/2002
3917                 TTimo
3918                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=639
3919                 running from a network share - saving prefs per-user
3920
3921                 27/10/2002
3922                 TTimo
3923                 - merged in some more m4x4 code for q3map2
3924                 - fixed unresolved code in picomodel (strlwr / strnicmp)
3925                 - reworked the tools building to build both q3map and q3map2 without trouble
3926
3927                 25/10/2002
3928                 ydnar
3929                 - q3map2 and picomodel source, initial checkin to Stable-1_2 branch (does not compile yet, tweaking to be done)
3930
3931                 23/10/2002
3932                 TTimo
3933                 - camera.dll goes into $(RTCWRADIANTDIR)/plugins instead of $(RTCWRADIANTDIR)/modules
3934                 fixed up camera compile (exports)
3935                         added camera bitmap (plugin toolbar)
3936
3937                 21/10/2002
3938                 TTimo
3939                 - quickfix to the build (typo)
3940                 - changed dynamic linking on Linux to look for libGL.so.1 by default
3941                 fixes "all textures are blank" Linux bug with NVidia cards
3942                         (you still have to have a working NVidia GL installation though, xlibmesa-dev on Debian screws things up)
3943                 - checked in modified q3 .qe4   with q3map2 menu (see bug #638)
3944
3945                 09/10/2002
3946                 TTimo
3947                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
3948                 reworked the plugin toolbar to rely on interface instead of straight exports
3949                 cleaned up the botclip monsterclip Brush_Draw filtering, added proper selection filtering (Brush_Ray)
3950                 merged bug-622 back into Stable-1_2, bug-622 branch is dead now
3951
3952                 06/09/2002  
3953                 James Monroe - RR2DO2 - TTimo
3954                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=619
3955                 light globes, applying patch by RR2DO2 built from the initial light globe code
3956                 - note to self: indent -kr -nut -st -ts2 -i2
3957
3958                 RR2DO2 - TTimo
3959                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=622
3960                 massive patch update from SD's GtkRadiant
3961                 - camera plugin: new bitmap
3962                 fixed Linux install path for camera plugin to wolf/plugins
3963                 - fixed various warnings in camera build gcc / Linux  
3964                 - fixed pref crash if plugin toolbar disabled  
3965                 - fixed Gtk-WARNING on bad cast in AddPlugInToolbarItem
3966                 - renamed the new select to 'Use paint-select in camera view:' in prefs
3967                 (camera paint-select, should be our default name for this)
3968
3969                 NEW: you can 'paint select' in the camera view: 'camera paint-select'
3970                 press shift and move the mouse over the camera view to paint over brushes you want to select
3971                 configurable in prefs to enable / use Shift key, or use 'classic mode' ctrl+alt
3972
3973                 NEW: light radius drawing
3974                 Added in-editor light envelope drawing. Outer circle is max envelope, 
3975                 inner fullbright radius. Optional classic mode emulates the similar drawing 
3976                 from Rituals and Ravens tools (not q3map correct, easier for the level designer 
3977                 to understand/legacy).
3978
3979                 NOTE: 'angles' is q3map2 only
3980                 NOTE: could manipulate angles directly from the views (2d and 3d with some handles)
3981
3982                 NOTE TO SELF: 
3983                 <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 ?
3984                 <andersca> just run your app with --g-fatal-warnings
3985
3986                 TODO: add new bitmap to win32 & linux setups
3987                 TODO: don't use exports for the plugin toolbar, use entry functions
3988                 do something like CPlugIn::InitBSPFrontendPlugin
3989                 TODO: botclip is broken with the new Brush_Ray code  
3990
3991                 initial ChangeLog for the patch:
3992
3993                 28-09-2002
3994                                         Arnout <rr2do2@splashdamage.com>
3995                         + Added 'angles' support for models (misc_model/misc_gamemodel).
3996                         + Prevented pivot drawing of model from scaling and rotating.
3997                         + Cleaned up the dropdown boxes in the preferences a bit (all use 
3998                 tables now, so not multiline).
3999                         + Added 'Classic Key Setup' option to camera paint select configuration, this 
4000                 drag-selects with ctrl+alt instead of shift.
4001                         + Changed XYWnd::PositionView to position on the center of the 
4002                 selection, not on the mins.
4003
4004                 27-09-2002
4005                                         Arnout <rr2do2@splashdamage.com>
4006                         + Added in-editor light envelope drawing. Outer circle is max envelope, 
4007                 inner fullbright radius. Optional classic mode emulates the similar drawing 
4008                 from Rituals and Ravens tools (not q3map correct, easier for the level designer 
4009                 to understand/legacy).
4010
4011                 26-09-2002
4012                                         Arnout <rr2do2@splashdamage.com>
4013                         + Upped MAX_TEXTUREDIRS to 256 (from 128).
4014
4015                 25-09-2002
4016                                         Arnout <rr2do2@splashdamage.com>
4017                         + Fixed patches not being drawn in XY window with colour of parent 
4018                 entity.
4019                         + Made paste to camera snap destination spot snap to grid.
4020
4021                 18-09-2002
4022                                         Arnout <rr2do2@splashdamage.com>
4023                         + Changed Select_Reselect to be much faster.
4024
4025                 12-09-2002
4026                                         Arnout <rr2do2@splashdamage.com>
4027                         + Fixed curve point drag-selection area not showing properly in XY 
4028                 views.
4029                         + Fixed size info breaking over 9999.9 units.
4030                         + Fixed AllocateSelectedPatchHandles not setting patchesmode to 
4031                 ESelectedPatches.
4032                         + Changed the horizontal and vertical tc shift spin control to have a 
4033                 limit of 8192.
4034                         + Moved SPoG's implementation of redisperse cols to a seperate function 
4035                 and reinstated the old code.
4036                         + Added 'Paste to Camera', shortcut Alt+V, which pastes the contents of 
4037                 the clipboard to the current camera origin.
4038                         + Added centerview functionality to 4 window mode. Ctrl+tab will focus 
4039                 on the selection, or if non existant, on the camera.
4040
4041                 11-09-2002
4042                                         Arnout <rr2do2@splashdamage.com>
4043                         + Made sure settings set in savedinfo.bin get initialized to their 
4044                 proper defaults.
4045                         + Added botclip filter (filters *botclip* and *monsterclip*).
4046
4047                 10-09-2002
4048                                         Arnout <rr2do2@splashdamage.com>
4049                         + Removed .reg from normal map saving, can only save as region 
4050                 using 'Save region'.
4051                         + Added outline style cycling (j) cycle between z buffered outlines and 
4052                 selected colour rendering.
4053                         + Added colour dialog to pick the colour of selected surfaces in the 
4054                 camwindow.
4055                         + Third coordinate for clip points now gets set to the center of the 
4056                 selection.
4057                         + Changed arbitrary rotation dialog to accept negative angles as well.
4058                         + Changed texture alignment dialog to accept values up to 2 decimal 
4059                 points.
4060                         + Fixed entity inspector to say 'Textures:' in the window title.
4061                         NOTE: still broke in floating window mode
4062                         + Changed entity inspector so that tab doesn't clear the epair value 
4063                 field anymore, so it retains the value while jumping to it.
4064                         + Disabling camera paint-select now returns selection behaviour for groups to 
4065                 the old behaviour as well (shift+click selects whole group).
4066                         + Changed load_plugin_bitmap to load bitmaps from g_strAppPath if 
4067                 g_strGameToolsPath fails.
4068                         + Added plugin toolbar and api.
4069                         + Fixed m_pfnCommitBrushHandleToEntity, wasn't creating brushes 
4070                 properly (well, not at all really).
4071
4072                 Older changes:
4073                                         Arnout <rr2do2@splashdamage.com>
4074                         + Added misc_gamemodel drawing.
4075                         + Ported camera paint-select over from 1.3.
4076                         + Fixed statusbar display of text (removed a bunch of \n's).
4077                         + Added area selection in 3d view for patches.
4078
4079                 30/09/2002
4080                         TTimo
4081                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=556
4082                                 quickfix crash bug
4083
4084                 27/09/2002
4085                         TTimo
4086                         - more CORERADIANTDIR cleanup (q3data)
4087                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=602
4088                                 added cascading to the entity submenu (doesn't cascade the main menu, only the sub ones, NPC_* for instance)
4089                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=556
4090                                 with clip and caulk filtered out, won't be selected anymore in camera view (i.e. selecting invisible faces)
4091                                 added SF_CAMERA to the flags in the selection process
4092                                 cleanup up various ugly syntaxes in the selection code:
4093                                 don't ever do if (flags == SF_SINGLEFACE) on a bitmask and assert that the other flags will always be NULL
4094                                         don't do arithmetic on bitmasks:
4095                                                 if ( (flags & SF_ENTITIES_FIRST) && t.brush == NULL)
4096                         return Test_Ray (origin, dir, flags - SF_ENTITIES_FIRST);
4097                         is WRONG
4098                                                 using flags & ~SF_ENTITIES_FIRST is the appropriate way
4099
4100                 23/09/2002
4101                 Riant
4102                 - new IS scripts to go with recent media updates
4103                         Riant & TTimo
4104                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=615
4105                                 reworked the fix to use "caulk_shader" in .game
4106                                 updated IS .rul script to generate special values for Sof2 and JKII
4107
4108                 21/09/2002
4109                 Riant
4110                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=595
4111                 more texture compression, dialog and settings
4112                 Michael Schlueter  
4113                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=592
4114                 fixes to the Linux build system, exclusive q3 or wolf working now
4115
4116                 22/08/2002
4117                 EvilTypeGuy
4118                 - Fix @*$&)@)$$ memory leak of my own doing, yes it's really been in there this long.
4119                 This should help memory usage drastically, especially when flushing & reloading
4120                 the same sets of textures, GtkRadiant's memory usage no longer becomes heinous.
4121
4122                 14/08/2002
4123                 EvilTypeGuy
4124                 - Fix build on some linux boxen by including qertypes.h for proper boolean type declaration
4125
4126                 -- release-1_2_10
4127
4128                 16/08/2002
4129                 TTimo
4130                 - STVEF media update finalized (some .def)
4131                 - 1_2 Core Update for shader manual update
4132                 - in JKII, typo with nar_shader? replaced by nar_shaddar, with proper support in update too
4133                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
4134                 Q3/TA media update with cleaned up shaders
4135                 - validated the update content by a diff between 1.2.9 + 1.2.10-update and 1.2.10 full  
4136                 - added a DO_NIGHTLY_BOOL to setup.rul AND a warning during setup about update content for games that are not installed
4137                 - built 1.2.10-sof2, SoF2 full install
4138
4139                 15/08/2002
4140                 Michael Schlueter
4141                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=590
4142                 added the option to build a Linux setup with the debug binaries
4143
4144                 TTimo  
4145                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
4146                 cleaned up shaders, done nightly setup update on Linux
4147                 updated Linux nightly for 1.2 to use /usr/local/games/GtkRadiant-1.2 as default base
4148                 - using version 1.2.10-update. Full Sof2 setup will be 1.2.10-sof2
4149                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=426
4150                 don't straffe when using Ctrl+Shift(+Alt)
4151                 - camera.so RTCW plugin in Linux setup
4152                 - quickfix to non-initialized var in camera code
4153                 - awfull piece of work that had been completely left out, nightly elements for JK2 and STVEF
4154                 added JKII media update and STVEF media update (for the DIR_GAME elements)
4155                 JKII nightly is finalized
4156
4157                 14/08/2002
4158                 TTimo
4159                 - fixed a missing file
4160                         - Linux build quickfix
4161                 - fixed silly rendering bug
4162                 - added pref to force texture compression off (hey why would you do that??)
4163                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=466
4164                 fixed MAX_POINTS_ON_WINDING overflow in q3map (and relevant code to handle in radiant)
4165
4166                 13/08/2002
4167                 TTimo
4168                 - cleared up notexture (dead code)
4169                 - cleaned up QERApp_LoadTextureRGBA gamma table init
4170                 - having a shot at 1.3 texture compression
4171                 sees the extension, binds the texture with the currect setting
4172                 but rendering is fucked .. someone explain?
4173
4174                 08/7/2002
4175                 TTimo
4176                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=586
4177                 search and destroy Q3Radiant -> Radiant
4178
4179                 07/7/2002
4180                 SCDS_reyalP
4181                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=526
4182                 wolf_entities.def update
4183
4184                 riant
4185                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=548
4186                 STV:EF updates
4187                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
4188                 SOF2 updates
4189                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=584
4190                 JKII updates
4191
4192                 06/7/2002
4193                 Riant
4194                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
4195                 Sof2 patches and IS setup    
4196                 TTimo
4197                 - game pack prompt asking about STVEF, fixed
4198                 - mp_examples was leaked and non lighted, fixed
4199                 - imagepng.dll goes into Sof2 install / modules, and not in DIR_CORE
4200                 - libpng12.dll needs installed only with Sof2 pack (added 'SOF2 Pogram DLL')
4201                 default texture scale is 0.125  
4202
4203                 TTimo
4204                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=582
4205                 nomipmap -> nomipmaps in shader manual  
4206                 - removed libs/pak, this was still being linked in to Radiant, but not used at all  
4207                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=580
4208                 .PK3 are recognized along .pk3 files (strcmp ->strcasecmp)
4209                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
4210                 added the RTCW camera plugin to IS setup
4211
4212                 Michael Schlueter
4213                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=581
4214                 GL warning fix      
4215                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=567
4216                 GL font display fixes (mostly Linux)
4217                 applied the changes with some tweaking
4218
4219                 31/6/2002
4220                 TTimo
4221                         - compiling the camera plugin on Linux:
4222                         move the GUID and other misc compatibility definitions to include/misc_def.h
4223                                 GetTickCount being used in camera.so, this is from radiant/missing.cpp (unresolved)
4224                                 -> use QGetTickCount instead (in main function table)
4225
4226                 30/6/2002
4227                 TTimo
4228                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=530
4229                 cleaned the .shader from 'light 1' statements
4230                 updated the IS script for the updated .shader
4231
4232                 17/6/2002
4233                 TTimo
4234                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=541
4235                 Sof2 support, PNG format
4236                 wrote imagepng module, dynamic dependencies to zlib and libpng
4237                 changes in the core:
4238                 some hardcoded to "sof2.game" for png interface loading and extensions
4239                 in GetTextureExtension, killed outdated support for texture plugins
4240                 if ! "sof2.game", png is not loaded, support disabled
4241                 http://zerowing.idsoftware.com/libpng/
4242                 correctly configured for VC build (post build steps and dependencies)
4243                 is required on win32 to build imagepng
4244                 - added m_pfnGetGameFileName to the main function table (was needed for png stuff)
4245                 - cleaned up the QERApp_LoadTextureRGBA path
4246                 using (unsigned char* pPixels, int nWidth, int nHeight)
4247                 cleaning up internal access path
4248                 RR2DO2
4249                 - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
4250                 camera plugin for RTCW
4251                 TTimo: wrote the .dsp, post build steps etc.
4252                 IMPORTANT: you need to have RTCWRADIANTDIR env variable pointing to the RTCW Radiant files
4253                 (default C:\Program Files\Return To Castle Wolfenstein\Radiant)
4254
4255
4256                 12/6/2002
4257                 RR2DO2
4258                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=299
4259                         MP/SP pk3 filtering in VFS
4260                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=386
4261                         .camera support: splines library, camera plugin
4262                                 TTimo: portability fixups, cons build, guarding pragma, __cdecl BOOL
4263                                 virtual functions but non-virtual destructor
4264                                         declaration with no type
4265                                         int idCameraFOV::start - control reaches end of non-void, making it void
4266                                         enumeration not handled in switch
4267                                         no _MAX_PATH, the portable one is PATH_MAX
4268                                         implicit declaration of int _fullpath
4269                                         for(int i = 0; ..
4270                                         struct _IO_FILE has no member named '_bufsiz'
4271                                         stricmp -> Q_stricmp
4272                                         attempt at implementation in .h file (InitIglToQgl)
4273                                 camera stuff still vastly broken (particularly on Linux), need to check in because of new fixes incoming        
4274                         djbob   
4275                         - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=17
4276                         quick fix to spawnflags getting corrupted when multiple entities selected
4277                                 (doesn't completely solve the problems we have with spawnflags yet though)
4278
4279 ===============================================================
4280 END -- merging release-1_2_9 -> merge-post-1_2_10 into trunk - END
4281 ===============================================================
4282
4283 12/12/2002
4284   Hydra
4285   - #197, HL support update
4286
4287 11/12/2002
4288   TTimo
4289   - added cmdlib dependency to mapq3.so (fixes unresolved)
4290
4291 25/10/2002
4292   Hydra
4293   - vfsGetFullPath() can now (optionally) search PK3/WAD files
4294   - Half-life map loading is now un-borked (my original patch worked
4295     but some conditional code in the patch was incorrectly applied.
4296     That, coupled with the missing vfsFileExists and vfsFindFile replacements)
4297   - A patch to imagehl/lbmlib.cpp/LoadIDSP() was missed out, causing all sprite
4298     models to be reverse-rendered (due to an inverted alphamask)
4299   - Renamed HydraToolz to HydraToolz-HL as it's half-life specific
4300     changed project files and renamed all appropriate files and directories
4301     (for the merge, just delete contrib/hydratoolz and apply the diff)
4302
4303   - Comments on previous notes:
4304
4305     - TODO: need to rationalize where the modules are placed and identify HL specific modules
4306       (this affects the build system / post build step too)
4307       imagehl and spritemodel are halflife specific and can be placed in
4308         either $coreradiantdir/modules or $hlradiantdir/modules
4309         I've updated the .dsp files so that they are copied to $coreradiantdir/modules
4310         spritemodel can actually be used for other engines, not just HL so it makes sense
4311         to keep it in $coreradiantdir/modules
4312       hydratoolz is a half-life specific plugin and must go in $hlradiantdir/modules as it
4313         is NOT to be used for any other engines.  I've also updated the "about text" to
4314         reflect this.
4315
4316 14/08/2002
4317   EvilTypeGuy
4318   - fix build process for textool plugin on some Linux boxen by including qertypes.h
4319
4320 11/06/2002
4321   TTimo
4322   - spritemodels in build system
4323   - applying HL setup patch (att 270, bug 197)
4324     - the templating went one filename seperator too far, causing all *.fgl to be modified .. 
4325       fixed so that we only have the relevant changes
4326     - modules added to main Executable Files, TODO for later will need to identify what is HL specific
4327     - .game generation: don't want enginename yet, gamename is ok
4328     - updated HL .game generation for eclass_singleload and no_patch   
4329     - update hydratoolz location in setup
4330     - update maphl in synapse.config
4331
4332 07/06/2002
4333   TTimo
4334   - realized that \func doesn't work in doxygen, should be \fn (updated everywhere)
4335   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
4336     applying the HL patch (see original list of changes below)
4337     - ugly eclass API changes
4338       eclassfgd/plugin.cpp.rej, eclass API changes involved, a bunch of .rej
4339       SupportsMultiple tries to send configuration information from the eclass format file module to the eclass manager
4340       dropping it, using a proper configuration node instead (eclass_singleload)
4341     - added "no_patch" prop to disable patch support
4342       the patch toolbar prompts are only present in prefs if there is patch support
4343       otherwise everything is force-disabled
4344     - PFN_VFSFINDFILE PFN_VFSFILEEXISTS:
4345       one of the problems we have is that the 'manager' code and file format code are in the same module
4346       (i.e. vfspk3 / vfswad: two formats, but the manager part is pretty much the same)
4347       vfsFindFile(relative filename):
4348         this worked by searching through the list of loaded pk3/wad files for the file
4349         then trying to search through the search directories
4350         - wasn't properly documented about what it does / how is the search performed
4351         - not consistent with existing code, duplicate of vfsGetFullPath for the most part
4352           can't be added to the VFS API as-is, it would confuse the interface
4353         - usage of vfsFindFile in the code doesn't justify the way it proceeds for search
4354         foxing it, replacing by calls to vfsGetFullPath
4355       vfsFileExists(relative filename):
4356         returns wether a file exist, can be flagged to search in pk3/wad or straight filesystem
4357         - this is a duplicate / particular case of vfsGetFileCount
4358         foxing it too, we need to extend and update vfsGetFileCount instead
4359     - mapq3: the changes completely fucked q3 map parsing
4360       need reorganization. same module provides parsing for all .map based formats
4361       we use wrappers around the actual calls and globals in the module to select formats
4362       MAPVERSION_Q2 and MAPVERSION_Q1 don't need to be there yet, they are not supported
4363       MAPVERSION_HL means WC >= 2.2
4364       (when introduced, MAPVERSION_Q2 would be Q2 or qer+hl plugin (same))
4365       MAPVERSION_HL uses "maphl" minor name (instead of mapq2)
4366       cleaned up the Q3 read/write code that got broken
4367       cleaned up various commenting/hack that deal with Q2!=HL format .. we'll see about Q2 when we actually do it
4368       bad cut and paste from cmdlib code, using actual dependency to cmdlib instead (see below for some cmdlib updates)
4369     - took out all SafeRead SafeWrite code from cmdlib, removed annoying cmdlib dependency to Error function
4370       all file access go through VFS module, the cmdlib 07/06/2002 15:47file code was way old  
4371     - radiant/points.cpp pointfile code changes (that's used only for non-monitored compiling now)
4372     - applied patch 267 (hydratoolz fixes)
4373     - commented out some bworldcraft flagged stuff in mapq3/parse.cpp
4374     - updated the .dsw .dsp to compile and copy HL stuff  
4375     - TODO: need to rationalize where the modules are placed and identify HL specific modules
4376     - TODO: seems to be a synapse crash when unloading plugins (hydratools)
4377       (looks like I didn't look at the plugin unload code yet actually)  
4378     - TODO: make sure HL setup puts eclass_singleload="1" and no_patch="1" 
4379     - TODO: WATCHBSP_KEY and TEXTURE_KEY hardcoded for HL need cleanup
4380     - TODO: imagehl duplicates some image functionality
4381       imagehl is supposed to be only for HL-specific image formats
4382       it 'adds' the required formats to the stuff that image makes available for everyone already
4383     - TODO: HL doesn't have a BSP menu!  
4384     - TODO: rename mapq3/ into map/, the map module handles all .map formats
4385     - TODO: it's likely that we only need a vfs/ module instead of vfspk3/ and vfspak/
4386       think about it, see if we really act on this (or do we need to abstract the manager and some file format modules)
4387     - TODO: HL synapse.config needs to use maphl
4388     - TODO: wtf is enginename="quake2" in hl.game
4389     - TODO: I don't have a sample HL map to play with, so I didn't test the changes against
4390
4391 05/06/2002
4392   TTimo
4393   - fixups to make 1.3 start (Q3 mode)
4394   - turned off C++ exception support in the modules/plugins, as we don't use it
4395   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=543
4396     exit properly if missing chunks in synapse.config, don't crash
4397       
4398   Hydra
4399   - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=558
4400     fix for version check in release build
4401
4402   ======================================================================================
4403   -- http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=197
4404      HL support patch
4405   ======================================================================================
4406   04/6/2002
4407     Hydra
4408     - Patched in some CVS changes and fixed a little issue with the
4409       new entity file loader code.
4410   
4411   28/5/2002
4412     Hydra
4413     - http://zerowing.idsoftware.com/bugzilla/show_bug.cgi?id=544
4414       Selected Entity Bounding Box obscured by brushes fix.
4415     - Moved the "wad" keypair creation code from the Map module into
4416       a new plugin called HydraToolz, this means that wad keypair is
4417       done manually by the user, as in fact it should be.  (as the
4418       order of the wads is actually important).
4419     - Fixed a problem with the wads in the wad list being re-ordered.
4420   
4421   27/5/2002
4422     Hydra
4423     - Created an inital implementation of a sprite model plugin.
4424       According to the powers that be, it seems creating a model
4425       plugin is hackish.
4426       It works ok, but there is no way to attach models (sprites if you will)
4427       to non-fixedsize entities (like func_bombtarget)
4428       Also, I can't get the alpha map stuff right so I had to invert the alpha
4429       mask in the spr loader so that 0xff = not drawn pixel.
4430   
4431   17/5/2002
4432     Hydra
4433     - "Wad" keypairs are now used when loading a map and speeds up map loading
4434       significantly. This sorts out quite a few issues that could otherwise occur.
4435     - Map loader now uses textures from wads listed in the the "wad" keypair first.
4436     - Added a texture name mapping cache system to the .map loader
4437       this significantly improves load times of maps that don't store texture
4438       names along with paths (e.g. "mytexture" not "mytextures/mytexture".)
4439     - Added vfsFileExists() to the vfs table (for above) and added it to
4440       vfspk3 and vfswad
4441     - Map loading and saving times are printed to the console.
4442     - Wad file names from the "wad" key pair are logged to the console when