diff --git a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/encodings.xml b/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/encodings.xml
deleted file mode 100644
index df87cf9..0000000
--- a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/encodings.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/indexLayout.xml b/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/indexLayout.xml
deleted file mode 100644
index 7b08163..0000000
--- a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/indexLayout.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/projectSettingsUpdater.xml b/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/projectSettingsUpdater.xml
deleted file mode 100644
index 4bb9f4d..0000000
--- a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/projectSettingsUpdater.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/vcs.xml b/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/vcs.xml
deleted file mode 100644
index b2bdec2..0000000
--- a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/workspace.xml b/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/workspace.xml
deleted file mode 100644
index fe192f3..0000000
--- a/Runtime/HorizonLineOrbit/.idea/.idea.HorizonLineOrbit.dir/.idea/workspace.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {
- "associatedIndex": 7
-}
-
-
-
-
-
-
-
-
-
-
- 1740962660807
-
-
- 1740962660807
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/Runtime/HorizonLineOrbit/SesothoPeManager.cs b/Runtime/HorizonLineOrbit/SesothoPeManager.cs
index 0ae6d35..5a69311 100644
--- a/Runtime/HorizonLineOrbit/SesothoPeManager.cs
+++ b/Runtime/HorizonLineOrbit/SesothoPeManager.cs
@@ -176,8 +176,8 @@ namespace SesothoLine
// һĿλ
if (TrackingTool.EnableTool || TrackingTool._enableAuxiliaryTool)
{
- MacroDebugDraw.DrawDownArrow(NearestPoint, Color.magenta);
- MacroDebugDraw.DrawDownArrow(NearestLineTangentPoint, Color.green);
+ MacroDebugDraw.DrawDownArrow(NearestPoint, Quaternion.identity, Color.magenta);
+ MacroDebugDraw.DrawDownArrow(NearestLineTangentPoint, Quaternion.identity, Color.green);
}
}
diff --git a/Runtime/HorizonLineOrbit/TerminalLine2T3.cs b/Runtime/HorizonLineOrbit/TerminalLine2T3.cs
index 8cffa6d..83137d0 100644
--- a/Runtime/HorizonLineOrbit/TerminalLine2T3.cs
+++ b/Runtime/HorizonLineOrbit/TerminalLine2T3.cs
@@ -87,7 +87,7 @@ namespace SesothoLine
foreach (var index in indexs.Indexs)
{
MacroDebugDraw.DrawDownArrow(
- index.GetCellWorldIndexPosition() + MacroMath.RandomVector3(0.1f, Identifier),
+ index.GetCellWorldIndexPosition() + MacroMath.RandomVector3(0.1f, Identifier), Quaternion.identity,
Color.red);
}
}
diff --git a/Runtime/UI/MacroUI.cs b/Runtime/UI/MacroUI.cs
index b0724df..cf0ff62 100644
--- a/Runtime/UI/MacroUI.cs
+++ b/Runtime/UI/MacroUI.cs
@@ -3,14 +3,12 @@ using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
-
using TMPro;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;
using XericLibrary.Runtime.CustomEditor;
using Object = UnityEngine.Object;
-
using Sirenix.OdinInspector;
#if UNITY_EDITOR
using Sirenix.Utilities.Editor;
@@ -25,27 +23,28 @@ namespace XericLibrary.Runtime.MacroLibrary
{
#region toggle 扩展
- private static FieldInfo togglesFieldInfo = typeof(ToggleGroup).GetField("m_Toggles", BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
+ private static FieldInfo togglesFieldInfo = typeof(ToggleGroup).GetField("m_Toggles",
+ BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);
public static List GetToggles(this ToggleGroup toggleGroup)
{
- if (toggleGroup == null)
- {
- throw new ArgumentNullException(nameof(toggleGroup));
- }
-
- if (togglesFieldInfo == null)
- {
- throw new InvalidOperationException("Unable to access the 'm_Toggles' field.");
- }
-
- var toggles = togglesFieldInfo.GetValue(toggleGroup) as List;
- if (toggles == null)
- {
- throw new InvalidCastException("The 'm_Toggles' field is not of type List.");
- }
-
- return toggles;
+ if (toggleGroup == null)
+ {
+ throw new ArgumentNullException(nameof(toggleGroup));
+ }
+
+ if (togglesFieldInfo == null)
+ {
+ throw new InvalidOperationException("Unable to access the 'm_Toggles' field.");
+ }
+
+ var toggles = togglesFieldInfo.GetValue(toggleGroup) as List;
+ if (toggles == null)
+ {
+ throw new InvalidCastException("The 'm_Toggles' field is not of type List.");
+ }
+
+ return toggles;
// return (List)togglesFieldInfo.GetValue(toggleGroup);
}
@@ -78,7 +77,6 @@ namespace XericLibrary.Runtime.MacroLibrary
return toggleGroup.GetToggles().Count;
}
-
///
/// 在单选项组上注册一个事件,当组中的任意成员变成激活状态时调用(其他的不会发生调用)。
@@ -96,6 +94,7 @@ namespace XericLibrary.Runtime.MacroLibrary
});
}
}
+
///
/// 清空单选项组中的所有事件(与注册所有事件对应,但那个事件没法单独注销)
///
@@ -107,7 +106,7 @@ namespace XericLibrary.Runtime.MacroLibrary
toggle.onValueChanged.RemoveAllListeners();
}
}
-
+
#region toggle 索引
///
@@ -136,29 +135,28 @@ namespace XericLibrary.Runtime.MacroLibrary
#region 字段属性
[LabelText("单选组")] public ToggleGroup ToggleGroup;
-
- [SerializeField, LabelText("编辑单选项目顺序")]
- [ListDrawerSettings(OnTitleBarGUI = "GetAndSortToggle")]
+
+ [SerializeField, LabelText("编辑单选项目顺序")] [ListDrawerSettings(OnTitleBarGUI = "GetAndSortToggle")]
private List toggleList = new List();
-
+
// 当前选中的项目
private int nowSelectToggleIndex = 0;
private Toggle nowSelectToggle = null;
-
-
+
+
public Transform TogglesContext => ToggleGroup.transform;
-
+
///
/// 当前选中的toggle索引
///
public int NowSelectToggleIndex => nowSelectToggleIndex;
-
+
///
/// 当前选中的toggle
///
public Toggle NowSelectToggle => nowSelectToggle;
-
+
///
/// 获取并给列表排序(顺序不一定与拼音有关)
///
@@ -168,11 +166,7 @@ namespace XericLibrary.Runtime.MacroLibrary
// 自动获取并排序
if (SirenixEditorGUI.ToolbarButton(EditorIcons.Refresh))
{
- var newToggleList = MacroSort.FullCharacterOrderSort(ToggleGroup.GetToggles(), a => a.name).ToList();
- if (newToggleList.Count <= 0 || newToggleList == null)
- Debug.LogError("如果无法更新获取自动排序toggle,可能是因为toggleGroup被隐藏了,手动将其激活后再获取即可。");
- else
- toggleList = newToggleList;
+ GetSortToggle();
}
// 反转顺序
if (SirenixEditorGUI.ToolbarButton(EditorIcons.TriangleDown))
@@ -180,12 +174,17 @@ namespace XericLibrary.Runtime.MacroLibrary
toggleList.Reverse();
}
#else
- var newToggleList = MacroSort.FullCharacterOrderSort(ToggleGroup.GetToggles(), a => a.name).ToList();
+ GetSortToggle();
+#endif
+ void GetSortToggle()
+ {
+ var newToggleList = MacroSort.FullCharacterOrderSort(ToggleGroup.GetToggles(), a => a.name)
+ .ToList();
if (newToggleList.Count <= 0 || newToggleList == null)
Debug.LogError("如果无法更新获取自动排序toggle,可能是因为toggleGroup被隐藏了,手动将其激活后再获取即可。");
else
toggleList = newToggleList;
-#endif
+ }
}
#endregion
@@ -226,7 +225,7 @@ namespace XericLibrary.Runtime.MacroLibrary
// 未指定组时,说明压根没用这部分功能,用不着初始化。
if (ToggleGroup == null)
return;
-
+
// 防呆警告
if (toggleList.Count <= 0)
{
@@ -237,13 +236,14 @@ namespace XericLibrary.Runtime.MacroLibrary
Debug.LogWarning($"在初始化单选项组时,{ToggleGroup.name}并未预先指定索引顺序,将默认使用大纲顺序。");
}
}
+
// 事件初始化
for (int i = 0; i < toggleList.Count; i++)
{
var toggle = toggleList[i];
-
+
ToggleAddEvent(toggle);
-
+
if (toggle.isOn)
{
nowSelectToggleIndex = i;
@@ -263,12 +263,12 @@ namespace XericLibrary.Runtime.MacroLibrary
public int AddToggle(Toggle t)
{
ToggleAddEvent(t);
-
+
var resultIndex = toggleList.Count;
toggleList.Add(t);
return resultIndex;
}
-
+
///
/// 移除一个toggle,这不会影响其他toggle的索引,但此处移除的位置会为空。
///
@@ -282,12 +282,12 @@ namespace XericLibrary.Runtime.MacroLibrary
var index = toggleList.IndexOf(t);
if (index < 0)
return false;
-
- t.onValueChanged.RemoveAllListeners();
+
+ t.onValueChanged.RemoveAllListeners();
toggleList[index] = null;
return true;
}
-
+
///
/// 清除toggle
///
@@ -300,11 +300,11 @@ namespace XericLibrary.Runtime.MacroLibrary
if (allowDestroy)
Object.Destroy(t);
}
+
toggleList.Clear();
}
-
-
+
///
/// toggle注册的事件,只有当按下时才需要调用此事件。
///
@@ -316,7 +316,7 @@ namespace XericLibrary.Runtime.MacroLibrary
if (a) ToggleRegister(t);
});
}
-
+
///
/// toggle注册的事件,只有当按下时才需要调用此事件。
///
@@ -328,9 +328,8 @@ namespace XericLibrary.Runtime.MacroLibrary
OnAnyToggleSwitchOn?.Invoke(t);
OnAnyToggleIndexSwitchOn?.Invoke(nowSelectToggleIndex);
}
-
-
-
+
+
///
/// 获取toggle代表的索引
///
@@ -361,6 +360,7 @@ namespace XericLibrary.Runtime.MacroLibrary
{
target.isOn = true;
}
+
///
/// 设置单选项激活
///
@@ -372,6 +372,7 @@ namespace XericLibrary.Runtime.MacroLibrary
SetToggleOn(toggleList[index]);
}
}
+
///
/// 设置单选项激活
///
@@ -380,6 +381,7 @@ namespace XericLibrary.Runtime.MacroLibrary
{
target.SetIsOnWithoutNotify(true);
}
+
///
/// 设置单选项激活
///
@@ -391,7 +393,7 @@ namespace XericLibrary.Runtime.MacroLibrary
SetToggleOnWithoutNotify(toggleList[index]);
}
}
-
+
///
/// 清除映射结构(不会清除toggle实例)
@@ -411,11 +413,11 @@ namespace XericLibrary.Runtime.MacroLibrary
{
Object.Destroy(toggleList[i]);
}
+
Clear();
}
#endregion
-
}
#endregion
@@ -485,8 +487,8 @@ namespace XericLibrary.Runtime.MacroLibrary
///
///
///
- public static RectTransform RectTransform(this T target)
- where T : Component
+ public static RectTransform RectTransform(this T target)
+ where T : Component
=> target.transform as RectTransform;
#endregion