示例#1
0
        /// <summary>
        /// Shows the EditStringForm for a certain listview
        /// </summary>
        void ShowEditForm(ListView listView)
        {
            if (listView.SelectedItems.Count > 0)
            {
                ListViewItem item     = listView.SelectedItems[0];
                long         stringId = Convert.ToInt32(item.SubItems[0].Text);

                EditStringForm form = new EditStringForm();
                form.Translated = item.SubItems[1].Text;
                form.Original   = item.SubItems[2].Text;
                if (form.ShowDialog(this) == DialogResult.Cancel)
                {
                    return;
                }

                TranslatorItem translatorItem = null;
                TranslationManager.Instance.All.GetItemById(stringId, ref translatorItem);

                if (translatorItem == null)
                {
                    return;
                }

                if (form.Translated == "")
                {
                    translatorItem.State = TranslationState.Untranslated;
                }
                else
                {
                    translatorItem.State = TranslationState.Translated;
                }

                translatorItem.StringTranslated.Text = form.Translated;
            }
        }
示例#2
0
 public ListViewItemString(TranslatorItem item)
 {
     Text = item.StringTranslated.Id.ToString();
     SubItems.Add(item.StringTranslated.Text);
     SubItems.Add(item.StringOriginal.Text);
     item.StringTranslated.stringUpdated += new StringItem.StringUpdatedDelegate(StringUpdated);
 }
示例#3
0
 private void SaveTranslated(TranslatorItem item)
 {
     if (item.Split == "true")
     {
         string[] keys = item.Key.Split('*');
         ResourceSplitter.Split(keys[0], keys[2], keys[3], item.Val);
     }
     else
     {
         TranslationToolOnlineStorage.SetTranslated(item);
     }
 }
示例#4
0
        public void TranslatePhrase(TranslatorItem item)
        {
            this.phrase = item;

            client.TranslateAsync(APP_ID, item.Phrase, "", item.TranslatedPhraseLanguage, "text/plain", "general", "")
            .ContinueWith((antecedent) =>
            {
                phrase.TranslatedPhrase = antecedent.Result;

                // If Chinese, generate pinyin
                if (phrase.TranslatedPhraseLanguage == Language.Chinese.GetStringValue())
                {
                    HttpWebRequest request = WebRequest.Create(new System.Uri(string.Format("http://www.popupchinese.com/adso/pinyin.php?text={0}", antecedent.Result))) as HttpWebRequest;
                    request.BeginGetResponse(new AsyncCallback(SavePinyin), request);
                }
                else
                {
                    HttpWebRequest request = WebRequest.Create(new System.Uri(string.Format("http://www.popupchinese.com/adso/pinyin.php?text={0}", phrase.Phrase))) as HttpWebRequest;
                    request.BeginGetResponse(new AsyncCallback(SavePinyin), request);
                }
            });
        }
示例#5
0
 public Task SaveToDictionary(TranslatorItem item)
 {
     throw new NotImplementedException();
 }
示例#6
0
 public Task DeleteFromDictionary(TranslatorItem id)
 {
     throw new NotImplementedException();
 }
示例#7
0
        public void TranslatePhrase(TranslatorItem item)
        {
            this.phrase = item;

            client.TranslateAsync(APP_ID, item.Phrase, "", item.TranslatedPhraseLanguage, "text/plain", "general", "");
        }