Example #1
0
        private RouteNode CustomListItem(Rect position, RouteNode itemValue)
        {
            Rect iPos = new Rect(position.xMin, position.yMin, position.width - 33, position.height);

            itemValue = EditorGUI.ObjectField(iPos, itemValue, typeof(RouteNode), true) as RouteNode;

            GUIContent buttonContent = new GUIContent("+", "Insert new node here.");
            Rect       bPos          = new Rect(position.xMax - 30, position.yMin, 30, position.height);
            bool       pressed       = GUI.Button(bPos, buttonContent);

            if (pressed)
            {
                Route r         = this.target as Route;
                int   thisIndex = r.Nodes.IndexOf(itemValue);
                r.AddNewNode(thisIndex + 1);
            }
            pressed = false;

            return(itemValue);
        }
Example #2
0
        private void DrawToolShelf(Route route)
        {
            var iconAddNode = Resources.Load("UI/Route Builder/Buttons/routebuilder_button_new_node") as Texture;
            var iconParent  = Resources.Load("UI/Route Builder/Buttons/routebuilder_button_parent") as Texture;

            Rotorz.Games.Collections.ReorderableListGUI.Title("Tools");
            EditorGUILayout.BeginHorizontal();
            GUILayout.FlexibleSpace();

            // Add node button
            if (FoxKitUiUtils.ToolButton(iconAddNode, "Add a new node to the end of the route."))
            {
                route.AddNewNode();
            }

            // Select parent button
            if (FoxKitUiUtils.ToolButton(iconParent, "Select parent RouteSet."))
            {
                UnitySceneUtils.Select(route.transform.parent.gameObject);
            }

            GUILayout.FlexibleSpace();
            EditorGUILayout.EndHorizontal();
        }