playtest-unity/playtest/Library/PackageCache/com.unity.collab-proxy@2.0.4/Editor/PlasticSCM/UI/DrawTextBlockWithEndLink.cs

42 lines
1.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using UnityEditor;
using UnityEngine;
namespace Unity.PlasticSCM.Editor.UI
{
internal static class DrawTextBlockWithEndLink
{
internal static void For(
string url,
string formattedExplanation,
GUIStyle textblockStyle)
{
string explanation = string.Format(
formattedExplanation, "");
GUILayout.Label(explanation, textblockStyle);
if (explanation == formattedExplanation)
return;
string coloredUrl = string.Format(
"<color=\"{0}\">{1}</color>",
UnityStyles.HexColors.LINK_COLOR,
url);
float linkWidth =
textblockStyle.CalcSize(new GUIContent(url)).x;
if (GUILayout.Button(coloredUrl, textblockStyle, GUILayout.Width(linkWidth)))
Application.OpenURL(url);
EditorGUIUtility.AddCursorRect(
GUILayoutUtility.GetLastRect(), MouseCursor.Link);
}
}
}