using System;
using UnityEngine;
using UnityEngine.UIElements;
using PlasticGui;
namespace Unity.PlasticSCM.Editor.Views.BranchExplorer
{
internal class BranchExplorerEmptyStatePanel : VisualElement
{
internal BranchExplorerEmptyStatePanel(Action resetFiltersAction)
{
mResetFiltersAction = resetFiltersAction;
CreateGUI();
}
internal void Dispose()
{
if (mResetFiltersButton != null)
mResetFiltersButton.clicked -= OnResetFiltersClicked;
}
void CreateGUI()
{
style.flexGrow = 1;
style.alignItems = Align.Center;
style.justifyContent = Justify.Center;
Label emptyStateLabel = new Label(
PlasticLocalization.Name.NoBranchesMatchingFilters.GetString());
emptyStateLabel.style.unityTextAlign = TextAnchor.MiddleCenter;
emptyStateLabel.style.whiteSpace = WhiteSpace.Normal;
Add(emptyStateLabel);
mResetFiltersButton = new Button();
mResetFiltersButton.text =
PlasticLocalization.Name.ResetFilters.GetString();
mResetFiltersButton.style.marginTop = 20;
mResetFiltersButton.clicked += OnResetFiltersClicked;
Add(mResetFiltersButton);
}
void OnResetFiltersClicked()
{
mResetFiltersAction?.Invoke();
}
readonly Action mResetFiltersAction;
Button mResetFiltersButton;
}
}