Complete.Org: Mailing Lists: Archives: freeciv-dev: December 2001:
[Freeciv-Dev] [Update] Corecleanup_10 uploaded to incoming
Home

[Freeciv-Dev] [Update] Corecleanup_10 uploaded to incoming

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] [Update] Corecleanup_10 uploaded to incoming
From: "Ross W. Wetmore" <rwetmore@xxxxxxxxxxxx>
Date: Thu, 13 Dec 2001 22:41:05 -0500

This patch updates the corecleanup sets of changes to Dec 08, 2001,
i.e. it merges CVS changes to that point and should be applied to
the freeciv-cvs-Dec-08 snapshot.

Gregory Berkolaiko's original warmap patch is also buried in it
somewhere.

The main changes are fixes or cleanups of various CVS updates over
the last 6 weeks.

There is a significant overhaul of the GUI map and canvas coordinate
handling code. Much of the original and growing spaghetti farm has
been reduced to simple pi/4 rotation transformations plus scaling
and translations that change map to GUI coordinates in a layered
set of 2-4 functions with typically 2-4 lines of active code each.
Most of the changes are documentation to explain the simple concepts
and any subtleties in the current implementation.

With a small hack to send maptype to the client (quick fix for
testing vs long term solution), this means that the GUI now fully 
handles the four standard map_types in both standad and isometric 
mode.For example you can scroll N/S ad nauseaum just as easily as 
E/W and in the trident or isometric tilesets. Native isometric 
maps are not yet supported in the sense that the core map storage 
and handling is not in place, but this should be a modular upgrade
once the regular vs native design fight is resolved. Note, only the 
GTK GUI has been updated.

There were a large number of bugs arising from deletion of numerous
normalize_map_pos() steps as dicated by the CVS changes to deal 
only in normalized coordinates. The game has been stable for several
days, but the chance of lurking core dumps is higher than it has
been for awhile.

Anyway, enjoy ...

Cheers,
RossW
=====


Subject:  [Update] Corecleanup_10 patch
Date:     Dec 13, 2001
Author:   Ross Wetmore
Status:   Sanity Tested, fully functional and playable w/ caveats
State:    Development snapshot

Description
  This patch upgrades the corecleanup patch set to CVS-Dec-08, plus
adds miscellaneous improvements to the GUI coordinate handling for
multiple map topologies.

Dependencies
  none

Recommended Use
  Apply the patch to a clean Dec 08 CVS snapshot in an alternate build
location. `sh configure` and `make` to build. Run either server autogame
or autogame with one or more client observers to get a feel for the
system changes. Compare code with current CVS using side-by-side editors
or side-by-side diff program (that ignores whitespace if possible). 

Examine client/{citydlg_common.c,mapview_common.c,gui-gtk/mapview.c}
for update_canvas, and map_to_canvas_pos() or canvas_to_map_pos()
coordinate handling algorithms.

Files Changed:

freeciv/ai/advdomestic.c
freeciv/ai/advmilitary.c
freeciv/ai/aicity.c
freeciv/ai/aihand.c
freeciv/ai/aitech.c
freeciv/ai/aitools.c
freeciv/ai/aitools.h
freeciv/ai/aiunit.c
freeciv/client/citydlg_common.c
freeciv/client/citydlg_common.h
freeciv/client/control.c
freeciv/client/goto.c
freeciv/client/gui-gtk/citydlg.c
freeciv/client/gui-gtk/mapview.c
freeciv/client/gui-mui/graphics.c
freeciv/client/gui-mui/mapclass.c
freeciv/client/gui-mui/mapview.c
freeciv/client/gui-mui/overviewclass.c
freeciv/client/gui-win32/citydlg.c
freeciv/client/gui-win32/mapview.c
freeciv/client/gui-xaw/mapctrl.c
freeciv/client/gui-xaw/mapview.c
freeciv/client/mapview_common.c
freeciv/client/mapview_common.h
freeciv/client/packhand.c
freeciv/client/tilespec.c
freeciv/client/tilespec.h
freeciv/common/city.c
freeciv/common/city.h
freeciv/common/game.c
freeciv/common/improvement.c
freeciv/common/map.c
freeciv/common/map.h
freeciv/common/packets.c
freeciv/common/player.c
freeciv/common/unit.c
freeciv/common/unit.h
freeciv/common/unittype.c
freeciv/server/autoattack.c
freeciv/server/citytools.c
freeciv/server/cityturn.c
freeciv/server/gamehand.c
freeciv/server/gamelog.c
freeciv/server/gotohand.c
freeciv/server/gotohand.h
freeciv/server/mapgen.c
freeciv/server/mapgen.h
freeciv/server/maphand.c
freeciv/server/maphand.h
freeciv/server/plrhand.c
freeciv/server/ruleset.c
freeciv/server/sanitycheck.c
freeciv/server/savegame.c
freeciv/server/settlers.c
freeciv/server/srv_main.c
freeciv/server/stdinhand.c
freeciv/server/unithand.c
freeciv/server/unittools.c
=====




[Prev in Thread] Current Thread [Next in Thread]