Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Documents / DocumentStructures / StoryFragments.cs / 1305600 / StoryFragments.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
// History:
// 05/12/2005 : mingliu - created.
//
//
//---------------------------------------------------------------------------
using MS.Internal.Documents;
using MS.Utility;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.Reflection;
using System.Security.Permissions;
using System.Windows.Controls.Primitives;
using System.Windows.Documents;
using System.Windows.Media;
using System.Windows.Shapes;
using System.Windows.Markup;
[assembly: XmlnsDefinition(
"http://schemas.microsoft.com/xps/2005/06/documentstructure",
"System.Windows.Documents.DocumentStructures")]
namespace System.Windows.Documents.DocumentStructures
{
///
///
///
[ContentProperty("StoryFragmentList")]
public class StoryFragments : IAddChild, IEnumerable, IEnumerable
{
///
///
///
public StoryFragments()
{
_elementList = new List();
}
public void Add(StoryFragment storyFragment)
{
if (storyFragment == null)
{
throw new ArgumentNullException("storyFragment");
}
((IAddChild) this).AddChild(storyFragment);
}
void IAddChild.AddChild(object value)
{
//
// Only the StoryFragment type are accepted.
//
if (value is StoryFragment)
{
_elementList.Add( (StoryFragment) value);
return;
}
throw new ArgumentException(SR.Get(SRID.UnexpectedParameterType, value.GetType(), typeof(StoryFragment)), "value");
}
void IAddChild.AddText(string text) { }
IEnumerator IEnumerable.GetEnumerator()
{
throw new NotSupportedException();
}
IEnumerator IEnumerable.GetEnumerator()
{
return ((IEnumerable)this).GetEnumerator();
}
internal List StoryFragmentList
{
get
{
return _elementList;
}
}
private List _elementList;
}
///
///
///
[ContentProperty("BlockElementList")]
public class StoryFragment : IAddChild, IEnumerable, IEnumerable
{
///
///
///
public StoryFragment()
{
_elementList = new List();
}
public void Add(BlockElement element)
{
if (element == null)
{
throw new ArgumentNullException("element");
}
((IAddChild) this).AddChild(element);
}
void IAddChild.AddChild(object value)
{
//
// Only the following type are accepted.
// Section|Paragraph|Inline(Bold|Italic|Underline)|Floater|Figure|List
// |Table|StoryBreak
//
if (value is SectionStructure || value is ParagraphStructure || value is FigureStructure
|| value is ListStructure || value is TableStructure || value is StoryBreak)
{
_elementList.Add( (BlockElement) value);
return;
}
throw new ArgumentException(SR.Get(SRID.DocumentStructureUnexpectedParameterType6, value.GetType(),
typeof(SectionStructure), typeof(ParagraphStructure), typeof(FigureStructure), typeof(ListStructure), typeof(TableStructure), typeof(StoryBreak)),
"value");
}
void IAddChild.AddText(string text) { }
IEnumerator IEnumerable.GetEnumerator()
{
throw new NotSupportedException();
}
IEnumerator IEnumerable.GetEnumerator()
{
return ((IEnumerable)this).GetEnumerator();
}
///
/// The element name
///
public string StoryName
{
get
{
return _storyName;
}
set
{
_storyName = value;
}
}
///
/// The element name
///
public string FragmentName
{
get
{
return _fragmentName;
}
set
{
_fragmentName = value;
}
}
///
/// The element name
///
public String FragmentType
{
get
{
return _fragmentType;
}
set
{
_fragmentType = value;
}
}
internal List BlockElementList
{
get
{
return _elementList;
}
}
private List _elementList;
private String _storyName;
private String _fragmentName;
private String _fragmentType;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- LocalizationComments.cs
- XmlNode.cs
- SystemPens.cs
- MetadataCache.cs
- ProcessInputEventArgs.cs
- TextFindEngine.cs
- ImageCodecInfo.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- MenuStrip.cs
- WebEncodingValidator.cs
- RuntimeConfigurationRecord.cs
- TCPClient.cs
- VScrollProperties.cs
- TokenBasedSetEnumerator.cs
- ObjectReferenceStack.cs
- ConfigurationManagerHelperFactory.cs
- WorkflowApplicationTerminatedException.cs
- BrowsableAttribute.cs
- List.cs
- CalendarAutoFormat.cs
- OutputCacheSection.cs
- _SecureChannel.cs
- Sequence.cs
- TracePayload.cs
- HashAlgorithm.cs
- AppDomainGrammarProxy.cs
- DebuggerService.cs
- ToolStripDropDown.cs
- CqlQuery.cs
- GenericIdentity.cs
- RuleDefinitions.cs
- SecurityKeyIdentifier.cs
- OdbcHandle.cs
- MemoryPressure.cs
- DataGridHeaderBorder.cs
- Filter.cs
- StrongNamePublicKeyBlob.cs
- NamedPipeChannelListener.cs
- x509utils.cs
- EditingScopeUndoUnit.cs
- TCPListener.cs
- GridViewRowPresenter.cs
- PenCursorManager.cs
- WebPartDescriptionCollection.cs
- Int32AnimationBase.cs
- DoubleLink.cs
- ControlOperationBehavior.cs
- MediaContext.cs
- WebBrowserProgressChangedEventHandler.cs
- SelfIssuedAuthProofToken.cs
- CustomTypeDescriptor.cs
- DecimalKeyFrameCollection.cs
- Brushes.cs
- UIHelper.cs
- HostingEnvironmentSection.cs
- PkcsMisc.cs
- ImmutableObjectAttribute.cs
- PathSegment.cs
- Site.cs
- DummyDataSource.cs
- StorageEndPropertyMapping.cs
- NullableDecimalSumAggregationOperator.cs
- StateManagedCollection.cs
- DtrList.cs
- HandledEventArgs.cs
- AutoScrollHelper.cs
- CatalogZoneBase.cs
- DefaultBindingPropertyAttribute.cs
- SafeNativeMethods.cs
- TrackingConditionCollection.cs
- MailWebEventProvider.cs
- TemplateXamlParser.cs
- GlobalizationSection.cs
- ContainsRowNumberChecker.cs
- CookieParameter.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- BindingsCollection.cs
- TextInfo.cs
- mactripleDES.cs
- SafeNativeMethods.cs
- FieldCollectionEditor.cs
- GroupQuery.cs
- Vector3DConverter.cs
- ChildTable.cs
- linebase.cs
- ResourcesBuildProvider.cs
- TypeUsage.cs
- DependencyObject.cs
- HitTestResult.cs
- XPathEmptyIterator.cs
- SR.cs
- RuleAttributes.cs
- AttributeCollection.cs
- XmlQuerySequence.cs
- NativeCppClassAttribute.cs
- basenumberconverter.cs
- panel.cs
- ExceptionUtil.cs
- BufferedGraphics.cs
- ToolStripComboBox.cs