Exemple #1
0
        static bool OpenAsset(int instanceID, int line)
        {
            var asset = EditorUtility.InstanceIDToObject(instanceID);

            if (asset is DiscoverAsset)
            {
                DiscoverWindow.ShowDiscoverWindow(asset as DiscoverAsset);
                return(true);
            }
            else
            {
                return(false);
            }
        }
Exemple #2
0
        static void ActionButtonGUI(UnityEngine.Object target)
        {
            if (target == null)
            {
                EditorGUI.BeginDisabledGroup(true);
                GUILayout.Button("(No Object)");
                EditorGUI.EndDisabledGroup();
                return;
            }


            Type t = target.GetType();

            if (t == typeof(GameObject))
            {
                GameObject go = target as GameObject;

                if (GUILayout.Button("  Select  ", DiscoverWindow.Styles.buttonLeft))
                {
                    Selection.activeObject = go;
                }

                if (PrefabUtility.GetPrefabAssetType(go) == PrefabAssetType.NotAPrefab)
                {
                    if (GUILayout.Button("  Go to  ", DiscoverWindow.Styles.buttonRight))
                    {
                        Selection.activeObject = go;
                        SceneView.lastActiveSceneView.FrameSelected();
                    }
                }
                else
                {
                    if (GUILayout.Button("  Open  ", DiscoverWindow.Styles.buttonRight))
                    {
                        AssetDatabase.OpenAsset(go);
                    }
                }
            }
            else if (t == typeof(Discover))
            {
                if (GUILayout.Button("Discover"))
                {
                    var discover = target as Discover;
                    //Selection.activeGameObject = discover;
                    DiscoverWindow.SelectDiscover(discover);
                }
            }
            else if (t == typeof(SceneAsset))
            {
                if (GUILayout.Button("Open Scene"))
                {
                    SceneAsset scene = target as SceneAsset;
                    AssetDatabase.OpenAsset(scene);
                }
            }
            else if (t == typeof(EditorSceneSetup))
            {
                if (GUILayout.Button("Open Scenes"))
                {
                    EditorSceneSetup scene = target as EditorSceneSetup;
                    AssetDatabase.OpenAsset(scene);
                }
            }
            else if (typeof(DiscoverAction).IsAssignableFrom(t))
            {
                var action = (DiscoverAction)target;
                if (GUILayout.Button(action.ActionName))
                {
                    action.DoAction();
                }
            }
            else
            {
                if (GUILayout.Button("Select"))
                {
                    Selection.activeObject = target;
                }
            }
        }
Exemple #3
0
        internal static void Show()
        {
            var asset = AssetDatabase.LoadAssetAtPath <DiscoverAsset>(AssetDatabase.GUIDToAssetPath(AssetDatabase.FindAssets("t:DiscoverAsset")[0]));

            DiscoverWindow.ShowDiscoverWindow(asset);
        }