public ITdiTab OpenTab(Func <ITdiTab> newTabFunc, ITdiTab afterTab = null, Type[] argTypes = null, object[] args = null) { ITdiTab tab = newTabFunc.Invoke(); Type tabType = tab.GetType(); string hashName = TabHashHelper.GetTabHash(tabType, argTypes ?? new Type[] { }, args ?? new object[] { }); return(OpenTab(hashName, () => tab, afterTab)); }
public ITdiTab OpenTab <TTab, TArg1, TArg2, TArg3>(TArg1 arg1, TArg2 arg2, TArg3 arg3, ITdiTab afterTab = null) where TTab : ITdiTab { return(TabHashHelper.OpenTabSelfCreateTab(this, typeof(TTab), new Type[] { typeof(TArg1), typeof(TArg2), typeof(TArg3) }, new object[] { arg1, arg2, arg3 }, afterTab)); }
public ITdiTab OpenTab <TTab>(ITdiTab afterTab = null) where TTab : ITdiTab { return(TabHashHelper.OpenTabSelfCreateTab(this, typeof(TTab), new Type[] { }, new object[] { }, afterTab)); }