Ejemplo n.º 1
0
        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);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        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;
                }
            }
        }
Ejemplo n.º 3
0
        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);
            }
        }
Ejemplo n.º 4
0
        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));
        }
Ejemplo n.º 5
0
        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();
                }
            }
        }
Ejemplo n.º 6
0
        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();
 }
Ejemplo n.º 8
0
 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;
 }
Ejemplo n.º 9
0
        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);
        }
Ejemplo n.º 10
0
        private void Select()
        {
            var origin = SelectedItems.FirstOrDefault();

            if (origin != null)
            {
                CurrentItem = origin.Clone() as TEntity;
                TempItem    = origin.Clone() as TEntity;
                Status      = ModelStatus.OnEdit;
            }
        }
Ejemplo n.º 11
0
        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);
        }
Ejemplo n.º 14
0
        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();
        }
Ejemplo n.º 16
0
        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);
            }
        }
Ejemplo n.º 17
0
        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();
        }
Ejemplo n.º 18
0
        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();
        }
Ejemplo n.º 19
0
        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);
            }
        }
Ejemplo n.º 20
0
        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();
        }
Ejemplo n.º 21
0
        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();
        }
Ejemplo n.º 22
0
            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);
                }
            }
Ejemplo n.º 23
0
        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();
        }
Ejemplo n.º 24
0
        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();
                }
            }
        }
Ejemplo n.º 25
0
        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();
        }
Ejemplo n.º 26
0
        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);
            }
        }
Ejemplo n.º 29
0
        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;
        }
Ejemplo n.º 30
0
        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");
            }
        }