Python script with a "preview" mode

What would be the correct general procedure for setting up a ‘preview’ mode for a script? In the preview state you’d be able to click on points and things to make changes. So do I set up the event handling to do that stuff, then have a loop that waits(with a timer?) to see if Enter has been pressed to continue?


This is typically done with the GetPoint class. Try the CustomGetPoint sample that ships with Rhino


you might setup a display conduit. Either during a dynamic GetPoint operation with DynamicDraw or by overriding Rhino.Display.DisplayConduit in a custom class. The latter is a bit harder to do, and needs cleanup as it stays permanently.

There is a simple example under the help menu under samples/advanced/CustomGetPoint on how to use DynamicDraw, and a good example for permanent display conduit here.

Note that you cannot select objects drawn in a conduit without doing a real workout.