From what I can understand of the logic in gmmenu.tcl, it tests for the GEM menu dir (etc/gm/Xtns), so it ignores it if it doesn't exist. Then it concats all .gem files there. The same method could be used for the OSX user folder, since it will not exist on other systems. Though if this user support setup is adopted by other systems it could be easily extended to them.

To make it system-agnostic, instead of hardwiring the OSX path (mainly the Library/ part, other systems could be .grass6/ on linux and whatever the user prefs or support folder is in a Windows user's home), it might try to use $GRASS_ADDON_ETC which would be set at startup per system (either init.sh or the initial grass script startup - currently the OSX startup sets this). This can have multiple paths separated by colons, like $PATH. Just check each path in $GRASS_ADDON_ETC for menu files in gm/addons.


I could probably duplicate that block and figure out how to handle a single hardwired path, but I'm not sure about splitting a string and adding a loop for the resulting pieces.

On Sep 6, 2007, at 6:02 PM, Michael Barton wrote:

William,

I don't currently have a way to get these into gmmenu.tcl in such a way as to have them show up on a Mac but not be a problem on other systems that don't have this new feature. Do you have any suggestions along these lines?

Michael


On 9/4/07 8:48 AM, "William Kyngesburye" <[EMAIL PROTECTED]> wrote:

Something that got pushed back in my head, I'd like to get this in
the 6.3 release.  I have the OSX app startup generating tcl menu
files (similar to GEM menu files) for the OSX addon folders.  Can you
get these into gmmenu.tcl?

OSX app addon menus are in:

$HOME/Library/GRASS/$GRASS_VER/Modules/etc/gm/addons

where $GRASS_VER is the major.minor version of the running GRASS.
They are named with a .menu extension and are generated automatically
on startup.  I'm thinking there should also be a user-customizable
menu that won't get zapped on every startup, maybe etc/gm/user.menu.

When you settle on a way to extend the python gui menu, I'll do a
similar thing for that.

-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

All generalizations are dangerous, even this one.


-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

"Mon Dieu! but they are all alike. Cheating, murdering, lying, fighting, and all for things that the beasts of the jungle would not deign to possess - money to purchase the effeminate pleasures of weaklings. And yet withal bound down by silly customs that make them slaves to their unhappy lot while firm in the belief that they be the lords of creation enjoying the only real pleasures of existence....

- the wisdom of Tarzan


_______________________________________________
grass-dev mailing list
[email protected]
http://grass.itc.it/mailman/listinfo/grass-dev

Reply via email to