Beispiel #1
0
        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
                    }
                }
            };
        }
Beispiel #3
0
        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
                    }
                }
            };
        }
Beispiel #4
0
		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
                    }
                }
            };
        }
Beispiel #7
0
        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
                    }
                }
            };
        }