public void EffectsTest(bool canExecute) { //Arrange //Act SelectionPage.TapEffectsPageButton(); if (canExecute) { EffectsPage.ToggleCanExecuteSwitch(); } EffectsPage.TapEffectsEntryReturnButton(); if (canExecute) { EffectsPage.AcceptClosingDialogPopup(); } //Assert if (canExecute) { App.WaitForElement(PageTitles.Selection); } else { App.WaitForElement(PageTitles.Effects); } }
async public void LangSetting_Click(object sender, EventArgs e) { var list = new List <string>(LanguageHelper.LanguageList.Values); if (Device.OS == TargetPlatform.WinPhone) { var langPage = new SelectionPage(contentUI.TxtLanguageSel, list); langPage.SelList.ItemSelected += (ss, ee) => { var selLang = ee.SelectedItem.ToString(); if (!String.IsNullOrEmpty(selLang)) { AppParameters.Config.SystemLang = LanguageHelper.LangNameToEnum(selLang); CurrLanguageName = selLang; } }; await ViewPage.Navigation.PushModalAsync(langPage, true); } else { var selLang = await ViewPage.DisplayActionSheet(contentUI.TxtLanguageSel, null, null, list.ToArray()); if (!String.IsNullOrEmpty(selLang)) { AppParameters.Config.SystemLang = LanguageHelper.LangNameToEnum(selLang); CurrLanguageName = selLang; } } }
private void Button_Click_2(object sender, RoutedEventArgs e) { SelectionPage help = new SelectionPage(); Main.Children.Clear(); Main.Children.Add(help); }
public void CustomRendererTest(bool canExecute) { //Arrange //Act SelectionPage.TapCustomRendererPageButton(); if (canExecute) { CustomRendererPage.ToggleCanExecuteSwitch(); } CustomRendererPage.TapCustomReturnEntryReturnButton(); if (canExecute) { CustomRendererPage.AcceptClosingDialogPopup(); } //Assert if (canExecute) { App.WaitForElement(PageTitles.Selection); } else { App.WaitForElement(PageTitles.CustomRenderer); } }
public override void TestSetup() { base.TestSetup(); SelectionPage = new SelectionPage(App); EffectsPage = new EffectsPage(App); CustomRendererPage = new CustomRendererPage(App); }
public void EffectsTest() { //Arrange //Act SelectionPage.TapEffectsPageButton(); EffectsPage.TapEffectsEntryReturnButton(); EffectsPage.AcceptClosingDialogPopup(); //Assert App.WaitForElement(PageTitles.Selection); }
public void CustomRendererTest() { //Arrange //Act SelectionPage.TapCustomRendererPageButton(); CustomRendererPage.TapCustomReturnEntryReturnButton(); CustomRendererPage.AcceptClosingDialogPopup(); //Assert App.WaitForElement(PageTitles.Selection); }
protected async Task <SelectionPage <T> .SelectionResult> RunSelectionPageAsync <T> ( IEnumerable <IEnumerable <T> > rows, string title = "Choose", Func <T, string> toStringConverter = null ) { var page = new SelectionPage <T> (Menu, rows, this, title, toStringConverter); var result = await page.DisplayAndWaitAsync( ).ConfigureAwait(false); if (!result) { await Menu.SwitchPageAsync(this).ConfigureAwait(false); } return(result); }
public override BaseReactionSelection <TValue> Build() { if (Selectables == null) { throw new ArgumentException(nameof(Selectables)); } if (Selectables.Count == 0) { throw new InvalidOperationException("You need at least one selectable"); } if (AllowCancel && Selectables.Keys.Contains(CancelEmote)) { throw new InvalidOperationException("Found duplicate emotes! (Cancel Emote)"); } if (Selectables.Distinct().Count() != Selectables.Count) { throw new InvalidOperationException("Found duplicate emotes!"); } if (AllowCancel && CancelEmote == null) { throw new ArgumentNullException(nameof(CancelEmote)); } if (EnableDefaultSelectionDescription) { var builder = new StringBuilder(); foreach (var selectable in Selectables) { string option = StringConverter.Invoke(selectable.Value); builder.AppendLine($"{selectable.Key} - {option}"); } SelectionPage.AddField(Title, builder.ToString()); } return(new ReactionSelection <TValue>( Selectables.AsReadOnly(), Users?.AsReadOnly() ?? throw new ArgumentException(nameof(Users)), SelectionPage?.Build() ?? throw new ArgumentNullException(nameof(SelectionPage)), CancelledPage?.Build(), TimeoutedPage?.Build(), AllowCancel, CancelEmote, Deletion )); }
async internal void MapSetting_Click(object sender, EventArgs e) { var list = new List <string>(MapTile.TileSourceList.Values); if (Device.OS == TargetPlatform.WinPhone) { var mapPage = new SelectionPage(contentUI.TxtMapSel, list); mapPage.SelList.ItemSelected += (ss, ee) => { var selMap = ee.SelectedItem.ToString(); SetMapSettings(selMap); }; await ViewPage.Navigation.PushModalAsync(mapPage, true); } else { var selMap = await ViewPage.DisplayActionSheet(contentUI.TxtMapSel, null, null, list.ToArray()); SetMapSettings(selMap); } }
private IEnumerable <SelectionPage> GetSourceCodePages(GitHubSourceDirectory sourceDirectory, SelectionPagedView view) { var pages = new List <SelectionPage>(sourceDirectory.Files.Count); var fileListEmbed = new LocalEmbed() .WithDefaultColor() .WithTitle($"Directory: {sourceDirectory.Filename}") .WithDescription("**Files**\n" + string.Join("\n", sourceDirectory.Files.Select(x => Markdown.Link(x.Filename, x.Url)))); var fileListPage = new Page().AddEmbed(fileListEmbed); pages.Add(new SelectionPage(fileListPage, "./")); async Task <Page> ParentFolderListPageFunc() { sourceDirectory = (GitHubSourceDirectory)await _sourceBrowser.GetPathAsync(sourceDirectory.Path + "/.."); view.SetPageProvider(new SelectionPageProvider(GetSourceCodePages(sourceDirectory, view))); return(await view.PageProvider.GetPageAsync(view)); } pages.Add(new SelectionPage(ParentFolderListPageFunc, "../")); foreach (var file in sourceDirectory.Files) { async Task <Page> PageFunction() { var page = new Page(); var fetchedFile = await _sourceBrowser.GetPathAsync(file.Path); switch (fetchedFile) { case GitHubSourceFile sourceFile: { if (sourceFile.Content.Length > LocalMessageBase.MaxContentLength) { return(page.WithContent($"File too large to display. View online: {Markdown.Link(sourceFile.Filename, sourceFile.Url)}")); } page.WithContent(Markdown.CodeBlock("csharp", sourceFile.Content)); break; } case GitHubSourceDirectory sourceDirectory: { view.SetPageProvider(new SelectionPageProvider(GetSourceCodePages(sourceDirectory, view))); page = await view.PageProvider.GetPageAsync(view); break; } } return(page); } var page = new SelectionPage(PageFunction, file.Filename); pages.Add(page); } return(pages); }
public override void TestSetup() { base.TestSetup(); SelectionPage.WaitForPageToLoad(); }
public App() { InitializeComponent(); MainPage = new SelectionPage(); }
public override BaseMessageSelection <TValue> Build() { if (Selectables == null) { throw new ArgumentException(nameof(Selectables)); } if (Selectables.Count == 0) { throw new InvalidOperationException("You need at least one selectable"); } var selectableDictionary = new Dictionary <string[], TValue>(); var descriptionBuilder = new StringBuilder(); for (int i = 0; i < Selectables.Count; i++) { var selectable = Selectables[i]; string text = StringConverter.Invoke(selectable); selectableDictionary.Add(new string[] { $"{i + 1}", $"#{i + 1}", text, $"#{i + 1} - {text}" }, selectable); if (EnableDefaultSelectionDescription) { descriptionBuilder.AppendLine($"#{i + 1} - {text}"); } } if (AllowCancel) { selectableDictionary.Add(new string[] { $"{Selectables.Count + 1}", $"#{Selectables.Count + 1}", CancelMessage, $"#{Selectables.Count + 1} - {CancelMessage}" }, default); if (EnableDefaultSelectionDescription) { descriptionBuilder.Append($"#{Selectables.Count + 1} - {CancelMessage}"); } } if (EnableDefaultSelectionDescription) { SelectionPage.AddField(Title, descriptionBuilder.ToString()); } return(new MessageSelection <TValue>( selectableDictionary.AsReadOnly(), Users?.AsReadOnly() ?? throw new ArgumentException(nameof(Users)), SelectionPage?.Build() ?? throw new ArgumentNullException(nameof(SelectionPage)), CancelledPage?.Build(), TimeoutedPage?.Build(), AllowCancel, CancelMessage, Deletion )); }