From 4e7c44f5ff91bd9102acc3242dc11c30dfda2d36 Mon Sep 17 00:00:00 2001 From: ZQY Date: Tue, 5 Nov 2024 23:35:57 +0800 Subject: [PATCH] feat: message details tab --- Documents~/imgs/img_sample_message_viewer.png | Bin 49742 -> 51564 bytes Editor/MessageBanner.cs | 6 +-- Editor/MessageDetailsElement.cs | 42 +++++++++++++++--- Editor/MessageElement.cs | 22 ++++----- Editor/MessageViewer.cs | 12 ++--- Runtime/Message.cs | 40 ++++++++--------- Runtime/MessageUtility.cs | 6 +-- 7 files changed, 80 insertions(+), 48 deletions(-) diff --git a/Documents~/imgs/img_sample_message_viewer.png b/Documents~/imgs/img_sample_message_viewer.png index 88e0d939ef66c39d89bcbc82c5119f4fd1ff1fa3..70be02752870189fa10af8937635ab09760c67a2 100644 GIT binary patch literal 51564 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 literal 49742 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 diff --git a/Editor/MessageBanner.cs b/Editor/MessageBanner.cs index ecf400f..93fdf28 100644 --- a/Editor/MessageBanner.cs +++ b/Editor/MessageBanner.cs @@ -190,9 +190,9 @@ public void Refresh() private void SetMessage(Message message) { - TypeImage.image = message != null ? EditorMessageUtility.GetMessageTypeIcon(message.Type) : null; - ContentLabel.text = message?.Content; - ContentLabel.tooltip = message?.Content; + TypeImage.image = message != null ? EditorMessageUtility.GetMessageTypeIcon(message.type) : null; + ContentLabel.text = message?.content; + ContentLabel.tooltip = message?.content; } private void SetMessageCount(MessageType messageType, int count) diff --git a/Editor/MessageDetailsElement.cs b/Editor/MessageDetailsElement.cs index cb4e62d..6ee8f6d 100644 --- a/Editor/MessageDetailsElement.cs +++ b/Editor/MessageDetailsElement.cs @@ -1,4 +1,6 @@ -锘縰sing UnityEngine.UIElements; +锘縰sing System; +using UnityEditor.VersionControl; +using UnityEngine.UIElements; namespace GBG.EditorMessages.Editor { @@ -8,7 +10,8 @@ public class MessageDetailsElement : VisualElement private readonly MessageDetailsTabElement _messageTab; private readonly MessageDetailsTabElement _contextTab; private readonly MessageDetailsTabElement _customDataTab; - private readonly Label _detailsLabel; + private readonly Label _contentLabel; + private Message _message; public MessageDetailsElement() @@ -69,7 +72,7 @@ public MessageDetailsElement() detailsContainer.Add(detailsScrollView); // Message Details Label - _detailsLabel = new Label + _contentLabel = new Label { enableRichText = true, selection = { isSelectable = true, }, @@ -79,19 +82,44 @@ public MessageDetailsElement() whiteSpace = WhiteSpace.Normal, } }; - detailsScrollView.Add(_detailsLabel); + detailsScrollView.Add(_contentLabel); #endregion } public void SetMessage(Message message) { - _detailsLabel.text = message?.Content; + _message = message; + + MessageType messageType = message?.type ?? MessageType.Info; + switch (messageType) + { + case MessageType.Info: + _messageTab.Icon.image = EditorMessageUtility.GetInfoIcon(); + break; + case MessageType.Warning: + _messageTab.Icon.image = EditorMessageUtility.GetWarningIcon(); + break; + case MessageType.Error: + _messageTab.Icon.image = EditorMessageUtility.GetErrorIcon(); + break; + default: + throw new ArgumentOutOfRangeException(nameof(messageType), messageType, null); + } + + _contextTab.style.display = string.IsNullOrEmpty(message?.context) + ? DisplayStyle.None : DisplayStyle.Flex; + _customDataTab.style.display = string.IsNullOrEmpty(message?.customData) + ? DisplayStyle.None : DisplayStyle.Flex; + + OnClickMessageTab(); } private void OnClickMessageTab() { + _contentLabel.text = _message?.content; + _messageTab.style.backgroundColor = EditorMessageUtility.ActiveColor; _contextTab.style.backgroundColor = EditorMessageUtility.InactiveColor; _customDataTab.style.backgroundColor = EditorMessageUtility.InactiveColor; @@ -99,6 +127,8 @@ private void OnClickMessageTab() private void OnClickContextTab() { + _contentLabel.text = _message?.context; + _messageTab.style.backgroundColor = EditorMessageUtility.InactiveColor; _contextTab.style.backgroundColor = EditorMessageUtility.ActiveColor; _customDataTab.style.backgroundColor = EditorMessageUtility.InactiveColor; @@ -106,6 +136,8 @@ private void OnClickContextTab() private void OnClickCustomDataTab() { + _contentLabel.text = _message?.customData; + _messageTab.style.backgroundColor = EditorMessageUtility.InactiveColor; _contextTab.style.backgroundColor = EditorMessageUtility.InactiveColor; _customDataTab.style.backgroundColor = EditorMessageUtility.ActiveColor; diff --git a/Editor/MessageElement.cs b/Editor/MessageElement.cs index cd89720..d63cb21 100644 --- a/Editor/MessageElement.cs +++ b/Editor/MessageElement.cs @@ -138,8 +138,8 @@ public void SetMessage(Message message, int lineNumber, int lineNumberLabelWidth Message = message; LineNumber = lineNumber; LineNumberLabelWidth = lineNumberLabelWidth; - TypeImage.image = EditorMessageUtility.GetMessageTypeIcon(message.Type); - ContentLabel.text = message.Content; + TypeImage.image = EditorMessageUtility.GetMessageTypeIcon(message.type); + ContentLabel.text = message.content; UpdateLineNumberLabel(); UpdateTimestampLabel(); @@ -169,14 +169,14 @@ private void UpdateTimestampLabel() return; } - TimestampLabel.text = new DateTime(Message.Timestamp).ToString(CultureInfo.CurrentCulture); + TimestampLabel.text = new DateTime(Message.timestamp).ToString(CultureInfo.CurrentCulture); TimestampLabel.style.display = DisplayStyle.Flex; TimestampSeparatorLabel.style.display = DisplayStyle.Flex; } private void UpdateContextImage() { - if (string.IsNullOrEmpty(Message.Context)) + if (string.IsNullOrEmpty(Message.context)) { ContextImage.style.display = DisplayStyle.None; return; @@ -188,7 +188,7 @@ private void UpdateContextImage() private void UpdateCustomDataImage() { - if (string.IsNullOrEmpty(Message.CustomData)) + if (string.IsNullOrEmpty(Message.customData)) { CustomDataImage.style.display = DisplayStyle.None; return; @@ -208,7 +208,7 @@ private void OnClick(ClickEvent evt) EditorGUIUtility.PingObject(context); } } - else if (evt.clickCount == 2 && !string.IsNullOrEmpty(Message?.CustomData)) + else if (evt.clickCount == 2 && !string.IsNullOrEmpty(Message?.customData)) { if (WantsToProcessCustomData != null) { @@ -226,18 +226,18 @@ private void OnContextClick(ContextClickEvent evt) GenericMenu menu = new GenericMenu(); // Copy Content - menu.AddItem(new GUIContent("Copy Content"), false, () => EditorGUIUtility.systemCopyBuffer = Message.Content); + menu.AddItem(new GUIContent("Copy Content"), false, () => EditorGUIUtility.systemCopyBuffer = Message.content); // Copy Context - if (!string.IsNullOrEmpty(Message.Context)) + if (!string.IsNullOrEmpty(Message.context)) { - menu.AddItem(new GUIContent("Copy Context"), false, () => EditorGUIUtility.systemCopyBuffer = Message.Context); + menu.AddItem(new GUIContent("Copy Context"), false, () => EditorGUIUtility.systemCopyBuffer = Message.context); } // Copy Custom Data - if (!string.IsNullOrEmpty(Message.CustomData)) + if (!string.IsNullOrEmpty(Message.customData)) { - menu.AddItem(new GUIContent("Copy Custom Data"), false, () => EditorGUIUtility.systemCopyBuffer = Message.CustomData); + menu.AddItem(new GUIContent("Copy Custom Data"), false, () => EditorGUIUtility.systemCopyBuffer = Message.customData); } menu.ShowAsContext(); diff --git a/Editor/MessageViewer.cs b/Editor/MessageViewer.cs index 4fa8fab..d51cb84 100644 --- a/Editor/MessageViewer.cs +++ b/Editor/MessageViewer.cs @@ -436,7 +436,7 @@ private void FilterMessages() private bool TestMessageType(Message message) { - switch (message.Type) + switch (message.type) { case MessageType.Info: return _showInfoMessages; @@ -448,7 +448,7 @@ private bool TestMessageType(Message message) return _showErrorMessage; default: - throw new ArgumentOutOfRangeException(nameof(message.Type), message.Type, null); + throw new ArgumentOutOfRangeException(nameof(message.type), message.type, null); } } @@ -457,7 +457,7 @@ private bool TestMessageTag(Message message) { return string.IsNullOrWhiteSpace(_selectedTag) || string.Equals(_selectedTag, TagAll, StringComparison.OrdinalIgnoreCase) || - string.Equals(_selectedTag, message.Tag, StringComparison.OrdinalIgnoreCase); + string.Equals(_selectedTag, message.tag, StringComparison.OrdinalIgnoreCase); } private bool TestMessageSearchPattern(Message message) @@ -468,7 +468,7 @@ private bool TestMessageSearchPattern(Message message) return true; } - if (string.IsNullOrEmpty(message.Content)) + if (string.IsNullOrEmpty(message.content)) { return false; } @@ -477,7 +477,7 @@ private bool TestMessageSearchPattern(Message message) { try { - return Regex.IsMatch(message.Content, _searchPattern, RegexOptions.IgnoreCase); + return Regex.IsMatch(message.content, _searchPattern, RegexOptions.IgnoreCase); } catch (Exception ex) { @@ -487,7 +487,7 @@ private bool TestMessageSearchPattern(Message message) } } - return message.Content.Contains(_searchPattern, StringComparison.OrdinalIgnoreCase); + return message.content.Contains(_searchPattern, StringComparison.OrdinalIgnoreCase); } private void TryClose() diff --git a/Runtime/Message.cs b/Runtime/Message.cs index 2ec19cb..80ce243 100644 --- a/Runtime/Message.cs +++ b/Runtime/Message.cs @@ -34,29 +34,29 @@ public static Message Error(string content, string tag = null, object context = } - public MessageType Type; - public long Timestamp; - public string Content; // -> Message - public string Tag; - public string Context; - public string CustomData; + public MessageType type; + public long timestamp; + public string content; + public string tag; + public string context; + public string customData; public Message(MessageType type, long timestamp, string content, string tag, object context, string customData = null) { - Type = type; - Timestamp = timestamp; - Content = content; - Tag = tag; - CustomData = customData; + this.type = type; + this.timestamp = timestamp; + this.content = content; + this.tag = tag; + this.customData = customData; InitializeContextFromObject(context); } public override string ToString() { - string text = $"{new DateTime(Timestamp)} {Type} [{Tag}] | {Content}"; + string text = $"{new DateTime(timestamp)} {type} [{tag}] | {content}"; - if (!string.IsNullOrEmpty(Context)) + if (!string.IsNullOrEmpty(context)) { UObject unityContextObject = GetUnityContextObject(); if (unityContextObject) @@ -65,13 +65,13 @@ public override string ToString() } else { - text = $"{text} | {Context}"; + text = $"{text} | {context}"; } } - if (!string.IsNullOrEmpty(CustomData)) + if (!string.IsNullOrEmpty(customData)) { - text = $"{text} | {CustomData}"; + text = $"{text} | {customData}"; } return text; @@ -98,12 +98,12 @@ private void InitializeContextFromObject(object context) if (_contextObjectCache) { GlobalObjectId globalObjId = GlobalObjectId.GetGlobalObjectIdSlow(_contextObjectCache); - Context = globalObjId.ToString(); + this.context = globalObjId.ToString(); return; } #endif - Context = context.ToString(); + this.context = context.ToString(); } public UObject GetUnityContextObject() @@ -119,7 +119,7 @@ public UObject GetUnityContextObject() return null; } - if (!string.IsNullOrWhiteSpace(Context) && GlobalObjectId.TryParse(Context, out GlobalObjectId globalObjectId)) + if (!string.IsNullOrWhiteSpace(context) && GlobalObjectId.TryParse(context, out GlobalObjectId globalObjectId)) { _contextObjectCache = GlobalObjectId.GlobalObjectIdentifierToObjectSlow(globalObjectId); //_contextIsNotUnityObject = !_contextObjectCache; // 若目标是Scene中的对象且Scene未打开,也会返回null,但这时不能认定目标不是UnityObject @@ -140,7 +140,7 @@ public string GetContextDisplayText() return unityObject.ToString(); } - return Context; + return context; } #endregion diff --git a/Runtime/MessageUtility.cs b/Runtime/MessageUtility.cs index 45b3077..fa0fb98 100644 --- a/Runtime/MessageUtility.cs +++ b/Runtime/MessageUtility.cs @@ -16,7 +16,7 @@ public static bool CountByType(this IEnumerable messages, foreach (Message message in messages) { - switch (message.Type) + switch (message.type) { case MessageType.Info: infoCount++; @@ -28,7 +28,7 @@ public static bool CountByType(this IEnumerable messages, errorCount++; break; default: - throw new ArgumentOutOfRangeException(nameof(message.Type), message.Type, null); + throw new ArgumentOutOfRangeException(nameof(message.type), message.type, null); } } @@ -45,7 +45,7 @@ public static HashSet CollectTags(this IEnumerable messages) HashSet tags = new HashSet(); foreach (Message message in messages) { - string tag = message.Tag ?? string.Empty; + string tag = message.tag ?? string.Empty; tags.Add(tag); }