public AddTeamPopupPage() { teamNo.inputEntry.Keyboard = Keyboard.Numeric; Button addTeamBtn = new Button() { Text = "Add Team" }; addTeamBtn.Clicked += (object sender, EventArgs e) => { if (string.IsNullOrEmpty(teamNa.data) || string.IsNullOrEmpty(teamNo.data)) { DisplayAlert("Error", "Please enter a Team Name and Number", "OK"); } else { addTeam(); } }; Button[] btnArray = { addTeamBtn }; var navigationBtns = new PopupNavigationButtons(btnArray); navigationBtns.backBtn.Clicked += (object sender, EventArgs e) => { }; Content = new Frame() { HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, Margin = new Thickness(0, 0, 0, 0), BackgroundColor = Color.Gray, HasShadow = true, //Padding = new Thickness(1, 1, 1, 1), //Margin = new Thickness(50, 50, 50, 50), Content = new StackLayout() { HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, Margin = new Thickness(0, 0, 0, 0), Children = { teamNo, teamNa, navigationBtns } } }; }
public TeamCardPopupPage(TeamData team) { data = team; var teamNo = new Label() { Text = data.teamNumber.ToString(), FontSize = GlobalVariables.sizeMedium, FontAttributes = FontAttributes.Bold }; var teamNa = new Label() { Text = data.teamName, FontSize = GlobalVariables.sizeMedium }; var teamOPR = new Label() { Text = data.tbaOPR.ToString(), FontSize = 14 }; setPitData(); //setMatchData(); Button editTeamBtn = new Button() { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.FillAndExpand, Text = "Edit Info", TextColor = Color.Green, BackgroundColor = Color.Black, FontSize = GlobalVariables.sizeMedium }; editTeamBtn.Clicked += (object sender, EventArgs e) => { Navigation.PushPopupAsync(new TeamCardPopupEditPage(data)); }; Button[] btnArray = { editTeamBtn }; var navigationBtns = new PopupNavigationButtons(true, btnArray); navigationBtns.refreshBtn.Clicked += (sender, e) => { getFirebaseData(); setPitData(); }; var robotImage = new RobotImageView(data); topGrid.Children.Add(robotImage, 0, 1, 0, 2); topGrid.Children.Add(teamNo, 1, 0); topGrid.Children.Add(teamNa, 1, 1); //teamGrid.Children.Add(teamOPR, 0, 2, gridYIndex, gridYIndex++ + 1); //teamGrid.Children.Add(teamOPR, 0, 2, gridYIndex, gridYIndex++ + 1); //topGrid.Children.Add(navigationBtns, 0, 2, gridYIndex, gridYIndex++ + 1); Content = new Frame() { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Margin = GlobalVariables.popupMargin, Padding = new Thickness(5), BackgroundColor = Color.Gray, HasShadow = true, Content = new StackLayout() { Children = { topGrid, new ScrollView() { HorizontalOptions = LayoutOptions.StartAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Content = pitDataLayout }, navigationBtns } } }; }
public AddMatchPopupPage() { matchNoEntry = new Entry() { HorizontalOptions = LayoutOptions.FillAndExpand, Placeholder = "Enter Match Number", HorizontalTextAlignment = TextAlignment.Center, }; timePicker.HorizontalOptions = LayoutOptions.CenterAndExpand; timePicker.Time = new TimeSpan(13, 0, 0); matchTime = (long)timePicker.Time.TotalSeconds; timePicker.PropertyChanged += (sender, e) => { if (e.PropertyName == TimePicker.TimeProperty.PropertyName) { matchTime = (long)timePicker.Time.TotalSeconds; } }; for (int i = 0; i < 3; i++) { red[i] = new Entry() { HorizontalOptions = LayoutOptions.FillAndExpand, Placeholder = "Red " + (i + 1), HorizontalTextAlignment = TextAlignment.Center, Keyboard = Keyboard.Numeric }; blue[i] = new Entry() { HorizontalOptions = LayoutOptions.FillAndExpand, Placeholder = "Blue " + (i + 1), HorizontalTextAlignment = TextAlignment.Center, Keyboard = Keyboard.Numeric }; } pageGrid.Children.Add(matchNoEntry, 0, 2, 0, 1); pageGrid.Children.Add(timePicker, 0, 2, 1, 2); pageGrid.Children.Add(red[0], 0, 2); pageGrid.Children.Add(red[1], 0, 3); pageGrid.Children.Add(red[2], 0, 4); pageGrid.Children.Add(blue[0], 1, 2); pageGrid.Children.Add(blue[1], 1, 3); pageGrid.Children.Add(blue[2], 1, 4); var addMatchBtn = new Button() { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.FillAndExpand, Text = "Add Match", TextColor = Color.Green, BackgroundColor = Color.Black, FontSize = GlobalVariables.sizeMedium }; addMatchBtn.Clicked += (sender, e) => { addMatch(); }; Button[] btnArray = { addMatchBtn }; var navigationBtns = new PopupNavigationButtons(false, btnArray); Content = new Frame() { HorizontalOptions = LayoutOptions.CenterAndExpand, VerticalOptions = LayoutOptions.CenterAndExpand, Margin = new Thickness(400, 50), Padding = new Thickness(5), BackgroundColor = Color.Gray, HasShadow = true, Content = new StackLayout() { Children = { new ScrollView() { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Content = pageGrid }, navigationBtns } } }; }
public ImagePopupPage (TeamData tData) { data = tData; robotImg = new RobotImageView(tData); Button setImageDefaultBtn = new Button() { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.FillAndExpand, Text = "Set Default", TextColor = Color.Green, BackgroundColor = Color.Black, FontSize = GlobalVariables.sizeMedium }; setImageDefaultBtn.Clicked += (object sender, EventArgs e) => { setDefaultImage(); }; Button retakeImageBtn = new Button() { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.FillAndExpand, Text = "Retake", TextColor = Color.Green, BackgroundColor = Color.Black, FontSize = GlobalVariables.sizeMedium }; retakeImageBtn.Clicked += (object sender, EventArgs e) => { OpenImagePicker(); }; btnArray = new Button[] { setImageDefaultBtn, retakeImageBtn }; var navigationBtns = new PopupNavigationButtons(true, btnArray); navigationBtns.refreshBtn.Clicked += (sender, e) => { refreshImages(); robotImg = new RobotImageView(tData); }; Content = new Frame(){ HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Margin = GlobalVariables.popupMargin, Padding = new Thickness(5), BackgroundColor = Color.Gray, HasShadow = true, Content = new StackLayout() { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Children = { robotImg, new ScrollView(){ HorizontalOptions = LayoutOptions.FillAndExpand, Orientation = ScrollOrientation.Horizontal, Content = imageStack }, navigationBtns } } }; }
public AdminLoginPopup() { Title = "Admin Page"; var pageGrid = new Grid() { RowDefinitions = { new RowDefinition() { Height = GridLength.Auto }, new RowDefinition() { Height = GridLength.Auto }, new RowDefinition() { Height = GridLength.Auto } } }; var pw = new LineEntry("Enter Password:"******"Remember Login" }; var loginBtn = new Button() { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.FillAndExpand, Text = "Login", TextColor = Color.Green, BackgroundColor = Color.Black, FontSize = GlobalVariables.sizeMedium }; loginBtn.Clicked += (sender, e) => { if (pw.inputEntry.Text == "DaV1nc1") { if (checkBox.Checked) { AppSettings.SaveSettings("AdminLogin", "true"); } pw.inputEntry.Text = null; Navigation.PopPopupAsync(); Navigation.PushModalAsync(new AdminPage()); } else { DisplayAlert("Error", "Incorrect password", "OK"); } }; Button[] btnArray = { loginBtn }; var navigationBtns = new PopupNavigationButtons(false, btnArray); pageGrid.Children.Add(pw, 0, 0); pageGrid.Children.Add(checkBox, 0, 1); pageGrid.Children.Add(navigationBtns, 0, 2); Content = new Frame() { HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, Margin = GlobalVariables.popupMargin, Padding = new Thickness(5), BackgroundColor = Color.Gray, HasShadow = true, Content = pageGrid }; }
public TeamCardPopupEditPage(TeamData team) { data = team; var teamNo = new Label() { Text = data.teamNumber.ToString(), FontSize = GlobalVariables.sizeMedium, }; var teamNa = new Label() { Text = data.teamName, FontSize = GlobalVariables.sizeMedium }; initalizeData(); Button saveDataBtn = new Button() { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.FillAndExpand, Text = "Save", TextColor = Color.Green, BackgroundColor = Color.Black, FontSize = GlobalVariables.sizeMedium }; saveDataBtn.Clicked += (object sender, EventArgs e) => { saveData(); }; Button[] btnArray = { saveDataBtn }; var navigationBtns = new PopupNavigationButtons(false, btnArray); //teamGrid.Children.Add(new RobotImageLayout(data), 0, 1, gridYIndex, gridYIndex + 2); topGrid.Children.Add(teamNo, 1, 0); topGrid.Children.Add(teamNa, 1, 1); // teamGrid.Children.Add(navigationBtns, 0, 2, gridYIndex, gridYIndex++ + 1); CloseWhenBackgroundIsClicked = false; Content = new Frame() { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Margin = GlobalVariables.popupMargin, Padding = new Thickness(5), BackgroundColor = Color.Gray, HasShadow = true, Content = new StackLayout() { Children = { topGrid, new ScrollView() { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Content = dataLayout }, navigationBtns } } }; }
public MatchInfoPopupPage(EventMatchData data) { matchData = data; Title = "Match: " + data.matchNumber; var titleLbl = new Label() { Text = "Match: " + data.matchNumber, FontSize = GlobalVariables.sizeMedium, HorizontalTextAlignment = TextAlignment.Center, FontAttributes = FontAttributes.Bold }; layoutGrid.Children.Add(titleLbl, 1, 7, 0, 1); for (int i = 0; i < 6; i++) { teamDataView[i] = new ContentView() { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Margin = 0, Padding = 0, }; busyIcon[i] = new ActivityIndicator(); loadingStack[i] = new StackLayout() { HorizontalOptions = LayoutOptions.CenterAndExpand, VerticalOptions = LayoutOptions.CenterAndExpand, Children = { busyIcon[i], new Label() { Text = "Loading Data...", FontSize = GlobalVariables.sizeTiny, HorizontalTextAlignment = TextAlignment.Center } } }; retryDataBtn[i] = new Button() { FontSize = GlobalVariables.sizeSmall, Text = "Retry", TextColor = Color.Black, FontAttributes = FontAttributes.Bold }; retryDataBtn[i].Clicked += (sender, e) => { awaitTeamData(i); }; errorStack[i] = new StackLayout() { HorizontalOptions = LayoutOptions.CenterAndExpand, VerticalOptions = LayoutOptions.CenterAndExpand, Children = { new Label() { Text = "Error:", FontSize = GlobalVariables.sizeTiny, HorizontalTextAlignment = TextAlignment.Center }, new Label() { Text = "Data not Retieved", FontSize = GlobalVariables.sizeTiny, HorizontalTextAlignment = TextAlignment.Center }, retryDataBtn[i] } }; layoutGrid.Children.Add(teamDataView[i], i + 1, 5); } initializeDataRowHeaders(); var navigationBtns = new PopupNavigationButtons(true); navigationBtns.refreshBtn.Clicked += (sender, e) => { for (int i = 0; i < 6; i++) { teamDataView[i].Content = loadingStack[i]; var task1 = Task.Factory.StartNew(() => awaitTeamData(i)); task1.Wait(); var task2 = Task.Factory.StartNew(() => initializeTeamHeaderData(i)); task2.Wait(); var task3 = Task.Factory.StartNew(() => initializeTeamData(i)); task3.Wait(); var task4 = Task.Factory.StartNew(() => refreshTeamImage(i)); task4.Wait(); busyIcon[i].IsRunning = false; busyIcon[i].IsEnabled = false; } setAllianceData(); }; Content = new Frame() { HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand, Margin = GlobalVariables.popupMargin, Padding = new Thickness(2), BackgroundColor = Color.Gray, HasShadow = true, Content = new StackLayout() { Children = { layoutGrid, navigationBtns } } }; }