PO/Library/Artifacts/54/54f095585f81aeac7edee8cfe7f...

384 lines
16 KiB
Plaintext
Raw Normal View History

2022-01-12 10:06:03 +03:00
<0F>>`2019.4.19f1<00><><EFBFBD><EFBFBD> <00><>f<EFBFBD><66>!<21>5<>9<EFBFBD>4Q<0E><>B<00>7<00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><><00> E<00> <00><00>#<00>.<00>,<00>5a<00> <00><00>#<00>.<00>,<00><00><00>r<00> <00><00># <00>.<00>,
<00>H<00><><00><><EFBFBD><EFBFBD><EFBFBD> <01>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD> @<00><00><00> Q<00>j<00><00><00>J<00><><EFBFBD><EFBFBD><00>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><00><00>j<00><><EFBFBD><EFBFBD><EFBFBD><00>\<00><00><><EFBFBD><EFBFBD><EFBFBD><00>H<00>r<00><><EFBFBD><EFBFBD><00>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>@<00><00><00>Q<00>j<00>H<00>w<00><><EFBFBD><EFBFBD><00>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>@<00><00><00>Q<00>j<00>H<00><><00><><EFBFBD><EFBFBD><00>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>@<00><00><00>Q<00>j<00>y<00>
<00> <00><00>#!<00>.<00>,"<00><00><><00><><EFBFBD><EFBFBD>#@1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>$<00><00><00>%.<00>j<00>&<00><00><><00><><EFBFBD><EFBFBD>'<00>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>(<00><00><00><00>)<00>j<00><><EFBFBD><EFBFBD><EFBFBD>*<00>H<00><><00><><EFBFBD><EFBFBD><EFBFBD>+<00>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>,@<00><00><00>-Q<00>j<00>.y<00>
<00> /<00><00>#0<00>.<00>,1<00> <00><>2@<00><00><> 3@<00><00>#4<00>.<00>,5<00>H<00><><00><><EFBFBD><EFBFBD>6<01>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>7@<00><00><00>8Q<00>j<00>9H<00><><00><><EFBFBD><EFBFBD>:<01>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>;@<00><00><00><Q<00>j<00>=H<00><><00><><EFBFBD><EFBFBD>><01>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>?@<00><00><00>@Q<00>j<00>AMonoImporterPPtr<EditorExtension>m_FileIDm_PathIDPPtr<PrefabInstance>m_ExternalObjectsSourceAssetIdentifiertypeassemblynamem_UsedFileIDsm_DefaultReferencesexecutionOrdericonm_UserDatam_AssetBundleNamem_AssetBundleVariants<00><><EFBFBD>G<EFBFBD><47>܏Z56<35>:!@i<>J*<00><00>7<00><><EFBFBD><EFBFBD><EFBFBD><00><00><00><><00>E<00> <00><00><00>.<00><00>(a<00> <00><00><00>.<00><00><00><00>r<00> <00><00> <00>.<00>
<00>H<00><><00><><EFBFBD><EFBFBD><EFBFBD> <01>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD> @<00><00><00> Q<00>j<00>H<00><><00><><EFBFBD><EFBFBD><EFBFBD><01>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>@<00><00><00>Q<00>j<00><00><00>=<00><><EFBFBD><EFBFBD><01>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD><01><00><00><00><00>j<00><><EFBFBD><EFBFBD><EFBFBD><01>H<00><><00><><EFBFBD><EFBFBD><EFBFBD><01>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>@<00><00><00>Q<00>j<00>y<00>
<00> <00><00><00>.<00><00>y<00>Q <00><00><00>.<00> <00><00><00>X!H<00>i<00><><EFBFBD><EFBFBD>"<10>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>#@<00><00><00>$Q<00>j<00>%H<00>u<00><><EFBFBD><EFBFBD>&<10>1<00>1<00><><EFBFBD><EFBFBD><EFBFBD>'@<00><00><00>(Q<00>j<00>)PPtr<EditorExtension>m_FileIDm_PathIDPPtr<PrefabInstance>m_DefaultReferencesm_Iconm_ExecutionOrderm_ClassNamem_Namespace\<00>y<EFBFBD>`.<00>y<EFBFBD>Images<00>-using System.IO;
using System.Reflection;
using UnityEditor;
using UnityEngine;
using Codice.LogWrapper;
using PlasticGui.Help;
using Unity.PlasticSCM.Editor.AssetUtils;
namespace Unity.PlasticSCM.Editor.UI
{
internal class Images
{
internal enum Name
{
None,
IconPlastic,
IconCloseButton,
IconPressedCloseButton,
IconAdded,
IconDeleted,
IconChanged,
IconMoved,
IconMergeLink,
Ignored,
IconMergeConflict,
IconMerged,
IconFsChanged,
IconMergeCategory,
XLink,
Ok,
NotOnDisk,
IconRepository,
IconPlasticView,
IconPlasticViewNotify,
Loading,
IconEmptyGravatar,
Step1,
Step2,
Step3,
StepOk,
ButtonSsoSignInUnity,
ButtonSsoSignInEmail,
ButtonSsoSignInGoogle,
}
internal static Texture2D GetHelpImage(HelpImage image)
{
// We use the dark version for both the light/dark skins since it matches the grey background better
string helpImageFileName = string.Format(
"d_{0}.png",
HelpImageName.FromHelpImage(image));
string imageRelativePath = GetImageFileRelativePath(helpImageFileName);
Texture2D result = TryLoadImage(imageRelativePath, imageRelativePath);
if (result != null)
return result;
mLog.WarnFormat("Image not found: {0}", helpImageFileName);
return GetEmptyImage();
}
internal static Texture2D GetImage(Name image)
{
string imageFileName = image.ToString().ToLower() + ".png";
string imageFileName2x = image.ToString().ToLower() + "@2x.png";
string darkImageFileName = string.Format("d_{0}", imageFileName);
string darkImageFileName2x = string.Format("d_{0}", imageFileName2x);
string imageFileRelativePath = GetImageFileRelativePath(imageFileName);
string imageFileRelativePath2x = GetImageFileRelativePath(imageFileName);
string darkImageFileRelativePath = GetImageFileRelativePath(darkImageFileName);
string darkImageFileRelativePath2x = GetImageFileRelativePath(darkImageFileName2x);
Texture2D result = null;
if (EditorGUIUtility.isProSkin)
result = TryLoadImage(darkImageFileRelativePath, darkImageFileRelativePath2x);
if (result != null)
return result;
result = TryLoadImage(imageFileRelativePath, imageFileRelativePath2x);
if (result != null)
return result;
mLog.WarnFormat("Image not found: {0}", imageFileName);
return GetEmptyImage();
}
internal static Texture GetFileIcon(string path)
{
string relativePath = GetRelativePath.ToApplication(path);
return GetFileIconFromRelativePath(relativePath);
}
internal static Texture GetFileIconFromCmPath(string path)
{
return GetFileIconFromRelativePath(
path.Substring(1).Replace("/",
Path.DirectorySeparatorChar.ToString()));
}
internal static Texture GetDropDownIcon()
{
if (mPopupIcon == null)
mPopupIcon = EditorGUIUtility.IconContent("icon dropdown").image;
return mPopupIcon;
}
internal static Texture GetDirectoryIcon()
{
if (mDirectoryIcon == null)
mDirectoryIcon = EditorGUIUtility.IconContent("Folder Icon").image;
return mDirectoryIcon;
}
internal static Texture GetPrivatedOverlayIcon()
{
if (mPrivatedOverlayIcon == null)
mPrivatedOverlayIcon = EditorGUIUtility.IconContent("P4_Local").image;
return mPrivatedOverlayIcon;
}
internal static Texture GetAddedOverlayIcon()
{
if (mAddedOverlayIcon == null)
mAddedOverlayIcon = EditorGUIUtility.IconContent("P4_AddedLocal").image;
return mAddedOverlayIcon;
}
internal static Texture GetDeletedOverlayIcon()
{
if (mDeletedOverlayIcon == null)
mDeletedOverlayIcon = EditorGUIUtility.IconContent("P4_DeletedLocal").image;
return mDeletedOverlayIcon;
}
internal static Texture GetCheckedOutOverlayIcon()
{
if (mCheckedOutOverlayIcon == null)
mCheckedOutOverlayIcon = EditorGUIUtility.IconContent("P4_CheckOutLocal").image;
return mCheckedOutOverlayIcon;
}
internal static Texture GetDeletedRemoteOverlayIcon()
{
if (mDeletedRemoteOverlayIcon == null)
mDeletedRemoteOverlayIcon = EditorGUIUtility.IconContent("P4_DeletedRemote").image;
return mDeletedRemoteOverlayIcon;
}
internal static Texture GetOutOfSyncOverlayIcon()
{
if (mOutOfSyncOverlayIcon == null)
mOutOfSyncOverlayIcon = EditorGUIUtility.IconContent("P4_OutOfSync").image;
return mOutOfSyncOverlayIcon;
}
internal static Texture GetConflictedOverlayIcon()
{
if (mConflictedOverlayIcon == null)
mConflictedOverlayIcon = EditorGUIUtility.IconContent("P4_Conflicted").image;
return mConflictedOverlayIcon;
}
internal static Texture GetLockedLocalOverlayIcon()
{
if (mLockedLocalOverlayIcon == null)
mLockedLocalOverlayIcon = EditorGUIUtility.IconContent("P4_LockedLocal").image;
return mLockedLocalOverlayIcon;
}
internal static Texture GetLockedRemoteOverlayIcon()
{
if (mLockedRemoteOverlayIcon == null)
mLockedRemoteOverlayIcon = EditorGUIUtility.IconContent("P4_LockedRemote").image;
return mLockedRemoteOverlayIcon;
}
internal static Texture GetWarnIcon()
{
if (mWarnIcon == null)
mWarnIcon = EditorGUIUtility.IconContent("console.warnicon.sml").image;
return mWarnIcon;
}
internal static Texture GetInfoIcon()
{
if (mInfoIcon == null)
mInfoIcon = EditorGUIUtility.IconContent("console.infoicon.sml").image;
return mInfoIcon;
}
internal static Texture GetErrorDialogIcon()
{
if (mErrorDialogIcon == null)
mErrorDialogIcon = EditorGUIUtility.IconContent("console.erroricon").image;
return mErrorDialogIcon;
}
internal static Texture GetWarnDialogIcon()
{
if (mWarnDialogIcon == null)
mWarnDialogIcon = EditorGUIUtility.IconContent("console.warnicon").image;
return mWarnDialogIcon;
}
internal static Texture GetInfoDialogIcon()
{
if (mInfoDialogIcon == null)
mInfoDialogIcon = EditorGUIUtility.IconContent("console.infoicon").image;
return mInfoDialogIcon;
}
internal static Texture GetRefreshIcon()
{
if (mRefreshIcon == null)
mRefreshIcon = EditorGUIUtility.FindTexture("Refresh");
return mRefreshIcon;
}
internal static Texture GetCloseIcon()
{
if (mCloseIcon == null)
mCloseIcon = EditorGUIUtility.FindTexture("winbtn_win_close");
return mCloseIcon;
}
internal static Texture GetClickedCloseIcon()
{
if (mClickedCloseIcon == null)
mClickedCloseIcon = EditorGUIUtility.FindTexture("winbtn_win_close_a");
return mClickedCloseIcon;
}
internal static Texture GetHoveredCloseIcon()
{
if (mHoveredCloseIcon == null)
mHoveredCloseIcon = EditorGUIUtility.FindTexture("winbtn_win_close_h");
return mHoveredCloseIcon;
}
internal static Texture GetFileIcon()
{
if (mFileIcon == null)
mFileIcon = EditorGUIUtility.FindTexture("DefaultAsset Icon");
if (mFileIcon == null)
mFileIcon = AssetPreview.GetMiniTypeThumbnail(typeof(DefaultAsset));
if (mFileIcon == null)
mFileIcon = GetEmptyImage();
return mFileIcon;
}
internal static Texture2D GetLinkUnderlineImage()
{
if (mLinkUnderlineImage == null)
{
mLinkUnderlineImage = new Texture2D(1, 1);
mLinkUnderlineImage.SetPixel(0, 0, UnityStyles.Colors.Link);
mLinkUnderlineImage.Apply();
}
return mLinkUnderlineImage;
}
static Texture2D GetEmptyImage()
{
if (mEmptyImage == null)
{
mEmptyImage = new Texture2D(1, 1);
mEmptyImage.SetPixel(0, 0, Color.clear);
mEmptyImage.Apply();
}
return mEmptyImage;
}
static Texture GetFileIconFromRelativePath(string relativePath)
{
Texture result = AssetDatabase.GetCachedIcon(relativePath);
if (result == null)
return GetFileIcon();
return result;
}
static string GetImageFileRelativePath(string imageFileName)
{
return Path.Combine(
AssetsPath.GetImagesFolderRelativePath(),
imageFileName);
}
static Texture2D TryLoadImage(string imageFileRelativePath, string image2xFilePath)
{
if (EditorGUIUtility.pixelsPerPoint > 1f && File.Exists(image2xFilePath))
return LoadTextureFromFile(image2xFilePath);
if (File.Exists(Path.GetFullPath(imageFileRelativePath)))
return LoadTextureFromFile(imageFileRelativePath);
return null;
}
static Texture2D LoadTextureFromFile(string path)
{
byte[] fileData = File.ReadAllBytes(path);
Texture2D result = new Texture2D(1, 1);
result.LoadImage(fileData); //auto-resizes the texture dimensions
return result;
}
static Texture mFileIcon;
static Texture mDirectoryIcon;
static Texture mPrivatedOverlayIcon;
static Texture mAddedOverlayIcon;
static Texture mDeletedOverlayIcon;
static Texture mCheckedOutOverlayIcon;
static Texture mDeletedRemoteOverlayIcon;
static Texture mOutOfSyncOverlayIcon;
static Texture mConflictedOverlayIcon;
static Texture mLockedLocalOverlayIcon;
static Texture mLockedRemoteOverlayIcon;
static Texture mWarnIcon;
static Texture mInfoIcon;
static Texture mErrorDialogIcon;
static Texture mWarnDialogIcon;
static Texture mInfoDialogIcon;
static Texture mRefreshIcon;
static Texture mCloseIcon;
static Texture mClickedCloseIcon;
static Texture mHoveredCloseIcon;
static Texture2D mLinkUnderlineImage;
static Texture2D mEmptyImage;
static Texture mPopupIcon;
static readonly ILog mLog = LogManager.GetLogger("Images");
}
}ImagesUnity.PlasticSCM.Editor.UI