public static void CreateSuggestionGrid(googleComplete autoComplete) { var suggestedWordsPhrase = ""; var suggestedLettersPhrase = ""; var generalLettersPhrase = ""; List <string> suggestedWordsList = new List <string>(); List <string> suggestedLettersList = new List <string>(); List <string> generalLettersList = new List <string>(); BrainStorm0.MainGrid.ClearShapes(); // create 3 by 1 space that will contain likely letters, likely words, and general letters bin BrainStorm0.MainGrid.Cols = 7; BrainStorm0.MainGrid.Rows = 3; BrainStorm0.MainGrid.DrawLines(); foreach (var likelyWord in autoComplete.LikelyWords) { suggestedWordsPhrase += $"{likelyWord.Key}\n"; suggestedWordsList.Add(likelyWord.Key); } foreach (var likelyLetter in autoComplete.LikelyLetters) { suggestedLettersPhrase += $"{likelyLetter.Key}\n"; suggestedLettersList.Add(likelyLetter.Key); } var isNewLine = false; foreach (var genLetter in autoComplete.GenLetters) { generalLettersList.Add(genLetter.ToString()); if (isNewLine) { generalLettersPhrase += $"{genLetter}\n"; } else { generalLettersPhrase += $"{genLetter}\t"; } isNewLine = !isNewLine; } // likley letters on left, likely phrases in middle, general letters on right var suggestedWordsShape = new Shape(1, 3, Color.WhiteSmoke, BrainStorm0.MainGrid, Predictor.FrequencyClasses[0], suggestedWordsPhrase); suggestedWordsShape.Language = suggestedWordsList; var suggestedLettersShape = new Shape(1, 0, Color.WhiteSmoke, BrainStorm0.MainGrid, Predictor.FrequencyClasses[1], suggestedLettersPhrase); suggestedLettersShape.Language = suggestedLettersList; var generalLettersShape = new Shape(1, 6, Color.WhiteSmoke, BrainStorm0.MainGrid, Predictor.FrequencyClasses[2], generalLettersPhrase); generalLettersShape.Language = generalLettersList; suggestedWordsShape.DrawBox(); suggestedLettersShape.DrawBox(); generalLettersShape.DrawBox(); }
private async void btnAutoComplete_ClickAsync(object sender, EventArgs e) { var autoComplete = new googleComplete(); try { await autoComplete.GetSearchSuggestions(tboxPhrase.Text); } catch { Utils.UserMessage("Please Connect to the internet before using autocomplete.", messageType: Globals.MessageTypes.Error); } //return if no autocomplete suggestions are returned if (autoComplete.AutoCompleteSuggestions.Count == 0) { return; } TypingViews.CreateSuggestionGrid(autoComplete); }
public static async void UpdateOutputView() { // update output text box BrainStorm0.MainForm.OutputText = BrainStorm0.MainForm.OutputText + Predictor.PredictedLanguage[0]; // run new autocomplete var autoComplete = new googleComplete(); try { await autoComplete.GetSearchSuggestions(BrainStorm0.MainForm.OutputText); } catch { Utils.UserMessage("Please Connect to the internet before using AUtocomplete.", messageType: Globals.MessageTypes.Error); } //return if no autocomplete suggestions are returned if (autoComplete.AutoCompleteSuggestions.Count == 0) { return; } // create new suggestion grid w/ autocomplete results CreateSuggestionGrid(autoComplete); }