public List <string> GetPublishPackagePath()
        {
            Dictionary <string, string> dict = new Dictionary <string, string>();

            for (int i = 0; i < m_dataList.Count; ++i)
            {
                BundleImportData bundleImportData = m_dataList[i];
                if (bundleImportData == null || !bundleImportData.Publish)
                {
                    continue;
                }
                List <object> list = bundleImportData.GetObjects();
                for (int j = 0; j < list.Count; ++j)
                {
                    AssetPathInfo info = list[j] as AssetPathInfo;
                    if (info == null || dict.ContainsKey(info.Path))
                    {
                        continue;
                    }
                    dict.Add(info.Path, info.Path);
                }
            }

            return(new List <string>(dict.Keys));
        }
        public void OnInfoSelected(object selected, int col)
        {
            AssetPathInfo texInfo = selected as AssetPathInfo;

            if (texInfo == null)
            {
                return;
            }
            UnityEngine.Object obj = AssetDatabase.LoadAssetAtPath(texInfo.Path, typeof(UnityEngine.Object));
            EditorGUIUtility.PingObject(obj);
            Selection.activeObject = obj;
        }
Beispiel #3
0
        public static AssetPathInfo CreatePathInfo(string assetPath)
        {
            AssetPathInfo pathInfo = null;

            if (!m_dictPathInfo.TryGetValue(assetPath, out pathInfo))
            {
                pathInfo      = new AssetPathInfo();
                pathInfo.Path = assetPath;
                m_dictPathInfo.Add(assetPath, pathInfo);
            }
            return(pathInfo);
        }
 public void AddObject(AssetPathInfo pInfo)
 {
     if (!SkipData)
     {
         pInfo.Index = Index;
     }
     else
     {
         pInfo.Index = -1;
     }
     m_objects.Add(pInfo);
     TotalCount = m_objects.Count;
 }
 private void RefreshList(List <string> list)
 {
     for (int i = 0; i < list.Count; ++i)
     {
         string path = PathConfig.FormatAssetPath(list[i]);
         string name = System.IO.Path.GetFileName(path);
         EditorUtility.DisplayProgressBar("获取AssetPath数据", name, (i * 1.0f) / list.Count);
         if (PathConfig.IsMeta(path))
         {
             continue;
         }
         AssetPathInfo pathInfo = AssetPathInfo.CreatePathInfo(path);
         m_pathInfoList.Add(pathInfo);
     }
     EditorUtility.ClearProgressBar();
     RefreshDataWithSelect();
 }
        public void OnBundleSelected(object selected, int col)
        {
            BundleData bundleData = selected as BundleData;

            if (bundleData == null)
            {
                return;
            }

            if (m_assetTable != null)
            {
                List <object> list = new List <object>();
                for (int i = 0; i < bundleData.includs.Count; ++i)
                {
                    AssetPathInfo pathInfo = AssetPathInfo.CreatePathInfo(bundleData.includs[i]);
                    if (pathInfo != null)
                    {
                        list.Add(pathInfo);
                    }
                }
                m_assetTable.RefreshData(list);
            }
        }
        public BundleImportData GetPathSelectData(string path)
        {
            path = PathConfig.FormatAssetPath(path);
            path = PathConfig.NormalizePathSplash(path);
            AssetPathInfo pathInfo = AssetPathInfo.CreatePathInfo(path);

            if (pathInfo == null)
            {
                return(null);
            }

            if (pathInfo.Index >= 0 && pathInfo.Index < m_dataList.Count)
            {
                return(m_dataList[pathInfo.Index]);
            }
            for (int i = m_dataList.Count - 1; i >= 0; --i)
            {
                if (m_dataList[i].IsMatch(path))
                {
                    return(m_dataList[i]);
                }
            }
            return(null);
        }