I'm doing some work on a TabbedUIManager for McV which essentially
intercepts createNewWindow calls and makes tabs out of them. My
issue is that in IdvUIManager.createNewWindow there is code that
shows the window if IDV.okToShowWindows is true. I would like to let
the caller, TabbedUIManager in this case, decide if they want to show
the window based on some other conditions. I know I could just do
this in my overridden createNewWindow but in reality I would just cut
and paste all the current code and remove the show code. Since I
only need 1 little change I thought a better solution might be to add
a createNewWindow signature that allows the caller to specify whether
they would like to show the window or not, createNewWindow(List,
bool, String, String, Element, bool showWhenCreated) perhaps.
Another solution might be to remove the show code all together and
make it the callers responsibility to make the show decision but I
don't think this would be as backward compatible.
I did modify the IdvUIManager code and implement the new signature
solution for testing and it seems to work well for my purposes at least.