We have a large code base that creates and manages many custom objects. Unlike standard AutoCAD objects that are nice and simple, our objects are large and complex, and changing properties requires significant updates (often, such properties result in fewer or more sub-objects being created on the fly to provide the correct assembled object based on the updated set of properties - think of a gate assembly that allowed you to change the number of bars - changing that properties causes the parent (gate) to create or erase bar objects - that's a slightly simplistic analogy!).
In previous versions of AutoCAD when the user dropped the list of options, nothing happened unless they actually clicked an option. With this in-canvas preview feature, just hovering over an item in the combo box causes it to pretend the item was selected. I can see how this might be of value and certainly of no harm for small, quick changes... but for our objects that can result in irritating delays for the user as it updates the drawing. IMHO, it also breaks the premise of a combo box - that nothing happens until you actually click something (purposefully select a new choice).
Is there any way to turn this feature off? We can then advise our customers to do this to avoid this issue.
Solved! Go to Solution.
Fantastic, worked like a charm. We will spend some time (when we have some) seeing if we can do anything from our end to alleviate the problem as well.
I've just discovered that modelessOperationEnded() gets called with a context string of OPM_CHGPROP_PREVIEW for previews - which means we can ignore it for our objects and not force the user to turn the new feature off. Brilliant!
ObjectARX is a little over my head.
I also wanted to post the system variable as it is listed in the System Variable Dialog Box (SYSVDLG <enter>)
It shows that this variable is saved in the registry as opposed to being saved in the drawing...
Thank you. I think we will want to avoid coercing the user to turn this feature off (or to do it ourselves without their knowledge), so I will use the ObjectARX route to ignore such previews. This does indeed work in that it stops the time penalty we would suffer, but it hasn't eliminated all of our problems just yet... but that's something we will have to work on fixing from our end as there's obviously a fault in our code somewhere.
Thank you for the help.
Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register
Start with some of our most frequented solutions to get help installing your software.