private void SearchTextBox_TextChanged(object sender, EventArgs e) { if (ModListView.Items.Count == 0) { return; } if (SearchTextBox.Text.Trim() == string.Empty) { ModListView.SelectedItems.Clear(); return; } ListViewItem foundItem = ModListView.FindItemWithText(SearchTextBox.Text, true, 0, true); if (foundItem != null) { ModListView.TopItem = foundItem; foundItem.Selected = true; } else { ModListView.SelectedItems.Clear(); } }
private async void LoadToolStripMenuItem_Click(object sender, EventArgs e) { if (ModListView.Items.Count != 0) { DialogResult overwrite = MessageBox.Show("The mod list is not empty, are you sure you want to overwrite the current list?", "Confirm Overwrite", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (overwrite == DialogResult.No) { return; } } try { if (LoadModListDialog.ShowDialog() == DialogResult.OK) { ToggleLoadingLabel(true); ModListView.BeginUpdate(); ModListView.Items.Clear(); ModListView.Sorting = SortOrder.None; await Task.Run(() => LoadModList(LoadModListDialog.FileName)); if (KeepSortedCheckBox.Checked) { ModListView.Sorting = SortOrder.Ascending; ModListView.Sort(); } ModListView.EndUpdate(); ToggleLoadingLabel(false); } } catch (Exception ex) { MessageBox.Show($"There was an error loading the mod list.\r\n\r\nType: {ex.GetType().Name}\r\n\r\n{ex.Message}", "Error Loading Mod List", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Event handler for the mod list menu item clicked /// </summary> private void Menu_ModList_Click(object sender, RoutedEventArgs e) { var modListView = new ModListView { Owner = this }; modListView.Show(); }
private void SortLinkLabel_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { if (MessageBox.Show("Sort mod list?", "Confirm Sort", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes) { ModListView.Sorting = SortOrder.Ascending; ModListView.Sort(); ModListView.Sorting = SortOrder.None; } }
private void LoadGitHubButton_Click(object sender, EventArgs e) { if (ModListView.Items.Count != 0) { DialogResult overwrite = MessageBox.Show("The download list is not empty, are you sure you want to overwrite the current list?", "Confirm Overwrite", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (overwrite == DialogResult.No) { return; } } try { ToggleLoadingLabel(true); ModListView.BeginUpdate(); ModListView.Items.Clear(); Pack selectedPack = (Pack)PacksComboBox.SelectedItem; WebClient client = new WebClient(); client.Headers.Add("user-agent", UserAgent); string modListString = client.DownloadString(selectedPack.ModListURL); LoadModList(null, modListString); ModListView.EndUpdate(); ToggleLoadingLabel(false); if (ReleaseTypeComboBox.SelectedItem != null) { if (ModListView.Items.Count != 0) { UpdateButton.Enabled = true; } else { UpdateButton.Enabled = false; } } if (GameVersionsComboBox.SelectedItem != null) { if (ModListView.Items.Count != 0) { UpdateButton.Enabled = true; } else { UpdateButton.Enabled = false; } } } catch (Exception ex) { MessageBox.Show($"There was an error loading the mod list from GitHub.\r\n\r\nType: {ex.GetType().Name}\r\n\r\n{ex.Message}", "Error Loading Mod List", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/// <summary> /// Event handler for the mod list menu item clicked /// </summary> private void Menu_ModList_Click(object sender, RoutedEventArgs e) { var textureView = TextureTabItem.Content as TextureView; var textureViewModel = textureView.DataContext as TextureViewModel; var modelView = ModelTabItem.Content as ModelView; var modelViewModel = modelView.DataContext as ModelViewModel; var modListView = new ModListView(textureViewModel, modelViewModel) { Owner = this }; modListView.Show(); }
private async void LoadLocalButton_Click(object sender, EventArgs e) { if (ModListView.Items.Count != 0) { DialogResult overwrite = MessageBox.Show("The download list is not empty, are you sure you want to overwrite the current list?", "Confirm Overwrite", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2); if (overwrite == DialogResult.No) { return; } } try { if (LoadModListDialog.ShowDialog() == DialogResult.OK) { ToggleLoadingLabel(true); ModListView.BeginUpdate(); ModListView.Items.Clear(); await Task.Run(() => LoadModList(LoadModListDialog.FileName)); ModListView.EndUpdate(); ToggleLoadingLabel(false); if (ReleaseTypeComboBox.SelectedItem != null) { if (ModListView.Items.Count != 0) { UpdateButton.Enabled = true; } else { UpdateButton.Enabled = false; } } if (GameVersionsComboBox.SelectedItem != null) { if (ModListView.Items.Count != 0) { UpdateButton.Enabled = true; } else { UpdateButton.Enabled = false; } } } } catch (Exception ex) { MessageBox.Show($"There was an error loading the mod list.\r\n\r\nType: {ex.GetType().Name}\r\n\r\n{ex.Message}", "Error Loading Mod List", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void KeepSortedCheckBox_CheckedChanged(object sender, EventArgs e) { if (KeepSortedCheckBox.Checked) { SortLinkLabel.Visible = false; ModListView.Sorting = SortOrder.Ascending; ModListView.Sort(); } else { SortLinkLabel.Visible = true; ModListView.Sorting = SortOrder.None; } }
public ModListViewAutomationPeer(ModListView owner) : base(owner) { _listView = owner; }