升级XR插件版本

This commit is contained in:
Sora丶kong
2026-03-02 17:56:21 +08:00
parent 8962657674
commit 60f512a9bc
1317 changed files with 110305 additions and 48249 deletions

View File

@@ -0,0 +1,79 @@
using System;
using MCPForUnity.Editor.Constants;
using UnityEditor;
using UnityEditor.UIElements;
using UnityEngine;
using UnityEngine.UIElements;
namespace MCPForUnity.Editor.Windows.Components.Validation
{
/// <summary>
/// Controller for the Script Validation section.
/// Handles script validation level settings.
/// </summary>
public class McpValidationSection
{
// UI Elements
private EnumField validationLevelField;
private Label validationDescription;
// Data
private ValidationLevel currentValidationLevel = ValidationLevel.Standard;
// Validation levels
public enum ValidationLevel
{
Basic,
Standard,
Comprehensive,
Strict
}
public VisualElement Root { get; private set; }
public McpValidationSection(VisualElement root)
{
Root = root;
CacheUIElements();
InitializeUI();
RegisterCallbacks();
}
private void CacheUIElements()
{
validationLevelField = Root.Q<EnumField>("validation-level");
validationDescription = Root.Q<Label>("validation-description");
}
private void InitializeUI()
{
validationLevelField.Init(ValidationLevel.Standard);
int savedLevel = EditorPrefs.GetInt(EditorPrefKeys.ValidationLevel, 1);
currentValidationLevel = (ValidationLevel)Mathf.Clamp(savedLevel, 0, 3);
validationLevelField.value = currentValidationLevel;
UpdateValidationDescription();
}
private void RegisterCallbacks()
{
validationLevelField.RegisterValueChangedCallback(evt =>
{
currentValidationLevel = (ValidationLevel)evt.newValue;
EditorPrefs.SetInt(EditorPrefKeys.ValidationLevel, (int)currentValidationLevel);
UpdateValidationDescription();
});
}
private void UpdateValidationDescription()
{
validationDescription.text = currentValidationLevel switch
{
ValidationLevel.Basic => "Basic: Validates syntax only. Fast compilation checks.",
ValidationLevel.Standard => "Standard (Recommended): Checks syntax + common errors. Balanced speed and coverage.",
ValidationLevel.Comprehensive => "Comprehensive: Detailed validation including code quality. Slower but thorough.",
ValidationLevel.Strict => "Strict: Maximum validation + warnings as errors. Slowest but catches all issues.",
_ => "Unknown validation level"
};
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c65b5fd2ed3efbf469bbc0a089f845e3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,13 @@
<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" editor-extension-mode="True">
<Style src="../Common.uss" />
<ui:VisualElement name="validation-section" class="section">
<ui:Label text="Script Validation" class="section-title" />
<ui:VisualElement class="section-content">
<ui:VisualElement class="setting-column">
<ui:Label text="Validation Level:" class="setting-label" />
<uie:EnumField name="validation-level" class="setting-dropdown" />
<ui:Label name="validation-description" class="validation-description" />
</ui:VisualElement>
</ui:VisualElement>
</ui:VisualElement>
</ui:UXML>

View File

@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 3f682815a83bb6841ac61f7f399d903c
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0}