[GRASSLIST:9577] Re: icons

Michael Barton michael.barton at asu.edu
Mon Dec 19 11:59:25 EST 2005


Hamish,

Your ideas about where to put and how to scan for icons sound good. Would it
be a good idea to scan 1) current mapset, 2) PERMANENT in the current
location, and 3) $GISBASE/etc/symbol? I can't comment on the C-code for
d.vect, but the ideas seems fine. Just having icon_files() scan the current
mapset (and maybe PERMANENT?) seems the simplest instead of adding a flag.
An additional possibility (along with scanning mapset) would be to have an
environmental variable (SYMBOL_LOCATION) for the system-wide symbol set that
would be default set to $GISBASE/etc/symbol, but could be set to another
custom location in .grassrc6 or with g.gisenv. Of course, I have no idea how
easy/difficult this all would be.

Michael
______________________________
Michael Barton, Professor of Anthropology
School of Human Evolution and Social Change
Arizona State University
Tempe, AZ  85287-2402
USA

voice: 480-965-6262; fax: 480-965-7671
www: http://www.public.asu.edu/~cmbarton


> From: Hamish <hamish_nospam at yahoo.com>
> Date: Mon, 19 Dec 2005 12:30:37 +1300
> To: Michael Barton <michael.barton at asu.edu>
> Cc: <michael at quanta.org.za>, <GRASSLIST at baylor.edu>
> Subject: Re: [GRASSLIST:9547] Re: icons
> 
>> A thought I've had in talking with Benjamin Ducke, who is working on
>> the GRASS Extension Manager.
>> 
>> Custom extensions and icons located in the $GISBASE directory
>> structure risk getting overwritten, especially if you are installing
>> binaries.
> 
> also the user may not have write permission to the $GISBASE dir.
> (e.g. thin client lab install)
> 
> 
>> What about putting such things in a GRASS_custom directory within a
>> user's home directory? The location of a GRASS_custom directory could
>> be specified in the .grassrc6 file.
> 
> see lib/symbol/read.c
> 
> "S_read() searches first in mapsets (standard GRASS search) and then in
> GISBASE/etc/symbol/"
> 
> So there is already some support for this.
> 
> Install custom icons qw $MAPSET/symbol/group/icon
> 
> using "icon=custom/icon at other_mapset" would work to access an icon
> not in your map search path as well. (see g.mapsets)
> 
> If you want to maintain one set for different locations, you'd have to
> symlink from each PERMANENT/symbol/ ...
> 
> 
> **BUT** currently d.vect blocks using local symbols due to its
> icon_files() check. I'm pretty sure ps.map is ok.
> 
> d.vect's icon_files() needs to be fixed or disabled. (creating a list of
> available icons should probably be a S_() fn anyway??)
> 
> Disabling it would kill the pulldown list in the GUI (not good);
> so icon_files() really needs to be fixed to scan the mapset path too.
> 
> Or listing available files could be added as a flag? d.vect is already
> so complicated I don't like adding more options/flags to it. Also this
> doesn't help the GUI pulldown menu.
> 
> 
> 
> Hamish




More information about the grass-user mailing list