2024-10-23 17:30:59 +00:00
|
|
|
|
#if UNITY_EDITOR
|
|
|
|
|
|
2024-10-28 16:31:38 +00:00
|
|
|
|
using System;
|
2024-10-23 17:30:59 +00:00
|
|
|
|
using UguiToolkit.Editor;
|
2024-10-21 16:20:39 +00:00
|
|
|
|
using UnityEditor;
|
2024-11-04 18:05:34 +00:00
|
|
|
|
using UnityEngine;
|
2024-10-08 15:19:05 +00:00
|
|
|
|
|
|
|
|
|
namespace UguiToolkit
|
|
|
|
|
{
|
|
|
|
|
public class GlobalManager
|
|
|
|
|
{
|
|
|
|
|
private static GlobalManager m_instance;
|
|
|
|
|
public static GlobalManager Instance
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
if (m_instance == null)
|
|
|
|
|
{
|
|
|
|
|
m_instance = new();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return m_instance;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public SettingScriptObject setting;
|
|
|
|
|
public CacheScriptObject cache;
|
2024-10-21 16:20:39 +00:00
|
|
|
|
|
2024-12-09 11:18:10 +00:00
|
|
|
|
public PanelCache GetCache(GameObject asset, bool isVertical = false)
|
|
|
|
|
{
|
|
|
|
|
if (cache.panelCaches.TryGetValue(asset, out var allDirectionPanelCache))
|
|
|
|
|
{
|
|
|
|
|
if (isVertical) return allDirectionPanelCache.panelCacheOfVertical;
|
|
|
|
|
else return allDirectionPanelCache.panelCacheOfHorizontal;
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-04 18:05:34 +00:00
|
|
|
|
public void SaveCache(GameObject asset, PanelCache panelCache)
|
|
|
|
|
{
|
2024-12-09 11:18:10 +00:00
|
|
|
|
if (!cache.panelCaches.TryGetValue(asset, out var allDirectionPanelCache))
|
|
|
|
|
{
|
|
|
|
|
cache.panelCaches[asset] = new AllDirectionPanelCache();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (panelCache.isVertical)
|
|
|
|
|
cache.panelCaches[asset].panelCacheOfVertical = panelCache;
|
|
|
|
|
else
|
|
|
|
|
cache.panelCaches[asset].panelCacheOfHorizontal = panelCache;
|
|
|
|
|
|
2024-11-04 18:05:34 +00:00
|
|
|
|
SaveCache();
|
|
|
|
|
}
|
2024-10-28 16:31:38 +00:00
|
|
|
|
|
2024-10-21 16:20:39 +00:00
|
|
|
|
public void SaveCache()
|
|
|
|
|
{
|
|
|
|
|
EditorUtility.SetDirty(cache);
|
|
|
|
|
AssetDatabase.SaveAssetIfDirty(cache);
|
|
|
|
|
}
|
2024-10-08 15:19:05 +00:00
|
|
|
|
}
|
2024-10-23 17:30:59 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif
|