>> I'm moving the matrix stack into the drawing context. In this process, I've 
>> stumbled onto this:
>> 
>> pushnetwork() is called from only one location: schema.c:connectivity()
>> 
>> pushnetwork() is pushing matrices onto the matrix stack. Since that's 
>> outside of a repaint
>> event, there's no context available, and thus no matrix stack.
>> Alas, connectivity() is promptly clearing that stack -- the matrices appear 
>> to be entirely unused.
>> 
>> I've removed the matrix stack operations from pushnetwork(). If you have 
>> some grand
>> plans for those matrices in pushnetwork(), speak now or else ;)
> 
> This is (or was) an important part of the connectivity() routine.
> Pushnetwork() creates a hierarchy stack to make sure the correct CTM
> is in place when highlightnetlist() is called, because the net being
> highlighted is not necessarity present on the top level of the hierarchy.
> 
> However, depending on how highlightnetlist() is implemented, if it
> is part of the drawing code, then it will presumably draw the netlist
> highlight as needed when it reaches the right level of the hierarchy,
> in which case the drawing stack is already generated by the drawing
> routine.
> 
> If you already removed highlightnetlist() and put it into the drawing
> code, then that is no doubt why you see an unused matrix stack.  I
> think that the way you have rearranged the code, it is safe for you
> to remove pushnetwork().

Yep. -- Kuba
_______________________________________________
Xcircuit-dev mailing list
[email protected]
http://www.opencircuitdesign.com/mailman/listinfo/xcircuit-dev

Reply via email to