private void OnPasteFromClipboard(object sender, RoutedEventArgs e) { var image = ClipboardUtils.ImageFromClipboardDib().AsWriteable(); image.LuminanceBlend(); MyImage.Source = image; if (MyCanvas.Width < image.Width) { MyCanvas.Width = image.Width; MyCanvas.Height = MyCanvas.Width * 1.6; } if (MyCanvas.Height < image.Height) { MyCanvas.Height = image.Width; MyCanvas.Width = Math.Round(MyCanvas.Height / 1.6); } var w = MyCanvas.Width; var h = MyCanvas.Height; var x = Math.Round((w - image.Width) / 2); var y = Math.Round((h - image.Height) / 2); Canvas.SetLeft(MyImage, x); Canvas.SetTop(MyImage, y); var wport = MyScrollViewer.ViewportWidth; var hport = MyScrollViewer.ViewportHeight; var xport = Math.Round((w - wport) / 2); var yport = Math.Round((h - hport) / 2); MyScrollViewer.ScrollToHorizontalOffset(xport); MyScrollViewer.ScrollToVerticalOffset(yport); }
public void GetSetClipboard() { var wsManager = new WritingSystemManager(); CoreWritingSystemDefinition enWs; wsManager.GetOrSet("en", out enWs); int wsEng = enWs.Handle; CoreWritingSystemDefinition swgWs; wsManager.GetOrSet("swg", out swgWs); int wsSwg = swgWs.Handle; var incStrBldr = TsStringUtils.MakeIncStrBldr(); incStrBldr.AppendTsString(TsStringUtils.MakeString("Gogomer ", wsSwg)); incStrBldr.AppendTsString(TsStringUtils.MakeString("cucumber", wsEng)); EditingHelper.SetTsStringOnClipboard(incStrBldr.GetString(), false, wsManager); var tss = m_basicView.EditingHelper.GetTsStringFromClipboard(wsManager); Assert.IsNotNull(tss, "Couldn't get TsString from clipboard"); Assert.AreEqual(2, tss.RunCount); Assert.AreEqual("Gogomer ", tss.get_RunText(0)); Assert.AreEqual("cucumber", tss.get_RunText(1)); var newDataObj = ClipboardUtils.GetDataObject(); Assert.IsNotNull(newDataObj, "Couldn't get DataObject from clipboard"); Assert.AreEqual("Gogomer cucumber", newDataObj.GetData("Text")); }
/// ------------------------------------------------------------------------------------ /// <summary> /// Test setup /// </summary> /// ------------------------------------------------------------------------------------ public override void TestSetup() { base.TestSetup(); SetClipboardAdapter(); ClipboardUtils.SetDataObject(new DataObject()); ClipboardUtils.SetText("I want a monkey"); }
public void PasteUnicode() { ClipboardUtils.SetText("\u091C\u092E\u094D\u200D\u092E\u0947\u0906", TextDataFormat.UnicodeText); using (var editingHelper = new DummyEditingHelper()) { ITsString str = editingHelper.CallGetTextFromClipboard(); Assert.AreEqual("\u091C\u092E\u094D\u200D\u092E\u0947\u0906", str.Text); } }
/// <summary> /// /// </summary> /// <returns></returns> public bool OnCopyLocationAsHyperlink(object unused) { CheckDisposed(); if (m_currentContext != null) { FdoCache cache = (FdoCache)m_mediator.PropertyTable.GetValue("cache"); var args = new FwAppArgs(FwUtils.ksFlexAbbrev, cache.ProjectId.Handle, cache.ProjectId.ServerName, m_currentContext.ToolName, m_currentContext.TargetGuid); ClipboardUtils.SetDataObject(args.ToString(), true); } return(true); }
/// <summary> /// /// </summary> /// <returns></returns> public bool OnCopyLocationAsHyperlink(object unused) { CheckDisposed(); if (m_currentContext != null) { LcmCache cache = m_propertyTable.GetValue <LcmCache>("cache"); var args = new FwAppArgs(cache.ProjectId.Handle, m_currentContext.ToolName, m_currentContext.TargetGuid); ClipboardUtils.SetDataObject(args.ToString(), true); } return(true); }
internal static void Execute2(DnHexBox dnHexBox) { if (!CanExecute(dnHexBox)) { return; } var data = GetBlobData(ClipboardUtils.GetData()); if (data != null) { dnHexBox.Paste(data); } }
public void SetTsStringOnClipboard_UsesNFC() { var wsManager = new WritingSystemManager(); CoreWritingSystemDefinition enWs; wsManager.GetOrSet("en", out enWs); int wsEng = enWs.Handle; var originalInput = "\x7a7a\x60f3\x79d1\x5b78\x0020\xd558"; var input = originalInput.Normalize(NormalizationForm.FormD); Assert.That(originalInput, Is.Not.EqualTo(input)); // make sure input is NOT NFC var tss = TsStringUtils.MakeString(input, wsEng); EditingHelper.SetTsStringOnClipboard(tss, false, wsManager); var newDataObj = ClipboardUtils.GetDataObject(); Assert.IsNotNull(newDataObj, "Couldn't get DataObject from clipboard"); Assert.AreEqual(originalInput, newDataObj.GetData("Text")); }
/// <summary> /// Splits the copied string on the clipboard into an array and sets them individually during the animations /// </summary> private void PastePhraseClicked() { string clipboard = ClipboardUtils.GetClipboardString(); wordStrings = WalletUtils.GetMnemonicWords(clipboard); if (!string.IsNullOrEmpty(clipboard.Trim())) { int numOfWords = wordStrings.Length; wordCountSection.GetComponent <SingleChoiceButtonsBase>().ButtonClicked(numOfWords <= 12 ? 0 : numOfWords <= 15 ? 1 : numOfWords <= 18 ? 2 : numOfWords <= 21 ? 3 : 4); AnimateIcon(pasteButtonCheckMarkIcon); StartWordAnimation(); } else { if (!animatingIcon) { AnimateIcon(pasteButtonErrorIcon); } } }
private void CopyMnemonic() { ClipboardUtils.CopyToClipboard(dynamicDataCache.GetData("mnemonic")); }
/// <summary> /// Import from a LIFT file. /// </summary> /// <param name="progressDlg">The progress dialog.</param> /// <param name="parameters">The parameters: 1) filename</param> /// <returns></returns> private object ImportLIFT(IThreadedProgress progressDlg, params object[] parameters) { m_progressDlg = progressDlg; Debug.Assert(parameters.Length == 1); string sOrigFile = (string)parameters[0]; try { // Create a temporary directory %temp%\TempForLIFTImport. Migrate as necessary and import from this // directory. Directory is left after import is done in case it is needed, but will be deleted next time // if it exists. var sLIFTfolder = Path.GetDirectoryName(sOrigFile); var sLIFTtempFolder = Path.Combine(Path.GetTempPath(), "TempForLIFTImport"); if (Directory.Exists(sLIFTtempFolder) == true) { Directory.Delete(sLIFTtempFolder, true); } LdmlFileBackup.CopyDirectory(sLIFTfolder, sLIFTtempFolder); // Older LIFT files had ldml files in root directory. If found, move them to WritingSystem folder. if (Directory.GetFiles(sLIFTtempFolder, "*.ldml").Length > 0) { var sWritingSystems = Path.Combine(sLIFTtempFolder, "WritingSystems"); if (Directory.Exists(sWritingSystems) == false) { Directory.CreateDirectory(sWritingSystems); } foreach (string filePath in Directory.GetFiles(sLIFTtempFolder, "*.ldml")) { string file = Path.GetFileName(filePath); if (!File.Exists(Path.Combine(sWritingSystems, file))) { File.Move(filePath, Path.Combine(sWritingSystems, file)); } } } var sTempOrigFile = Path.Combine(sLIFTtempFolder, sOrigFile.Substring(sLIFTfolder.Length + 1)); string sFilename; //Do a LIFT Migration to the current version of LIFT if it is needed. bool fMigrationNeeded = Migrator.IsMigrationNeeded(sTempOrigFile); if (fMigrationNeeded) { string sOldVersion = Validator.GetLiftVersion(sTempOrigFile); m_progressDlg.Message = String.Format(LexTextControls.ksMigratingLiftFile, sOldVersion, Validator.LiftVersion); sFilename = Migrator.MigrateToLatestVersion(sTempOrigFile); } else { sFilename = sTempOrigFile; } //Validate the LIFT file. if (!Validate(sFilename, sTempOrigFile)) { return(null); } //Import the LIFT file and ranges file. m_progressDlg.Message = LexTextControls.ksLoadingVariousLists; var flexImporter = new FlexLiftMerger(m_cache, m_msImport, m_chkTrustModTimes.Checked); var parser = new LiftParser <LiftObject, CmLiftEntry, CmLiftSense, CmLiftExample>(flexImporter); parser.SetTotalNumberSteps += parser_SetTotalNumberSteps; parser.SetStepsCompleted += parser_SetStepsCompleted; parser.SetProgressMessage += parser_SetProgressMessage; flexImporter.LiftFile = sTempOrigFile; //Before imporing the LIFT files ensure the LDML (language definition files) have the correct writing system codes. flexImporter.LdmlFilesMigration(sLIFTtempFolder, sFilename, sTempOrigFile + "-ranges"); //Import the Ranges file. flexImporter.LoadLiftRanges(sTempOrigFile + "-ranges"); // temporary (?) fix for FWR-3869. //Import the LIFT data file. int cEntries = parser.ReadLiftFile(sFilename); if (fMigrationNeeded) { // Try to move the migrated file to the temp directory, even if a copy of it // already exists there. string sTempMigrated = Path.Combine(Path.GetTempPath(), Path.ChangeExtension(Path.GetFileName(sFilename), "." + Validator.LiftVersion + FwFileExtensions.ksLexiconInterchangeFormat)); if (File.Exists(sTempMigrated)) { File.Delete(sTempMigrated); } File.Move(sFilename, sTempMigrated); } flexImporter.ProcessPendingRelations(m_progressDlg); return(flexImporter.DisplayNewListItems(sOrigFile, cEntries)); } catch (Exception error) { string sMsg = String.Format(LexTextControls.ksLIFTImportProblem, sOrigFile, error.Message); try { StringBuilder bldr = new StringBuilder(); // leave in English for programmer's sake... bldr.AppendFormat("Something went wrong while FieldWorks was attempting to import {0}.", sOrigFile); bldr.AppendLine(); bldr.AppendLine(error.Message); bldr.AppendLine(); bldr.AppendLine(error.StackTrace); if (Thread.CurrentThread.GetApartmentState() == ApartmentState.STA) { ClipboardUtils.SetDataObject(bldr.ToString(), true); } else { progressDlg.SynchronizeInvoke.Invoke(() => ClipboardUtils.SetDataObject(bldr.ToString(), true)); } SIL.Utils.Logger.WriteEvent(bldr.ToString()); } catch { } MessageBox.Show(sMsg, LexTextControls.ksProblemImporting, MessageBoxButtons.OK, MessageBoxIcon.Warning); return(null); } }
internal static bool CanExecute(DnHexBox dnHexBox) { return(dnHexBox != null && GetBlobData(ClipboardUtils.GetData()) != null); }
private void CopyValue(object obj) { var value = GetColumn(obj).GetCellValue(rowIndex.Value).ToString(); ClipboardUtils.SetText(value); }
/// <summary> /// Copies the user's main wallet address to the clipboard. /// </summary> private void CopyAddressClicked() => ClipboardUtils.CopyToClipboard(userWalletManager.GetWalletAddress());