Mono.UIAutomation.Winforms.Navigation.ParentNavigation.OnNavigationChildrenUpdated C# (CSharp) Method

OnNavigationChildrenUpdated() private method

private OnNavigationChildrenUpdated ( object sender, NavigationEventArgs args ) : void
sender object
args NavigationEventArgs
return void
		private void OnNavigationChildrenUpdated (object sender,
		                                          NavigationEventArgs args)
		{
			if (args.ChangeType == StructureChangeType.ChildAdded) {
				if (args.Index == -1) {
					AddLast (args.ChildProvider.Navigation);
				} else {
					AddElementAt (args.Index, args.ChildProvider.Navigation);
				}
		
				if (args.RaiseEvent == true) {
					Helper.RaiseStructureChangedEvent (StructureChangeType.ChildAdded, 
					                                   args.ChildProvider);
					Helper.RaiseStructureChangedEvent (StructureChangeType.ChildrenInvalidated,
					                                   (FragmentControlProvider) sender);
				}
			} else if (args.ChangeType == StructureChangeType.ChildRemoved) {
				Remove (args.ChildProvider.Navigation);
	
				if (args.RaiseEvent == true) {
					Helper.RaiseStructureChangedEvent (StructureChangeType.ChildRemoved, 
					                                   args.ChildProvider);
					Helper.RaiseStructureChangedEvent (StructureChangeType.ChildrenInvalidated,
					                                   (FragmentControlProvider) sender);
				}
			} else if (args.ChangeType == StructureChangeType.ChildrenReordered) {
				chain.Clear ();
				
				//TODO: Is this the event to generate?
				if (args.RaiseEvent == true) {
					Helper.RaiseStructureChangedEvent (StructureChangeType.ChildrenBulkRemoved, 
					                                   (FragmentControlProvider) sender);
					Helper.RaiseStructureChangedEvent (StructureChangeType.ChildrenInvalidated,
					                                   (FragmentControlProvider) sender);
				}
			}
		}