From 8c3c8dd433bceadaa848f91b21d38a704c83c045 Mon Sep 17 00:00:00 2001 From: Victor_Wang Date: Thu, 1 Aug 2024 14:06:23 +0800 Subject: [PATCH] 1 --- Assets/{ThridPart.meta => ThirdPart.meta} | 2 +- Assets/ThirdPart/UI Toolkit.meta | 8 + .../ThirdPart/UI Toolkit/PanelSettings.asset | 37 ++++ .../UI Toolkit/PanelSettings.asset.meta | 8 + Assets/ThirdPart/UI Toolkit/UnityThemes.meta | 8 + .../UnityThemes/UnityDefaultRuntimeTheme.tss | 1 + .../UnityDefaultRuntimeTheme.tss.meta | 11 + Assets/ThirdPart/UIToolKitFile.meta | 8 + Assets/ThirdPart/UIToolKitFile/Editor.meta | 8 + .../UIToolKitFile/Editor/AutoGenerate.cs | 205 ++++++++++++++++++ .../UIToolKitFile/Editor/AutoGenerate.cs.meta | 11 + Assets/ThirdPart/UIToolKitFile/UDoc.meta | 8 + Assets/ThirdPart/UIToolKitFile/UDoc/UCss.meta | 8 + Assets/ThirdPart/UIToolKitFile/UDoc/UXml.meta | 8 + .../UDoc/UXml/AutoGenerateUI.uxml | 8 + .../UDoc/UXml/AutoGenerateUI.uxml.meta | 10 + 16 files changed, 348 insertions(+), 1 deletion(-) rename Assets/{ThridPart.meta => ThirdPart.meta} (77%) create mode 100644 Assets/ThirdPart/UI Toolkit.meta create mode 100644 Assets/ThirdPart/UI Toolkit/PanelSettings.asset create mode 100644 Assets/ThirdPart/UI Toolkit/PanelSettings.asset.meta create mode 100644 Assets/ThirdPart/UI Toolkit/UnityThemes.meta create mode 100644 Assets/ThirdPart/UI Toolkit/UnityThemes/UnityDefaultRuntimeTheme.tss create mode 100644 Assets/ThirdPart/UI Toolkit/UnityThemes/UnityDefaultRuntimeTheme.tss.meta create mode 100644 Assets/ThirdPart/UIToolKitFile.meta create mode 100644 Assets/ThirdPart/UIToolKitFile/Editor.meta create mode 100644 Assets/ThirdPart/UIToolKitFile/Editor/AutoGenerate.cs create mode 100644 Assets/ThirdPart/UIToolKitFile/Editor/AutoGenerate.cs.meta create mode 100644 Assets/ThirdPart/UIToolKitFile/UDoc.meta create mode 100644 Assets/ThirdPart/UIToolKitFile/UDoc/UCss.meta create mode 100644 Assets/ThirdPart/UIToolKitFile/UDoc/UXml.meta create mode 100644 Assets/ThirdPart/UIToolKitFile/UDoc/UXml/AutoGenerateUI.uxml create mode 100644 Assets/ThirdPart/UIToolKitFile/UDoc/UXml/AutoGenerateUI.uxml.meta diff --git a/Assets/ThridPart.meta b/Assets/ThirdPart.meta similarity index 77% rename from Assets/ThridPart.meta rename to Assets/ThirdPart.meta index 8aa8955..06dfcb8 100644 --- a/Assets/ThridPart.meta +++ b/Assets/ThirdPart.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 9d618dd32a7c5c1489edab87f23d7e92 +guid: ae49ca4dac5aa2b4dba32bbcd0f0723a folderAsset: yes DefaultImporter: externalObjects: {} diff --git a/Assets/ThirdPart/UI Toolkit.meta b/Assets/ThirdPart/UI Toolkit.meta new file mode 100644 index 0000000..4cc4c11 --- /dev/null +++ b/Assets/ThirdPart/UI Toolkit.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dfc97fe817fcd3a459c9283999f9a6a0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ThirdPart/UI Toolkit/PanelSettings.asset b/Assets/ThirdPart/UI Toolkit/PanelSettings.asset new file mode 100644 index 0000000..e4acc4f --- /dev/null +++ b/Assets/ThirdPart/UI Toolkit/PanelSettings.asset @@ -0,0 +1,37 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 19101, guid: 0000000000000000e000000000000000, type: 0} + m_Name: PanelSettings + m_EditorClassIdentifier: + themeUss: {fileID: -4733365628477956816, guid: 967f2d6279a3ca9478e9b28ab8de8eb8, type: 3} + m_TargetTexture: {fileID: 0} + m_ScaleMode: 1 + m_Scale: 1 + m_ReferenceDpi: 96 + m_FallbackDpi: 96 + m_ReferenceResolution: {x: 1200, y: 800} + m_ScreenMatchMode: 0 + m_Match: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 + m_ClearDepthStencil: 1 + m_ClearColor: 0 + m_ColorClearValue: {r: 0, g: 0, b: 0, a: 0} + m_DynamicAtlasSettings: + m_MinAtlasSize: 64 + m_MaxAtlasSize: 4096 + m_MaxSubTextureSize: 64 + m_ActiveFilters: 31 + m_AtlasBlitShader: {fileID: 9101, guid: 0000000000000000f000000000000000, type: 0} + m_RuntimeShader: {fileID: 9100, guid: 0000000000000000f000000000000000, type: 0} + m_RuntimeWorldShader: {fileID: 9102, guid: 0000000000000000f000000000000000, type: 0} + textSettings: {fileID: 0} diff --git a/Assets/ThirdPart/UI Toolkit/PanelSettings.asset.meta b/Assets/ThirdPart/UI Toolkit/PanelSettings.asset.meta new file mode 100644 index 0000000..bd13055 --- /dev/null +++ b/Assets/ThirdPart/UI Toolkit/PanelSettings.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2d91bcfcb89e2734cae6453f561ba863 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ThirdPart/UI Toolkit/UnityThemes.meta b/Assets/ThirdPart/UI Toolkit/UnityThemes.meta new file mode 100644 index 0000000..ca50f75 --- /dev/null +++ b/Assets/ThirdPart/UI Toolkit/UnityThemes.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 87f0785827ff4524799000723ebb1de6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ThirdPart/UI Toolkit/UnityThemes/UnityDefaultRuntimeTheme.tss b/Assets/ThirdPart/UI Toolkit/UnityThemes/UnityDefaultRuntimeTheme.tss new file mode 100644 index 0000000..1056e07 --- /dev/null +++ b/Assets/ThirdPart/UI Toolkit/UnityThemes/UnityDefaultRuntimeTheme.tss @@ -0,0 +1 @@ +@import url("unity-theme://default"); \ No newline at end of file diff --git a/Assets/ThirdPart/UI Toolkit/UnityThemes/UnityDefaultRuntimeTheme.tss.meta b/Assets/ThirdPart/UI Toolkit/UnityThemes/UnityDefaultRuntimeTheme.tss.meta new file mode 100644 index 0000000..328db32 --- /dev/null +++ b/Assets/ThirdPart/UI Toolkit/UnityThemes/UnityDefaultRuntimeTheme.tss.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 967f2d6279a3ca9478e9b28ab8de8eb8 +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12388, guid: 0000000000000000e000000000000000, type: 0} + disableValidation: 0 diff --git a/Assets/ThirdPart/UIToolKitFile.meta b/Assets/ThirdPart/UIToolKitFile.meta new file mode 100644 index 0000000..e41cf70 --- /dev/null +++ b/Assets/ThirdPart/UIToolKitFile.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f364c5dfb64761a44b0e3c1d9c09b85f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ThirdPart/UIToolKitFile/Editor.meta b/Assets/ThirdPart/UIToolKitFile/Editor.meta new file mode 100644 index 0000000..4900f74 --- /dev/null +++ b/Assets/ThirdPart/UIToolKitFile/Editor.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d9bddd5bb91de864cb92e214f08e49f7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/ThirdPart/UIToolKitFile/Editor/AutoGenerate.cs b/Assets/ThirdPart/UIToolKitFile/Editor/AutoGenerate.cs new file mode 100644 index 0000000..b32c179 --- /dev/null +++ b/Assets/ThirdPart/UIToolKitFile/Editor/AutoGenerate.cs @@ -0,0 +1,205 @@ +using System.Collections; +using System.Collections.Generic; +using System.IO; +using DG.Tweening; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.UIElements; +using System.Reflection; +using System; +using System.Linq; + +public class AutoGenerate : EditorWindow +{ + private VisualElement rootElement; + private Button generateBtn; + private Label hintText; + private TextField nameInput; + private string scenePath; + private string scriptPath; + private string prefabPath; + + [MenuItem("Window/Generate Editor Window")] + public static void ShowExample() + { + AutoGenerate wnd = GetWindow(); + wnd.titleContent = new GUIContent("Auto Generate UI Window"); + } + + public void CreateGUI() + { + // scenePath = Application.dataPath + "/TestUIPanelScenes"; + // scriptPath = Application.dataPath + "/Scripts/Project/UI/UI_Panel"; + // prefabPath = Application.dataPath + "/Resources/UI/UI_Panel"; + scenePath = ""; + scriptPath = "Assets/Test2"; + prefabPath = "Assets/Resources/UI/UI_Panel"; + // scenePath = "Assets/TestUIPanelScenes"; + // scriptPath = "Assets/Scripts/Project/UI/UI_Panel"; + // prefabPath = "Assets/Resources/UI/UI_Panel"; + // string xmlPath = Path.Combine(Application.dataPath, "ThridPart", "UIToolKitFile", "UDoc", "UXml", "AutoGenerateUI.uxml"); + // string xmlPath = "Assets/UIToolKitFile/UDoc/UXml/AutoGenerateUI.uxml"; + + var visualTree = + AssetDatabase.LoadAssetAtPath("Assets/ThirdPart/UIToolKitFile/UDoc/UXml/AutoGenerateUI.uxml"); + rootElement = visualTree.CloneTree(); + rootVisualElement.Add(rootElement); + generateBtn = rootElement.Q