Ejemplo n.º 1
0
        public void Load(string path, Enum @enum)
        {
            switch (@enum)
            {
            case CurrentDocType.Json:
            {
                var json = new JsonTranslator(CurrentDocumentType, FutureDocumentType, FilePath);
                json.Translate(FutureDocumentType);
                break;
            }

            case CurrentDocType.Xml:
            {
                var          serializer = new XmlSerializer(typeof(root));
                StreamReader reader     = new StreamReader(FilePath);
                XmlRoot = (root)serializer.Deserialize(reader);
                reader.Close();
                break;
            }

            case CurrentDocType.Html:
            {
                var html = new HtmlTranslator(CurrentDocumentType, FutureDocumentType, FilePath);
                html.Translate(FutureDocumentType);
                break;
            }
            }
        }
Ejemplo n.º 2
0
        public void ConstructHighLevelHtmlTest()
        {
            var page           = PageUtility.ConstructPageObject();
            var htmlTranslator = new HtmlTranslator();
            var result         = htmlTranslator.ConstructHighLevelHtml(page);

            Assert.IsNotNull(result.HtmlString);
        }
Ejemplo n.º 3
0
        public void ValidateResponseContainsOuterContainer()
        {
            var page           = PageUtility.ConstructPageObject();
            var htmlTranslator = new HtmlTranslator();
            var result         = htmlTranslator.ConstructHighLevelHtml(page);
            var document       = new HtmlDocument {
                OptionFixNestedTags = true
            };

            document.LoadHtml(result.HtmlString);
            Assert.AreEqual(0, document.ParseErrors.Count());
            Assert.AreEqual("page-wrapper", document.DocumentNode.FirstChild.Name);
        }
Ejemplo n.º 4
0
        public void ValidateHtmlString()
        {
            var page           = PageUtility.ConstructPageObject();
            var htmlTranslator = new HtmlTranslator();
            var result         = htmlTranslator.ConstructHighLevelHtml(page);
            var document       = new HtmlDocument {
                OptionFixNestedTags = true
            };

            document.LoadHtml(result.HtmlString);
            Assert.IsTrue(document != null);
            Assert.AreEqual(0, document.ParseErrors.Count());
        }
Ejemplo n.º 5
0
        public void ValidateComponentAttributes()
        {
            var page           = PageUtility.ConstructPageObject();
            var htmlTranslator = new HtmlTranslator();
            var result         = htmlTranslator.ConstructHighLevelHtml(page);
            var document       = new HtmlDocument {
                OptionFixNestedTags = true
            };

            document.LoadHtml(result.HtmlString);
            Assert.AreEqual(0, document.ParseErrors.Count());
            Assert.AreNotEqual(document.GetElementbyId(page.Form.Controls.First().Id.ToString())
                               .Attributes.Count, 0);
        }
Ejemplo n.º 6
0
        private void rbtnTranslate_Click(object sender, RoutedEventArgs e)
        {
            var            text           = CurrentHtmlProvider.GetHtml();
            var            sourceLanguage = CurrentHtmlProvider.Language;
            HtmlTranslator translator     = new HtmlTranslator(text, sourceLanguage);

            TranslateSettingsWindow dlg = new TranslateSettingsWindow(translator);

            if (dlg.ShowDialog() == false)
            {
                return;
            }

            if (!UIHelper.EnsurePremiumLicence())
            {
                return;
            }

            var language = dlg.SelectedLanguage;

            if (sourceLanguage == language)
            {
                Fill();
                return;
            }
            var key        = getCurrentHtmlKey(language);
            var cachedItem = TranslationsCache.Instance.Get(key);

            if (cachedItem != null)
            {
                webBrowser.DocumentText = cachedItem;
                return;
            }

            test.Visibility = System.Windows.Visibility.Collapsed;

            PleaseWait.Run(x => {
                try
                {
                    var translatedHtml = translator.Translate(language, x);
                    if (translatedHtml == null)
                    {
                        return;
                    }
                    //var translatedHtml = "";
                    //for (int i = 0; i < 100; i++)
                    //{
                    //    if(x.Cancel)
                    //    {
                    //        return;
                    //    }
                    //    Thread.Sleep(70);
                    //}
                    TranslationsCache.Instance.Add(key, translatedHtml);

                    UIHelper.BeginInvoke(() =>
                    {
                        test.Visibility         = System.Windows.Visibility.Visible;
                        webBrowser.DocumentText = translatedHtml;
                    }, Dispatcher);
                }
                catch (Exception ex)
                {
                    UIHelper.Invoke(() =>
                    {
                        test.Visibility = System.Windows.Visibility.Visible;
                        ExceptionHandler.Default.Process(ex, "HtmlPreviewView_ErrTranslate".TranslateStrings(), ErrorWindow.MessageBox);
                    }, Dispatcher);
                }
            }, true, progressMax: translator.MaxRequests);
        }