Click or drag to resize
IFormattingGroup Interface

A collection of non-conflicting formatting items that together specify a fully defined formatting or a formatting override.

Namespace: Sdl.FileTypeSupport.Framework.Formatting
Assembly: Sdl.FileTypeSupport.Framework.Core (in Sdl.FileTypeSupport.Framework.Core.dll) Version: 1.0.0.0 (1.0.2551.0)
Syntax
public interface IFormattingGroup : IDictionary<string, IFormattingItem>, 
	ICollection<KeyValuePair<string, IFormattingItem>>, IEnumerable<KeyValuePair<string, IFormattingItem>>, 
	IEnumerable, ICloneable, IXmlSerializable

The IFormattingGroup type exposes the following members.

Properties
  NameDescription
Public propertyCount (Inherited from ICollectionKeyValuePairString, IFormattingItem.)
Public propertyIsReadOnly (Inherited from ICollectionKeyValuePairString, IFormattingItem.)
Public propertyItem
Retrieves a formatting item of a specified type.
Public propertyKeys (Inherited from IDictionaryString, IFormattingItem.)
Public propertyValues (Inherited from IDictionaryString, IFormattingItem.)
Top
Methods
  NameDescription
Public methodAdd(T) (Inherited from ICollectionKeyValuePairString, IFormattingItem.)
Public methodAdd(IFormattingItem)
Adds a formatting item to the collection. The FormattingName is used as a key. If a formatting of this type already exists, it will be replaced.
Public methodAdd(TKey, TValue) (Inherited from IDictionaryString, IFormattingItem.)
Public methodClear (Inherited from ICollectionKeyValuePairString, IFormattingItem.)
Public methodClone
Creates a new object that is a copy of the current instance.
(Inherited from ICloneable.)
Public methodContains(T) (Inherited from ICollectionKeyValuePairString, IFormattingItem.)
Public methodContains(String)
Tests whether the collection contains a formatting item of a certain type.
Public methodContains(IFormattingItem)
Tests whether an equivalent formatting is part of the collection.
Public methodContainsKey (Inherited from IDictionaryString, IFormattingItem.)
Public methodCopyTo (Inherited from ICollectionKeyValuePairString, IFormattingItem.)
Public methodGetEnumerator
Returns an enumerator that iterates through the collection.
(Inherited from IEnumerableKeyValuePairString, IFormattingItem.)
Public methodGetSchema (Inherited from IXmlSerializable.)
Public methodOverrideWith
Adds each formatting item from the other object to this one, thereby overwriting any formatting of the same type in this object. Any formatting items in this object that do not have corresponding formatting items in the other object remain unchanged.

This can be used to apply a formatting override.

Public methodReadXml (Inherited from IXmlSerializable.)
Public methodRemove(TKey) (Inherited from IDictionaryString, IFormattingItem.)
Public methodRemove(T) (Inherited from ICollectionKeyValuePairString, IFormattingItem.)
Public methodTryGetValue
Gets the value associated with the specified key.
(Inherited from IDictionaryString, IFormattingItem.)
Public methodUnderrideWith
Adds each formatting item from the other formatting that does not already exist in this collection.

This can be used to "overlay" formatting overrides when starting from the most significant formatting.

The difference to OverrideWith(IFormattingGroup) is the fact that existing formatting in this object is always preserved.

Public methodWriteXml (Inherited from IXmlSerializable.)
Top
Remarks

Instances of this class should normally be created by calling CreateFormatting, or by cloning an existing instance. (IFormattingItemFactory is typically accessed from the FormattingItemFactory property.)

The collection is a dictionary indexed using the FormattingName as keys for the contained formatting items.

Can be combined with other formatting by calling OverrideWith(IFormattingGroup) or UnderrideWith(IFormattingGroup).

Examples
Here is an example that shows how to explicitly turn off bold formatting only when the formatting is set:
void SetNoBold(IFormattingGroup fmt)
{
    // check if there is bold formatting already
    if (fmt.ContainsKey(Bold.Name))
    {
        // explicitly override by setting our formatting instead
        Bold notBold = new Bold(false);
        fmt.Add(notBold);
    }
}
See Also
Community
Edit

Be the first to Edit the community content of this topic.
Comments