Hi all,
I’m developing a plugin for Rhino (C#, RhinoCommon), and I need to reliably detect when a block (InstanceDefinition) has been truly modified — not just when the BlockEdit
command is used, but only when actual changes occur.
Here’s what I’ve tried and found:
What I Want to Detect:
- When a block is edited using BlockEdit
- And the user adds, deletes, modifies, or transforms objects inside the block
- But not trigger if the user just opens BlockEdit and clicks OK without making any changes
Problem:
The InstanceDefinitionTableEventType.Modified
event fires even when:
- The user enters BlockEdit and makes no change, then clicks OK
- In other words, just confirming the BlockEdit dialog triggers a “Modified” event
This makes it hard to distinguish real changes from no-ops.
**
Is there a more reliable way to detect actual changes in a block definition after BlockEdit?
**
Thanks in advance!