private void SetupTabBase(ITabView tabView, ColumnField[] columnTextFields, ColumnConfig[] colConfig, ContextMenuStrip menu, bool dragDrop) { tabView.SetColumnConfig(columnTextFields, colConfig); tabView.GameFileViewControl.SetContextMenuStrip(menu); tabView.GameFileViewControl.AllowDrop = dragDrop; SetGameFileViewEvents(tabView.GameFileViewControl, dragDrop); }
/// ------------------------------------------------------------------------------------ internal void SetActiveView(ITabView view, bool activateViewsForm) { if (view == null) { return; } foreach (var tab in Tabs.Where(t => t.View is ITabView)) { var tabsView = tab.View as ITabView; bool active = (tabsView == view); tabsView.SetViewActive(active, tab.IsViewDocked); tabsView.TMAdapter.AllowUpdates = active; } App.CurrentView = view; App.CurrentViewType = view.GetType(); var ctrl = view as Control; if (activateViewsForm && ctrl != null && ctrl.FindForm() != null) { if (ctrl.FindForm().WindowState == FormWindowState.Minimized) { ctrl.FindForm().WindowState = FormWindowState.Normal; } ctrl.FindForm().Activate(); } App.MsgMediator.SendMessage("ActiveViewChanged", view); }
public Page_PrepareCarefully() { this.closeOnCancel = false; this.closeOnAccept = false; this.closeOnClickedOutside = false; this.doCloseButton = false; this.doCloseX = false; // Add the tab views to the tab view list. tabViews.Add(tabViewPawns); tabViews.Add(tabViewRelationships); tabViews.Add(tabViewEquipment); // Create a tab record UI widget for each tab view. foreach (var tab in tabViews) { ITabView currentTab = tab; TabRecord tabRecord = new TabRecord(currentTab.Name, delegate { // When a new tab is selected, mark the previously selected TabRecord as unselected and the current one as selected. // Also, update the State to reflected the newly selected ITabView. if (State.CurrentTab != null) { State.CurrentTab.TabRecord.selected = false; } State.CurrentTab = currentTab; currentTab.TabRecord.selected = true; }, false); currentTab.TabRecord = tabRecord; tabRecords.Add(tabRecord); } }
private Button CreateTabCloseBox(ITabView tabView) { var closeBoxImage = new Image { Source = (ImageSource) new ImageSourceConverter().ConvertFromString( "pack://application:,,,/Alexandria;component/Images/Controls/CloseTab.png") }; var closeButton = new Button { Tag = tabView.Id, Width = 18, Height = 18, Content = closeBoxImage, Focusable = false, Margin = new Thickness(10, 0, 0, 0), VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Right, VerticalContentAlignment = VerticalAlignment.Center, }; closeButton.Click += new RoutedEventHandler(delegate(object sender, RoutedEventArgs e) { var button = sender as Button; var id = (Guid)button.Tag; RemoveTab(id); } ); return(closeButton); }
public void Initialize(IDataSourceAdapter adapter, ITabView tabView, IEnumerable <IGameFileDataSource> gameFilesBind) { ITabView[] views = new ITabView[] { tabView }; this.Initialize(adapter, views); this.m_tabHandler.TabViews[0].SetGameFilesData(gameFilesBind); this.m_bOverrideInit = true; }
public void Activate(ITabView tabView) { if (!OnSelected()) { iApp.Navigate(NavigationLink, tabView); } }
private Button CreateTabCloseBox(ITabView tabView) { var closeBoxImage = new Image { Source = (ImageSource) new ImageSourceConverter().ConvertFromString( "pack://application:,,,/Alexandria;component/Images/Controls/CloseTab.png") }; var closeButton = new Button { Tag = tabView.Id, Width = 18, Height = 18, Content = closeBoxImage, Focusable = false, Margin = new Thickness(10, 0, 0, 0), VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Right, VerticalContentAlignment = VerticalAlignment.Center, }; closeButton.Click += new RoutedEventHandler(delegate(object sender, RoutedEventArgs e) { var button = sender as Button; var id = (Guid)button.Tag; RemoveTab(id); } ); return closeButton; }
public void UpdateTabTitle(ITabView tab, string text) { if (this.m_tabLookup.ContainsKey(tab.GameFileViewControl)) { this.m_tabLookup[tab.GameFileViewControl].Item2.Text = text; } }
public void InsertTab(int index, ITabView tab) { TabPage tabPage = this.CreateTabPage(tab); this.TabControl.TabPages.Insert(index, tabPage); this.m_tabLookup.Add(tab.GameFileViewControl, new Tuple <ITabView, TabPage>(tab, tabPage)); this.m_tabs.Insert(index, tab); }
public void AddTab(ITabView tab) { TabPage page = this.CreateTabPage(tab); this.TabControl.TabPages.Add(page); this.m_tabLookup.Add(tab.GameFileViewControl, new Tuple <ITabView, TabPage>(tab, page)); this.m_tabs.Add(tab); }
private static Label CreateTabTitle(ITabView tabView) { return(new Label { Content = tabView.Title, Margin = new Thickness(0, 1, 8, 0) }); }
public void UpdateTabTitle(ITabView tab, string text) { if (m_tabLookup.ContainsKey(tab.GameFileViewControl)) { Tuple <ITabView, TabPage> item = m_tabLookup[tab.GameFileViewControl]; item.Item2.Text = text; } }
private static Label CreateTabTitle(ITabView tabView) { return new Label { Content = tabView.Title, Margin = new Thickness(0, 1, 8, 0) }; }
/// <summary> /// Method to call get workspace information from perforce server. /// </summary> /// <param name="sender"></param> /// <param name="tabView"></param> /// <param name="field"></param> private void SelectWorkSpace(object sender, ITabView tabView, string field) { P4Execute executor = new P4Execute(); P4ExecutingParameters exeParameters; string data = null; Application.Current.Dispatcher.Invoke(() => { Mouse.OverrideCursor = System.Windows.Input.Cursors.Wait; }); if (!string.IsNullOrEmpty(_sessionUser.Username) && !string.IsNullOrWhiteSpace(_sessionUser.Username)) { exeParameters = new P4ExecutingParameters("CMD.exe", "workspaces -u", null, new List <string> { _sessionUser.Username.Trim() }); data = executor.ExecuteCommand(exeParameters); } else { exeParameters = new P4ExecutingParameters("CMD.exe", "user -o", null, null); data = executor.ExecuteCommand(exeParameters); if (!string.IsNullOrEmpty(data) && !string.IsNullOrWhiteSpace(data)) { data = data.Remove(data.LastIndexOf("Email:")); data = data.Substring(data.LastIndexOf("User:"******"CMD.exe", "workspaces -u", null, new List <string> { data }); data = executor.ExecuteCommand(exeParameters); } else { Application.Current.Dispatcher.Invoke(() => { Mouse.OverrideCursor = null; }); return; } } if (workspaceDisplay.IsActive || workspaceDisplay.IsLoaded) { workspaceDisplay.PopulateTable(data, sender, tabView, field, _WorkSpaceEvent); } else { workspaceDisplay = new Workspace(this); workspaceDisplay.PopulateTable(data, sender, tabView, field, _WorkSpaceEvent); } Application.Current.Dispatcher.Invoke(() => { Mouse.OverrideCursor = null; }); }
public void SetTabIndex(int index, ITabView tab) { if (m_tabLookup.ContainsKey(tab.GameFileViewControl)) { TabItem item = m_tabLookup[tab.GameFileViewControl]; TabControl.TabPages.Remove(item.TabPage); TabControl.TabPages.Insert(index, item.TabPage); } }
private void AddTabItemAndView(TabItem tabItem, ITabView tabView) { _control.Items.Add(tabItem); var tabItemAndView = new TabItemAndView { Item = tabItem, View = tabView }; _tabMap.Add(tabView.Id, tabItemAndView); }
private void TagSelectCtrl_TagSelectionChanged(object sender, ITagData tag) { ITabView tagView = m_tabHandler.TabViewForTag(tag); if (tagView != null) { m_tabHandler.SelectTabView(tagView); } }
//TODO переместить в отдельную логику public TabWindow(Form window, ITabWindow parent, ITabView container, IFactory factory) { _factory = factory; _window = window; Parent = parent; Container = container; container.Owner = this; InitializeComponents(); }
private void New_Executed(object sender, ExecutedRoutedEventArgs e) { ITabView TabView = this.CurrentTab; if (TabView != null) { TabView.NewButton_Click(sender, e); } }
private LaunchData GetLaunchFiles(IEnumerable <IGameFile> gameFiles) { IGameFile gameFile = null; if (gameFiles != null) { if (gameFiles.Count() > 1) { gameFile = PromptUserMainFile(gameFiles, out bool accepted); //ask user which file to tie all stats to if (!accepted) { return(new LaunchData(string.Empty, string.Empty)); } } else { gameFile = gameFiles.FirstOrDefault(); } } if (m_playInProgress) { return(new LaunchData("Already Playing", "There is already a game in progress. Please exit that game first.")); } if (!DataSourceAdapter.GetSourcePorts().Any()) { return(new LaunchData("No Source Ports", "You must have at least one source port configured to play! Click the settings menu on the top left and select Source Ports to configure.")); } if (!DataSourceAdapter.GetIWads().Any()) { return(new LaunchData("No IWADs", "You must have at least one IWAD configured to play! Click the settings menu on the top left and select IWads to configure.")); } if (gameFile != null && GetCurrentViewControl() != null) { ITabView tabView = m_tabHandler.TabViewForControl(GetCurrentViewControl()); if (tabView != null) { gameFile = DataSourceAdapter.GetGameFile(gameFile.FileName); //this file came from the grid, which does not have all info populated to save performance } if (gameFiles.Count() > 1) //for when the user selected more than one file { HandleMultiSelectPlay(gameFile, gameFiles.Except(new IGameFile[] { gameFile })); //sets SettingsFiles with all the other game files List <IGameFile> gameFilesList = new List <IGameFile>() { gameFile }; Array.ForEach(gameFiles.Skip(1).ToArray(), x => gameFilesList.Add(x)); gameFiles = gameFilesList; } } return(new LaunchData(gameFile, (GameFile)gameFile, gameFiles)); }
public void AddTab(ITabView tabView) { AddChild(tabView); var tabItem = CreateTabItem(tabView); AddTabItemAndView(tabItem, tabView); SelectTabItem(tabView.Id); }
public void RemoveTab(ITabView tab) { if (this.m_tabLookup.ContainsKey(tab.GameFileViewControl)) { Tuple <ITabView, TabPage> tuple = this.m_tabLookup[tab.GameFileViewControl]; this.m_tabLookup.Remove(tab.GameFileViewControl); this.m_tabs.Remove(tuple.Item1); this.TabControl.TabPages.Remove(tuple.Item2); } }
public ITabWindow CreateWindow(ITabView tabView) { Form window = CreateDefaultTabWindow(); window.BubblingFromParent(); tabView.Orientation = Orientation.Vertical; return(CustomTabWindow(new TabWindow(window, null, tabView, this))); }
public void UpdateTabTitle(ITabView tab, string text) { tab.Title = text; if (m_tabLookup.ContainsKey(tab.GameFileViewControl)) { TabItem item = m_tabLookup[tab.GameFileViewControl]; item.TabPage.Text = text; } }
private TabItem CreateTabItem(ITabView tabView) { var tabItem = new TabItem { Header = CreateTabHeader(tabView), Content = CreateTabContent(tabView) }; return(tabItem); }
public void InsertTab(int index, ITabView tab) { TabPage page = CreateTabPage(tab); TabControl.TabPages.Insert(index, page); m_tabLookup.Add(tab.GameFileViewControl, new TabItem { TabView = tab, TabPage = page }); m_tabs.Insert(index, tab); }
public void AddTab(ITabView tab) { TabPage page = CreateTabPage(tab); m_tabLookup.Add(tab.GameFileViewControl, new TabItem { TabView = tab, TabPage = page }); m_tabs.Add(tab); TabControl.TabPages.Add(page); }
protected void SetBaseCloneProperties(ITabView view) { if (GameFileViewControl is IGameFileColumnView columnView) { view.SetColumnConfig(columnView.ColumnFields, GetColumnConfig().ToArray()); } else { view.SetColumnConfig(GameFileViewFactory.DefaultColumnTextFields, DataCache.Instance.GetColumnConfig()); } }
public void RemoveTab(ITabView tab) { if (m_tabLookup.ContainsKey(tab.GameFileViewControl)) { Tuple <ITabView, TabPage> item = m_tabLookup[tab.GameFileViewControl]; m_tabLookup.Remove(tab.GameFileViewControl); m_tabs.Remove(item.Item1); TabControl.TabPages.Remove(item.Item2); } }
public void RemoveTab(ITabView tab) { if (m_tabLookup.ContainsKey(tab.GameFileViewControl)) { TabItem item = m_tabLookup[tab.GameFileViewControl]; m_tabLookup.Remove(tab.GameFileViewControl); m_tabs.Remove(item.TabView); TabControl.TabPages.Remove(item.TabPage); } }
private TabPage CreateTabPage(ITabView tab) { Control control = tab as Control; TabPage page = new TabPage(tab.Title); if (control != null) { page.Controls.Add(control); control.Dock = DockStyle.Fill; } return(page); }
public void Initialize(IDataSourceAdapter adapter, IEnumerable <ITabView> views) { DataSourceAdapter = adapter; m_tabHandler = new TabHandler(tabControl); foreach (ITabView view in views) { ITabView viewAdd = (ITabView)view.Clone(); viewAdd.GameFileViewControl.MultiSelect = MultiSelect; viewAdd.GameFileViewControl.ItemDoubleClick += GameFileViewControl_RowDoubleClicked; m_tabHandler.AddTab(viewAdd); } }
private UIElement CreateTabHeader(ITabView tabView) { var title = CreateTabTitle(tabView); var closeBox = CreateTabCloseBox(tabView); var header = new DockPanel { HorizontalAlignment = HorizontalAlignment.Stretch }; header.Children.Add(title); header.Children.Add(closeBox); DockPanel.SetDock(title, Dock.Left); DockPanel.SetDock(closeBox, Dock.Right); return header; }
private TabItem CreateTabItem(ITabView tabView) { var tabItem = new TabItem { Header = CreateTabHeader(tabView), Content = CreateTabContent(tabView) }; return tabItem; }
private UIElement CreateTabContent(ITabView tabView) { DockPanel content = null; var viewElement = tabView as UIElement; if (viewElement != null) { content = new DockPanel { HorizontalAlignment = HorizontalAlignment.Stretch, VerticalAlignment = VerticalAlignment.Stretch, LastChildFill = true }; content.Children.Add(viewElement); } return content; }