DrawIncomingChangesOverview.cs
3.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
using UnityEditor;
using UnityEngine;
using Codice.Client.Common;
using PlasticGui;
using PlasticGui.WorkspaceWindow.Merge;
using Unity.PlasticSCM.Editor.UI;
namespace Unity.PlasticSCM.Editor.Views.IncomingChanges
{
internal static class DrawIncomingChangesOverview
{
internal static void For(
int directoryConflictCount,
int fileConflictCount,
MergeViewTexts.ChangesToApplySummary changesSummary)
{
DrawItem(
Images.Name.IconConflicted,
PlasticLocalization.Name.DirectoryConflictsTitleSingular,
PlasticLocalization.Name.DirectoryConflictsTitlePlural,
directoryConflictCount,
0,
false);
DrawItem(
Images.Name.IconConflicted,
PlasticLocalization.Name.FileConflictsTitleSingular,
PlasticLocalization.Name.FileConflictsTitlePlural,
fileConflictCount,
0,
false);
DrawItem(
Images.Name.IconOutOfSync,
PlasticLocalization.Name.MergeChangesMadeInSourceOfMergeOverviewSingular,
PlasticLocalization.Name.MergeChangesMadeInSourceOfMergeOverviewPlural,
changesSummary.FilesToModify,
changesSummary.SizeToModify,
true);
DrawItem(
Images.Name.IconAddedLocal,
PlasticLocalization.Name.MergeNewItemsToDownloadOverviewSingular,
PlasticLocalization.Name.MergeNewItemsToDownloadOverviewPlural,
changesSummary.FilesToAdd,
changesSummary.SizeToAdd,
true);
DrawItem(
Images.Name.IconDeletedRemote,
PlasticLocalization.Name.MergeDeletesToApplyOverviewSingular,
PlasticLocalization.Name.MergeDeletesToApplyOverviewPlural,
changesSummary.FilesToDelete,
changesSummary.SizeToDelete,
true);
}
static void DrawItem(
Images.Name iconName,
PlasticLocalization.Name singularLabel,
PlasticLocalization.Name pluralLabel,
int count,
long size,
bool showSize)
{
if (count == 0)
return;
EditorGUILayout.BeginHorizontal();
GUIContent iconContent = new GUIContent(Images.GetImage(iconName));
GUILayout.Label(iconContent, GUILayout.Width(20f), GUILayout.Height(20f));
string label = PlasticLocalization.GetString(count > 1 ? pluralLabel : singularLabel);
if (showSize)
label = string.Format(label, count, SizeConverter.ConvertToSizeString(size));
else
label = string.Format(label, count);
GUIContent content = new GUIContent(label);
GUILayout.Label(content, UnityStyles.IncomingChangesTab.ChangesToApplySummaryLabel);
GUILayout.Space(5);
EditorGUILayout.EndHorizontal();
}
}
}