I'm running into some strange behavior with my customized Circuit Editor example that maybe someone can help with.
Basically, I have a setup where I have only one real node in my graph, but it's a group and contains lots of levels of subnodes.
I have done some work creating a custom look when you select subnodes, and even changing some of the draw code to get very customized results.
Everything is working great.
Except I just noticed the following: When you create or open a new document the selection highlighting stops working on all older tabs (documents).
Only the most recently opened tab still shows the selection highlighting.
I've tracked this odd behavior to what, I think, is the culprit: m_selectionPathProvider is not getting updated when you switch between tabs.
It looks like that variable only gets updated when SelectionAdapter.Bind() is called, which I only see happening on new tab creation, not when switching.
Now I'll admit that this has been a struggle. Tracing through the many classes involved in a tab-switch operation and how these classes affect my selected sub-node has been challenging.
I'm guessing that I'm seeing this problem because I've got the rather odd case that each document contains only ONE node with lots of sub-nodes, as opposed to the more common case where you are actually connecting lots of top-level nodes together with wires.
If I'm right that Bind() (or something like it) should be called on tab switch, I could use some help figuring out the best way to make this happen.
Thanks for any ideas.
-Len