| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- using Abp;
- using Abp.Application.Navigation;
- using Abp.Configuration.Startup;
- using Abp.Dependency;
- using Abp.Localization;
- namespace VberZero.Navigation;
- public class VzNavigationManager : INavigationManager, ISingletonDependency
- {
- public IDictionary<string, MenuDefinition> Menus { get; private set; }
- public MenuDefinition MainMenu => Menus["MainMenu"];
- private readonly IIocResolver _iocResolver;
- private readonly INavigationConfiguration _configuration;
- public VzNavigationManager(IIocResolver iocResolver, INavigationConfiguration configuration)
- {
- _iocResolver = iocResolver;
- _configuration = configuration;
- Menus = new Dictionary<string, MenuDefinition>
- {
- {"MainMenu", new MenuDefinition("MainMenu", new LocalizableString("MainMenu", AbpConsts.LocalizationSourceName))}
- };
- }
- public void Initialize()
- {
- Menus = new Dictionary<string, MenuDefinition>
- {
- {"MainMenu", new MenuDefinition("MainMenu", new LocalizableString("MainMenu", AbpConsts.LocalizationSourceName))}
- };
- var context = new VzNavigationProviderContext(this);
- foreach (var providerType in _configuration.Providers)
- {
- using var provider = _iocResolver.ResolveAsDisposable<NavigationProvider>(providerType);
- provider.Object.SetNavigation(context);
- }
- }
- }
|