58 lines
1.7 KiB
C#
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;
|
|
}
|
|
}
|
|
}
|