internal override void OnSelectorItemIsSelectedChanged(SelectorItem container, bool oldIsSelected, bool newIsSelected) { if (!_modifyingSelectionInternally) { var item = ItemFromContainer(container); if (!newIsSelected) { SelectedItems.Remove(item); } else { if (!SelectedItems.Contains(item)) { if (!IsSelectionMultiple && SelectedItems.FirstOrDefault() is object selectedItem) { SelectedItems.Remove(selectedItem); } SelectedItems.Add(item); } } } }
protected override void OnKeyUp(KeyEventArgs e) { base.OnKeyUp(e); //全选 if (MultiSelect && e.Modifiers == Keys.Control && e.KeyCode == Keys.A) { SelectAll(); } //取消Control键 else if (_controlPressed) { _controlPressed = false; } //取消Shift键 else if (_shiftPressed) { _shiftPressed = false; _shiftRowIndex = -1; } else if (ShowCheckBoxes && e.Modifiers == Keys.None && e.KeyCode == Keys.Space) { var item = SelectedItems.FirstOrDefault(); if (item != null) { item.Checked = !item.Checked; } } }
private void ExploreContextMenuItem_Click(object sender, EventArgs e) { try { var item = SelectedItems.FirstOrDefault(); if (item == null) { return; } var fileName = item.ImageRec.LocationOnDisk; if (string.IsNullOrEmpty(fileName) || !System.IO.File.Exists(fileName)) { this.ShowError(Res.Error_ImageFileMissing, fileName); Global.OnFileDeleted(item.ImageRec.LocationOnDisk); return; } FileUtil.ExploreFile(fileName); } catch (Exception ex) { this.ShowError(ex); } }
private bool CanGroup() { var type = SelectedItems.FirstOrDefault()?.ElementModel.ElementType; return(SelectedItems.Any() && SelectedItems.Select(x => x.ElementModel).All(x => x != Prop.RootNode && x.ElementType == type)); }
private async Task Edit() { if (SelectedItems != null) { Ftp = new FTPclientModel(IoC.Get <AuthorizationControlVM>().AuthorizedCredentials.FirstOrDefault()); var path = Path.GetTempPath(); var item = SelectedItems.FirstOrDefault(); if (item != null) { if (item.Type == DirectoryItems.Folder) { IoC.Get <IAlertService>().Show("Cant edit a directory!"); return; } await Ftp.FtpDownloadFilesAsync(item.Path, $"{path}\\{item.Name}"); Process p = new Process(); p.Exited += new EventHandler(ProcessEnded); p.StartInfo.FileName = $"{path}\\{item.Name}"; p.EnableRaisingEvents = true; p.Start(); } } }
protected void btn_browse_Click(object sender, RoutedEventArgs e) { var music = SelectedItems.FirstOrDefault(); if (music == null) { return; } if (music is SongViewModel) { go_song(music, null); } else if (music is AlbumViewModel) { go_album(music, null); } else if (music is ArtistViewModel) { go_artist(music, null); } else if (music is CollectViewModel) { go_collect(music, null); } }
private void TagFromFilename() { if (SelectedItems.Count < 1) return; FileNamePattern = "%artist%-%title%"; ResultPreview = SelectedItems.FirstOrDefault().FileName; ShowFNExtWindowAction.Invoke(); }
private void btnSelect_Click(object sender, EventArgs e) { // get the selected IDs and items SelectedIDs = selectedItems.Keys.ToList(); SelectedID = SelectedIDs.FirstOrDefault(); SelectedItems = selectedItems.Select(pair => pair.Value.SourceItem).ToList(); SelectedItem = SelectedItems.FirstOrDefault(); DialogResult = DialogResult.OK; }
private string GetFilterQuickLink(string filter) { if (string.IsNullOrEmpty(filter)) { return(string.Empty); } var newFilter = filter; var pattern = new Regex(@"\[(?<val>.*?)\]", RegexOptions.Compiled | RegexOptions.Singleline); foreach (Match m in pattern.Matches(newFilter)) { var str = m.Groups["val"].Value; var pattern2 = new Regex(@"\$(?<val>.*?)(\s|'|$)", RegexOptions.Compiled | RegexOptions.Singleline); var strNew = string.Empty; foreach (var m2 in pattern2.Matches(str).Cast <Match>()) { var propName = m2.Groups["val"].Value; if (string.IsNullOrEmpty(propName)) { continue; } var isQuote = str.Contains(string.Format("'${0}'", propName)); var values = new List <string>(); var sb = str.Contains('=') ? new StringBuilder(str.Substring(0, str.IndexOf('=')) + " IN (") : new StringBuilder("("); foreach (var strValue in SelectedItems.Cast <WMSBusinessObject>().Select(item => item.GetProperty(propName)). Select(i => CheckValue(i, isQuote)).Where(strValue => values.FirstOrDefault(strValue.Equals) == null)) { var typeParam = TypeDescriptor.GetProperties(SelectedItems.FirstOrDefault()).Find(propName, true).PropertyType; //TODO: сделать правильную обработку null полей if (strValue.Contains("NULL") && values.Contains("'NULL'")) { continue; } var strParam = strValue == "NULL" && typeParam.IsAssignableFrom(typeof(string)) ? "'NULL'" : strValue; values.Add(strParam); if (values.Count == 1) { sb.Append(strParam); } else { sb.Append(",").Append(strParam); } } strNew = strNew + sb.Append(")"); } newFilter = newFilter.Replace(string.Format("[{0}]", str), strNew); } return(newFilter); }
private void Select() { var origin = SelectedItems.FirstOrDefault(); if (origin != null) { CurrentItem = origin.Clone() as TEntity; TempItem = origin.Clone() as TEntity; Status = ModelStatus.OnEdit; } }
private void DeleteFile() { if (SelectedItems != null) { var item = SelectedItems.FirstOrDefault(); if (item != null && File.Exists(item.Path)) { File.Delete(item.Path); CurrentFolderItems.Remove(item); } } }
private void OpenSelectedRecord() { var clientOverviewViewModel = new ClientOverviewViewModel(); var deviceOverviewViewModel = UnityConfiguration.Resolve <DeviceOverviewViewModel>(); var reportOverviewViewModel = UnityConfiguration.Resolve <ReportOverviewViewModel>(); clientOverviewViewModel.LoadClient((SelectedItems?.FirstOrDefault() as ClientViewModel).Id); clientOverviewViewModel.DeviceSelected += deviceOverviewViewModel.OnDeviceSelected; deviceOverviewViewModel.RecordSelected += reportOverviewViewModel.OnRecordSelected; new OverviewView(clientOverviewViewModel, deviceOverviewViewModel, reportOverviewViewModel) .Show(); }
public override bool CanExecute(object parameter) { if (base.CanExecute(parameter)) { var documentsIds = SelectedItems.FirstOrDefault(); if (documentsIds != null && documentsIds.Id != null) { return(true); } } return(false); }
private void RemoveSelectedItems(IList values) { object item; foreach (var value in values) { item = SelectedItems.FirstOrDefault(e => GetSelectedValue(e).Equals(value)); if (item != null) { SelectedItems.Remove(item); UpdateSelectedItem(item, false); } } }
private void ScrollIntoView() { object first = SelectedItems.FirstOrDefault(); if (first != null) { this.ScrollIndexIntoView(this.Items.IndexOf(first)); } else { this.ScrollIndexIntoView(0); } SetFocusOnTxt(); }
public void RemoveSelectedItem(SearchItemV3_1 item) { var sel = SelectedItems.FirstOrDefault(it => it.CameraID == item.CameraID); if (sel != null) { SelectedItems.Remove(sel); } var unsel = UnSelectedItems.FirstOrDefault(it => it.CameraID == item.CameraID); if (unsel == null) { UnSelectedItems.Add(item); } }
private void ShowDetails() { var device = _deviceService.GetDevice((SelectedItems.FirstOrDefault() as DeviceRowView)?.SerialNumber); var clientOverviewViewModel = new ClientOverviewViewModel(device.NrFabryczny); var deviceOverviewViewModel = UnityConfiguration.Resolve <DeviceOverviewViewModel>(); var reportOverviewViewModel = UnityConfiguration.Resolve <ReportOverviewViewModel>(); clientOverviewViewModel.LoadClient(device.IdKlient); clientOverviewViewModel.DeviceSelected += deviceOverviewViewModel.OnDeviceSelected; deviceOverviewViewModel.RecordSelected += reportOverviewViewModel.OnRecordSelected; new OverviewView(clientOverviewViewModel, deviceOverviewViewModel, reportOverviewViewModel) .Show(); }
public async System.Threading.Tasks.Task SelectAtAsync(int X, int Y) { foreach (CellViewModel viewModel in Cells) { viewModel.IsSelected = (viewModel.X == X) && (viewModel.Y == Y); } foreach (WorkerViewModel viewModel in Workers) { viewModel.IsSelected = (viewModel.X == X) && (viewModel.Y == Y); } await SelectedItems.LoadAsync(MapItems.Where(item => (item.X == X) && (item.Y == Y))); SelectedItems.SelectedItem = SelectedItems.FirstOrDefault(); }
private void OpenContextMenuItem_Click(object sender, EventArgs e) { try { var item = SelectedItems.FirstOrDefault(); if (item == null) { return; } OpenItem(item); } catch (Exception ex) { this.ShowError(ex); } }
private void DuplicateBreakpointButton_Click(object sender, EventArgs e) { var breakpoint = SelectedItems.FirstOrDefault(); if (breakpoint != null && !breakpoint.ReadOnly) { var b = CreateAddBreakpointDialog(BreakpointOperation.Duplicate, breakpoint.Type, breakpoint.Address); if (b.ShowHawkDialog() == DialogResult.OK) { Breakpoints.Add(new Breakpoint(Core, breakpoint.Callback, b.Address, b.BreakType, breakpoint.Active)); } } BreakpointView.ItemCount = Breakpoints.Count; UpdateBreakpointRemoveButton(); UpdateStatsLabel(); }
private void DuplicateBreakpointButton_Click(object sender, EventArgs e) { var breakpoint = SelectedItems.FirstOrDefault(); if (breakpoint != null && !breakpoint.ReadOnly) { var b = CreateAddBreakpointDialog(BreakpointOperation.Duplicate, breakpoint.Type, breakpoint.Address, breakpoint.AddressMask); if (this.ShowDialogWithTempMute(b) == DialogResult.OK) { _breakpoints.Add(new Breakpoint(Core, MemoryDomains.SystemBus.Name, breakpoint.Callback, b.Address, b.AddressMask, b.BreakType, breakpoint.Active)); } } BreakpointView.VirtualListSize = _breakpoints.Count; UpdateBreakpointRemoveButton(); UpdateStatsLabel(); }
public override bool HandleScale(Vector2 scale, Anchor anchor) { deltaPosition += scale.X; // this feature only works if only select one ruby / romaji tag. var selectedTextTag = SelectedItems.FirstOrDefault(); if (selectedTextTag == null) { return(false); } // get real left-side and right-side position var rect = editorLyricPiece.GetTextTagPosition(selectedTextTag); switch (anchor) { case Anchor.CentreLeft: var leftPosition = rect.Left + deltaPosition; var startIndex = TextIndexUtils.ToStringIndex(editorLyricPiece.GetHoverIndex(leftPosition)); if (startIndex >= selectedTextTag.EndIndex) { return(false); } selectedTextTag.StartIndex = startIndex; return(true); case Anchor.CentreRight: var rightPosition = rect.Right + deltaPosition; var endIndex = TextIndexUtils.ToStringIndex(editorLyricPiece.GetHoverIndex(rightPosition)); if (endIndex <= selectedTextTag.StartIndex) { return(false); } selectedTextTag.EndIndex = endIndex; return(true); default: return(false); } }
private void EditBreakpointButton_Click(object sender, EventArgs e) { var breakpoint = SelectedItems.FirstOrDefault(); if (breakpoint != null && !breakpoint.ReadOnly) { var b = CreateAddBreakpointDialog(BreakpointOperation.Edit, breakpoint.Type, breakpoint.Address); if (b.ShowHawkDialog() == DialogResult.OK) { breakpoint.Type = b.BreakType; breakpoint.Address = b.Address; breakpoint.ResetCallback(); } } BreakpointView.ItemCount = Breakpoints.Count; UpdateBreakpointRemoveButton(); UpdateStatsLabel(); }
private void EditFile() { if (SelectedItems != null) { var item = SelectedItems.FirstOrDefault(); if (item != null) { if (item.Type == DirectoryItems.Folder) { IoC.Get <IAlertService>().Show("Cant edit a directory!"); return; } Process p = new Process(); p.StartInfo.FileName = item.Path; p.Start(); } } }
private void EditBreakpointButton_Click(object sender, EventArgs e) { var breakpoint = SelectedItems.FirstOrDefault(); if (breakpoint != null && !breakpoint.ReadOnly) { var b = CreateAddBreakpointDialog(BreakpointOperation.Edit, breakpoint.Type, breakpoint.Address, breakpoint.AddressMask); if (this.ShowDialogWithTempMute(b) == DialogResult.OK) { breakpoint.Type = b.BreakType; breakpoint.Address = b.Address; breakpoint.AddressMask = b.AddressMask; breakpoint.ResetCallback(); } } BreakpointView.VirtualListSize = _breakpoints.Count; UpdateBreakpointRemoveButton(); UpdateStatsLabel(); }
protected virtual void item_double_click(object sender, System.Windows.Input.MouseButtonEventArgs e) { var s = SelectedItems.FirstOrDefault(); if (s == null) { return; } if (s is AlbumViewModel) { link_album(sender, null); } else if (s is CollectViewModel) { link_collection(sender, null); } else if (s is ArtistViewModel) { link_artist(sender, null); } }
private void AddSelectedItem(ISelectable item) { if (item == null) { return; } if (SelectedItems?.FirstOrDefault(x => x.Id == item.Id) == null) { if (item != null && !item.IsSelected) { item.IsSelected = true; } SelectedItems?.Add(item); } if (ItemsSource is ISelectableCollection collection && collection.SelectedItemsIds?.Contains(item.Id) != true) { collection.SelectedItemsIds.Add(item.Id); } }
private void RemoveSelectedItem(ISelectable item) { if (item == null) { return; } item = SelectedItems?.FirstOrDefault(x => x.Id == item.Id); if (item != null) { if (item.IsSelected) { item.IsSelected = false; } SelectedItems?.Remove(item); } if (ItemsSource is ISelectableCollection collection) { collection.SelectedItemsIds?.Remove(item.Id); } }
private void SetSelection(object[] items, LiteRow[] rows, LiteColumn[] columns, UIElement[] cells) { if (_configuringSelection) { return; } _configuringSelection = true; items = items ?? new object[0]; rows = rows ?? new LiteRow[0]; columns = columns ?? new LiteColumn[0]; cells = cells ?? new UIElement[0]; cells = cells .Concat(rows.SelectMany(r => r.Cells)) .Concat(columns.SelectMany(c => c.Cells)) .Concat(_rows.Where(r => items.Contains(r.Item)).SelectMany(r => r.Cells)) .Distinct() .ToArray(); rows = rows .Concat(cells.Select(LiteRow.GetRow)) .Distinct() .ToArray(); columns = columns .Concat(cells.Select(LiteColumn.GetColumn)) .Distinct() .ToArray(); var selection = new List <DependencyObject>(); if (SelectionMode.HasFlag(DataGridLiteSelectionMode.SingleCell)) { selection.AddRange(cells.Take(1)); } if (SelectionMode.HasFlag(DataGridLiteSelectionMode.MultiCell)) { selection.AddRange(cells); } if (SelectionMode.HasFlag(DataGridLiteSelectionMode.SingleRow)) { selection.AddRange(rows.Take(1)); } if (SelectionMode.HasFlag(DataGridLiteSelectionMode.MultiRow)) { selection.AddRange(rows); } if (SelectionMode.HasFlag(DataGridLiteSelectionMode.SingleColumn)) { selection.AddRange(columns.Take(1)); } if (SelectionMode.HasFlag(DataGridLiteSelectionMode.MultiColumn)) { selection.AddRange(columns); } selection = selection.Distinct().ToList(); // Sync all selection types SelectedCells = selection.OfType <UIElement>().Where(s => cells.Contains(s)).ToArray(); SelectedRows = selection.OfType <LiteRow>().ToArray(); SelectedColumns = selection.OfType <LiteColumn>().ToArray(); SelectedItems = selection.OfType <LiteRow>() .Concat(SelectedCells.Select(LiteRow.GetRow)) .Select(r => r.Item) .ToArray(); SelectedItem = SelectedItems.FirstOrDefault(); var selected = selection.Concat(SelectedItems.OfType <DependencyObject>()).ToList(); selected.ForEach(i => SetIsSelected(i, true)); var deselected = Items.OfType <DependencyObject>() .Concat(_cells) .Concat(_rows) .Concat(_columns) .Where(i => !selected.Contains(i)) .ToList(); deselected.ForEach(i => SetIsSelected(i, false)); _configuringSelection = false; }
private void OnEditReason() { var model = new ExpandoObjectViewModelBase(); var iwbPosWithCpvGrd = SelectedItems.FirstOrDefault(); var viewService = IoC.Instance.Resolve <IViewService>(); if (iwbPosWithCpvGrd == null) { viewService.ShowDialog("Ошибка", "Запись не выбрана", MessageBoxButton.OK, MessageBoxImage.Information, MessageBoxResult.OK); return; } model.Fields = new ObservableCollection <ValueDataField>(new List <ValueDataField>() { new ValueDataField() { Name = "MANDANTID", SourceName = "MANDANTID", FieldName = "MANDANTID", FieldType = typeof(decimal), Visible = false, Value = iwbPosWithCpvGrd.MandantId }, new ValueDataField() { Name = "IWBPosAdjustmentReason", SourceName = "IWBPosAdjustmentReason", Caption = "Причина корректировки", LookupCode = "ADJUSTMENTREASON_MANDANT", LookupButtonEnabled = false, FieldName = "IWBPosAdjustmentReason", FieldType = typeof(string), Value = iwbPosWithCpvGrd.IWBPosAdjustmentReason }, new ValueDataField() { Name = "IWBPosAdjustmentReasonDesc", SourceName = "IWBPosAdjustmentReasonDesc", Caption = "Описание причины", FieldName = "IWBPosAdjustmentReasonDesc", FieldType = typeof(string), Value = iwbPosWithCpvGrd.IWBPosAdjustmentReasonDesc } }); model.PanelCaption = "Причина корректировки"; if (viewService.ShowDialogWindow(model, true, false, "40%", "15%") != true) { return; } if (iwbPosWithCpvGrd.IWBPosAdjustmentReason != model.Get <decimal?>("IWBPosAdjustmentReason")) { iwbPosWithCpvGrd.IWBPosAdjustmentReason = model.Get <decimal?>("IWBPosAdjustmentReason"); } if (iwbPosWithCpvGrd.IWBPosAdjustmentReasonDesc != model.Get <string>("IWBPosAdjustmentReasonDesc")) { iwbPosWithCpvGrd.IWBPosAdjustmentReasonDesc = model.Get <string>("IWBPosAdjustmentReasonDesc"); } }