private void RefreshTrimButton() { showTrimButton = connection != null && Helpers.CreedenceOrGreater(connection); if (showTrimButton) { trimButtonContainer.Visible = true; if (selectionManager == null) { selectionManager = new SelectionManager(); } selectionManager.BindTo(trimButton, Program.MainWindow); } else { trimButtonContainer.Visible = false; trimButton.SelectionBroadcaster = null; } }
private void LoadVMs() { Program.AssertOnEventThread(); if (!Visible) { return; } try { dataGridViewVms.SuspendLayout(); var previousSelection = GetSelectedVMs(); UnregisterVmEventHandlers(); dataGridViewVms.SortCompare += dataGridViewVms_SortCompare; dataGridViewVms.Rows.Clear(); enableSelectionManager.BindTo(enableButton, Program.MainWindow); disableSelectionManager.BindTo(disableButton, Program.MainWindow); //clear selection enableSelectionManager.SetSelection(new SelectedItemCollection()); disableSelectionManager.SetSelection(new SelectedItemCollection()); foreach (var vm in Connection.Cache.VMs) { // Add all real VMs and templates that begin with __gui__ (because this may be a new VM) var addVm = vm.is_a_real_vm || VmIsJustAdded(vm) || vm.IsBeingCreated; if (!addVm) { continue; } var show = VmShouldBeVisible(vm); dataGridViewVms.Rows.Add(NewVmRow(vm, show)); } SortVmTable(); if (dataGridViewVms.Rows.Count > 0) { dataGridViewVms.SelectionChanged += VmSelectionChanged; UnselectAllVMs(); // Component defaults the first row to selected if (previousSelection.Any()) { foreach (var row in dataGridViewVms.Rows.Cast <DataGridViewRow>()) { if (previousSelection.Contains((VM)row.Tag)) { row.Selected = true; } } } else { dataGridViewVms.Rows[0].Selected = true; } } } finally { dataGridViewVms.ResumeLayout(); } }
private void LoadVMs() { Program.AssertOnEventThread(); if (!Visible) { return; } try { dataGridViewVms.SuspendLayout(); var previousSelection = GetSelectedVMs(); UnregisterEventHandlers(); dataGridViewVms.SortCompare += dataGridViewVms_SortCompare; dataGridViewVms.Rows.Clear(); enableSelectionManager.BindTo(enableButton, Program.MainWindow); disableSelectionManager.BindTo(disableButton, Program.MainWindow); //clear selection enableSelectionManager.SetSelection(new SelectedItemCollection()); disableSelectionManager.SetSelection(new SelectedItemCollection()); foreach (var vm in Connection.Cache.VMs.Where(vm => vm.is_a_real_vm && vm.Show(Properties.Settings.Default.ShowHiddenVMs))) { dataGridViewVms.Rows.Add(NewVmRow(vm)); } if (dataGridViewVms.SortedColumn == null) { dataGridViewVms.Sort(vmDefaultSort); } else { var order = dataGridViewVms.SortOrder; ListSortDirection sortDirection = ListSortDirection.Ascending; if (order.Equals(SortOrder.Descending)) { sortDirection = ListSortDirection.Descending; } dataGridViewVms.Sort(dataGridViewVms.SortedColumn, sortDirection); } if (dataGridViewVms.Rows.Count > 0) { dataGridViewVms.SelectionChanged += VmSelectionChanged; UnselectAllVMs(); // Component defaults the first row to selected if (previousSelection.Any()) { foreach (var row in dataGridViewVms.Rows.Cast <DataGridViewRow>()) { if (previousSelection.Contains((VM)row.Tag)) { row.Selected = true; } } } else { dataGridViewVms.Rows[0].Selected = true; } } } finally { dataGridViewVms.ResumeLayout(); } }