arenos-nexus/Arenos Nexus/Library/PackageCache/com.unity.collab-proxy@ab839cc7d2ad/Editor/UVCSToolbar/Headless/HeadlessGluonViewHost.cs
Daniel 2e704cae70 init
Init Commit Unity
2025-09-25 22:01:28 +02:00

58 lines
1.7 KiB
C#

using GluonGui;
using PlasticGui;
using Unity.PlasticSCM.Editor.UI;
namespace Unity.PlasticSCM.Editor.Toolbar.Headless
{
internal class HeadlessGluonViewHost
{
internal ViewHost ViewHost { get { return mViewHost; } }
internal HeadlessGluonViewHost(IRefreshableView branchesListPopupPanel)
{
mViewHost = new ViewHost();
mViewHost.AddRefreshableView(
ViewType.BranchesListPopup,
branchesListPopupPanel);
mViewHost.AddRefreshableView(
ViewType.PendingChangesView,
new RefreshableView(ViewType.PendingChangesView));
mViewHost.AddRefreshableView(
ViewType.IncomingChangesView,
new RefreshableView(ViewType.IncomingChangesView));
mViewHost.AddRefreshableView(
ViewType.BranchesView,
new RefreshableView(ViewType.BranchesView));
mViewHost.AddRefreshableView(
ViewType.ChangesetsView,
new RefreshableView(ViewType.ChangesetsView));
mViewHost.AddRefreshableView(
ViewType.HistoryView,
new RefreshableView(ViewType.HistoryView));
}
ViewHost mViewHost;
class RefreshableView : IRefreshableView
{
internal RefreshableView(ViewType viewType)
{
mViewType = viewType;
}
void IRefreshableView.Refresh()
{
UVCSWindow window = GetWindowIfOpened.UVCS();
if (window == null)
return;
window.ViewHost.RefreshView(mViewType);
}
readonly ViewType mViewType;
}
}
}