override public void OnNavigationOpenPage(ParametersOfForms param_) { ListOfWordsOfDictionary_parameters Params = (ListOfWordsOfDictionary_parameters)param_; Dictionary = Params.Dictionary; Subtitles = Params.Subtitles; foreach (WordOfDictionary wrd in Params.ListOfWords) { ListOfWords.Add( new DataGridItem { Word = wrd, Dictionary = wrd.Dictionary, Analogy = Dictionary.FindWord(wrd.word_of_dictionary) }); } }
public ReferencesToWord_ViewModel( ILogger Logger_, INavigationService NavigationService_, EFDbContext EFDbContext_, IDialogService DialogService_, ILocalization Tx_ ) { if (!IsInDesignMode) { Logger = Logger_; NavigationService = NavigationService_; EFDbContext =EFDbContext_; DialogService = DialogService_; Tx = Tx_; CommandDispatcher = new MvxCommand<string>(CmdDispatcher); References = new ObservableCollection<ReferenceToWordOfDictionary>(); } ClearButton = new ButtonModel(); if (IsInDesignMode) { Word = new WordOfDictionary { word_of_dictionary = "I'm" }; LearningItem li1 = new LearningItem { Name = "Mazzy collection" }; LearningItem li2 = new LearningItem { Name = "Futurama season 1" }; Subtitles st1 = new Subtitles { Name = "English - Russian" }; Subtitles st2 = new Subtitles { Name = "English - Ukraine" }; References = new ObservableCollection<ReferenceToWordOfDictionary>() { new ReferenceToWordOfDictionary {LearningItem = li1, Subtitles = st1,SubtitleItem = new SubtitleItem { Text = "I'm Mazzy"},WordOfSubtitleItem = new WordOfSubtitleItem { word = "I'm"} }, new ReferenceToWordOfDictionary {LearningItem = li1, Subtitles = st1, SubtitleItem = new SubtitleItem { Text = "I am princess Sylvia" } ,WordOfSubtitleItem = new WordOfSubtitleItem { word = "I am"}}, new ReferenceToWordOfDictionary {LearningItem = li2, Subtitles = st2, SubtitleItem = new SubtitleItem { Text = "I'm Nibbler" } ,WordOfSubtitleItem = new WordOfSubtitleItem { word = "I'm"}} }; } }
public static Subtitles LoadSRTfile(string filename) { if (!File.Exists(filename)) { return null; } Subtitles sub = new Subtitles(); using (StreamReader reader = File.OpenText(filename)) { SubtitleItem elm = GetSubItemFromFile(reader); while (elm != null) { sub.Items.Add(elm); elm = GetSubItemFromFile(reader); } reader.Close(); } sub.Name = "[ext] " + filename; return sub; }
async void CmdDispatcher_SubtitlesGrid(Subtitles sub,string cmd) { switch (cmd) { case "Edit": //Save(); //Player.Pause(); NavigationService.NavigateForward(Views.SubtitleEditor,new SubtitleEditor_parameters() { subtitles = sub }); break; case "Delete": bool res = await DialogService.Ask(Tx.T("EditLearningItem.Messages.ReallyDelete")); if (res) { //SQL_XML_Operations.DeleteSubtitles(sub); } break; default: SystemMessage.Show("Unknown command CmdDispatcher_SubtitlesGrid"); break; } }
EFDbConnect CreateDemoBase(string db_name) { string path = PathToDb(db_name); if (File.Exists(path)) { File.Delete(path); } ILogger ILoggerMock = Mock.Of<ILogger>(); ISQLitePlatform platf = new SQLitePlatformWin32(); EFDbConnect EFDbConnect = new EFDbConnect(platf, path); EFDbContext ctx = new EFDbContext(EFDbConnect); LearningItem li1 = new LearningItem(); li1.Name = "First"; ctx.AddNewItemToDBContext(li1); LearningItem li2 = new LearningItem(); li2.Name = "Second"; ctx.AddNewItemToDBContext(li2); // Audio tracks AudioTrack at1 = new AudioTrack(); li1.AudioTracks.Add(at1); AudioTrack at2 = new AudioTrack(); li1.AudioTracks.Add(at2); AudioTrack at3 = new AudioTrack(); li2.AudioTracks.Add(at3); // Frequency dictionary FrequencyDictionary fd1 = new FrequencyDictionary(); FrequencyDictionary fd2 = new FrequencyDictionary(); FrequencyDictionary.Item fdi1 = new FrequencyDictionary.Item(); fd1.Items.Add(fdi1); FrequencyDictionary.Item fdi2 = new FrequencyDictionary.Item(); fd1.Items.Add(fdi2); FrequencyDictionary.Item fdi3 = new FrequencyDictionary.Item(); fd2.Items.Add(fdi3); FrequencyDictionary.Item fdi4 = new FrequencyDictionary.Item(); fd2.Items.Add(fdi4); // Languages Language lang1 = new Language(); lang1.FrequencyDictionary = fd1; Language lang2 = new Language(); lang2.FrequencyDictionary = fd2; Subtitles sub1 = new Subtitles(); li1.SubtitleCollection.Add(sub1); sub1.SecondaryLanguage = lang1; Subtitles sub2 = new Subtitles(); li1.SubtitleCollection.Add(sub2); SubtitleItem si1 = new SubtitleItem(); sub1.Items.Add(si1); SubtitleItem si2 = new SubtitleItem(); sub1.Items.Add(si2); SubtitleItem si3 = new SubtitleItem(); sub2.Items.Add(si3); SubtitleItem si4 = new SubtitleItem(); sub2.Items.Add(si4); Subtitles sub3 = new Subtitles(); li2.SubtitleCollection.Add(sub3); sub3.SecondaryLanguage = lang2; SubtitleItem si5 = new SubtitleItem(); sub3.Items.Add(si5); WordOfSubtitleItem sw1 = new WordOfSubtitleItem(); si1.WordsCollection.Add(sw1); WordOfSubtitleItem sw2 = new WordOfSubtitleItem(); si1.WordsCollection.Add(sw2); WordOfSubtitleItem sw3 = new WordOfSubtitleItem(); si5.WordsCollection.Add(sw3); // Dictionary Dictionary dic1 = new Dictionary(); ctx.AddNewItemToDBContext(dic1); WordOfDictionary wd1 = new WordOfDictionary(); dic1.Words.Add(wd1); TranslationOfWord tw1 = new TranslationOfWord(); wd1.translations.Add(tw1); TranslationOfWord tw2 = new TranslationOfWord(); wd1.translations.Add(tw2); WordOfDictionary wd2 = new WordOfDictionary(); dic1.Words.Add(wd2); sw1.word_of_dictionary = wd1; sw2.word_of_dictionary = wd2; Dictionary dic2 = new Dictionary(); ctx.AddNewItemToDBContext(dic2); WordOfDictionary wd3 = new WordOfDictionary(); dic1.Words.Add(wd3); WordOfDictionary wd4 = new WordOfDictionary(); dic1.Words.Add(wd4); sw3.word_of_dictionary = wd3; ctx.SaveChanges(); return EFDbConnect; }
private void PopulateDesignMode() { Subtitles = new Subtitles(); Subtitles.IsThereDictionary = true; Subtitles.Items.Add(new SubtitleItem { Number = 1, TimeStart = 10234, TimeEnd = 11032, Text = "Hello world!", Text2 = "Привет мир!", WordsCollection = new SynchronizedObservableCollection<WordOfSubtitleItem>() }); Subtitles.Items.Add(new SubtitleItem { Number =2, TimeStart = 12234, TimeEnd = 13032, Text ="Good news everyone!", Text2 ="У нас хорошие новости!", WordsCollection = new SynchronizedObservableCollection<WordOfSubtitleItem>() }); Subtitles.Items[0].WordsCollection.Add(new WordOfSubtitleItem { number = 1, word = "Hello", word_of_dictionary = new WordOfDictionary {translation_as_string="Привет" } }); Subtitles.Items[0].WordsCollection.Add(new WordOfSubtitleItem { number = 2, word = "world", word_of_dictionary = new WordOfDictionary { translation_as_string = "Мир" } }); Subtitles.Items[0].WordsCollection.Add(new WordOfSubtitleItem { number = 1, word ="Hello" }); Subtitles.Items[0].WordsCollection.Add(new WordOfSubtitleItem { number = 2, word ="world" }); Subtitles.Items[0].WordsCollection.Add(new WordOfSubtitleItem { number = 3, word ="world" }); Subtitles.Dictionary = new Dictionary(); Subtitles.Dictionary.Words.Add(new WordOfDictionary {word_of_dictionary="Hello",translation_as_string="Привет"}); Subtitles.Dictionary.Words.Add(new WordOfDictionary {word_of_dictionary="Morning",translation_as_string="Утро",DoNotAddToPersonalDictionaryForLearning=true}); Subtitles.Dictionary.Words.Add(new WordOfDictionary {word_of_dictionary="Twelve",translation_as_string="Двенадцать",Status = WordStatuses.ManualEditing}); }
private static void AnalizeTrackEntry(EbmlReader ebmlReader, MatroskaElementDescriptorProvider medp, ResultOfParsingMKV resPars, StringBuilder sb, string GroupName = "", string add = "") { ulong TrackNumber = 0; ulong TrackUID = 0; ulong TrackType = 0; ulong FlagDefault = 0; ulong FlagLacing = 0; string CodecID = ""; string Name = ""; ulong DefaultDuration = 0; string Language = ""; ebmlReader.EnterContainer(); while (ebmlReader.ReadNext()) { var descriptor = medp.GetElementDescriptor(ebmlReader.ElementId); if (descriptor == null) { sb.Append(add + "undefined \r\n"); continue; } string dName = descriptor.Name; sb.Append(add + dName); switch (descriptor.Type) { case ElementType.MasterElement: sb.Append("\r\n"); //ReadContainer(ebmlReader, medp, dicSub, CurrentClusterTimeCode, sb, descriptor.Name, add + " "); break; case ElementType.AsciiString: string strVal = ebmlReader.ReadAscii(); if(dName == "CodecID") CodecID = strVal; if (dName == "Language") Language = strVal; sb.Append(" = " + strVal); break; case ElementType.Binary: break; case ElementType.Date: sb.Append(" = " + ebmlReader.ReadDate()); break; case ElementType.Float: double flVal = ebmlReader.ReadFloat(); sb.Append(" = " + flVal); break; case ElementType.None: sb.Append(" (none)"); break; case ElementType.SignedInteger: sb.Append(" = " + ebmlReader.ReadInt()); break; case ElementType.UnsignedInteger: ulong ulVal = ebmlReader.ReadUInt(); if(dName == "TrackNumber") TrackNumber = ulVal; if(dName == "TrackType") TrackType = ulVal; if(dName == "FlagDefault") FlagDefault = ulVal; if(dName == "FlagLacing ") FlagLacing = ulVal; if(dName == "DefaultDuration") DefaultDuration = ulVal; if (dName == "TrackUID") TrackUID = ulVal; sb.Append(" = " + ulVal); break; case ElementType.Utf8String: string utfStr = ebmlReader.ReadUtf(); if (dName == "Name") Name = utfStr; sb.Append(" = " + utfStr); break; } sb.Append("\r\n"); } ebmlReader.LeaveContainer(); // If it's subtitles track if (TrackType == 17) { Subtitles sub = new Subtitles(); sub.Items = new SynchronizedObservableCollection<SubtitleItem>(); sub.Language = Language.Length == 0 ? "eng" : Language; sub.Type = Name; sub.Format = CodecID; sub.TrackUID = (long)TrackUID; resPars.dicSub.Add(Convert.ToInt16(TrackNumber),sub); } // If it's subtitles track if (TrackType == 2) { AudioTrack aud = new AudioTrack(); aud.Language = Language.Length == 0 ? "eng" : Language; aud.CodecID = CodecID; aud.Number = resPars.AudioTracks.Count + 1; resPars.AudioTracks.Add(aud); } }
public async static Task<WordOfDictionary> TranslateWord (Subtitles sub,string text) { return await TranslateWord(sub.PrimaryLanguage,sub.SecondaryLanguage,sub.WordTranslationService,text); }
public async static Task<string> TranslateText (Subtitles sub,string text) { return await TranslateText(sub.PrimaryLanguage,sub.SecondaryLanguage,sub.TextTranslationService,text); }