修改框架

This commit is contained in:
MuHua-123
2025-02-10 09:29:30 +08:00
parent bf39077734
commit 27aed5f684
13 changed files with 39 additions and 77 deletions
@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 3e5a783a4eff92d4da56483985f0a2a1 guid: 1dd7861df30473e4380411dd72fc32c3
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
@@ -0,0 +1,20 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UIElements;
/// <summary>
/// 文档模块
/// </summary>
public abstract class ModuleDocument : MonoBehaviour {
/// <summary> 绑定文档 </summary>
public UIDocument document;
/// <summary> 根目录文档 </summary>
public VisualElement root => document.rootVisualElement;
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 添加UI元素 </summary>
public void Add(VisualElement child) => root.Add(child);
/// <summary> 查询UI元素 </summary>
public T Q<T>(string name = null, string className = null) where T : VisualElement => root.Q<T>(name, className);
}
@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 2f97b2c9b7073ea4b8e1409d50d9e4c0 guid: e65ff460c221dd142a18c295f562ac80
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
@@ -1,16 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UIElements;
/// <summary>
/// UI控件
/// </summary>
public class ModuleUIControl {
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 绑定的元素 </summary>
public readonly VisualElement element;
/// <summary> UI控件 </summary>
public ModuleUIControl(VisualElement element) => this.element = element;
}
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 634630f2be3c7074db93baa4289bf093
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -7,7 +7,7 @@ using UnityEngine.UIElements;
/// <summary> /// <summary>
/// UI项 /// UI项
/// </summary> /// </summary>
public abstract class ModuleUIItem<Data> : ModuleUIControl { public abstract class ModuleUIItem<Data> : ModuleUIPanel {
/// <summary> 绑定的数据 </summary> /// <summary> 绑定的数据 </summary>
public readonly Data value; public readonly Data value;
/// <summary> UI项 </summary> /// <summary> UI项 </summary>
+1 -1
View File
@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 1dd7861df30473e4380411dd72fc32c3 guid: b27b5ad3c5e2b1f4bb02957f1388fc49
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
@@ -1,3 +1,4 @@
using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using UnityEngine; using UnityEngine;
@@ -7,13 +8,10 @@ using UnityEngine.UIElements;
/// UI页面 /// UI页面
/// </summary> /// </summary>
public abstract class ModuleUIPage : MonoBehaviour { public abstract class ModuleUIPage : MonoBehaviour {
public UIDocument document; /// <summary> 绑定的页面 </summary>
/// <summary> 根目录文档 </summary> public ModuleDocument document;
public VisualElement root => document.rootVisualElement;
/// <summary> 核心模块 </summary> /// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I; protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 添加UI元素 </summary> /// <summary> 绑定的根元素 </summary>
public void Add(VisualElement child) => root.Add(child); public abstract VisualElement Element { get; }
/// <summary> 查询UI元素 </summary> }
public T Q<T>(string name = null, string className = null) where T : VisualElement => root.Q<T>(name, className);
}
@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 1fbdc8f1003e52b42b71c1679a3b8e3c guid: 111d6ab3c7a28a2449502de7f9804ca3
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
@@ -1,17 +1,16 @@
using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using UnityEngine; using UnityEngine;
using UnityEngine.UIElements; using UnityEngine.UIElements;
/// <summary> /// <summary>
/// UI面板 /// UI控件
/// </summary> /// </summary>
public abstract class ModuleUIPanel : MonoBehaviour { public class ModuleUIPanel {
/// <summary> 绑定的页面 </summary>
public ModuleUIPage ModuleUIPage;
/// <summary> 核心模块 </summary> /// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I; protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 绑定的元素 </summary> /// <summary> 绑定的元素 </summary>
public abstract VisualElement Element { get; } public readonly VisualElement element;
} /// <summary> UI控件 </summary>
public ModuleUIPanel(VisualElement element) => this.element = element;
}
@@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: ff06370808b1ecd46b161a402c6c171e guid: 9585f762b800e57488473c776cc49fa5
MonoImporter: MonoImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
-8
View File
@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: da0641a5e1f51fd4f8eb2aeeb34d02fa
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,20 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UIElements;
/// <summary>
/// UI窗口
/// </summary>
public abstract class ModuleUIWindow<Data> : MonoBehaviour {
/// <summary> 绑定的页面 </summary>
public ModuleUIPage ModuleUIPage;
/// <summary> 核心模块 </summary>
protected virtual ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 绑定的根元素 </summary>
public abstract VisualElement Element { get; }
/// <summary> 打开窗口,并且传进参数 </summary>
public abstract void Open(Data data);
/// <summary> 关闭窗口 </summary>
public abstract void Close();
}