private void AssertMetadataItemDtoAreEqual(IMetadataItemDto expectedMetadataItemDto, IMetadataItemDto testedMetadataItemDto) { Assert.AreEqual(expectedMetadataItemDto.GetType(), testedMetadataItemDto.GetType()); if (expectedMetadataItemDto is RequiredMetadataItemDto) { Assert.AreEqual((expectedMetadataItemDto as RequiredMetadataItemDto).IsRequired, (testedMetadataItemDto as RequiredMetadataItemDto).IsRequired); } else if (expectedMetadataItemDto is ReadonlyMetadataItemDto) { Assert.AreEqual((expectedMetadataItemDto as ReadonlyMetadataItemDto).IsReadonly, (testedMetadataItemDto as ReadonlyMetadataItemDto).IsReadonly); } else if (expectedMetadataItemDto is HiddenMetadataItemDto) { Assert.AreEqual((expectedMetadataItemDto as HiddenMetadataItemDto).IsHidden, (testedMetadataItemDto as HiddenMetadataItemDto).IsHidden); } else if (expectedMetadataItemDto is DisplayNameMetadataItemDto) { Assert.AreEqual((expectedMetadataItemDto as DisplayNameMetadataItemDto).Name, (testedMetadataItemDto as DisplayNameMetadataItemDto).Name); } else { throw new NotSupportedException("Not supported yet."); } }
/// <summary> /// Initializes a new instance of the <see cref="MetadataChangedEventArgs"/> class. /// </summary> /// <param name="metadataAction">The metadata action.</param> /// <param name="metadataItemDto">The metadata item dto.</param> public MetadataChangedEventArgs( MetadataAction metadataAction, IMetadataItemDto metadataItemDto) { MetadataAction = metadataAction; MetadataItemDto = metadataItemDto; }
/// <summary> /// Initializes a new instance of the <see cref="MetadataChangedEventArgs"/> class. /// </summary> /// <param name="metadataAction">The metadata action.</param> /// <param name="metadataItemDto">The metadata item dto.</param> public MetadataChangedEventArgs( MetadataAction metadataAction, IMetadataItemDto metadataItemDto ) { MetadataAction = metadataAction; MetadataItemDto = metadataItemDto; }
void IMetadataItemApplicator.Unapply( FrameworkElement frameworkElement, IMetadataItemDto metadataItem, IDictionary <Type, object> localStorage) { Unapply(( TFrameworkElement )frameworkElement, ( TMetadataItem )metadataItem, localStorage); }
/// <summary> /// Adds the metadata item. /// </summary> /// <param name="metadataItemDto">The metadata item dto.</param> public void AddMetadataItem(IMetadataItemDto metadataItemDto) { if (metadataItemDto == null) { throw new ArgumentNullException("metadataItemDto"); } _metadataItemDtos.Add(metadataItemDto); }
/// <summary> /// Gets the metadata item applicator. /// </summary> /// <param name="frameworkElement">The framework element.</param> /// <param name="metadataItem">The metadata item.</param> /// <returns>A <see cref="Rem.Ria.Infrastructure.View.Configuration.IMetadataItemApplicator"/></returns> public IMetadataItemApplicator GetMetadataItemApplicator( FrameworkElement frameworkElement, IMetadataItemDto metadataItem ) { IMetadataItemApplicator metadataItemApplicator = null; var elementTypes = GetBaseTypes ( frameworkElement.GetType () ); foreach ( var elementType in elementTypes ) { var candidateElementType = elementType; var metadataItemApplicators = from applicator in _metadataItemApplicators where applicator.FrameworkElementType == candidateElementType && applicator.MetadataItemType == metadataItem.GetType () select applicator; metadataItemApplicator = metadataItemApplicators.SingleOrDefault (); if ( metadataItemApplicator != null ) { break; } } return metadataItemApplicator; }
private void AssertMetadataItemDtoAreEqual(IMetadataItemDto expectedMetadataItemDto, IMetadataItemDto testedMetadataItemDto) { Assert.AreEqual(expectedMetadataItemDto.GetType(), testedMetadataItemDto.GetType()); if (expectedMetadataItemDto is RequiredMetadataItemDto) { Assert.AreEqual ( (expectedMetadataItemDto as RequiredMetadataItemDto).IsRequired, (testedMetadataItemDto as RequiredMetadataItemDto).IsRequired ); } else if (expectedMetadataItemDto is ReadonlyMetadataItemDto) { Assert.AreEqual((expectedMetadataItemDto as ReadonlyMetadataItemDto).IsReadonly, (testedMetadataItemDto as ReadonlyMetadataItemDto).IsReadonly); } else if (expectedMetadataItemDto is HiddenMetadataItemDto) { Assert.AreEqual((expectedMetadataItemDto as HiddenMetadataItemDto).IsHidden, (testedMetadataItemDto as HiddenMetadataItemDto).IsHidden); } else if (expectedMetadataItemDto is DisplayNameMetadataItemDto) { Assert.AreEqual((expectedMetadataItemDto as DisplayNameMetadataItemDto).Name, (testedMetadataItemDto as DisplayNameMetadataItemDto).Name); } else { throw new NotSupportedException ( "Not supported yet." ); } }
/// <summary> /// Gets the metadata item applicator. /// </summary> /// <param name="frameworkElement">The framework element.</param> /// <param name="metadataItem">The metadata item.</param> /// <returns>A <see cref="Rem.Ria.Infrastructure.View.Configuration.IMetadataItemApplicator"/></returns> public IMetadataItemApplicator GetMetadataItemApplicator(FrameworkElement frameworkElement, IMetadataItemDto metadataItem) { IMetadataItemApplicator metadataItemApplicator = null; var elementTypes = GetBaseTypes(frameworkElement.GetType()); foreach (var elementType in elementTypes) { var candidateElementType = elementType; var metadataItemApplicators = from applicator in _metadataItemApplicators where applicator.FrameworkElementType == candidateElementType && applicator.MetadataItemType == metadataItem.GetType() select applicator; metadataItemApplicator = metadataItemApplicators.SingleOrDefault(); if (metadataItemApplicator != null) { break; } } return(metadataItemApplicator); }