/// <summary>
        /// 查看模型
        /// </summary>
        /// <param name="prefab"></param>
        private void viewPrefabInfo(PrefabVO vo, bool selectedIt = true)
        {
            if (vo == null)
            {
                return;
            }
            string     path   = vo.prefabPath;
            GameObject prefab = AssetDatabase.LoadAssetAtPath <GameObject>(path);

            if (prefab == null)
            {
                return;
            }
            previewSystem.SetPreview(prefab);
            if (selectedIt)
            {
                Selection.activeGameObject = prefab;
                EditorGUIUtility.PingObject(prefab);
            }
        }
        public void searchView(string uri)
        {
            if (dataProvider == null)
            {
                dataProvider = PrefabVODB.Reload();
            }
            PrefabVO prefabVo = PrefabVODB.Get(uri);

            if (prefabVo == null)
            {
                return;
            }
            tabNav.selectedTabLabel(prefabVo.rootKey);
            ProjectPrefabSearchList searchList = tabNav.selectedItem as ProjectPrefabSearchList;

            if (searchList != null)
            {
                EditorCallLater.Add(() =>
                {
                    searchList.search(prefabVo.fileName);
                    viewPrefabInfo(prefabVo, false);
                }, 0.5f);
            }
        }
Beispiel #3
0
        public override void onRender()
        {
            PrefabVO vo = _data as PrefabVO;

            if (vo != null)
            {
                GUILayout.BeginHorizontal();

                if (isSelected)
                {
                    oldColor  = GUI.color;
                    GUI.color = new Color(0, 1f, 1f, 1f);
                }

                string displayName = vo.getDisplayName();
                if (GUILayout.Button(displayName))
                {
                    itemEventHandle(EventX.SELECT, this, data);
                    selectedHandle();
                }
                if (vo.hasFBX)
                {
                    if (GUILayout.Button("fbx", GUILayout.Width(30)))
                    {
                        GameObject prefab = AssetDatabase.LoadAssetAtPath <GameObject>(vo.fbxPath);
                        Selection.activeGameObject = prefab;
                        EditorGUIUtility.PingObject(prefab);
                    }
                }
                if (isSelected)
                {
                    GUI.color = oldColor;
                }
                GUILayout.EndHorizontal();
            }
        }