public static AbstractStashTabControl GenerateTab(Tab tab, List <IFilter> filters) { AbstractStashTabControl stashTab; switch (tab.Type) { case TabType.Currency: stashTab = new CurrencyStashTab(tab.i, filters); break; case TabType.Essence: stashTab = new EssenceStashTab(tab.i, filters); break; case TabType.Fragment: stashTab = new FragmentStashTab(tab.i, filters); break; default: stashTab = new StashTabControl(tab.i, filters); break; } return(stashTab); }
void stashView_Loaded(object sender, RoutedEventArgs e) { for (var i = 1; i <= ApplicationState.Stash[ApplicationState.CurrentLeague].NumberOfTabs; i++) { var stash = ApplicationState.Stash[ApplicationState.CurrentLeague]; var currentTab = stash.Tabs[i - 1]; var item = new TabItem { Header = StashHelper.GenerateTabImage(currentTab, false), Tag = currentTab.Name, HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top, Background = Brushes.Transparent, BorderBrush = Brushes.Transparent }; AbstractStashTabControl stashTab; switch (currentTab.Type) { case TabType.Currency: stashTab = new CurrencyStashTab(currentTab.i, getUserFilter(string.Empty)); break; case TabType.Essence: stashTab = new EssenceStashTab(currentTab.i, getUserFilter(string.Empty)); break; case TabType.Fragment: stashTab = new FragmentStashTab(currentTab.i, getUserFilter(string.Empty)); break; default: stashTab = new StashTabControl(currentTab.i, getUserFilter(string.Empty)); break; } CraftTabAndContent(item, stashTab, i); stashView.tabControl.Items.Add(item); } stashView.Loaded -= stashView_Loaded; }