Exemplo n.º 1
0
        /*--------------------------------------------------------------------------------------------*/
        private void BuildCustomize()
        {
            vMenuOpacity = 0.5f;

            CustomizeDark              = new NavItemRadio("Dark Theme");
            CustomizeDark.OnSelected  += HandleDarkThemeSelected;
            CustomizeDark.Value        = true;
            CustomizeLight             = new NavItemRadio("Light Theme");
            CustomizeLight.OnSelected += HandleLightThemeSelected;
            CustomizeColor             = new NavItemRadio("Color Theme");
            CustomizeColor.OnSelected += HandleColorThemeSelected;

            CustomizeFontsize = new NavItemSlider("Size", 3);
            CustomizeFontsize.ValueToLabel = ((v, sv) =>
                                              "Size: " + Math.Round(Mathf.Lerp(MinFontSize, MaxFontSize, sv)));
            CustomizeFontsize.Value           = Mathf.InverseLerp(MinFontSize, MaxFontSize, 30);
            CustomizeFontsize.OnValueChanged += HandleFontSizeChanged;

            CustomizeOpacity = new NavItemSlider("Bg Alpha", 3);
            CustomizeOpacity.ValueToLabel    = ((v, sv) => "Bg Alpha: " + Math.Round(v * 100) + "%");
            CustomizeOpacity.Value           = vMenuOpacity;
            CustomizeOpacity.OnValueChanged += HandleOpacityChanged;

            CustomizeSwitch             = new NavItemSelector("Switch Hands!");
            CustomizeSwitch.OnSelected += HandleSwitchHands;

            Customize = new NavItemParent("Customize");
            Customize.ChildLevel.Items = new NavItem[] { CustomizeDark, CustomizeLight, CustomizeColor,
                                                         CustomizeFontsize, CustomizeOpacity, CustomizeSwitch };
        }
Exemplo n.º 2
0
        /*--------------------------------------------------------------------------------------------*/
        private void BuildNested()
        {
            NestedA1 = new NavItemCheckbox("Checkbox A1");
            NestedA2 = new NavItemCheckbox("Checkbox A2");
            NestedA3 = new NavItemCheckbox("Checkbox A3");

            NestedA = new NavItemParent("Menu A");
            NestedA.ChildLevel.Items = new NavItem[] { NestedA1, NestedA2, NestedA3 };

            NestedB1 = new NavItemCheckbox("Checkbox B1");
            NestedB2 = new NavItemCheckbox("Checkbox B2");
            NestedB3 = new NavItemCheckbox("Hide Menu C");
            NestedB3.OnValueChanged += HandleHideMenuCValueChanged;
            NestedB4 = new NavItemSelector("Go Back");
            NestedB4.NavigateBackUponSelect = true;

            NestedB = new NavItemParent("Menu B");
            NestedB.ChildLevel.Items = new NavItem[] { NestedB1, NestedB2, NestedB3, NestedB4 };

            NestedC1 = new NavItemCheckbox("Checkbox C1");
            NestedC2 = new NavItemCheckbox("Checkbox C2");
            NestedC3 = new NavItemCheckbox("Checkbox C3");
            NestedC4 = new NavItemCheckbox("Checkbox C4");
            NestedC5 = new NavItemCheckbox("Checkbox C5");

            NestedC = new NavItemParent("Menu C");
            NestedC.ChildLevel.Items = new NavItem[] { NestedC1, NestedC2, NestedC3, NestedC4,
                                                       NestedC5 };

            Nested = new NavItemParent("Nested Menu");
            Nested.ChildLevel.Items = new NavItem[] { NestedA, NestedB, NestedC };
        }
Exemplo n.º 3
0
        /*--------------------------------------------------------------------------------------------*/
        private void BuildLight()
        {
            LightPos   = new NavItemSlider("Position", 2);
            LightInten = new NavItemSlider("Power", 2);
            LightSpot  = new NavItemSticky("Spotlight");

            Light = new NavItemParent("Lighting");
            Light.ChildLevel.Items = new NavItem[] { LightPos, LightInten, LightSpot };
        }
Exemplo n.º 4
0
        /*--------------------------------------------------------------------------------------------*/
        private static void VerifyParent(NavItemParent pParent)
        {
            if (pParent.ChildLevel != null && pParent.ChildLevel.Items.Length != 0)
            {
                return;
            }

            throw new Exception("Parent item '" + pParent.Label + "' has no children.");
        }
Exemplo n.º 5
0
        ////////////////////////////////////////////////////////////////////////////////////////////////
        /*--------------------------------------------------------------------------------------------*/
        private void BuildColors()
        {
            ColorWhite  = new NavItemRadio("White");
            ColorRandom = new NavItemRadio("Random");
            ColorCustom = new NavItemRadio("Custom");
            ColorHue    = new NavItemSlider("Hue", 3);

            Color = new NavItemParent("Color");
            Color.ChildLevel.Items = new NavItem[] { ColorWhite, ColorRandom, ColorCustom, ColorHue };
        }
Exemplo n.º 6
0
        /*--------------------------------------------------------------------------------------------*/
        private void BuildCamera()
        {
            CameraCenter   = new NavItemRadio("Center");
            CameraBack     = new NavItemRadio("Back");
            CameraTop      = new NavItemRadio("Top");
            CameraReorient = new NavItemSelector("Re-orient");

            Camera = new NavItemParent("Camera");
            Camera.ChildLevel.Items = new NavItem[] { CameraCenter, CameraBack, CameraTop,
                                                      CameraReorient };
        }
Exemplo n.º 7
0
        /*--------------------------------------------------------------------------------------------*/
        private void BuildMotions()
        {
            MotionOrbit = new NavItemCheckbox("Orbit");
            MotionSpin  = new NavItemCheckbox("Spin");
            MotionBob   = new NavItemCheckbox("Bob");
            MotionGrow  = new NavItemCheckbox("Grow");
            MotionSpeed = new NavItemSlider("Speed", 4);

            Motion = new NavItemParent("Motion");
            Motion.ChildLevel.Items = new NavItem[] { MotionOrbit, MotionSpin, MotionBob, MotionGrow,
                                                      MotionSpeed };
        }
Exemplo n.º 8
0
        /*--------------------------------------------------------------------------------------------*/
        public static NavItemRadio GetChosenRadioItem(NavItemParent pParent)
        {
            VerifyParent(pParent);

            foreach (NavItem item in pParent.ChildLevel.Items)
            {
                NavItemRadio radItem = (item as NavItemRadio);

                if (radItem != null && radItem.Value)
                {
                    return(radItem);
                }
            }

            return(null);
        }
Exemplo n.º 9
0
 ////////////////////////////////////////////////////////////////////////////////////////////////
 /*--------------------------------------------------------------------------------------------*/
 public static bool IsItemWithin(NavItem pItem, NavItemParent pParent, NavItem.ItemType pType)
 {
     VerifyParent(pParent);
     return(pItem.Type == pType && pParent.ChildLevel.Items.Contains(pItem));
 }