A game about forced loneliness, made by TACStudios
1using System.Collections.Generic;
2
3using Codice.CM.Common;
4using Unity.PlasticSCM.Editor.UI.Tree;
5
6namespace Unity.PlasticSCM.Editor.Views.Changesets
7{
8 internal static class ChangesetsSelection
9 {
10 internal static void SelectChangesets(
11 ChangesetsListView listView,
12 List<RepObjectInfo> csetsToSelect,
13 int defaultRow)
14 {
15 if (csetsToSelect == null || csetsToSelect.Count == 0)
16 {
17 TableViewOperations.SelectFirstRow(listView);
18 return;
19 }
20
21 listView.SelectRepObjectInfos(csetsToSelect);
22
23 if (listView.HasSelection())
24 return;
25
26 TableViewOperations.SelectDefaultRow(listView, defaultRow);
27
28 if (listView.HasSelection())
29 return;
30
31 TableViewOperations.SelectFirstRow(listView);
32 }
33
34 internal static List<RepObjectInfo> GetSelectedRepObjectInfos(
35 ChangesetsListView listView)
36 {
37 return listView.GetSelectedRepObjectInfos();
38 }
39
40 internal static int GetSelectedChangesetsCount(
41 ChangesetsListView listView)
42 {
43 return listView.GetSelection().Count;
44 }
45
46 internal static ChangesetExtendedInfo GetSelectedChangeset(
47 ChangesetsListView listView)
48 {
49 List<RepObjectInfo> selectedRepObjectsInfos = listView.GetSelectedRepObjectInfos();
50
51 if (selectedRepObjectsInfos.Count == 0)
52 return null;
53
54 return (ChangesetExtendedInfo)selectedRepObjectsInfos[0];
55 }
56
57 internal static RepositorySpec GetSelectedRepository(
58 ChangesetsListView listView)
59 {
60 List<RepositorySpec> selectedRepositories = listView.GetSelectedRepositories();
61
62 if (selectedRepositories.Count == 0)
63 return null;
64
65 return selectedRepositories[0];
66 }
67 }
68}