private DemoInfoListView CreatePlayerStatsListView() { var columnKey = new GridViewColumn(); var headerKey = new GridViewColumnHeader(); headerKey.Content = ""; headerKey.Tag = "Key"; columnKey.Header = headerKey; columnKey.Width = KeyColumnWidth; columnKey.DisplayMemberBinding = new Binding("Key"); var gridView = new GridView(); gridView.AllowsColumnReorder = true; gridView.Columns.Add(columnKey); var listView = new DemoInfoListView(); listView.HorizontalAlignment = HorizontalAlignment.Stretch; listView.VerticalAlignment = VerticalAlignment.Stretch; listView.Margin = new Thickness(5); listView.View = gridView; listView.SelectionMode = SelectionMode.Extended; return(listView); }
private void CreateTeamScoresListView() { var columnGS = new GridViewColumn(); var headerGS = new GridViewColumnHeader(); headerGS.ToolTip = "GameState Index"; headerGS.Content = "GS"; headerGS.Tag = "GameState"; columnGS.Header = headerGS; columnGS.Width = 35; columnGS.DisplayMemberBinding = new Binding("GameState"); var columnStartEndTime = new GridViewColumn(); var headerStartEndTime = new GridViewColumnHeader(); headerStartEndTime.Content = "Time"; headerStartEndTime.Tag = "Time"; columnStartEndTime.Header = headerStartEndTime; columnStartEndTime.Width = 40; columnStartEndTime.DisplayMemberBinding = new Binding("Time"); var columnScore1 = new GridViewColumn(); var headerScore1 = new GridViewColumnHeader(); headerScore1.Content = "RED Score"; headerScore1.Tag = "Score1"; columnScore1.Header = headerScore1; columnScore1.Width = 75; columnScore1.DisplayMemberBinding = new Binding("RedScore"); var columnScore2 = new GridViewColumn(); var headerScore2 = new GridViewColumnHeader(); headerScore2.Content = "BLUE Score"; headerScore2.Tag = "Score2"; columnScore2.Header = headerScore2; columnScore2.Width = 75; columnScore2.DisplayMemberBinding = new Binding("BlueScore"); var scoresGridView = new GridView(); scoresGridView.AllowsColumnReorder = false; scoresGridView.Columns.Add(columnGS); scoresGridView.Columns.Add(columnStartEndTime); scoresGridView.Columns.Add(columnScore1); scoresGridView.Columns.Add(columnScore2); var scoresListView = new DemoInfoListView(); _teamScoresListView = scoresListView; scoresListView.HorizontalAlignment = HorizontalAlignment.Stretch; scoresListView.VerticalAlignment = VerticalAlignment.Stretch; scoresListView.Margin = new Thickness(5); scoresListView.View = scoresGridView; scoresListView.SelectionMode = SelectionMode.Extended; }
private DemoInfoListView CreateTeamStatsListView() { var columnKey = new GridViewColumn(); var headerKey = new GridViewColumnHeader(); headerKey.Content = ""; headerKey.Tag = "Key"; columnKey.Header = headerKey; columnKey.Width = KeyColumnWidth; columnKey.DisplayMemberBinding = new Binding("Key"); var columnRed = new GridViewColumn(); var headerRed = new GridViewColumnHeader(); headerRed.Content = "Red"; headerRed.Tag = "Red"; columnRed.Header = headerRed; columnRed.Width = 150; columnRed.CellTemplate = CreateCellTemplate("Red", "RedFontWeight"); var columnBlue = new GridViewColumn(); var headerBlue = new GridViewColumnHeader(); headerBlue.Content = "Blue"; headerBlue.Tag = "Blue"; columnBlue.Header = headerBlue; columnBlue.Width = 150; columnBlue.CellTemplate = CreateCellTemplate("Blue", "BlueFontWeight"); var gridView = new GridView(); gridView.AllowsColumnReorder = false; gridView.Columns.Add(columnKey); gridView.Columns.Add(columnRed); gridView.Columns.Add(columnBlue); var listView = new DemoInfoListView(); listView.HorizontalAlignment = HorizontalAlignment.Stretch; listView.VerticalAlignment = VerticalAlignment.Stretch; listView.Margin = new Thickness(5); listView.View = gridView; listView.SelectionMode = SelectionMode.Extended; return(listView); }
private FrameworkElement CreateTab() { var columnGS = new GridViewColumn(); var headerGS = new GridViewColumnHeader(); headerGS.ToolTip = "GameState Index"; headerGS.Content = "GS"; headerGS.Tag = "GameState"; columnGS.Header = headerGS; columnGS.Width = 35; columnGS.DisplayMemberBinding = new Binding("GameState"); var columnTime = new GridViewColumn(); var headerTime = new GridViewColumnHeader(); headerTime.Content = "Time"; headerTime.Tag = "Time"; columnTime.Header = headerTime; columnTime.Width = 50; columnTime.DisplayMemberBinding = new Binding("Time"); var columnCommand = new GridViewColumn(); var headerCommand = new GridViewColumnHeader(); headerCommand.Content = "Command"; headerCommand.Tag = "Command"; columnCommand.Header = headerCommand; columnCommand.Width = 75; columnCommand.DisplayMemberBinding = new Binding("Command"); var columnValue = new GridViewColumn(); var headerValue = new GridViewColumnHeader(); headerValue.Content = "Value"; headerValue.Tag = "Value"; columnValue.Header = headerValue; columnValue.Width = 400; MakeColumnMultiRowEnabled(columnValue, "Value"); var commandsGridView = new GridView(); commandsGridView.AllowsColumnReorder = false; commandsGridView.Columns.Add(columnGS); commandsGridView.Columns.Add(columnTime); commandsGridView.Columns.Add(columnCommand); commandsGridView.Columns.Add(columnValue); var commandsListView = new DemoInfoListView(); _commandsListView = commandsListView; commandsListView.HorizontalAlignment = HorizontalAlignment.Stretch; commandsListView.VerticalAlignment = VerticalAlignment.Stretch; commandsListView.Margin = new Thickness(5); commandsListView.View = commandsGridView; commandsListView.SelectionMode = SelectionMode.Extended; var infoPanelGroupBox = new GroupBox(); infoPanelGroupBox.Header = "Config Strings and Commands"; infoPanelGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; infoPanelGroupBox.VerticalAlignment = VerticalAlignment.Stretch; infoPanelGroupBox.Margin = new Thickness(5); infoPanelGroupBox.Content = commandsListView; return(infoPanelGroupBox); }
private FrameworkElement CreateDemoChatTab() { var columnGS = new GridViewColumn(); var headerGS = new GridViewColumnHeader(); headerGS.ToolTip = "GameState Index"; headerGS.Content = "GS"; headerGS.Tag = "GameStateIndex"; headerGS.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnGS.Header = headerGS; columnGS.Width = 25; columnGS.DisplayMemberBinding = new Binding("GameStateIndex"); var columnTime = new GridViewColumn(); var headerTime = new GridViewColumnHeader(); headerTime.Content = "Time"; headerTime.Tag = "Time"; headerTime.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnTime.Header = headerTime; columnTime.Width = 75; columnTime.DisplayMemberBinding = new Binding("Time"); var columnName = new GridViewColumn(); var headername = new GridViewColumnHeader(); headername.Content = "Player Name"; headername.Tag = "Player"; headername.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnName.Header = headername; columnName.Width = 175; columnName.DisplayMemberBinding = new Binding("Player"); var columnMessage = new GridViewColumn(); var headerMessage = new GridViewColumnHeader(); headerMessage.Content = "Message"; headerMessage.Tag = "Message"; headerMessage.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnMessage.Header = headerMessage; columnMessage.Width = 315; columnMessage.DisplayMemberBinding = new Binding("Message"); var demoEventsGridView = new GridView(); demoEventsGridView.AllowsColumnReorder = false; demoEventsGridView.Columns.Add(columnGS); demoEventsGridView.Columns.Add(columnTime); demoEventsGridView.Columns.Add(columnName); demoEventsGridView.Columns.Add(columnMessage); var eventsListView = new DemoInfoListView(); _chatEventsListView = eventsListView; eventsListView.HorizontalAlignment = HorizontalAlignment.Stretch; eventsListView.VerticalAlignment = VerticalAlignment.Stretch; eventsListView.Margin = new Thickness(5); eventsListView.View = demoEventsGridView; eventsListView.SelectionMode = SelectionMode.Extended; InitChatEventsListViewCutBinding(); var infoPanelGroupBox = new GroupBox(); infoPanelGroupBox.Header = "Chat Events"; infoPanelGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; infoPanelGroupBox.VerticalAlignment = VerticalAlignment.Stretch; infoPanelGroupBox.Margin = new Thickness(5); infoPanelGroupBox.Content = eventsListView; return infoPanelGroupBox; }
private FrameworkElement CreateTab() { var columnGS = new GridViewColumn(); var headerGS = new GridViewColumnHeader(); headerGS.ToolTip = "GameState Index"; headerGS.Content = "GS"; headerGS.Tag = "GameState"; columnGS.Header = headerGS; columnGS.Width = 35; columnGS.DisplayMemberBinding = new Binding("GameState"); var columnStartEndTime = new GridViewColumn(); var headerStartEndTime = new GridViewColumnHeader(); headerStartEndTime.Content = "Times"; headerStartEndTime.Tag = "StartAndEnd"; columnStartEndTime.Header = headerStartEndTime; columnStartEndTime.Width = 75; columnStartEndTime.DisplayMemberBinding = new Binding("StartAndEnd"); var columnDuration = new GridViewColumn(); var headerDuration = new GridViewColumnHeader(); headerDuration.Content = "Duration"; headerDuration.Tag = "Duration"; columnDuration.Header = headerDuration; columnDuration.Width = 75; columnDuration.DisplayMemberBinding = new Binding("Duration"); var columnBaseToBase = new GridViewColumn(); var headerBaseToBase = new GridViewColumnHeader(); headerBaseToBase.ToolTip = "Base Pick-Up"; headerBaseToBase.Content = "BPU"; headerBaseToBase.Tag = "BaseToBase"; columnBaseToBase.Header = headerBaseToBase; columnBaseToBase.Width = 50; columnBaseToBase.DisplayMemberBinding = new Binding("BaseToBase"); var columnPlayer = new GridViewColumn(); var headerPlayer = new GridViewColumnHeader(); headerPlayer.Content = "Player"; headerPlayer.Tag = "Player"; columnPlayer.Header = headerPlayer; columnPlayer.Width = 175; columnPlayer.DisplayMemberBinding = new Binding("Player"); var columnMap = new GridViewColumn(); var headerMap = new GridViewColumnHeader(); headerMap.Content = "Map"; headerMap.Tag = "Map"; columnMap.Header = headerMap; columnMap.Width = 175; columnMap.DisplayMemberBinding = new Binding("Map"); var commandsGridView = new GridView(); commandsGridView.AllowsColumnReorder = false; commandsGridView.Columns.Add(columnGS); commandsGridView.Columns.Add(columnStartEndTime); commandsGridView.Columns.Add(columnDuration); commandsGridView.Columns.Add(columnBaseToBase); commandsGridView.Columns.Add(columnPlayer); commandsGridView.Columns.Add(columnMap); var commandsListView = new DemoInfoListView(); _capturesListView = commandsListView; commandsListView.HorizontalAlignment = HorizontalAlignment.Stretch; commandsListView.VerticalAlignment = VerticalAlignment.Stretch; commandsListView.Margin = new Thickness(5); commandsListView.View = commandsGridView; commandsListView.SelectionMode = SelectionMode.Extended; var infoPanelGroupBox = new GroupBox(); infoPanelGroupBox.Header = "Flag Capture Events"; infoPanelGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; infoPanelGroupBox.VerticalAlignment = VerticalAlignment.Stretch; infoPanelGroupBox.Margin = new Thickness(5); infoPanelGroupBox.Content = commandsListView; return(infoPanelGroupBox); }
private FrameworkElement CreateTab() { var displayFilesRadioButton = new RadioButton(); _displayFilesRadioButton = displayFilesRadioButton; displayFilesRadioButton.HorizontalAlignment = HorizontalAlignment.Left; displayFilesRadioButton.VerticalAlignment = VerticalAlignment.Top; displayFilesRadioButton.Margin = new Thickness(5); displayFilesRadioButton.Content = " Display results as files"; displayFilesRadioButton.GroupName = "SearchResultsDisplayMode"; displayFilesRadioButton.Checked += (obj, args) => OnFileModeChecked(); var displayCutsRadioButton = new RadioButton(); displayCutsRadioButton.HorizontalAlignment = HorizontalAlignment.Left; displayCutsRadioButton.VerticalAlignment = VerticalAlignment.Top; displayCutsRadioButton.Margin = new Thickness(5, 0, 5, 5); displayCutsRadioButton.Content = " Display results as file cuts"; displayCutsRadioButton.GroupName = "SearchResultsDisplayMode"; displayCutsRadioButton.Checked += (obj, args) => OnCutModeChecked(); var displaySettingsStackPanel = new StackPanel(); displaySettingsStackPanel.HorizontalAlignment = HorizontalAlignment.Stretch; displaySettingsStackPanel.VerticalAlignment = VerticalAlignment.Top; displaySettingsStackPanel.Margin = new Thickness(5); displaySettingsStackPanel.Orientation = Orientation.Vertical; displaySettingsStackPanel.Children.Add(displayFilesRadioButton); displaySettingsStackPanel.Children.Add(displayCutsRadioButton); var settingsGroupBox = new GroupBox(); settingsGroupBox.HorizontalAlignment = HorizontalAlignment.Left; settingsGroupBox.VerticalAlignment = VerticalAlignment.Top; settingsGroupBox.Margin = new Thickness(5); settingsGroupBox.Header = "Settings"; settingsGroupBox.Content = displaySettingsStackPanel; var fileResultsGridView = new GridView(); fileResultsGridView.AllowsColumnReorder = false; fileResultsGridView.Columns.Add(CreateColumn(380, "File Name", "FileName")); fileResultsGridView.Columns.Add(CreateColumn(40, "Cuts", "MatchCount")); fileResultsGridView.Columns.Add(CreateColumn(130, "Patterns", "Patterns")); var fileResultsListView = new DemoInfoListView(); _fileResultsListView = fileResultsListView; fileResultsListView.HorizontalAlignment = HorizontalAlignment.Stretch; fileResultsListView.VerticalAlignment = VerticalAlignment.Stretch; fileResultsListView.Margin = new Thickness(5); fileResultsListView.View = fileResultsGridView; fileResultsListView.SelectionMode = SelectionMode.Extended; var cutResultsGridView = new GridView(); cutResultsGridView.AllowsColumnReorder = false; cutResultsGridView.Columns.Add(CreateColumn(330, "File Name", "FileName")); cutResultsGridView.Columns.Add(CreateColumn(40, "GS", "GSIndex", "GameState Index")); cutResultsGridView.Columns.Add(CreateColumn(50, "Start", "StartTime")); cutResultsGridView.Columns.Add(CreateColumn(50, "End", "EndTime")); cutResultsGridView.Columns.Add(CreateColumn(80, "Patterns", "Patterns")); var cutResultsListView = new DemoInfoListView(); _cutResultsListView = cutResultsListView; cutResultsListView.HorizontalAlignment = HorizontalAlignment.Stretch; cutResultsListView.VerticalAlignment = VerticalAlignment.Stretch; cutResultsListView.Margin = new Thickness(5); cutResultsListView.View = cutResultsGridView; cutResultsListView.SelectionMode = SelectionMode.Extended; fileResultsListView.SetDemoAnalyzed(true); cutResultsListView.SetDemoAnalyzed(true); FixListViewMouseWheelHandling(fileResultsListView); FixListViewMouseWheelHandling(cutResultsListView); var noResultsTextBlock = new TextBlock(); _noResultsTextBlock = noResultsTextBlock; noResultsTextBlock.HorizontalAlignment = HorizontalAlignment.Left; noResultsTextBlock.VerticalAlignment = VerticalAlignment.Center; noResultsTextBlock.Margin = new Thickness(5); noResultsTextBlock.Text = "Nothing was found!"; var resultsTextBlock = new TextBlock(); _resultsTextBlock = resultsTextBlock; resultsTextBlock.HorizontalAlignment = HorizontalAlignment.Left; resultsTextBlock.VerticalAlignment = VerticalAlignment.Center; resultsTextBlock.Margin = new Thickness(5); resultsTextBlock.Text = ""; var resultsStackPanel = new StackPanel(); resultsStackPanel.HorizontalAlignment = HorizontalAlignment.Stretch; resultsStackPanel.VerticalAlignment = VerticalAlignment.Stretch; resultsStackPanel.Margin = new Thickness(5); resultsStackPanel.Orientation = Orientation.Vertical; resultsStackPanel.Children.Add(noResultsTextBlock); resultsStackPanel.Children.Add(resultsTextBlock); resultsStackPanel.Children.Add(fileResultsListView); resultsStackPanel.Children.Add(cutResultsListView); var resultsGroupBox = new GroupBox(); resultsGroupBox.HorizontalAlignment = HorizontalAlignment.Left; resultsGroupBox.VerticalAlignment = VerticalAlignment.Top; resultsGroupBox.Margin = new Thickness(5); resultsGroupBox.Header = "Search Results"; resultsGroupBox.Content = resultsStackPanel; // Set the default selection and call OnFileModeChecked(). displayFilesRadioButton.IsChecked = true; var rootPanel = new StackPanel(); rootPanel.HorizontalAlignment = HorizontalAlignment.Stretch; rootPanel.VerticalAlignment = VerticalAlignment.Stretch; rootPanel.Margin = new Thickness(5); rootPanel.Orientation = Orientation.Vertical; rootPanel.Children.Add(settingsGroupBox); rootPanel.Children.Add(resultsGroupBox); var scrollViewer = new ScrollViewer(); _scrollViewer = scrollViewer; scrollViewer.HorizontalAlignment = HorizontalAlignment.Stretch; scrollViewer.VerticalAlignment = VerticalAlignment.Stretch; scrollViewer.Margin = new Thickness(0); scrollViewer.HorizontalScrollBarVisibility = ScrollBarVisibility.Disabled; scrollViewer.VerticalScrollBarVisibility = ScrollBarVisibility.Auto; scrollViewer.Content = rootPanel; InitListViewBindings(); return(scrollViewer); }
private FrameworkElement CreateCutByChatTab() { var chatRulesGridView = new GridView(); chatRulesGridView.AllowsColumnReorder = false; chatRulesGridView.Columns.Add(new GridViewColumn { Header = "Operator", Width = 100, DisplayMemberBinding = new Binding("Operator") }); chatRulesGridView.Columns.Add(new GridViewColumn { Header = "Pattern", Width = 175, DisplayMemberBinding = new Binding("Pattern") }); chatRulesGridView.Columns.Add(new GridViewColumn { Header = "Case Sensitive", Width = 100, DisplayMemberBinding = new Binding("CaseSensitive") }); chatRulesGridView.Columns.Add(new GridViewColumn { Header = "Ignore Colors", Width = 100, DisplayMemberBinding = new Binding("IgnoreColors") }); var chatRulesListView = new DemoInfoListView(); _chatRulesListView = chatRulesListView; chatRulesListView.HorizontalAlignment = HorizontalAlignment.Stretch; chatRulesListView.VerticalAlignment = VerticalAlignment.Stretch; chatRulesListView.Margin = new Thickness(5); chatRulesListView.View = chatRulesGridView; chatRulesListView.SelectionMode = SelectionMode.Single; chatRulesListView.Width = 485; foreach(var rule in _app.Config.ChatRules) { chatRulesListView.Items.Add(new ChatRuleDisplayInfo(rule)); } var addButton = new Button(); addButton.Content = "Add"; addButton.Width = 75; addButton.Height = 25; addButton.Margin = new Thickness(0, 0, 0, 5); addButton.Click += (obj, args) => OnAddChatRuleClicked(); var editButton = new Button(); editButton.Content = "Edit"; editButton.Width = 75; editButton.Height = 25; editButton.Margin = new Thickness(0, 0, 0, 5); editButton.Click += (obj, args) => OnEditChatRuleClicked(); var removeButton = new Button(); removeButton.Content = "Remove"; removeButton.Width = 75; removeButton.Height = 25; removeButton.Margin = new Thickness(0, 0, 0, 5); removeButton.Click += (obj, args) => OnRemoveChatRuleClicked(); var chatRulesVerPanel = new StackPanel(); chatRulesVerPanel.HorizontalAlignment = HorizontalAlignment.Stretch; chatRulesVerPanel.VerticalAlignment = VerticalAlignment.Stretch; chatRulesVerPanel.Margin = new Thickness(5); chatRulesVerPanel.Orientation = Orientation.Vertical; chatRulesVerPanel.Children.Add(addButton); chatRulesVerPanel.Children.Add(editButton); chatRulesVerPanel.Children.Add(removeButton); var chatRulesHorPanel = new StackPanel(); chatRulesHorPanel.HorizontalAlignment = HorizontalAlignment.Stretch; chatRulesHorPanel.VerticalAlignment = VerticalAlignment.Stretch; chatRulesHorPanel.Margin = new Thickness(5); chatRulesHorPanel.Orientation = Orientation.Horizontal; chatRulesHorPanel.Children.Add(chatRulesListView); chatRulesHorPanel.Children.Add(chatRulesVerPanel); var chatRulesGroupBox = new GroupBox(); chatRulesGroupBox.Header = "Chat Rules"; chatRulesGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; chatRulesGroupBox.VerticalAlignment = VerticalAlignment.Stretch; chatRulesGroupBox.Margin = new Thickness(5); chatRulesGroupBox.Content = chatRulesHorPanel; var cutButton = new Button(); cutButton.HorizontalAlignment = HorizontalAlignment.Left; cutButton.VerticalAlignment = VerticalAlignment.Top; cutButton.Content = "Cut!"; cutButton.Width = 75; cutButton.Height = 25; cutButton.Margin = new Thickness(5); cutButton.Click += (obj, args) => OnCutByChatClicked(); var actionsGroupBox = new GroupBox(); actionsGroupBox.HorizontalAlignment = HorizontalAlignment.Left; actionsGroupBox.VerticalAlignment = VerticalAlignment.Top; actionsGroupBox.Margin = new Thickness(5); actionsGroupBox.Header = "Actions"; actionsGroupBox.Content = cutButton; var helpTextBlock = new TextBlock(); helpTextBlock.Margin = new Thickness(5); helpTextBlock.TextWrapping = TextWrapping.WrapWithOverflow; helpTextBlock.Text = "The StartsWith pattern matching operator is currently applied to the start of the original chat command, not the start of the message portion itself." + "\nIt is therefore advised to use the Contains or EndsWith modes unless you have something very specific in mind (and know the Quake protocol well)."; var helpGroupBox = new GroupBox(); helpGroupBox.Margin = new Thickness(5); helpGroupBox.Header = "Help"; helpGroupBox.Content = helpTextBlock; var rootPanel = new WrapPanel(); rootPanel.HorizontalAlignment = HorizontalAlignment.Stretch; rootPanel.VerticalAlignment = VerticalAlignment.Stretch; rootPanel.Margin = new Thickness(5); rootPanel.Orientation = Orientation.Horizontal; rootPanel.Children.Add(chatRulesGroupBox); rootPanel.Children.Add(actionsGroupBox); rootPanel.Children.Add(helpGroupBox); var scrollViewer = new ScrollViewer(); scrollViewer.HorizontalAlignment = HorizontalAlignment.Stretch; scrollViewer.VerticalAlignment = VerticalAlignment.Stretch; scrollViewer.Margin = new Thickness(5); scrollViewer.HorizontalScrollBarVisibility = ScrollBarVisibility.Disabled; scrollViewer.VerticalScrollBarVisibility = ScrollBarVisibility.Auto; scrollViewer.Content = rootPanel; return scrollViewer; }
public SteamDialog(Window parent) { var steam = Steam.GetSteamInfo(); if (steam == null) { MessageBox.Show("Failed to find a Steam installation", "Steam not found", MessageBoxButton.OK, MessageBoxImage.Information); return; } var installPathsPanel = CreateVerticalPanel(); for (var i = 0; i < steam.InstallPaths.Count; ++i) { var installPath = steam.InstallPaths[i]; var title = i == 0 ? "Main" : "Extra #" + i.ToString(); var pathTextBox = new TextBox(); pathTextBox.Text = installPath; pathTextBox.IsReadOnly = true; var row = CreateRow(50, title, pathTextBox); installPathsPanel.Children.Add(row); } var installPathsGroupBox = CreateGroupBox("Steam Folders", installPathsPanel); if (installPathsPanel.Children.Count == 0) { installPathsGroupBox.Visibility = Visibility.Collapsed; } var usersGridView = new GridView(); usersGridView.AllowsColumnReorder = false; usersGridView.Columns.Add(new GridViewColumn { Header = "Account Name", Width = 125, DisplayMemberBinding = new Binding("AccountName") }); usersGridView.Columns.Add(new GridViewColumn { Header = "Current Name", Width = 125, DisplayMemberBinding = new Binding("CurrentName") }); usersGridView.Columns.Add(new GridViewColumn { Header = "Steam ID", Width = 200, DisplayMemberBinding = new Binding("SteamID") }); usersGridView.Columns.Add(new GridViewColumn { Header = "Auto Log-In", Width = 100, DisplayMemberBinding = new Binding("AutoLogIn") }); var usersListView = new DemoInfoListView(); usersListView.HorizontalAlignment = HorizontalAlignment.Stretch; usersListView.VerticalAlignment = VerticalAlignment.Stretch; usersListView.Margin = new Thickness(5); usersListView.View = usersGridView; usersListView.SelectionMode = SelectionMode.Single; foreach (var user in steam.Users) { usersListView.Items.Add(user); } var copySteamIdButton = CreateButton("Copy ID to Clipboard", (obj, args) => CopySteamIdToClipboard(usersListView)); copySteamIdButton.HorizontalAlignment = HorizontalAlignment.Left; copySteamIdButton.Margin = new Thickness(5); var usersPanel = CreateVerticalPanel(); usersPanel.Margin = new Thickness(0); usersPanel.Children.Add(usersListView); usersPanel.Children.Add(copySteamIdButton); var usersGroupBox = CreateGroupBox("Steam Users", usersPanel); if (usersListView.Items.Count == 0) { usersGroupBox.Visibility = Visibility.Collapsed; } var gamePathsPanel = CreateVerticalPanel(); foreach (var game in steam.Games) { var pathTextBox = new TextBox(); pathTextBox.Text = game.Path; pathTextBox.IsReadOnly = true; var row = CreateRow(100, game.Name, pathTextBox); gamePathsPanel.Children.Add(row); } var gamePathsGroupBox = CreateGroupBox("Game Folders", gamePathsPanel); if (gamePathsPanel.Children.Count == 0) { gamePathsGroupBox.Visibility = Visibility.Collapsed; } var demoPathsGridView = new GridView(); demoPathsGridView.AllowsColumnReorder = false; demoPathsGridView.Columns.Add(new GridViewColumn { Header = "Game", Width = 50, DisplayMemberBinding = new Binding("Game") }); demoPathsGridView.Columns.Add(new GridViewColumn { Header = "Path", Width = 425, DisplayMemberBinding = new Binding("Path") }); demoPathsGridView.Columns.Add(new GridViewColumn { Header = "Account", Width = 125, DisplayMemberBinding = new Binding("Account") }); var demoPathsListView = new DemoInfoListView(); demoPathsListView.HorizontalAlignment = HorizontalAlignment.Stretch; demoPathsListView.VerticalAlignment = VerticalAlignment.Stretch; demoPathsListView.Margin = new Thickness(5); demoPathsListView.View = demoPathsGridView; demoPathsListView.SelectionMode = SelectionMode.Single; foreach (var game in steam.Games) { foreach (var demoPath in game.DemoPaths) { var item = new DemoFolder(); item.Game = game.ShortName; item.Path = demoPath.Path; item.Account = ""; if (demoPath.AccountSpecific) { var user = steam.Users.Find(u => u.SteamID == demoPath.SteamID); if (user != null) { item.Account = user.AccountName; } } demoPathsListView.Items.Add(item); } } var copyButton = CreateButton("Copy Path to Clipboard", (obj, args) => CopyPathToClipboard(demoPathsListView)); var setAsInputButton = CreateButton("Set as UDT Input Path", (obj, args) => SetAsInputFolder(demoPathsListView)); var setAsOutputButton = CreateButton("Set as UDT Output Path", (obj, args) => SetAsOutputFolder(demoPathsListView)); var openButton = CreateButton("Open in File Explorer", (obj, args) => OpenDemoPath(demoPathsListView)); var demoPathsButtonRow = CreateHorizontalPanel(); demoPathsButtonRow.Children.Add(copyButton); demoPathsButtonRow.Children.Add(setAsInputButton); demoPathsButtonRow.Children.Add(setAsOutputButton); demoPathsButtonRow.Children.Add(openButton); var demoPathsPanel = CreateVerticalPanel(); demoPathsPanel.Margin = new Thickness(0); demoPathsPanel.Children.Add(demoPathsListView); demoPathsPanel.Children.Add(demoPathsButtonRow); var demoPathsGroupBox = CreateGroupBox("Demo Folders", demoPathsPanel); if (demoPathsListView.Items.Count == 0) { demoPathsGroupBox.Visibility = Visibility.Collapsed; } var rootPanel = CreateVerticalPanel(); rootPanel.Children.Add(installPathsGroupBox); rootPanel.Children.Add(usersGroupBox); rootPanel.Children.Add(gamePathsGroupBox); rootPanel.Children.Add(demoPathsGroupBox); var window = new Window(); window.Owner = parent; window.WindowStyle = WindowStyle.ToolWindow; window.AllowsTransparency = false; window.Background = new SolidColorBrush(System.Windows.SystemColors.ControlColor); window.ShowInTaskbar = false; window.SizeToContent = SizeToContent.WidthAndHeight; window.MinWidth = 400; window.MinHeight = 300; window.MaxWidth = 1024; window.MaxHeight = 768; window.ResizeMode = ResizeMode.NoResize; window.Icon = UDT.Properties.Resources.UDTIcon.ToImageSource(); window.Title = "Steam Info"; window.Content = rootPanel; window.Loaded += (obj, args) => { window.Left = parent.Left + (parent.Width - window.Width) / 2; window.Top = parent.Top + (parent.Height - window.Height) / 2; }; window.ShowDialog(); }
private FrameworkElement CreateDemoFragTab() { var columnGS = new GridViewColumn(); var headerGS = new GridViewColumnHeader(); headerGS.ToolTip = "GameState Index"; headerGS.Content = "GS"; headerGS.Tag = "GameStateIndex"; columnGS.Header = headerGS; columnGS.Width = 35; columnGS.DisplayMemberBinding = new Binding("GameStateIndex"); var columnTime = new GridViewColumn(); var headerTime = new GridViewColumnHeader(); headerTime.Content = "Time"; headerTime.Tag = "Time"; columnTime.Header = headerTime; columnTime.Width = 75; columnTime.DisplayMemberBinding = new Binding("Time"); var columnAtt = new GridViewColumn(); var headerAtt = new GridViewColumnHeader(); headerAtt.Content = "Attacker"; headerAtt.Tag = "Attacker"; columnAtt.Header = headerAtt; columnAtt.Width = 155; columnAtt.DisplayMemberBinding = new Binding("Attacker"); var columnTarget = new GridViewColumn(); var headerTarget = new GridViewColumnHeader(); headerTarget.Content = "Target"; headerTarget.Tag = "Target"; columnTarget.Header = headerTarget; columnTarget.Width = 155; columnTarget.DisplayMemberBinding = new Binding("Target"); var columnMOD = new GridViewColumn(); var headerMOD = new GridViewColumnHeader(); headerMOD.Content = "Cause of Death"; // Mean of death in id terminology. headerMOD.Tag = "Mod"; columnMOD.Header = headerMOD; columnMOD.Width = 155; columnMOD.DisplayMemberBinding = new Binding("Mod"); var demoEventsGridView = new GridView(); demoEventsGridView.AllowsColumnReorder = false; demoEventsGridView.Columns.Add(columnGS); demoEventsGridView.Columns.Add(columnTime); demoEventsGridView.Columns.Add(columnAtt); demoEventsGridView.Columns.Add(columnTarget); demoEventsGridView.Columns.Add(columnMOD); var eventsListView = new DemoInfoListView(); _fragEventsListView = eventsListView; eventsListView.HorizontalAlignment = HorizontalAlignment.Stretch; eventsListView.VerticalAlignment = VerticalAlignment.Stretch; eventsListView.Margin = new Thickness(5); eventsListView.View = demoEventsGridView; eventsListView.SelectionMode = SelectionMode.Extended; InitFragEventsListViewCutBinding(); var infoPanelGroupBox = new GroupBox(); infoPanelGroupBox.Header = "Obituary Events"; infoPanelGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; infoPanelGroupBox.VerticalAlignment = VerticalAlignment.Stretch; infoPanelGroupBox.Margin = new Thickness(5); infoPanelGroupBox.Content = eventsListView; return(infoPanelGroupBox); }
private FrameworkElement CreateCutByChatTab() { var chatRulesGridView = new GridView(); chatRulesGridView.AllowsColumnReorder = false; chatRulesGridView.Columns.Add(new GridViewColumn { Header = "Operator", Width = 90, DisplayMemberBinding = new Binding("Operator") }); chatRulesGridView.Columns.Add(new GridViewColumn { Header = "Pattern", Width = 155, DisplayMemberBinding = new Binding("Pattern") }); chatRulesGridView.Columns.Add(new GridViewColumn { Header = "Case Sens.", Width = 80, DisplayMemberBinding = new Binding("CaseSensitive") }); chatRulesGridView.Columns.Add(new GridViewColumn { Header = "No Colors", Width = 80, DisplayMemberBinding = new Binding("IgnoreColors") }); chatRulesGridView.Columns.Add(new GridViewColumn { Header = "Team", Width = 70, DisplayMemberBinding = new Binding("SearchTeam") }); var chatRulesListView = new DemoInfoListView(); _chatRulesListView = chatRulesListView; chatRulesListView.HorizontalAlignment = HorizontalAlignment.Stretch; chatRulesListView.VerticalAlignment = VerticalAlignment.Stretch; chatRulesListView.Margin = new Thickness(5); chatRulesListView.View = chatRulesGridView; chatRulesListView.SelectionMode = SelectionMode.Single; chatRulesListView.Width = 485; foreach (var rule in _app.Config.ChatRules) { chatRulesListView.Items.Add(new ChatRuleDisplayInfo(rule)); } var addButton = new Button(); addButton.Content = "Add"; addButton.Width = 75; addButton.Height = 25; addButton.Margin = new Thickness(0, 0, 0, 5); addButton.Click += (obj, args) => OnAddChatRuleClicked(); var editButton = new Button(); editButton.Content = "Edit"; editButton.Width = 75; editButton.Height = 25; editButton.Margin = new Thickness(0, 0, 0, 5); editButton.Click += (obj, args) => OnEditChatRuleClicked(); var removeButton = new Button(); removeButton.Content = "Remove"; removeButton.Width = 75; removeButton.Height = 25; removeButton.Margin = new Thickness(0, 0, 0, 5); removeButton.Click += (obj, args) => OnRemoveChatRuleClicked(); var chatRulesVerPanel = new StackPanel(); chatRulesVerPanel.HorizontalAlignment = HorizontalAlignment.Stretch; chatRulesVerPanel.VerticalAlignment = VerticalAlignment.Stretch; chatRulesVerPanel.Margin = new Thickness(5); chatRulesVerPanel.Orientation = Orientation.Vertical; chatRulesVerPanel.Children.Add(addButton); chatRulesVerPanel.Children.Add(editButton); chatRulesVerPanel.Children.Add(removeButton); var chatRulesHorPanel = new StackPanel(); chatRulesHorPanel.HorizontalAlignment = HorizontalAlignment.Stretch; chatRulesHorPanel.VerticalAlignment = VerticalAlignment.Stretch; chatRulesHorPanel.Margin = new Thickness(5); chatRulesHorPanel.Orientation = Orientation.Horizontal; chatRulesHorPanel.Children.Add(chatRulesListView); chatRulesHorPanel.Children.Add(chatRulesVerPanel); var chatRulesGroupBox = new GroupBox(); chatRulesGroupBox.Header = "Chat Rules"; chatRulesGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; chatRulesGroupBox.VerticalAlignment = VerticalAlignment.Stretch; chatRulesGroupBox.Margin = new Thickness(5); chatRulesGroupBox.Content = chatRulesHorPanel; var actionsGroupBox = CutByPatternComponent.CreateActionsGroupBox(UDT_DLL.udtPatternType.Chat); var helpTextBlock = new TextBlock(); helpTextBlock.Margin = new Thickness(5); helpTextBlock.TextWrapping = TextWrapping.WrapWithOverflow; helpTextBlock.Text = "A cut section is created if the chat message matches any of the rules." + "\nIn other words, rules are logically ORed, not ANDed:" + "\ncreate_cut = match(message, rule_1) OR match(message, rule_2) OR ... OR match(message, rule_N)"; var helpGroupBox = new GroupBox(); helpGroupBox.HorizontalAlignment = HorizontalAlignment.Left; helpGroupBox.VerticalAlignment = VerticalAlignment.Top; helpGroupBox.Margin = new Thickness(5); helpGroupBox.Header = "Help"; helpGroupBox.Content = helpTextBlock; var rootPanel = new WrapPanel(); rootPanel.HorizontalAlignment = HorizontalAlignment.Stretch; rootPanel.VerticalAlignment = VerticalAlignment.Stretch; rootPanel.Margin = new Thickness(5); rootPanel.Orientation = Orientation.Horizontal; rootPanel.Children.Add(chatRulesGroupBox); rootPanel.Children.Add(actionsGroupBox); rootPanel.Children.Add(helpGroupBox); var scrollViewer = new ScrollViewer(); scrollViewer.HorizontalAlignment = HorizontalAlignment.Stretch; scrollViewer.VerticalAlignment = VerticalAlignment.Stretch; scrollViewer.Margin = new Thickness(5); scrollViewer.HorizontalScrollBarVisibility = ScrollBarVisibility.Disabled; scrollViewer.VerticalScrollBarVisibility = ScrollBarVisibility.Auto; scrollViewer.Content = rootPanel; return(scrollViewer); }
private FrameworkElement CreateTab() { var noDataTextBlock = new TextBlock(); _noStatsPanel = noDataTextBlock; noDataTextBlock.HorizontalAlignment = HorizontalAlignment.Center; noDataTextBlock.VerticalAlignment = VerticalAlignment.Center; noDataTextBlock.Text = "This demo was not analyzed."; noDataTextBlock.Visibility = Visibility.Collapsed; var matchInfoListView = CreateMatchInfoListView(); var teamStatsListView = CreateTeamStatsListView(); var playerStatsListView = CreatePlayerStatsListView(); FixListViewMouseWheelHandling(matchInfoListView); FixListViewMouseWheelHandling(teamStatsListView); FixListViewMouseWheelHandling(playerStatsListView); _matchInfoListView = matchInfoListView; _teamStatsListView = teamStatsListView; _playerStatsListView = playerStatsListView; var matchInfoGroupBox = new GroupBox(); _matchInfoPanel = matchInfoGroupBox; matchInfoGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; matchInfoGroupBox.VerticalAlignment = VerticalAlignment.Stretch; matchInfoGroupBox.Margin = new Thickness(5); matchInfoGroupBox.Header = "Match Info"; matchInfoGroupBox.Content = matchInfoListView; var teamStatsGroupBox = new GroupBox(); _teamStatsPanel = teamStatsGroupBox; teamStatsGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; teamStatsGroupBox.VerticalAlignment = VerticalAlignment.Stretch; teamStatsGroupBox.Margin = new Thickness(5); teamStatsGroupBox.Header = "Team Scores and Stats"; teamStatsGroupBox.Content = teamStatsListView; var playerStatsGroupBox = new GroupBox(); _playerStatsPanel = playerStatsGroupBox; playerStatsGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; playerStatsGroupBox.VerticalAlignment = VerticalAlignment.Stretch; playerStatsGroupBox.Margin = new Thickness(5); playerStatsGroupBox.Header = "Player Scores and Stats"; playerStatsGroupBox.Content = playerStatsListView; var matchSelectionTextBlock = new TextBlock(); matchSelectionTextBlock.HorizontalAlignment = HorizontalAlignment.Left; matchSelectionTextBlock.VerticalAlignment = VerticalAlignment.Center; matchSelectionTextBlock.Text = "Selected Match: "; var matchSelectionComboBox = new ComboBox(); _matchSelectionComboBox = matchSelectionComboBox; matchSelectionComboBox.HorizontalAlignment = HorizontalAlignment.Stretch; matchSelectionComboBox.VerticalAlignment = VerticalAlignment.Center; matchSelectionComboBox.SelectionChanged += (obj, args) => OnMatchSelectionChanged(); var matchSelectionPanel = new StackPanel(); _matchSelectionPanel = matchSelectionPanel; matchSelectionPanel.HorizontalAlignment = HorizontalAlignment.Stretch; matchSelectionPanel.VerticalAlignment = VerticalAlignment.Top; matchSelectionPanel.Margin = new Thickness(5, 2, 5, 2); matchSelectionPanel.Orientation = Orientation.Horizontal; matchSelectionPanel.Children.Add(matchSelectionTextBlock); matchSelectionPanel.Children.Add(matchSelectionComboBox); var statsPanel = new StackPanel(); statsPanel.HorizontalAlignment = HorizontalAlignment.Stretch; statsPanel.VerticalAlignment = VerticalAlignment.Stretch; statsPanel.Margin = new Thickness(5); statsPanel.Orientation = Orientation.Vertical; statsPanel.Children.Add(matchSelectionPanel); statsPanel.Children.Add(matchInfoGroupBox); statsPanel.Children.Add(teamStatsGroupBox); statsPanel.Children.Add(playerStatsGroupBox); var rootPanel = new StackPanel(); _statsPanel = statsPanel; rootPanel.HorizontalAlignment = HorizontalAlignment.Stretch; rootPanel.VerticalAlignment = VerticalAlignment.Stretch; rootPanel.Margin = new Thickness(5); rootPanel.Orientation = Orientation.Vertical; rootPanel.Children.Add(_noStatsPanel); rootPanel.Children.Add(_statsPanel); var scrollViewer = new ScrollViewer(); _scrollViewer = scrollViewer; scrollViewer.HorizontalAlignment = HorizontalAlignment.Stretch; scrollViewer.VerticalAlignment = VerticalAlignment.Stretch; scrollViewer.HorizontalScrollBarVisibility = ScrollBarVisibility.Auto; scrollViewer.VerticalScrollBarVisibility = ScrollBarVisibility.Auto; scrollViewer.Content = rootPanel; ShowMatchInfo(false); ShowTeamStats(false); ShowPlayerStats(false); ShowMatchSelector(false); return(scrollViewer); }
private FrameworkElement CreateDemoFragTab() { var columnGS = new GridViewColumn(); var headerGS = new GridViewColumnHeader(); headerGS.ToolTip = "GameState Index"; headerGS.Content = "GS"; headerGS.Tag = "GameStateIndex"; columnGS.Header = headerGS; columnGS.Width = 25; columnGS.DisplayMemberBinding = new Binding("GameStateIndex"); var columnTime = new GridViewColumn(); var headerTime = new GridViewColumnHeader(); headerTime.Content = "Time"; headerTime.Tag = "Time"; columnTime.Header = headerTime; columnTime.Width = 75; columnTime.DisplayMemberBinding = new Binding("Time"); var columnAtt = new GridViewColumn(); var headerAtt = new GridViewColumnHeader(); headerAtt.Content = "Attacker"; headerAtt.Tag = "Attacker"; columnAtt.Header = headerAtt; columnAtt.Width = 165; columnAtt.DisplayMemberBinding = new Binding("Attacker"); var columnTarget = new GridViewColumn(); var headerTarget = new GridViewColumnHeader(); headerTarget.Content = "Target"; headerTarget.Tag = "Target"; columnTarget.Header = headerTarget; columnTarget.Width = 165; columnTarget.DisplayMemberBinding = new Binding("Target"); var columnMOD = new GridViewColumn(); var headerMOD = new GridViewColumnHeader(); headerMOD.Content = "Cause of Death"; // Mean of death in id terminology. headerMOD.Tag = "Mod"; columnMOD.Header = headerMOD; columnMOD.Width = 165; columnMOD.DisplayMemberBinding = new Binding("Mod"); var demoEventsGridView = new GridView(); demoEventsGridView.AllowsColumnReorder = false; demoEventsGridView.Columns.Add(columnGS); demoEventsGridView.Columns.Add(columnTime); demoEventsGridView.Columns.Add(columnAtt); demoEventsGridView.Columns.Add(columnTarget); demoEventsGridView.Columns.Add(columnMOD); var eventsListView = new DemoInfoListView(); _fragEventsListView = eventsListView; eventsListView.HorizontalAlignment = HorizontalAlignment.Stretch; eventsListView.VerticalAlignment = VerticalAlignment.Stretch; eventsListView.Margin = new Thickness(5); eventsListView.View = demoEventsGridView; eventsListView.SelectionMode = SelectionMode.Extended; InitFragEventsListViewCutBinding(); var infoPanelGroupBox = new GroupBox(); infoPanelGroupBox.Header = "Obituary Events"; infoPanelGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; infoPanelGroupBox.VerticalAlignment = VerticalAlignment.Stretch; infoPanelGroupBox.Margin = new Thickness(5); infoPanelGroupBox.Content = eventsListView; return infoPanelGroupBox; }
private FrameworkElement CreateDemoChatTab() { var columnGS = new GridViewColumn(); var headerGS = new GridViewColumnHeader(); headerGS.ToolTip = "GameState Index"; headerGS.Content = "GS"; headerGS.Tag = "GameStateIndex"; headerGS.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnGS.Header = headerGS; columnGS.Width = 35; columnGS.DisplayMemberBinding = new Binding("GameStateIndex"); var columnTime = new GridViewColumn(); var headerTime = new GridViewColumnHeader(); headerTime.Content = "Time"; headerTime.Tag = "Time"; headerTime.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnTime.Header = headerTime; columnTime.Width = 75; columnTime.DisplayMemberBinding = new Binding("Time"); var columnType = new GridViewColumn(); var headerType = new GridViewColumnHeader(); headerType.Content = "Scope"; headerType.Tag = "TeamMessage"; headerType.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnType.Header = headerType; columnType.Width = 50; columnType.DisplayMemberBinding = new Binding("TeamMessage"); var columnName = new GridViewColumn(); var headerName = new GridViewColumnHeader(); headerName.Content = "Player Name"; headerName.Tag = "Player"; headerName.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnName.Header = headerName; columnName.Width = 120; columnName.DisplayMemberBinding = new Binding("Player"); var columnMessage = new GridViewColumn(); var headerMessage = new GridViewColumnHeader(); headerMessage.Content = "Message"; headerMessage.Tag = "Message"; headerMessage.Click += (obj, args) => OnChatEventColumnClicked(obj as GridViewColumnHeader); columnMessage.Header = headerMessage; columnMessage.Width = 300; columnMessage.DisplayMemberBinding = new Binding("Message"); var demoEventsGridView = new GridView(); demoEventsGridView.AllowsColumnReorder = false; demoEventsGridView.Columns.Add(columnGS); demoEventsGridView.Columns.Add(columnTime); demoEventsGridView.Columns.Add(columnType); demoEventsGridView.Columns.Add(columnName); demoEventsGridView.Columns.Add(columnMessage); var eventsListView = new DemoInfoListView(); _chatEventsListView = eventsListView; eventsListView.HorizontalAlignment = HorizontalAlignment.Stretch; eventsListView.VerticalAlignment = VerticalAlignment.Stretch; eventsListView.Margin = new Thickness(5); eventsListView.View = demoEventsGridView; eventsListView.SelectionMode = SelectionMode.Extended; InitChatEventsListViewCutBinding(); var infoPanelGroupBox = new GroupBox(); infoPanelGroupBox.Header = "Chat Messages"; infoPanelGroupBox.HorizontalAlignment = HorizontalAlignment.Stretch; infoPanelGroupBox.VerticalAlignment = VerticalAlignment.Stretch; infoPanelGroupBox.Margin = new Thickness(5); infoPanelGroupBox.Content = eventsListView; return(infoPanelGroupBox); }