예제 #1
0
        // Center
        //
        //
        private void editTranslation(IMenuButton button)
        {
            // make toggle buttons using secondary menu switch of
            OnSecondaryMenuVisibility.Invoke(false);

            centerMenu.animateActive(((Button)button).gameObject);
            mainController.buttonTranslationClicked(button.Toggled);
        }
예제 #2
0
        //!
        //! Sets up all buttons for the main menu.
        //!
        private void setupMainMenu()
        {
            // views
            IMenuButton buttonPers = Elements.MenuButtonToggle();

            buttonPers.AddAction(GeneralMenu_Perspective_sel, GeneralMenu_Perspective_nrm, () => secondaryMenuSwitchLayout(layouts.PERSPECTIVES));
            OnSecondaryMenuVisibility.AddListener(((MenuButtonToggle)buttonPers).setToggleState);               // register changes
            mainMenu.addButton(buttonPers);
            // info button
            //
            // modes
            IMenuButton buttonModes = Elements.MenuButtonList();

            buttonModes.AddAction(ModeMenu_EditMode_sel, ModeMenu_EditMode_nrm, () => changeMode(layouts.EDIT));
            buttonModes.AddAction(ModeMenu_AnimationMode_sel, ModeMenu_AnimationMode_nrm, () => changeMode(layouts.ANIMATION)); // anim
            buttonModes.AddAction(ModeMenu_ScoutMode_sel, ModeMenu_ScoutMode_nrm, () => changeMode(layouts.SCOUT));             //scout
            mainMenu.addButton(buttonModes);
            // gyro toggle
            IMenuButton buttonGyro = Elements.MenuButtonToggle();

            buttonGyro.AddAction(GeneralMenu_Gyro_sel, GeneralMenu_Gyro_nrm, () => mainController.toggleCameraRotation());              // for toggle
            buttonGyro.AddAction(GeneralMenu_Gyro_sel, GeneralMenu_Gyro_nrm, () => mainController.toggleCameraRotation());              // for untogle
            buttonGyro.AddHoldAction(() => mainController.resetCameraOffset());
            mainMenu.addButton(buttonGyro);
            // config
            IMenuButton buttonConfig = Elements.MenuButtonToggle();

            buttonConfig.AddAction(GeneralMenu_Settings_sel, GeneralMenu_Settings_nrm, () => drawConfigWidget());
            buttonConfig.AddAction(GeneralMenu_Settings_sel, GeneralMenu_Settings_nrm, () => hideConfigWidget());        // untoggle action
            configWidget.OnVisibilityChanged.AddListener(((MenuButtonToggle)buttonConfig).setToggleState);               // register changes (connect to config widget visibility)
            mainMenu.addButton(buttonConfig);
            mainMenu.addButtonToLayout(buttonConfig, layouts.SPLASH);
            // quit
            IMenuButton buttonQuit = Elements.MenuButton();

            buttonQuit.AddAction(GeneralMenu_OnOff_sel, GeneralMenu_OnOff_nrm, call: () => quitApplication());              // switch off
            mainMenu.addButton(buttonQuit);
            mainMenu.addButtonToLayout(buttonQuit, layouts.SPLASH);

            // set splash layout
            mainMenu.switchLayout(layouts.SPLASH);
        }
예제 #3
0
        private void changeMode(layouts layout)
        {
            // make toggle buttons using secondary menu switch of
            OnSecondaryMenuVisibility.Invoke(false);

            if (layout == layouts.EDIT)
            {
                layoutUI = layout;
                secondaryMenu.switchLayout(layout);
                if (mainController.getCurrentSelection() != null)
                {
                    if (mainController.getCurrentSelection().GetComponent <SceneObject>().IsLight)
                    {
                        mainController.ActiveMode = MainController.Mode.lightMenuMode;
                    }
                    else
                    {
                        mainController.ActiveMode = MainController.Mode.objectMenuMode;
                    }
                }
            }
            else if (layout == layouts.ANIMATION)
            {
                layoutUI = layout;
                secondaryMenu.switchLayout(layout);
                mainController.ActiveMode = MainController.Mode.animationEditing;
            }
            else if (layout == layouts.SCOUT)
            {
                layoutUI = layout;
                secondaryMenu.switchLayout(layout);
                mainController.ActiveMode = MainController.Mode.idle;
            }

            secondaryMenu.show();
        }