Esempio n. 1
0
        public static void OnSelectConversion(object sender, EventArgs e)
        {
            ZwImageButton clickedBtn = (ZwImageButton)sender;

            lblSelectedConversion.Text      = clickedBtn.conversionName;
            lblSelectedConversion.TextColor = Color.Black;
            resultValue.Text = "";

            if (selectedButton != null)
            {
                selectedButton.isClicked = false;
            }

            selectedButton           = clickedBtn;
            selectedButton.isClicked = true;

            // Now load the Units pickers
            unitLeftPicker.Items.Clear();
            unitRightPicker.Items.Clear();

            KonVersionGroup    group       = clickedBtn.conversionGroup;
            List <KonVertUnit> grpUnitList = group.konVertUnits;

            foreach (KonVertUnit aKVU in grpUnitList)
            {
                unitLeftPicker.Items.Add(aKVU.ToString());
                unitRightPicker.Items.Add(aKVU.ToString());
            }
        }
Esempio n. 2
0
        public static void OnArrowClick(object sender, EventArgs e)
        {
            KonVertUnit tmpKVU;

            if (selectedButton == null)
            {
                lblSelectedConversion.TextColor = Color.Red;
                return;
            }

            TheKonVersion = new KonVersion(selectedButton.conversionGroup.myVersionGroupID, TheSet);
            tmpKVU        = getUnitFromPicker(unitLeftPicker);
            if (tmpKVU == null)
            {
                //unitLeftPicker.TextColor = Color.Red;
                lblSelectedConversion.TextColor = Color.Red;
                resultValue.Text = "Select Left Unit";
                return;
            }
            TheKonVersion.myVertUnitLeftID = tmpKVU.myVersionUnitID;

            tmpKVU = getUnitFromPicker(unitRightPicker);
            if (tmpKVU == null)
            {
                //unitRightPicker.TextColor = Color.Red;
                lblSelectedConversion.TextColor = Color.Red;
                resultValue.Text = "Select Left Unit";
                return;
            }
            TheKonVersion.myVertUnitRightID = tmpKVU.myVersionUnitID;

            resultValue.Text = "";

            ZwImageButton myBtn = (ZwImageButton)sender;

            if (String.Compare(myBtn.conversionName, "Left2Right") == 0)
            {
                TheKonVersion.myLeft2Right = true;
                TheKonVersion.myLeftNumber = Decimal.Parse(convertValue.Text);
            }
            else
            {
                TheKonVersion.myLeft2Right  = false;
                TheKonVersion.myRightNumber = Decimal.Parse(convertValue.Text);
            }

            TheKonVersion.performKonversion(TheKonVersion.myLeft2Right);
            resultValue.Text = TheKonVersion.ToString();
        }
Esempio n. 3
0
        public static void OnImageTapped(object sender, EventArgs e)
        {
            // check for whether selecting conversion or selecting direction
            ZwImageButton tappedButton = (ZwImageButton)sender;

            if (String.Compare(tappedButton.conversionName, "Left2Right") == 0)
            {
                OnArrowClick(sender, e);
                return;
            }
            if (String.Compare(tappedButton.conversionName, "Right2Left") == 0)
            {
                OnArrowClick(sender, e);
                return;
            }
            OnSelectConversion(sender, e);
        }
Esempio n. 4
0
        private static void loadValuesFromKonversion(KonVersion aKV)
        {
            if (aKV == null)
            {
                return;
            }
            string txt = aKV.ToString();

            if (String.Compare(txt.ToLower(), "unsafe") == 0)
            {
                return;
            }

            string kGpID = aKV.myVersionGroupID;

            for (int i = 0; i < conversionButtons.Count; i++)
            {
                ZwImageButton aZwIB = conversionButtons[i];
                if (String.Compare(aZwIB.conversionGroup.myVersionGroupID, kGpID) == 0)
                {
                    OnSelectConversion(aZwIB, null);
                    // now make sure the button actually shows on the screen
                    if (i >= leftButtonIdx && i < leftButtonIdx + 5)
                    {
                        // it is showing now
                    }
                    else
                    {
                        // force to middle
                        int intTry = i - 2;
                        if (intTry < 0)
                        {
                            intTry = 0;
                        }
                        if (intTry > conversionButtons.Count - 1)
                        {
                            intTry = conversionButtons.Count - 4;
                        }
                        loadGrid(intTry);
                    }

                    // get the right Picker KonVertUnits
                    bool foundLeft  = false;
                    bool foundRight = false;
                    foreach (string pStr in unitLeftPicker.Items)
                    {
                        if (!foundLeft && string.Compare(pStr, aKV.LeftUnit.ToString()) == 0)
                        {
                            unitLeftPicker.SelectedItem = pStr;
                            foundLeft = true;
                        }
                        if (!foundRight && string.Compare(pStr, aKV.RightUnit.ToString()) == 0)
                        {
                            unitRightPicker.SelectedItem = pStr;
                            foundRight = true;
                        }
                        if (foundLeft && foundRight)
                        {
                            break;
                        }
                    }

                    if (aKV.myLeft2Right)
                    {
                        convertValue.Text = aKV.myLeftNumber.ToString();
                    }
                    else
                    {
                        convertValue.Text = aKV.myRightNumber.ToString();
                    }
                    resultValue.Text = aKV.ToString();
                    return;
                }
            }
        }
Esempio n. 5
0
        public static StackLayout buildMainScreen()
        {
            // build array of ZwImageButtons based on read in Set
            if (ZwCX.TheSet == null)
            {
                return(null);
            }

            conversionButtons = new List <ZwImageButton>();

            var leftSwipeGesture = new SwipeGestureRecognizer {
                Direction = SwipeDirection.Left
            };

            leftSwipeGesture.Swiped += OnConversionGridSwiped;
            var rightSwipeGesture = new SwipeGestureRecognizer {
                Direction = SwipeDirection.Right
            };

            rightSwipeGesture.Swiped += OnConversionGridSwiped;
            var imageTapGesture = new TapGestureRecognizer {
            };

            imageTapGesture.Tapped += OnImageTapped;

            Assembly avoidReCalc = typeof(MainPage).GetTypeInfo().Assembly;

            foreach (KonVersionGroup aKVG in TheSet.KonVersionGroups)
            {
                ZwImageButton aGrpButton = new ZwImageButton
                {
                    conversionGroup   = aKVG,
                    Source            = ImageSource.FromResource(ZwTools.imageLoc + aKVG.myVersionGroupID.ToLower() + ZwTools.imageTag, avoidReCalc),
                    isClicked         = false,
                    HorizontalOptions = LayoutOptions.Center,
                    VerticalOptions   = LayoutOptions.Center,
                    conversionName    = aKVG.myDisplayText,
                    Margin            = new Thickness(0, 0, 0, 0)
                };
                aGrpButton.GestureRecognizers.Add(imageTapGesture);
                //aGrpButton.Clicked += OnSelectConversion;
                aGrpButton.GestureRecognizers.Add(leftSwipeGesture);
                aGrpButton.GestureRecognizers.Add(rightSwipeGesture);

                conversionButtons.Add(aGrpButton);
            }


            // Full body on screeen
            StackLayout myBody = new StackLayout
            {
                Margin          = new Thickness(0),
                Padding         = new Thickness(5, 5, 5, 5),
                VerticalOptions = LayoutOptions.Start,
                BackgroundColor = Color.Cyan
                                  //BackgroundColor = Color.Transparent
            };

            StackLayout SwipeConversion = new StackLayout
            {
                Margin          = new Thickness(0),
                Padding         = new Thickness(0),
                VerticalOptions = LayoutOptions.Start,
                BackgroundColor = Color.Yellow
                                  //BackgroundColor = Color.Transparent
            };

            Heading = new StackLayout
            {
                Orientation     = StackOrientation.Horizontal,
                Spacing         = 0,
                BackgroundColor = Color.Black
            };

            Heading.Children.Add(HeadImage);
            Heading.Children.Add(HeadLbl);

            ConversionsGrid = new Grid
            {
                HorizontalOptions = LayoutOptions.FillAndExpand,
                VerticalOptions   = LayoutOptions.Start,
                Padding           = new Thickness(0),
                Margin            = new Thickness(0, 0, 0, 0),
                BackgroundColor   = Color.AntiqueWhite
            };
            ConversionsGrid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(1, GridUnitType.Star)
            });
            ConversionsGrid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(1, GridUnitType.Star)
            });
            ConversionsGrid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(1, GridUnitType.Star)
            });
            ConversionsGrid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(1, GridUnitType.Star)
            });
            ConversionsGrid.ColumnDefinitions.Add(new ColumnDefinition {
                Width = new GridLength(1, GridUnitType.Star)
            });

            ConversionsGrid.RowDefinitions.Add(new RowDefinition {
                Height = new GridLength(1, GridUnitType.Auto)
            });

            loadGrid(0);            // should be 0 to start, will set leftButtonIdx

            ConversionsGrid.GestureRecognizers.Add(leftSwipeGesture);
            ConversionsGrid.GestureRecognizers.Add(rightSwipeGesture);

            SwipeConversion.GestureRecognizers.Add(leftSwipeGesture);
            SwipeConversion.GestureRecognizers.Add(rightSwipeGesture);

            lblConversionCaption.GestureRecognizers.Add(leftSwipeGesture);
            lblConversionCaption.GestureRecognizers.Add(rightSwipeGesture);

            lblSelectedConversion.GestureRecognizers.Add(leftSwipeGesture);
            lblSelectedConversion.GestureRecognizers.Add(rightSwipeGesture);

            SwipeConversion.Children.Add(Heading);
            SwipeConversion.Children.Add(ConversionsGrid);
            SwipeConversion.Children.Add(lblConversionCaption);
            SwipeConversion.Children.Add(lblSelectedConversion);

            StackLayout workSpace = buildWorkSpace();

            myBody.Children.Add(SwipeConversion);
            myBody.Children.Add(workSpace);

            return(myBody);
        }