Пример #1
0
    static void TouchBar_Manager_OnReady()
    {
        TouchBar.Manager.OnReady -= TouchBar_Manager_OnReady;
        gameGroup = new TouchBar.Group("game", 3);

        pauseButton = gameGroup.AddImageButton("pause", "/Editor/UniTouchBar/Icons/pause.png", "", () => {
            EditorApplication.isPaused = !EditorApplication.isPaused;

            CheckPause();
        });

        TouchBar.Button space = gameGroup.AddTextButton("space", "     ");

        muteButton = gameGroup.AddTextButton("mute", "mute", () => {
            EditorUtility.audioMasterMute = !EditorUtility.audioMasterMute;
            muteButton.Highlight(EditorUtility.audioMasterMute);
        });

        statsButton = gameGroup.AddTextButton("stats", "stats", () => {
            bool val = !EditGameView.GetFlag("m_Stats");
            EditGameView.SetFlag("m_Stats", val);
            statsButton.Highlight(val);
        });

        maximizeButton = gameGroup.AddImageButton("maximize", "/Editor/UniTouchBar/Icons/resize.png", "", () => {
            bool val = !EditGameView.GetMaximized();
            EditGameView.Maximize(val);
            maximizeButton.Highlight(val);
        });

        TouchBar.AddGroup(gameGroup);
        space.Hide();
    }
Пример #2
0
    static void Manager_OnReady()
    {
        //Ready? We don't need it anymore. - keep it fast!
        TouchBar.Manager.OnReady -= Manager_OnReady;

        //--------------------1.GROUP----------------------------
        //--Everything is allways stored in groups.
        settingsGroup = new TouchBar.Group("settingsGroup", 5, () => {
            TouchBar.Log("Settings Touchbar Loaded - Welcome in debug ;)");
        });

        //--------------------2.Items-----------------------------
        //Ok now buttons - all Items are created inside the group ok?
        websiteButton = settingsGroup.AddTextButton("websiteButton", "Website", () => {
            //Button cliked. What now?
            Application.OpenURL("http://imvolute.com/unitouchbar/");
        });

        //--FAQ BUTTON
        faqButton = settingsGroup.AddTextButton("faqButton", "FAQ", () => {
            Application.OpenURL("http://imvolute.com/unitouchbar/faq");
        });


        //--Ok we have buttons. Let's show the group only on Settings Window ;)

        //--------------------------3.SHOW-------------------------
        TouchBar.AddGroup(settingsGroup);
        //--Let's show the touchbar only on window called "Uni.Settings" (basing on what EditorWindow..titleContent.text says)
        settingsGroup.ShowOnWindow("Uni.Settings");

        //--Do you want to keep this group shown all time?
        //mainGroup.ShowOnWindow (TouchBar.Windows.ALL);



        //--------------------That's it!----------------------------
        //LET'S ENCHANCE IT!


        //But we still can make our touchbar more complex.
        //Eq.Set Colors
        websiteButton.UpdateBackgroundColor(new Color(0.352941176F, 0, 1));
        faqButton.UpdateBackgroundColor(new Color(0.352941176F, 0, 1));

        //But nothig happens if you just add dynamic buttons (less efficient)
        TouchBar.Button moreButton = settingsGroup.AddTextButton("moreButton", "more...", () => {
            //Maybe we will link some group to the button?
            DynamicGroup();
        });

        //We can log to check if everything works.
        TouchBar.Log(moreButton);

        //But dynamic items need reloading :( //After adding all items.
        TouchBar.ReloadGroup(settingsGroup);
    }
Пример #3
0
    static void TouchBar_Manager_OnReady()
    {
        TouchBar.Manager.OnReady -= TouchBar_Manager_OnReady;
        consoleGroup              = new TouchBar.Group("console", 1);

        clearButton = consoleGroup.AddTextButton("clear", "Clear", () => {
            EditConsole.Clear();
        });

        collapse = consoleGroup.AddTextButton("collapse", "Collapse", () => {
            if (EditConsole.GetFlag(EditConsole.ConsoleFlags.Collapse))
            {
                collapse.UpdateBackgroundColor(new Color(0.26F, 0.26F, 0.26F));
                EditConsole.SetFlag(EditConsole.ConsoleFlags.Collapse, false);
            }
            else
            {
                collapse.UpdateBackgroundColor(new Color(0.5F, 0.5F, 0.5F));

                EditConsole.SetFlag(EditConsole.ConsoleFlags.Collapse, true);
            }
        });
        clearOnPlay = consoleGroup.AddTextButton("clearplay", "ClearOnPlay", () => {
            if (EditConsole.GetFlag(EditConsole.ConsoleFlags.ClearOnPlay))
            {
                clearOnPlay.UpdateBackgroundColor(new Color(0.26F, 0.26F, 0.26F));
                EditConsole.SetFlag(EditConsole.ConsoleFlags.ClearOnPlay, false);
            }
            else
            {
                clearOnPlay.UpdateBackgroundColor(new Color(0.5F, 0.5F, 0.5F));

                EditConsole.SetFlag(EditConsole.ConsoleFlags.ClearOnPlay, true);
            }
        });
        errorPause = consoleGroup.AddTextButton("errorpause", "ErrorPause", () => {
            if (EditConsole.GetFlag(EditConsole.ConsoleFlags.ErrorPause))
            {
                errorPause.UpdateBackgroundColor(new Color(0.26F, 0.26F, 0.26F));
                EditConsole.SetFlag(EditConsole.ConsoleFlags.ErrorPause, false);
            }
            else
            {
                errorPause.UpdateBackgroundColor(new Color(0.5F, 0.5F, 0.5F));

                EditConsole.SetFlag(EditConsole.ConsoleFlags.ErrorPause, true);
            }
        });

        TouchBar.AddGroup(consoleGroup);
        consoleGroup.ShowOnWindow(TouchBar.Windows.Console);
        consoleGroup.OnShow += ConsoleGroup_OnShow;
        //cameras.SetOptionWithText(0, "elo", () => { });
    }
Пример #4
0
    static void TouchBar_Manager_OnReady()
    {
        TouchBar.Manager.OnReady -= TouchBar_Manager_OnReady;
        editorGroup = new TouchBar.Group("editor", 1, () => {
            dbutton.Highlight(SceneView.GetFlag("in2DMode"));
        });
        cameras = editorGroup.AddSegments("cameramodes", 6);
        dbutton = editorGroup.AddTextButton("2d", "2D", () => {
            bool valu = !SceneView.GetFlag("in2DMode");
            SceneView.SetFlag("in2DMode", valu);
            dbutton.Highlight(valu);
        });

        addbutton = editorGroup.AddImageButton("addgameobject", "/Editor/UniTouchBar/Icons/go.png", "", () => {
            GameObject gm = new GameObject("GameObject");
            Selection.activeGameObject = gm;
        });

        TouchBar.AddGroup(editorGroup);

        editorGroup.ShowOnWindow(TouchBar.Windows.Scene);
        editorGroup.ShowOnWindow(TouchBar.Windows.Hierarchy);

        cameras.SetOptionWithImage(0, "/Editor/UniTouchBar/Icons/hand.png", () => {
            TouchBar.Log("Option");

            Tools.current = Tool.View;
        },
                                   35);
        cameras.SetOptionWithImage(1, "/Editor/UniTouchBar/Icons/move.png", () => {
            Tools.current = Tool.Move;
        },
                                   35);
        cameras.SetOptionWithImage(2, "/Editor/UniTouchBar/Icons/rotate.png", () => {
            Tools.current = Tool.Rotate;
        },
                                   35);
        cameras.SetOptionWithImage(3, "/Editor/UniTouchBar/Icons/resize.png", () => {
            Tools.current = Tool.Scale;
        },
                                   35);

        cameras.SetOptionWithImage(4, "/Editor/UniTouchBar/Icons/transform.png", () => {
            Tools.current = Tool.Transform;
        },
                                   35);

        cameras.SetOptionWithImage(5, "/Editor/UniTouchBar/Icons/rect.png", () => {
            Tools.current = Tool.Rect;
        },
                                   35);
    }
Пример #5
0
    //private static TouchBar.Button closeButton;
    static void DynamicGroup()
    {
        //No need to init it double times
        if (moreGroup == null)
        {
            moreGroup = new TouchBar.Group("moreGroup", 6);

            coolButton = moreGroup.AddTextButton("cool", "made by IMVOLUTE \ud83d\ude0e");

            //You can allways add action to already created items.
            coolButton.onClick = () => {
                Application.OpenURL("https://imvolute.com");
            };

            //Making image button - is also easy ;)
            moreGroup.AddImageButton("close", "/Editor/UniTouchBar/Icons/close.png", "", () => {
                if (moreGroup != null) //Shit happens - shouldn't but in case of!.
                {
                    moreGroup.Hide();
                }
            });

            //Let's add and show!
            TouchBar.AddGroup(moreGroup);
            moreGroup.Show();

            //Wow wow - what if we hide settings? This group has to hide too!
            settingsGroup.OnHidden += () => {
                if (moreGroup != null)
                {
                    moreGroup.Hide();
                }
            };
        }
        else
        {
            //No need to recreate - just show!
            moreGroup.Show();
        }

        //Cool idea! What if we chnage more... to more?
    }
Пример #6
0
    static void Manager_OnReady()
    {
        //Ready? We don't need it anymore. - keep it fast!
        TouchBar.Manager.OnReady -= Manager_OnReady;

        //--------------------1.GROUP----------------------------
        //--Everything is allways stored in groups.
        sliderGroup = new TouchBar.Group("sliderGroup", 2, () => {
            TouchBar.Log("Sliders Touchbar Loaded - you can remove it)");
        });

        //--------------------2.Items-----------------------------
        showSliderButton = sliderGroup.AddTextButton("slidersButton", "show", () => {
            //Show group of sliders.
            DynamicGroup();
        });

        //--------------------------3.SHOW-------------------------
        TouchBar.AddGroup(sliderGroup);
        //--Let's show the touchbar on all windows! for specyfic check Uni.TouchBar.Windows or string (basing on what EditorWindow..titleContent.text says)
        sliderGroup.ShowOnWindow(Uni.TouchBar.Windows.ALL);
        //--------------------That's it!----------------------------
    }