/// <summary> /// Raises the added new item event. /// </summary> /// <param name="e">The e.</param> protected virtual void RaiseAddedNewItemEvent(NavigationItemEdit e) { if (OnAddedNewItem != null) OnAddedNewItem(this, new AddedNewEventArgs<NavigationItemEdit>(e)); }
public void TurnOnItemVisibilityTurnsOnItsGroupVisibility() { var ng = new NavigationGroupViewModel { SelectedRoleId = 1 }; Mock.NonPublic.Arrange(ng, "PopulateNavigationItems").DoNothing(); var groupEdit = new NavigationGroupEdit(); var groupConfig = new NavigationGroupSecurityConfigurationEdit { RoleId = 1, CanView = false }; Mock.Arrange(() => groupConfig.IsChild).Returns(true); var groupConfigurations = new NavigationGroupSecurityConfigurationList { groupConfig }; Mock.Arrange(() => groupConfigurations.IsChild).Returns(true); Mock.Arrange(() => groupEdit.SecurityConfigurations).Returns(groupConfigurations); ng.Initialize(groupEdit, new NavigationBuilderViewModel()); var items = new ObservableCollection<INavigationItemViewModel>(); var itemEdit = new NavigationItemEdit(); var itemConfig = new NavigationItemSecurityConfigurationEdit { RoleId = 1, CanView = true }; Mock.Arrange(() => itemConfig.IsChild).Returns(true); var itemConfigurations = new NavigationItemSecurityConfigurationList { itemConfig }; Mock.Arrange(() => itemEdit.SecurityConfigurations).Returns(itemConfigurations); for (var i = 0; i < 3; i++) { var item = new NavigationItemViewModel { SelectedRoleId = 1 }; item.Initialize(itemEdit, ng); item.IsVisible = false; items.Add(item); } ng.NavigationItems.AddRange(items); ng.IsVisible = false; ng.NavigationItems[0].IsVisible = true; Assert.IsTrue(ng.IsVisible); }
/// <summary> /// Initializes the specified model. /// </summary> /// <param name="model">The model.</param> /// <param name="parent">The parent.</param> public void Initialize(NavigationItemEdit model, INavigationGroupViewModel parent) { Model = model; Parent = parent; RaisePropertyChanged(() => IsVisible); RaisePropertyChanged(() => IsReadOnly); ((ActionCommand<object>)RemoveCommand).RaiseCanExecuteChanged(); LoadIcon(); }