Esempio n. 1
0
        /// <inheritdoc />
        public PickerDialogViewModel(
            PickerDialog <PickerDialogViewModel> dialog,
            IDialogPickerViewModel source)
        {
            _source = source ?? throw new ArgumentNullException(nameof(source));
            _dialog = dialog ?? throw new ArgumentNullException(nameof(dialog));

            _source.WeakSubscribe(
                nameof(IDialogPickerViewModel.ItemsChanged),
                OnItemsChanged);
        }
        public static BaseNode getPickedNode()
        {
            BaseNode     toAttachNode = null;
            PickerDialog pd           = new PickerDialog();
            DialogResult res          = pd.ShowDialog();

            if (res != DialogResult.OK)
            {
                return(null);
            }
            toAttachNode = pd.SelectedShape;

            return(toAttachNode);
        }
Esempio n. 3
0
        public Task <bool> ShowPicker(IDialogPickerViewModel source)
        {
            var tcs             = new TaskCompletionSource <bool>();
            var dialog          = new PickerDialog <PickerDialogViewModel>();
            var pickerViewModel = new PickerDialogViewModel(dialog, source);

            dialog
            .Show(
                source.Title,
                callback: v => tcs.TrySetResult(true),
                pickerViewModel,
                pickerCallback: v =>
            {
                foreach (var selectedItem in source.SelectedItems)
                {
                    v.Select(selectedItem.Row, selectedItem.Component, animated: false);
                }
            },
                cancelCallback: () => tcs.TrySetResult(false));

            return(tcs.Task);
        }
        private void _previewBackground(Rectangle previewPanel)
        {
            if (_isShown)
            {
                return;
            }

            _isShown = true;

            PickerDialog dialog = new PickerDialog(Color);

            dialog.Owner = WpfUtilities.TopWindow;

            InitialColor = Color.ToGrfColor();

            Rectangle previewPanelClosure = previewPanel;

            dialog.PickerControl.ColorChanged += delegate(object s, Color newColor) {
                previewPanelClosure.Fill = new SolidColorBrush(newColor);
                OnPreviewColorChanged(newColor);
            };

            dialog.Closed += delegate {
                _isShown = false;

                if (dialog.DialogResult == false)
                {
                    previewPanel.Fill = new SolidColorBrush(dialog.PickerControl.InitialColor);
                    OnPreviewColorChanged(dialog.PickerControl.InitialColor);
                }
                else if (dialog.DialogResult)
                {
                    OnColorChanged(dialog.PickerControl.SelectedColor);
                }
            };

            dialog.Show();
        }