Instead of having the buttons do the navigation, try having them set the tabstrip to the "right" value.
Tab strips are on a docked window. Buttons are on a main window. How do I get a reference to the tab strip component in the docked window from a main window?
c = system.gui.getWindow(...).getComponentForPath(...)
or maybe
c = system.gui.desktop(...).getWindow(...).getComponentForPath(...)
1 Like
Ya so that works, but that's gonna be alot of rework...
Couple hours to re-implement, it works like a charm now. Little cleaner. Shorter setup overall, just a pain to redo it (again).
Thanks for the help.
1 Like
So ya, it all boils down to this. The solution is easy for a single-tier navigation system. Just don't bind the selectedTab
property to anything and it'll all work as expected.
Multi-tier is a little more complex. (2-tier example)
- Create 1st tier tab strip in disabled mode.
- Create a 2nd tier tab strip in swap window mode.
- Create other 2nd tier tab strips that are configured as needed for each sub-tier.
- Use a property change script on the 1st tier strip's
selectedTab
property to assign thetabData
for the 2nd tier strip from the corresponding 2nd tier strip. - Create custom properties on the root container of the docked view, one for each tab-strip.
- Bi-directionally bind the
selectedTab
property of the 1st and 2nd tier strips to the custom property. - Context buttons can now swap the main window and then change the docked window's root container properties to update the strips to the correct tabs using
system.gui.getWindow(dockedNavPath).getComponentForPath('Root Container')
Now each instance of the docked window has it's own currentWindow
So, ya. Not really a bug, but a missing feature.