Exemplo n.º 1
0
        public MultiPathsViewModel(PathsImplementation implementation, ClipboardObjectViewModel clipboardObject) : base(implementation, clipboardObject)
        {
            var pathViewModels = new MultiPathViewModel[implementation.Paths.Count];

            for (int i = 0; i < implementation.Paths.Count; i++)
            {
                pathViewModels[i] = new MultiPathViewModel(implementation.Paths[i]);
            }
            PathViewModels = new ReadOnlyCollection <MultiPathViewModel>(pathViewModels);

            //determine shared path
            var firstPathViewModelParts = PathViewModels[0].Parts;
            int lowestSubPathCount      = PathViewModels.Min(pvm => pvm.Parts.Count);
            int currentSubPathIndex     = 0;

            for (; currentSubPathIndex < lowestSubPathCount; currentSubPathIndex++)
            {
                var currentSubPathName = firstPathViewModelParts[currentSubPathIndex].Name;
                if (!PathViewModels.Select(pvm => pvm.Parts[currentSubPathIndex]).All(pp => pp.Name == currentSubPathName))
                {
                    break;
                }
            }

            if (currentSubPathIndex > 0)
            {
                SharedPath = new MultiPathViewModel(firstPathViewModelParts[currentSubPathIndex - 1].FullPath);
            }
        }
Exemplo n.º 2
0
            public PinnedInteractableState(ClipboardObjectViewModel clipboardObjectViewModel, PinnedInteractable pinnedInteractable) : base(pinnedInteractable)
            {
                this.clipboardObjectViewModel = clipboardObjectViewModel;
                clipboardObjectViewModel.Model.Properties.CollectionChanged += UpdateToggled;

                UpdateToggled();
            }
Exemplo n.º 3
0
 public void AddMetadata(ClipboardObjectViewModel clipboardObject)
 {
     foreach (var factory in _clipboardObjectMetadataFactories)
     {
         clipboardObject.Metadata.AddRange(factory.Create(clipboardObject));
     }
 }
Exemplo n.º 4
0
        public FormatsMetadata(OriginalFormatsInfo originalFormatsInfo, ClipboardObjectViewModel clipboardObject) : base("TypesIcon", "Formats")
        {
            this.clipboardObject = clipboardObject;
            clipboardObject.Implementations.CollectionChanged += Implementations_CollectionChanged;

            Formats = originalFormatsInfo.Value.Select(f => new FormatMetadata(f)).ToList(originalFormatsInfo.Value.Count);
            RefreshFormats();
        }
        public override IEnumerable <ClipboardObjectMetadata> Create(ClipboardObjectViewModel clipboardObject)
        {
            yield return(new TriggersMetadata(clipboardObject));

            if (clipboardObject.Model.MainTrigger.AdditionalInfo.TryGetValue <OriginalFormatsInfo>(out var originalFormatsInfo))
            {
                yield return(new FormatsMetadata(originalFormatsInfo, clipboardObject));
            }
        }
Exemplo n.º 6
0
        public override bool Passes(ClipboardObjectViewModel clipboardObjectViewModel)
        {
            var textImplemenationVM = clipboardObjectViewModel.Implementations.OfType <TextClipboardImplementationViewModel>().FirstOrDefault();

            if (textImplemenationVM != null)
            {
                return(textImplemenationVM.Model.Source.Contains(searchText));
            }
            else
            {
                return(false);
            }
        }
        public BitmapImplementationViewModel(BitmapImplementation implementation, ClipboardObjectViewModel clipboardObject) : base(implementation, clipboardObject)
        {
            var bitmap = implementation.GetImage();

            if (bitmap.PixelHeight > DefaultThumbnailPixelHeight)
            {
                var scale = (double)DefaultThumbnailPixelHeight / bitmap.PixelHeight;
                Thumbnail = new TransformedBitmap(bitmap, new ScaleTransform(scale, scale));
            }
            else
            {
                Thumbnail = bitmap;
            }

            if (Thumbnail.CanFreeze)
            {
                Thumbnail.Freeze();
            }
        }
 public override bool Passes(ClipboardObjectViewModel clipboardObjectViewModel)
 {
     return(clipboardObjectViewModel.MainTrigger?.DataSourceProgram == Program || clipboardObjectViewModel.MainTrigger?.ForegroundProgram == Program);
 }
Exemplo n.º 9
0
 public override bool Passes(ClipboardObjectViewModel clipboardObjectViewModel)
 {
     return(PinnedManager.IsPinned(clipboardObjectViewModel.Model));
 }
Exemplo n.º 10
0
 public override ClipboardImplementationViewModel Create(ClipboardImplementation implementation, ClipboardObjectViewModel clipboardObject)
 {
     if (implementation is TextClipboardImplementation textImplementation)
     {
         if (implementation.Parent is null)
         {
             return(new TextClipboardImplementationViewModel(textImplementation, clipboardObject));
         }
         else
         {
             return(new LinkedTextClipboardImplementationViewModel(textImplementation, clipboardObject));
         }
     }
     else if (implementation is PathsImplementation pathsImplementation)
     {
         if (pathsImplementation.Paths.Count == 1)
         {
             return(new SinglePathViewModel(pathsImplementation, clipboardObject));
         }
         else
         {
             return(new MultiPathsViewModel(pathsImplementation, clipboardObject));
         }
     }
     else if (implementation is BitmapImplementation bitmapImplementation)
     {
         return(new BitmapImplementationViewModel(bitmapImplementation, clipboardObject));
     }
     return(null);
 }
 public LinkedTextClipboardImplementationViewModel(TextClipboardImplementation implementation, ClipboardObjectViewModel clipboardObject) : base(implementation, clipboardObject)
 {
 }
Exemplo n.º 12
0
 public override bool Passes(ClipboardObjectViewModel clipboardObjectViewModel)
 {
     return(clipboardObjectViewModel.Implementations.Any(i => i.Model.Format == format));
 }
 public abstract IEnumerable <ClipboardObjectMetadata> Create(ClipboardObjectViewModel clipboardObject);
Exemplo n.º 14
0
 public abstract bool Passes(ClipboardObjectViewModel clipboardObjectViewModel);
 public abstract ClipboardImplementationViewModel Create(ClipboardImplementation implementation, ClipboardObjectViewModel clipboardObject);
Exemplo n.º 16
0
        public ClipboardImplementationViewModel?CreateViewModel(ClipboardImplementation implementation, ClipboardObjectViewModel clipboardObject)
        {
            var returner = _viewModelFactoriesManager.OfType <ClipboardImplementationViewModelFactory>().Select(f => f.Create(implementation, clipboardObject)).FirstOrDefault(i => !(i is null));

            if (!(returner is null))
            {
                _interactablesManager.AssignStates(returner);
            }
            return(returner);
        }
Exemplo n.º 17
0
 public TriggersMetadata(ClipboardObjectViewModel clipboardObject) : base("TimeIcon", "History")
 {
     Triggers = clipboardObject.Triggers;
 }
 protected ClipboardImplementationViewModel(ClipboardImplementation implementation, ClipboardObjectViewModel clipboardObject) : base(implementation, new ConcurrentBindableList <InteractableState>())
 {
     ClipboardObject = clipboardObject;
 }