Hi all,
First of all, let me apologize in advance if this comes across as a little incoherent. I'll do my best to state what I am trying to achieve.
I am trying to develop an application that can place a series of cell elements linearly. Which is easy enough, and I can accomplish this no problem.I would then like to be able to use the standard MicroStation selection tool to select one or all of my series of cell elements and for MicroStation to display my own custom manipulators on top of these elements (I believe this can be done using view decorations and transient elements, etc.).
What I don't quite get is what is the best way to recognize these elements as a special type of element that should display my manipulators while my application is running.Do I need to monitor element selection events and check each cell element for some piece of data that tells me that it belongs to my application, and then create the manipulators on screen.
Or, preferably, can I use the element handler classes to create my own special type of element (which inherits from cell elements) that I can provide callbacks to my own functions to handle displaying manipulators, etc.
Any pointers as to where I can find more information would be great.
ThanksLiam
Hi Liam,
in my opinion there are several independent development topics mentioned in your post and they can be discussed, implemented and tested separately:
Unknown said:Or, preferably, can I use the element handler classes to create my own special type of element
As far as I know it's not possible to implement own ElementHandler for normal 3rd party developers. The handlers define MicroStation elements behavior, so to create own one predicates to introduce own element type ... and it's probably what is not supported (and what is quite bad idea in my opinion).
Unknown said:that I can provide callbacks to my own functions to handle displaying manipulators, etc.
You can do it (not sure if for all scenarios) with existing API also.
Unknown said:Any pointers as to where I can find more information would be great.
Ideas presented by Jon is the way you should think about.
And some my ideas (and mostly ideas only, because I have not done similar topics in CONNECT Edition yet):
With regards,
Jan
Bentley Accredited Developer: iTwin Platform - AssociateLabyrinth Technology | dev.notes() | cad.point
Answer Verified By: wilks