//METHODS /********************************************************************** *********************************************************************/ public async Task OpenPickerPopUp() { String action = await DisplayActionSheet("", "Cancel", null, "1", "2", "3", "4", "5", "6", "7", "8", "9"); DijkstraSettingsDraw.GetNetworkByID(currentTab).SetAction(action); }
/********************************************************************** *********************************************************************/ void CreateContent() { //split grid in 3 parts (1:7:1) RowDefinitionCollection rowDefinition = new RowDefinitionCollection { new RowDefinition { Height = new GridLength(1, GridUnitType.Star) }, new RowDefinition { Height = new GridLength(7, GridUnitType.Star) }, new RowDefinition { Height = new GridLength(1, GridUnitType.Star) } }; for (int i = 1; i <= numberOfTabs; i++) { int id = i; //button Button b_Start = new Button { Text = "Start", VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.FillAndExpand, BackgroundColor = App._buttonBackground, TextColor = App._buttonText, CornerRadius = App._buttonCornerRadius, FontSize = App._buttonFontSize }; b_Start.Clicked += B_Start_Clicked; Button b_Default = new Button { Text = "Default", VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.FillAndExpand, BackgroundColor = App._buttonBackground, TextColor = App._buttonText, CornerRadius = App._buttonCornerRadius, FontSize = App._smallButtonFontSize }; b_Default.Clicked += B_Default_Clicked; Button b_Random = new Button { Text = "Random", VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.FillAndExpand, BackgroundColor = App._buttonBackground, TextColor = App._buttonText, CornerRadius = App._buttonCornerRadius, FontSize = App._smallButtonFontSize }; b_Random.Clicked += B_Random_Clicked; Button b_Presets = new Button { Text = "Preset", VerticalOptions = LayoutOptions.Center, HorizontalOptions = LayoutOptions.FillAndExpand, BackgroundColor = App._buttonBackground, TextColor = App._buttonText, CornerRadius = App._buttonCornerRadius, FontSize = App._smallButtonFontSize }; b_Presets.Clicked += B_Presets_Clicked; //stacklayout var stackLayout = new StackLayout { Orientation = StackOrientation.Horizontal, Margin = new Thickness(5), }; var stackLayout1 = new StackLayout { Orientation = StackOrientation.Horizontal, Margin = new Thickness(5), }; stackLayout1.Children.Add(b_Default); stackLayout1.Children.Add(b_Presets); stackLayout1.Children.Add(b_Random); stackLayout.Children.Add(b_Start); //get canvas to draw on DijkstraSettingsDraw skiaview = new DijkstraSettingsDraw(id, this); SKCanvasView canvas = skiaview.ReturnCanvas(); canvas.BackgroundColor = App._viewBackground; //Grid for canvas and buttons var grid = new Grid(); grid.RowDefinitions = rowDefinition; grid.Children.Add(stackLayout1, 0, 0); grid.Children.Add(canvas, 0, 1); grid.Children.Add(stackLayout, 0, 2); //Child Page (Tab) var child = new ContentPage(); child.Content = grid; child.Title = "Network " + i; Children.Add(child); } }
/********************************************************************** *********************************************************************/ public static void ClearNetworkList() { DijkstraSettingsDraw.ClearNetworkList(); }
/********************************************************************** *********************************************************************/ async void B_Start_Clicked(object sender, EventArgs e) { MessagingCenter.Send <object>(this, "Portrait"); // enforce portrait mode String[] a = DijkstraSettingsDraw.GetNetworkByID(currentTab).GetAllWeights(); await Navigation.PushAsync(new Dijkstra(a, currentTab)); }
/********************************************************************** *********************************************************************/ void B_Presets_Clicked(object sender, EventArgs e) { DijkstraSettingsDraw.GetNetworkByID(currentTab).SetPresetsWeights(); }
/********************************************************************** *********************************************************************/ void B_Random_Clicked(object sender, EventArgs e) { DijkstraSettingsDraw.GetNetworkByID(currentTab).SetRandomWeights(); }
/********************************************************************** *********************************************************************/ void B_Default_Clicked(object sender, EventArgs e) { DijkstraSettingsDraw.GetNetworkByID(currentTab).SetDefaultWeights(); }