Thanks Nick for the response, I had already started down the road of wrapping the ButtonSwitcher:
In the flashtimeline.xml I added a customBehavior module before the ButtonSwitcher and my custom ResultsHeader before the other three result tabs (Event list, Table and Chart).
switchTabsOnContextChange
if (typeof(Sideview)!="undefined") {
Sideview.utils.declareCustomBehavior("switchTabsOnContextChange", function(myTabSwitcher) {
var methodReference = myTabSwitcher.onContextChange.bind(myTabSwitcher);
myTabSwitcher.onContextChange = function() {
var buttonswitcher = this._children[0];
var activechildindex = buttonswitcher._activeChildIndex;
if (activechildindex == 0) {
buttonswitcher.setActiveChild(1);
}
return(methodReference);
}
});
}
And all of this appears to be working fine except that the checkCompatibilities code is acting up, so an events list search will often pick my home page tab.
My first query is 'system' and I will see my results in the event list as my custom code switched it to the second tab.
My second query is 'system | timechart c by host' and I click it to the chart tab.
Now if I run just 'system' again, it flips to my home page tab instead of the event list tab. Almost like the setActiveChild is going to 0 instead of using the tab title of Event List.
Would marking my tab as Incompatible be a good approach?
I must be missing something simple.
Or should I start over using a Switcher module?
So you are saying to insert a Switcher after my customBehavior and before the ButtonSwitcher and have a custom behavior use getModifiedContext()?
I'll look at the examples and try this way as well, I've got nothing but knowledge to gain.
Thanks again,
Paul
... View more