OK, here's what I got:

I wanted to start with an empty vector map, so I tried to create one from the GUI. Error in console:

Traceback (most recent call last):
File "/Applications/GRASS-6.3.app/Contents/MacOS/etc/wxpython/ wxgui.py", line 433, in OnMenuCmd
    menuform.GUI().ParseCommand(cmd, parentframe=self)
File "/Applications/GRASS-6.3.app/Contents/MacOS/etc/wxpython/ gui_modules/menuform.py", line 1390, in ParseCommand
    get_dcmd=get_dcmd, layer=layer)
File "/Applications/GRASS-6.3.app/Contents/MacOS/etc/wxpython/ gui_modules/menuform.py", line 608, in __init__
    mainFrame=self)
File "/Applications/GRASS-6.3.app/Contents/MacOS/etc/wxpython/ gui_modules/menuform.py", line 1050, in __init__
    txt3.SetValue(p['value']) # parameter previously set
File "/BinaryCache/wxWidgets/wxWidgets-11~57/Root/System/Library/ Frameworks/Python.framework/Versions/2.5/Extras/lib/python/wx-2.8-mac- unicode/wx/_controls.py", line 2249, in SetValue TypeError: in method 'SpinCtrl_SetValue', expected argument 2 of type 'int'

So I used v.edit from the Terminal to create one.

Now, added to the GUI display list, right-click (yes, the toolbar combo box is not there), start editing, and I get a dialog:

"
Unable to initialize display driver, see README file for more info.

Details: 'NoneType' object has no attribute 'OpenMap' (dynamic module does not define init function (init_grass6_wxvdigit))
"

It looks like the vdigit toolbar appears, and stays up, but the display list contextual menu still says "start editing" (stop is disabled), so it's probably not fully initialized, as the error says.

I'm not sure if this is from the way I setup my test build or something else.


Here is what I did to get it compiled: since _gdi_.so is technically an extension to [wx]Python, I figure that it should get loaded (maybe automatically?) by wxPython. So instead of directly linking it into vdigit, I used an OSX linker flag "-undefined dynamic_lookup" to tell the linker that the gdi.so symbols will be found at runtime.

But, I'm not sure it gdi is guaranteed to be loaded. Maybe it needs something in the vdigit code to trigger loading the extension, equivalent to import in Python code? Or maybe import it in grass6_wxvdigit.py, before importing _grass6_wxvdigit.so?

On Mar 9, 2008, at 1:26 PM, Martin Landa wrote:

Hi,

there currently two ways

1) add vector map layer into the layer tree, right click and from
contextual menu choose 'Start editing'

2) select in Map display window toolbar 'Digitize' (the last tool in
the toolbar), then from enabled vdigit toolbar choose vector map layer
you want to edit (this map must be present the current layer tree). I
remember there was bug on Mac connected to wxComboBox inside wxToolbar
instance. So maybe you cannot see these comboboxes in the toolbars.
Then first way should work for you.

Martin


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

"Time is an illusion - lunchtime doubly so."

- Ford Prefect


_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to