From fc58c5ee1aca79c3c268233dc7c877363b91d811 Mon Sep 17 00:00:00 2001
From: MuHua-123 <2960208585@qq.com>
Date: Fri, 10 Jan 2025 23:30:20 +0800
Subject: [PATCH] 1
---
Assets/ModuleCore/ModuleUIControl.meta | 8 +++++
.../ModuleUIControl/ModuleUIControl.cs | 16 +++++++++
.../ModuleUIControl/ModuleUIControl.cs.meta | 11 ++++++
Assets/ModuleCore/ModuleUIItem.meta | 8 +++++
.../ModuleCore/ModuleUIItem/ModuleUIItem.cs | 35 +++++++++++++++++++
.../ModuleUIItem/ModuleUIItem.cs.meta | 11 ++++++
.../ModuleCore/ModuleUIPanel/ModuleUIPanel.cs | 34 ------------------
7 files changed, 89 insertions(+), 34 deletions(-)
create mode 100644 Assets/ModuleCore/ModuleUIControl.meta
create mode 100644 Assets/ModuleCore/ModuleUIControl/ModuleUIControl.cs
create mode 100644 Assets/ModuleCore/ModuleUIControl/ModuleUIControl.cs.meta
create mode 100644 Assets/ModuleCore/ModuleUIItem.meta
create mode 100644 Assets/ModuleCore/ModuleUIItem/ModuleUIItem.cs
create mode 100644 Assets/ModuleCore/ModuleUIItem/ModuleUIItem.cs.meta
diff --git a/Assets/ModuleCore/ModuleUIControl.meta b/Assets/ModuleCore/ModuleUIControl.meta
new file mode 100644
index 0000000..83e71cc
--- /dev/null
+++ b/Assets/ModuleCore/ModuleUIControl.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 8b26950e50e4e4647a4d48ba0fde3f70
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ModuleCore/ModuleUIControl/ModuleUIControl.cs b/Assets/ModuleCore/ModuleUIControl/ModuleUIControl.cs
new file mode 100644
index 0000000..3da2fc2
--- /dev/null
+++ b/Assets/ModuleCore/ModuleUIControl/ModuleUIControl.cs
@@ -0,0 +1,16 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UIElements;
+
+///
+/// UI控件
+///
+public class ModuleUIControl {
+ /// 核心模块
+ protected virtual ModuleCore ModuleCore => ModuleCore.I;
+ /// 绑定的元素
+ public readonly VisualElement element;
+ /// UI控件
+ public ModuleUIControl(VisualElement element) => this.element = element;
+}
diff --git a/Assets/ModuleCore/ModuleUIControl/ModuleUIControl.cs.meta b/Assets/ModuleCore/ModuleUIControl/ModuleUIControl.cs.meta
new file mode 100644
index 0000000..e3015fd
--- /dev/null
+++ b/Assets/ModuleCore/ModuleUIControl/ModuleUIControl.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: c0c97a0c4b232fb4595b8eaafc961a9c
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ModuleCore/ModuleUIItem.meta b/Assets/ModuleCore/ModuleUIItem.meta
new file mode 100644
index 0000000..82f700b
--- /dev/null
+++ b/Assets/ModuleCore/ModuleUIItem.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b12984c5e1e0c2848a7a6b14061f8858
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ModuleCore/ModuleUIItem/ModuleUIItem.cs b/Assets/ModuleCore/ModuleUIItem/ModuleUIItem.cs
new file mode 100644
index 0000000..f26dc49
--- /dev/null
+++ b/Assets/ModuleCore/ModuleUIItem/ModuleUIItem.cs
@@ -0,0 +1,35 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UIElements;
+
+///
+/// UI项
+///
+public abstract class ModuleUIItem : ModuleUIControl {
+ /// 选择事件
+ public static event Action OnSelect;
+ /// 触发事件
+ public static void Select(Data data) => OnSelect?.Invoke(data);
+ /// 绑定的数据
+ public readonly Data value;
+ /// UI项
+ public ModuleUIItem(Data value, VisualElement element) : base(element) {
+ this.value = value;
+ OnSelect += UnitUIPanelItem_OnSelect;
+ }
+ /// 触发选择事件
+ public virtual void Select() => OnSelect?.Invoke(value);
+ /// 侦听选择事件
+ public virtual void UnitUIPanelItem_OnSelect(Data obj) {
+ if (value.Equals(obj)) { SelectState(); }
+ else { DefaultState(); }
+ }
+ /// 默认状态
+ public virtual void DefaultState() { }
+ /// 选中状态
+ public virtual void SelectState() { }
+ /// 释放
+ public virtual void Release() => OnSelect -= UnitUIPanelItem_OnSelect;
+}
diff --git a/Assets/ModuleCore/ModuleUIItem/ModuleUIItem.cs.meta b/Assets/ModuleCore/ModuleUIItem/ModuleUIItem.cs.meta
new file mode 100644
index 0000000..7be85e5
--- /dev/null
+++ b/Assets/ModuleCore/ModuleUIItem/ModuleUIItem.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 58b0a0e9216e0b04eaedf110eeab367e
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ModuleCore/ModuleUIPanel/ModuleUIPanel.cs b/Assets/ModuleCore/ModuleUIPanel/ModuleUIPanel.cs
index d89d701..a10373c 100644
--- a/Assets/ModuleCore/ModuleUIPanel/ModuleUIPanel.cs
+++ b/Assets/ModuleCore/ModuleUIPanel/ModuleUIPanel.cs
@@ -17,37 +17,3 @@ public abstract class ModuleUIPanel : MonoBehaviour {
public abstract VisualElement Element { get; }
}
-///
-/// UI项
-///
-public abstract class UIItem {
- /// 选择事件
- public static event Action OnSelect;
- /// 触发事件
- public static void Select(Data data) => OnSelect?.Invoke(data);
- /// 核心模块
- protected virtual ModuleCore ModuleCore => ModuleCore.I;
- /// 绑定的数据
- public readonly Data value;
- /// 绑定的元素
- public readonly VisualElement element;
- /// 基础实例
- public UIItem(Data value, VisualElement element) {
- this.value = value;
- this.element = element;
- OnSelect += UIItem_OnSelect;
- }
- /// 触发选择事件
- public virtual void Select() => OnSelect?.Invoke(value);
- /// 侦听选择事件
- public virtual void UIItem_OnSelect(Data obj) {
- if (value.Equals(obj)) { SelectState(); }
- else { DefaultState(); }
- }
- /// 默认状态
- public virtual void DefaultState() { }
- /// 选中状态
- public virtual void SelectState() { }
- /// 释放
- public virtual void Release() => OnSelect -= UIItem_OnSelect;
-}