I wrote a patch for the Win32 client a couple of weeks ago, but it
doesn't look like gna.org likes my Yahoo address.  My apologies if
what's below is a little stale.  I haven't worked on it much since I
originally wrote the patch.  Perhaps the development effort is really
focused elsewhere, and I wonder if the Win32 client is being phased
out.

  The patch is against revision 12438 of the svn sources, which was
current as of a few weeks ago.  If there is still interest in the
Win32 client and the patch needs to be updated, I'll send a fresh one.
In my notes below, all the files are under client/gui-win32/.

 Some of the changes weren't strictly necessary to get the build
working, but I think they clean up the code.  In particular, I made
new files gui_mouse.c/.h
for all the cursor code.  One of the other clients has this kind of
structure, and I think it makes sense for the cursors array to be
visible only to the cursor-handling functions.  There are enough
globals in the code as it is.

Notes

graphics.c:
 --pulled the load_cursors function out and eliminated references to
the cursors array

gui_main.c:
 --replaced the "extern" declaration of anim_cursor() with a proper
#include of the new gui_mouse.h

gui.mouse.c:
 --new file for cursor-handling code.  Contains load_cursors()
anim_cursor() and
update_mouse_cursor().   These functions are based on previous code,
but a few minor improvements have been made.  For example, we don't
keep reloading the default cursor in anim_cursor().

gui.mouse.h:
 --new header.  Contains declaration only of anim_cursor because the
other functions are declared elsewhere (graphics_g.h and mapview_g.h)

happiness.c:
 --it looks like someone renamed EFT_EMPIRE_MOD EFT_EMPIRE_BASE
 --g is unused

helpdlg.c
 --it looks like someone deleted the move_type field from unit_type.
The code now uses get_unit_move_type()

Makefile.am:
 --registered the new gui_mouse files

mapctrl.c:
 --replaced direct cursor changes with calls to update_mouse_cursor

mapview.c:
 --removed cursor code
 --deleted references to nonexistent hover_state and action_state (?)

windlg.c:
 --the old code assumes the player struct has a worklists field.
That data has been moved over to the civclient struct.  I fixed the
references.

Cheers!

Jonathan Landis

Attachment: fc-12438-fixWin32.patch
Description: Binary data

_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to