[mapserver-users] Developing Skins for Mapserver Apps

Stephen Woodbridge woodbri at swoodbridge.com
Fri Jan 18 11:07:04 EST 2002


Tim,

Great, When you are ready add a note(s) to the appropriate pages off of
http://mapserver.gis.umn.edu/cgi-bin/wiki.pl?SkinsDevelopment

Thanks,
  -Steve

Tim Sutton wrote:
> 
> Hi Stephen
> 
> I think this is a great idea. My demo app at
> 
> http://www.wrcgis.co.uk/webmap/ms_teleco/
> 
> uses a similar approach. It is a heavily modified version of gmap that
> separates the presentation from the map logic. There are independent
> files for the legend, page layout, map, help and mapserver logic. It
> is all done in php4 and DHTML. I will be releasing the source shortly
> for public consumption, so it may form a good starting point for
> further refining a skinnable maperver environment. It allows the look
> of the site to be changed without it affecting the map functionality
> in any way.
> 
> I will post a note to the list when the source is packaged up and
> ready to be downloaded.
> 
> Cheers
> 
> Tim
> 
> On Fri, 18 Jan 2002, Stephen Woodbridge wrote:
> 
> > This started as a reply to Daniel's reply to Re: [mapserver-users] User
> > Layer Attributes Enhancement but I think a more generic discussion on
> > developing a standard for Mapserver Skins might be appropriate. Assuming
> > that some people are interested in pursuing this we could create
> > SkinsDevelopment area on Wiki to collaberate the effort.
> >
> > I think gmap is a great example of what can be done and I appreciate
> > that is has been made available. While looking it over and planning my
> > own navigation interface I thought that it would be great for everyone
> > if we could make navigation interfaces like "skins." It would be really
> > cool of you could drop a "skin" into a directory with a map file and it
> > would just work! You might need to run a utility to init the "skin", but
> > after that it would be fully functional. There would still be a need to
> > customize the interface to deal with non-navigation specific stuff like
> > for example at the Candian Endangered Species site, but in general
> > building the navigation and basic query should be able to be easily
> > defined using a "skin" like approach and an initialization utility.
> > Skins could also be writen in both PHP and Perl.
> >
> > To accomplish this, you would need to be able to discover what is in a
> > map file (doable today) and maybe via the metadata get info on what
> > should be exposed via the skin. And if you wanted to use an external
> > legend/control like gmap you would need to be able to generate the
> > graphics durning the initialization process. This would have to be done
> > in a standardized way in the map file so different skins would be able
> > to do the discovery.
> >
> > I send the following to Steve Lime off list, but maybe I should have
> > sent it to the list as we may be closer than I thought:
> >
> > ------------------ included mail ---------------------------------
> > Subject: Better Mapscript Control of Legends
> > Date: Thu, 17 Jan 2002 17:15:42 -0500
> >
> > Hi Stephen,
> >
> > I wanted to bounce an idea around with you to see what you thought. I
> > just started playing with gmap75 and PHP/Mapscript and one of things I
> > noticed is that you don't get a whole lot of control over the Legend,
> > but wait I'm a little ahead of myself.
> >
> > What I would like to be able to do is build a navigation user interface
> > that is not dependent on knowing what is in the map file. I like what DM
> > Solutions has done with their HTML Legend/Control which combines the
> > display of a Legend and the Control to turn the layers on and off.
> >
> > Unfortunately their code has to explicitly reference the layers by name
> > in the map file, so if you want to move their navigation interface to
> > another map file you have to recode all the layers.
> >
> > I can get all the layer names via mapscript so I can dynamically
> > generate the code to turn layers on/off by their name. What is missing
> > is the ability to easily get at the graphics (IE: Legend pieces) either
> > at deployment or via mapscript. Integrating the control and the legend
> > save screen real estate and simplifies the user interface.
> >
> > Now I see that there are some problems, like the graphics change with
> > scale, but for a given map file the set of graphics icons is constant
> > unless you change the mapfile by editing it or via mapscript so you
> > could potentially run a utility to generate all the legend icon pieces
> > using some automatic name generation that conbined layer+scale then if
> > that name was accessible via mapscript then the mapscript could generate
> > a link to it. The idea would be to generate multiple say Road icons if
> > there were multiple Road displays based on scale, so you might generate
> > road1.gif, road2.gif, etc. Then have an attribute for the layer the
> > would return which road?.gif to use for the given map scale being
> > generated. This might be easily calculated in mapscript from other info
> > so the attribute might not be required.
> >
> > There probably is a better way to do this, but I don't think I know
> > enough yet. I took a quick look at maplegend.c to see if it might be
> > cloned to make a utility to generate all the posible legend icon images.
> > I think it might be done without too much trouble, but coordinating that
> > names to the scale I'm not so sure about.
> >
> > Anyway I think the goal of being able to create modular navigation
> > widgets that anyone can easily drop on a mapfile would be a cool idea.
> > It would be like "Skins" that other application offer.
> >
> > You might have some other ideas which I would be interested in hearing
> > about.
> >
> > Thank you for your time and for Mapserver it really is great!
> >
> > Best regards,
> >   -Stephen Woodbridge
> >
> 
> --
> -----------------------------------------------------
> Tim Sutton                          WRc plc
> Consultant, GIS Solutions Group     Frankland Road
> Direct line:  +44 (0) 1793 865056   Blagrove
> Switchboard:  +44 (0) 1793 865000   Swindon
> Fax:          +44 (0) 1793 865001   Wiltshire SN5 8YF
>                                     United Kingdom
> 
> WRc - Solutions for Water, Waste and the Environment
> -----------------------------------------------------



More information about the mapserver-users mailing list