Complete.Org: Mailing Lists: Archives: freeciv-dev: November 2000:
[Freeciv-Dev] idea: a more portable and more beautiful client interface

[Freeciv-Dev] idea: a more portable and more beautiful client interface

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] idea: a more portable and more beautiful client interface
From: Marc Strous <m.strous@xxxxxxxxxxx>
Date: Wed, 08 Nov 2000 11:47:19 +0100

while strugling with the gtk port to make the client pop up a new window at
a desired place and getting frustrated thinking about all the other
platforms that would require similar efforts (and every coder new to
freeciv going through these rites again), i came up with a different plan,
maybe it has been suggested before, maybe not, anyway, here it is:

why don't we limit all the platform-specific code to display a simple
window with a single bitmap (plus mouse and keyboard event trapping
functions) and take care of all the graphics of the bitmap ourselves. This
bitmap would contain the total graphic user interface of the game: the map,
a command panel, some sort of menu system, popup windows for cities, units

i can see the following advantages:
(1) portability becomes much easier, since all changes only need to be
coded once, even a java-port would benefit.
(2) more beautiful, since we are no longer restricted to square shapes,
standard fonts and windows, but can design a real game interface.
(3) we could get rid of the map scroll-bars. this would be nice when the
switch is made to a completely continuous world. in the current situation
(with x-continuity only) the scroll bars are already awkward in the
(4) more flexible - we could for example change the graphics of menus and
panels during a game from a stone-age look and feel to lets say a neuronet

i can see the following potential problems:
(1) are the bitmap functions of the editors fast enough to enable
flickerless scrolling? if not, we would have to go deeper into the
port-specific functions and fix it, probably using - what is it called:
(2) its a change that would require a lot of work - initially. fun work

is there enthusiasm for this idea? i'd be willing to invest some time in
it, but almost certanly not enough to get it done.


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