Hello, all. The problem:
Take a Vectorscript menu command at hand as an example that does a lot of SetSelect/SetDSelect (1) calls, creates and deletes many temporary and not temporary objects (2). Searching for a Vectorworks functionality that disables drawing refresh due to any drawing/selection operations done programmatically I've found SetCallBackInval. Its documentation states that:
Thing is that it doesn't work. Setting it to any value the net effect is the same:
objects created by the routine become visible as soon as they are created
selected/deselected objects' border highlight appears and disappears on the go
A workaround to hide the temporarily created objects while the routine is running, is to set their opacity to 0. This solves partially problem (2), since temporarily deleted objects should be handled in a different way - by scheduling them for deletion at the moment which the drawing should be redrawn. Another problem still persists - (1) or how to remove the flashing effect when an object is selected/deselected during the time the routine is running.
Any ideas why the SetCallBackInval doesn't work and how to achieve the desired effect?