Example #1
0
        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"));
        }
Example #2
0
        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"));
        }