123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- using UnityEngine;
-
- using Codice.Client.BaseCommands;
- using Codice.Client.Commands;
- using Codice.CM.Common;
- using Codice.ThemeImages;
- using PlasticGui.WorkspaceWindow.Merge;
- using PlasticGui.WorkspaceWindow.PendingChanges;
- using Unity.PlasticSCM.Editor.AssetsOverlays;
-
- using GluonIncomingChangeInfo = PlasticGui.Gluon.WorkspaceWindow.Views.IncomingChanges.IncomingChangeInfo;
- using GluonIncomingChangeCategory = PlasticGui.Gluon.WorkspaceWindow.Views.IncomingChanges.IncomingChangeCategory;
-
- namespace Unity.PlasticSCM.Editor.UI.Tree
- {
- static class GetChangesOverlayIcon
- {
- internal static Texture ForPlasticIncomingChange(
- MergeChangeInfo incomingChange,
- bool isSolvedConflict)
- {
- if (incomingChange.CategoryType == MergeChangesCategory.Type.FileConflicts ||
- incomingChange.CategoryType == MergeChangesCategory.Type.DirectoryConflicts)
- return ForConflict(isSolvedConflict);
-
- if (incomingChange.IsXLink())
- return ForXLink();
-
- if (incomingChange.CategoryType == MergeChangesCategory.Type.Deleted)
- return ForDeletedOnServer();
-
- if (incomingChange.CategoryType == MergeChangesCategory.Type.Changed)
- return ForOutOfDate();
-
- if (incomingChange.CategoryType == MergeChangesCategory.Type.Added)
- return ForAdded();
-
- return null;
- }
-
- internal static Texture ForGluonIncomingChange(
- GluonIncomingChangeInfo incomingChange,
- bool isSolvedConflict)
- {
- if (incomingChange.CategoryType == GluonIncomingChangeCategory.Type.Conflicted)
- return ForConflict(isSolvedConflict);
-
- if (incomingChange.IsXLink())
- return ForXLink();
-
- if (incomingChange.CategoryType == GluonIncomingChangeCategory.Type.Deleted)
- return ForDeletedOnServer();
-
- if (incomingChange.CategoryType == GluonIncomingChangeCategory.Type.Changed)
- return ForOutOfDate();
-
- if (incomingChange.CategoryType == GluonIncomingChangeCategory.Type.Added)
- return ForAdded();
-
- return null;
- }
-
- internal static Texture ForPendingChange(
- ChangeInfo changeInfo,
- bool isConflict)
- {
- if (isConflict)
- return ForConflicted();
-
- ItemIconImageType type = ChangeInfoView.
- GetIconImageType(changeInfo);
-
- if (ChangeTypesOperator.AreAllSet(
- changeInfo.ChangeTypes, ChangeTypes.Added))
- return ForAdded();
-
- if (type.HasFlag(ItemIconImageType.Ignored))
- return ForIgnored();
-
- if (type.HasFlag(ItemIconImageType.Deleted))
- return ForDeleted();
-
- if (type.HasFlag(ItemIconImageType.CheckedOut))
- return ForCheckedOut();
-
- if (type.HasFlag(ItemIconImageType.Private))
- return ForPrivated();
-
- return null;
- }
-
- static Texture ForConflict(bool isResolved)
- {
- if (isResolved)
- return ForConflictResolved();
-
- return ForConflicted();
- }
-
- static Texture ForXLink()
- {
- return Images.GetImage(Images.Name.XLink);
- }
-
- static Texture ForIgnored()
- {
- return Images.GetIgnoredOverlayIcon();
- }
-
- static Texture ForPrivated()
- {
- return Images.GetPrivatedOverlayIcon();
- }
-
- static Texture ForAdded()
- {
- return Images.GetAddedOverlayIcon();
- }
-
- static Texture ForDeleted()
- {
- return Images.GetDeletedLocalOverlayIcon();
- }
-
- static Texture ForCheckedOut()
- {
- return Images.GetCheckedOutOverlayIcon();
- }
-
- static Texture ForDeletedOnServer()
- {
- return Images.GetDeletedRemoteOverlayIcon();
- }
-
- static Texture ForOutOfDate()
- {
- return Images.GetOutOfSyncOverlayIcon();
- }
-
- static Texture ForConflicted()
- {
- return Images.GetConflictedOverlayIcon();
- }
-
- static Texture ForConflictResolved()
- {
- return Images.GetConflictResolvedOverlayIcon();
- }
- }
- }
|