mirror of
https://github.com/Alex-Rachel/TEngine.git
synced 2025-08-07 16:45:10 +00:00
* support package mode tengine setting
This commit is contained in:
@@ -10,6 +10,7 @@ public class TEngineSettingsProvider : SettingsProvider
|
|||||||
private const string headerName = "TEngine/TEngineSettings";
|
private const string headerName = "TEngine/TEngineSettings";
|
||||||
private SerializedObject m_CustomSettings;
|
private SerializedObject m_CustomSettings;
|
||||||
|
|
||||||
|
private static string m_SettingsPath = k_SettingsPath;
|
||||||
internal static SerializedObject GetSerializedSettings()
|
internal static SerializedObject GetSerializedSettings()
|
||||||
{
|
{
|
||||||
return new SerializedObject(SettingsUtils.GlobalSettings);
|
return new SerializedObject(SettingsUtils.GlobalSettings);
|
||||||
@@ -17,7 +18,12 @@ public class TEngineSettingsProvider : SettingsProvider
|
|||||||
|
|
||||||
public static bool IsSettingsAvailable()
|
public static bool IsSettingsAvailable()
|
||||||
{
|
{
|
||||||
return File.Exists(k_SettingsPath);
|
var pathes = AssetDatabase.FindAssets("TEngineGlobalSettings", new string[2] { k_SettingsPath,"Packages/com.tengine/" });
|
||||||
|
if (pathes.Length > 0)
|
||||||
|
{
|
||||||
|
m_SettingsPath = AssetDatabase.GUIDToAssetPath(pathes[0]);
|
||||||
|
}
|
||||||
|
return pathes.Length > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void OnActivate(string searchContext, VisualElement rootElement)
|
public override void OnActivate(string searchContext, VisualElement rootElement)
|
||||||
@@ -29,16 +35,16 @@ public class TEngineSettingsProvider : SettingsProvider
|
|||||||
public override void OnDeactivate()
|
public override void OnDeactivate()
|
||||||
{
|
{
|
||||||
base.OnDeactivate();
|
base.OnDeactivate();
|
||||||
SaveAssetData(k_SettingsPath);
|
SaveAssetData(m_SettingsPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
void SaveAssetData(string path)
|
void SaveAssetData(string path)
|
||||||
{
|
{
|
||||||
TEngineSettings old = AssetDatabase.LoadAssetAtPath<TEngineSettings>(k_SettingsPath);
|
TEngineSettings old = AssetDatabase.LoadAssetAtPath<TEngineSettings>(m_SettingsPath);
|
||||||
TEngineSettings data = ScriptableObject.CreateInstance<TEngineSettings>();
|
TEngineSettings data = ScriptableObject.CreateInstance<TEngineSettings>();
|
||||||
data.Set(old.FrameworkGlobalSettings, old.BybridCLRCustomGlobalSettings);
|
data.Set(old.FrameworkGlobalSettings, old.BybridCLRCustomGlobalSettings);
|
||||||
AssetDatabase.DeleteAsset(path);
|
AssetDatabase.DeleteAsset(path);
|
||||||
AssetDatabase.CreateAsset(data, path);
|
AssetDatabase.CreateAsset(data, path);
|
||||||
AssetDatabase.SaveAssets();
|
AssetDatabase.SaveAssets();
|
||||||
AssetDatabase.Refresh();
|
AssetDatabase.Refresh();
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user