accessing BLT vectors from C
genehilton at my-deja.com
genehilton at my-deja.com
Fri Apr 28 15:11:32 EDT 2000
In article <20000427220821.63091 at nms.otc.telstra.com.au>,
Greg
Thanks for the input. I had figured out the PYVEC stuff - where I am
right now is that it is either a linking or a threading problem. If you
dig about 5 layers down in the source for blt (mostly in bltVector.c and
bltUtil.c) I find that the reason my code doesn't find PY_VEC0 is that
it can't find the Uid (unique identifier not User ID) - that is
Blt_FindUid returns false. On further examination I see that there are
two different instances of Blt_FindUid() linked (or threaded?), one by
_tkinter and one by my module - so Blt_FindUid() sees the static
variable uidInitialized=0 so a new Uid hash table is built. Furthermore
if I add a print statment to Blt_FindUid() to print the address
Blt_FindUid() I get a different address if it is called by _tkinter (via
PMW) or if it is called by my module. I think its all a matter of
understanding how my code gets loaded vs _tkinter. I think I should be
able to straighten this out when I find a few hours. Any bright ideas
are certainly welcome however.
Gene
>
> What is the value of bltname? The names that Pmw give to Blt vectors
> are PY_VEC0, PY_VEC1, PY_VEC2, etc. You can see what Tcl calls are
> being made by calling Pmw.tracetk(). For example, this Pmw:
> v = Pmw.Blt.Vector(1)
Sent via Deja.com http://www.deja.com/
Before you buy.
More information about the Python-list
mailing list