Exemple #1
0
        public async Task Should_Create_With_Known_Format()
        {
            //arrange
            var testFormat = "Test_Format";

            await RunOnSTA(() =>
            {
                SysClipboard.Clear();
                SysClipboard.SetData(testFormat, "Test");
            });

            _formatsExtractor.Setup(x => x.Extract(It.IsAny <ClipboardTrigger>(), It.IsAny <IDataObject>())).Returns(new[] { new TestEquatableFormat(new ClipboardFormat(testFormat, testFormat, "Test", new ClipboardFormatCategory("Test Category", "Test"))) });
            _listenerMock.Setup(x => x.IsInterestedIn(It.IsAny <ClipboardObject>())).Returns(true);

            //act
            using (var sut = new ClipboardObjectsManager(_clipboardObjectManager.Object, new[] { _formatsExtractor.Object }, new[] { _clipboardFilter.Object }, _serviceProviderMock.Object))
            {
                sut.AddListener(_listenerMock.Object);
                sut.AddTriggerToQueue();

                await Task.Delay(100);
            }

            //assert
            _listenerMock.Verify(x => x.OnResolvedTrigger(It.IsAny <ResolvedClipboardTrigger>()), Times.Once());
            _listenerMock.Verify(x => x.IsInterestedIn(It.IsAny <ClipboardObject>()), Times.Once());

            _clipboardObjectManager.Verify(x => x.AddImplementationsAsync(It.IsAny <ClipboardObject>(), It.IsAny <IEnumerable <EqualtableFormat> >()), Times.Once());
        }
        public void LayerToClipboard()
        {
            if (SelectedLayer == null || !ActiveWindowHelper.MainWindowActive || !IsActive)
            {
                return;
            }

            // Probably not how the cool kids do it but leveraging on JsonConvert gives flawless serialization
            GeneralHelpers.ExecuteSta(() => Clipboard.SetData("layer", JsonConvert.SerializeObject(SelectedLayer)));
        }
 private void ListView_OnKeyDown(object sender, KeyEventArgs e)
 {
     if (e.Key == Key.F2)
     {
         ((CloudDriveExplorerViewModel)this.DataContext).ResourceRenameCommand.Execute();
     }
     else if (e.Key == Key.C && Keyboard.IsKeyDown(Key.LeftCtrl))
     {
         Clipboard.SetData(CommonConstant.ClipboardCopyResourceItemsDataFormats, "复制");
         ((CloudDriveExplorerViewModel)this.DataContext).ResourceCopyCommand.Execute();
     }
     else if (e.Key == Key.X && Keyboard.IsKeyDown(Key.LeftCtrl))
     {
         Clipboard.SetData(CommonConstant.ClipboardCopyResourceItemsDataFormats, "移动");
         ((CloudDriveExplorerViewModel)this.DataContext).ResourceCutCommand.Execute();
     }
 }
Exemple #4
0
        public async Task Should_Ignore_Unknown_Format()
        {
            //arrange
            await RunOnSTA(() =>
            {
                SysClipboard.Clear();
                SysClipboard.SetData("Unkown_Format", "Test");
            });

            //act
            using (var sut = new ClipboardObjectsManager(_clipboardObjectManager.Object, new[] { _formatsExtractor.Object }, new[] { _clipboardFilter.Object }, _serviceProviderMock.Object))
            {
                sut.AddListener(_listenerMock.Object);
                sut.AddTriggerToQueue();

                await Task.Delay(100);
            }

            //assert
            _listenerMock.Verify(x => x.OnResolvedTrigger(It.IsAny <ResolvedClipboardTrigger>()), Times.Never());
            _listenerMock.Verify(x => x.IsInterestedIn(It.IsAny <ClipboardObject>()), Times.Never());

            _clipboardObjectManager.Verify(x => x.AddImplementationsAsync(It.IsAny <ClipboardObject>(), It.IsAny <IEnumerable <EqualtableFormat> >()), Times.Never());
        }