Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Framework / System / Windows / Documents / Figure.cs / 1305600 / Figure.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // Description: Figure element. // //--------------------------------------------------------------------------- using System.ComponentModel; // TypeConverter using System.Windows.Controls; // TextBlock using MS.Internal; using MS.Internal.PtsHost.UnsafeNativeMethods; // PTS restrictions namespace System.Windows.Documents { ////// Figure element. /// public class Figure : AnchoredBlock { //------------------------------------------------------------------- // // Constructors // //------------------------------------------------------------------- #region Constructors ////// Initialized the new instance of a Figure /// public Figure() : this(null) { } ////// Initialized the new instance of a Figure specifying a Block added /// to a Figure as its first child. /// /// /// Block added as a first initial child of the Figure. /// public Figure(Block childBlock) : this(childBlock, null) { } ////// Creates a new Figure instance. /// /// /// Optional child of the new Figure, may be null. /// /// /// Optional position at which to insert the new Figure. May /// be null. /// public Figure(Block childBlock, TextPointer insertionPosition) : base(childBlock, insertionPosition) { } #endregion Constructors //-------------------------------------------------------------------- // // Public Properties // //------------------------------------------------------------------- #region Public Properties ////// DependencyProperty for public static readonly DependencyProperty HorizontalAnchorProperty = DependencyProperty.Register( "HorizontalAnchor", typeof(FigureHorizontalAnchor), typeof(Figure), new FrameworkPropertyMetadata( FigureHorizontalAnchor.ColumnRight, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidHorizontalAnchor)); ///property. /// /// /// public FigureHorizontalAnchor HorizontalAnchor { get { return (FigureHorizontalAnchor)GetValue(HorizontalAnchorProperty); } set { SetValue(HorizontalAnchorProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty VerticalAnchorProperty = DependencyProperty.Register( "VerticalAnchor", typeof(FigureVerticalAnchor), typeof(Figure), new FrameworkPropertyMetadata( FigureVerticalAnchor.ParagraphTop, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidVerticalAnchor)); ///property. /// /// /// public FigureVerticalAnchor VerticalAnchor { get { return (FigureVerticalAnchor)GetValue(VerticalAnchorProperty); } set { SetValue(VerticalAnchorProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty HorizontalOffsetProperty = DependencyProperty.Register( "HorizontalOffset", typeof(double), typeof(Figure), new FrameworkPropertyMetadata( 0.0, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidOffset)); ///property. /// /// /// [TypeConverter(typeof(LengthConverter))] public double HorizontalOffset { get { return (double)GetValue(HorizontalOffsetProperty); } set { SetValue(HorizontalOffsetProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty VerticalOffsetProperty = DependencyProperty.Register( "VerticalOffset", typeof(double), typeof(Figure), new FrameworkPropertyMetadata( 0.0, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidOffset)); ///property. /// /// /// [TypeConverter(typeof(LengthConverter))] public double VerticalOffset { get { return (double)GetValue(VerticalOffsetProperty); } set { SetValue(VerticalOffsetProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty CanDelayPlacementProperty = DependencyProperty.Register( "CanDelayPlacement", typeof(bool), typeof(Figure), new FrameworkPropertyMetadata( true, FrameworkPropertyMetadataOptions.AffectsParentMeasure)); ///property. /// /// /// public bool CanDelayPlacement { get { return (bool)GetValue(CanDelayPlacementProperty); } set { SetValue(CanDelayPlacementProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty WrapDirectionProperty = DependencyProperty.Register( "WrapDirection", typeof(WrapDirection), typeof(Figure), new FrameworkPropertyMetadata( WrapDirection.Both, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidWrapDirection)); ///property. /// /// /// public WrapDirection WrapDirection { get { return (WrapDirection)GetValue(WrapDirectionProperty); } set { SetValue(WrapDirectionProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty WidthProperty = DependencyProperty.Register( "Width", typeof(FigureLength), typeof(Figure), new FrameworkPropertyMetadata( new FigureLength(1.0, FigureUnitType.Auto), FrameworkPropertyMetadataOptions.AffectsMeasure)); ///property. /// /// The Width property specifies the width of the element. /// public FigureLength Width { get { return (FigureLength)GetValue(WidthProperty); } set { SetValue(WidthProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty HeightProperty = DependencyProperty.Register( "Height", typeof(FigureLength), typeof(Figure), new FrameworkPropertyMetadata( new FigureLength(1.0, FigureUnitType.Auto), FrameworkPropertyMetadataOptions.AffectsMeasure)); ///property. /// /// The Height property specifies the height of the element. /// public FigureLength Height { get { return (FigureLength)GetValue(HeightProperty); } set { SetValue(HeightProperty, value); } } #endregion Public Properties //-------------------------------------------------------------------- // // Private Methods // //-------------------------------------------------------------------- #region Private Methods private static bool IsValidHorizontalAnchor(object o) { FigureHorizontalAnchor value = (FigureHorizontalAnchor)o; return value == FigureHorizontalAnchor.ContentCenter || value == FigureHorizontalAnchor.ContentLeft || value == FigureHorizontalAnchor.ContentRight || value == FigureHorizontalAnchor.PageCenter || value == FigureHorizontalAnchor.PageLeft || value == FigureHorizontalAnchor.PageRight || value == FigureHorizontalAnchor.ColumnCenter || value == FigureHorizontalAnchor.ColumnLeft || value == FigureHorizontalAnchor.ColumnRight; // || value == FigureHorizontalAnchor.CharacterCenter // || value == FigureHorizontalAnchor.CharacterLeft // || value == FigureHorizontalAnchor.CharacterRight; } private static bool IsValidVerticalAnchor(object o) { FigureVerticalAnchor value = (FigureVerticalAnchor)o; return value == FigureVerticalAnchor.ContentBottom || value == FigureVerticalAnchor.ContentCenter || value == FigureVerticalAnchor.ContentTop || value == FigureVerticalAnchor.PageBottom || value == FigureVerticalAnchor.PageCenter || value == FigureVerticalAnchor.PageTop || value == FigureVerticalAnchor.ParagraphTop; // || value == FigureVerticalAnchor.CharacterBottom // || value == FigureVerticalAnchor.CharacterCenter // || value == FigureVerticalAnchor.CharacterTop; } private static bool IsValidWrapDirection(object o) { WrapDirection value = (WrapDirection)o; return value == WrapDirection.Both || value == WrapDirection.None || value == WrapDirection.Left || value == WrapDirection.Right; } private static bool IsValidOffset(object o) { double offset = (double)o; double maxOffset = Math.Min(1000000, PTS.MaxPageSize); double minOffset = -maxOffset; if (Double.IsNaN(offset)) { return false; } if (offset < minOffset || offset > maxOffset) { return false; } return true; } #endregion Private Methods } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // // Description: Figure element. // //--------------------------------------------------------------------------- using System.ComponentModel; // TypeConverter using System.Windows.Controls; // TextBlock using MS.Internal; using MS.Internal.PtsHost.UnsafeNativeMethods; // PTS restrictions namespace System.Windows.Documents { ////// Figure element. /// public class Figure : AnchoredBlock { //------------------------------------------------------------------- // // Constructors // //------------------------------------------------------------------- #region Constructors ////// Initialized the new instance of a Figure /// public Figure() : this(null) { } ////// Initialized the new instance of a Figure specifying a Block added /// to a Figure as its first child. /// /// /// Block added as a first initial child of the Figure. /// public Figure(Block childBlock) : this(childBlock, null) { } ////// Creates a new Figure instance. /// /// /// Optional child of the new Figure, may be null. /// /// /// Optional position at which to insert the new Figure. May /// be null. /// public Figure(Block childBlock, TextPointer insertionPosition) : base(childBlock, insertionPosition) { } #endregion Constructors //-------------------------------------------------------------------- // // Public Properties // //------------------------------------------------------------------- #region Public Properties ////// DependencyProperty for public static readonly DependencyProperty HorizontalAnchorProperty = DependencyProperty.Register( "HorizontalAnchor", typeof(FigureHorizontalAnchor), typeof(Figure), new FrameworkPropertyMetadata( FigureHorizontalAnchor.ColumnRight, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidHorizontalAnchor)); ///property. /// /// /// public FigureHorizontalAnchor HorizontalAnchor { get { return (FigureHorizontalAnchor)GetValue(HorizontalAnchorProperty); } set { SetValue(HorizontalAnchorProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty VerticalAnchorProperty = DependencyProperty.Register( "VerticalAnchor", typeof(FigureVerticalAnchor), typeof(Figure), new FrameworkPropertyMetadata( FigureVerticalAnchor.ParagraphTop, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidVerticalAnchor)); ///property. /// /// /// public FigureVerticalAnchor VerticalAnchor { get { return (FigureVerticalAnchor)GetValue(VerticalAnchorProperty); } set { SetValue(VerticalAnchorProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty HorizontalOffsetProperty = DependencyProperty.Register( "HorizontalOffset", typeof(double), typeof(Figure), new FrameworkPropertyMetadata( 0.0, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidOffset)); ///property. /// /// /// [TypeConverter(typeof(LengthConverter))] public double HorizontalOffset { get { return (double)GetValue(HorizontalOffsetProperty); } set { SetValue(HorizontalOffsetProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty VerticalOffsetProperty = DependencyProperty.Register( "VerticalOffset", typeof(double), typeof(Figure), new FrameworkPropertyMetadata( 0.0, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidOffset)); ///property. /// /// /// [TypeConverter(typeof(LengthConverter))] public double VerticalOffset { get { return (double)GetValue(VerticalOffsetProperty); } set { SetValue(VerticalOffsetProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty CanDelayPlacementProperty = DependencyProperty.Register( "CanDelayPlacement", typeof(bool), typeof(Figure), new FrameworkPropertyMetadata( true, FrameworkPropertyMetadataOptions.AffectsParentMeasure)); ///property. /// /// /// public bool CanDelayPlacement { get { return (bool)GetValue(CanDelayPlacementProperty); } set { SetValue(CanDelayPlacementProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty WrapDirectionProperty = DependencyProperty.Register( "WrapDirection", typeof(WrapDirection), typeof(Figure), new FrameworkPropertyMetadata( WrapDirection.Both, FrameworkPropertyMetadataOptions.AffectsParentMeasure), new ValidateValueCallback(IsValidWrapDirection)); ///property. /// /// /// public WrapDirection WrapDirection { get { return (WrapDirection)GetValue(WrapDirectionProperty); } set { SetValue(WrapDirectionProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty WidthProperty = DependencyProperty.Register( "Width", typeof(FigureLength), typeof(Figure), new FrameworkPropertyMetadata( new FigureLength(1.0, FigureUnitType.Auto), FrameworkPropertyMetadataOptions.AffectsMeasure)); ///property. /// /// The Width property specifies the width of the element. /// public FigureLength Width { get { return (FigureLength)GetValue(WidthProperty); } set { SetValue(WidthProperty, value); } } ////// DependencyProperty for public static readonly DependencyProperty HeightProperty = DependencyProperty.Register( "Height", typeof(FigureLength), typeof(Figure), new FrameworkPropertyMetadata( new FigureLength(1.0, FigureUnitType.Auto), FrameworkPropertyMetadataOptions.AffectsMeasure)); ///property. /// /// The Height property specifies the height of the element. /// public FigureLength Height { get { return (FigureLength)GetValue(HeightProperty); } set { SetValue(HeightProperty, value); } } #endregion Public Properties //-------------------------------------------------------------------- // // Private Methods // //-------------------------------------------------------------------- #region Private Methods private static bool IsValidHorizontalAnchor(object o) { FigureHorizontalAnchor value = (FigureHorizontalAnchor)o; return value == FigureHorizontalAnchor.ContentCenter || value == FigureHorizontalAnchor.ContentLeft || value == FigureHorizontalAnchor.ContentRight || value == FigureHorizontalAnchor.PageCenter || value == FigureHorizontalAnchor.PageLeft || value == FigureHorizontalAnchor.PageRight || value == FigureHorizontalAnchor.ColumnCenter || value == FigureHorizontalAnchor.ColumnLeft || value == FigureHorizontalAnchor.ColumnRight; // || value == FigureHorizontalAnchor.CharacterCenter // || value == FigureHorizontalAnchor.CharacterLeft // || value == FigureHorizontalAnchor.CharacterRight; } private static bool IsValidVerticalAnchor(object o) { FigureVerticalAnchor value = (FigureVerticalAnchor)o; return value == FigureVerticalAnchor.ContentBottom || value == FigureVerticalAnchor.ContentCenter || value == FigureVerticalAnchor.ContentTop || value == FigureVerticalAnchor.PageBottom || value == FigureVerticalAnchor.PageCenter || value == FigureVerticalAnchor.PageTop || value == FigureVerticalAnchor.ParagraphTop; // || value == FigureVerticalAnchor.CharacterBottom // || value == FigureVerticalAnchor.CharacterCenter // || value == FigureVerticalAnchor.CharacterTop; } private static bool IsValidWrapDirection(object o) { WrapDirection value = (WrapDirection)o; return value == WrapDirection.Both || value == WrapDirection.None || value == WrapDirection.Left || value == WrapDirection.Right; } private static bool IsValidOffset(object o) { double offset = (double)o; double maxOffset = Math.Min(1000000, PTS.MaxPageSize); double minOffset = -maxOffset; if (Double.IsNaN(offset)) { return false; } if (offset < minOffset || offset > maxOffset) { return false; } return true; } #endregion Private Methods } } // 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
- UIPropertyMetadata.cs
- RSAPKCS1SignatureDeformatter.cs
- BulletChrome.cs
- CheckBoxBaseAdapter.cs
- StrokeRenderer.cs
- ComboBoxItem.cs
- DrawingBrush.cs
- LinkLabelLinkClickedEvent.cs
- sqlinternaltransaction.cs
- ComponentCommands.cs
- entitydatasourceentitysetnameconverter.cs
- __Error.cs
- Helper.cs
- TemplateControlCodeDomTreeGenerator.cs
- Matrix.cs
- ColumnWidthChangedEvent.cs
- WebPartPersonalization.cs
- DeflateStream.cs
- _LoggingObject.cs
- versioninfo.cs
- ParameterCollectionEditor.cs
- ControlBindingsCollection.cs
- SurrogateEncoder.cs
- Point3DConverter.cs
- GridViewColumn.cs
- PeerMessageDispatcher.cs
- MeshGeometry3D.cs
- ConfigurationStrings.cs
- ConfigurationSettings.cs
- Validator.cs
- DataSourceUtil.cs
- AdapterUtil.cs
- ExpressionBindings.cs
- ToolTipAutomationPeer.cs
- CompoundFileDeflateTransform.cs
- EntityContainerEmitter.cs
- IdentityReference.cs
- CodeIndexerExpression.cs
- XmlValidatingReaderImpl.cs
- ExtendedPropertyCollection.cs
- ToolStripDropTargetManager.cs
- recordstate.cs
- PropertyItemInternal.cs
- GradientStop.cs
- ImageMetadata.cs
- HttpPostedFile.cs
- List.cs
- SimplePropertyEntry.cs
- UdpChannelFactory.cs
- Int32AnimationBase.cs
- TextSearch.cs
- _CookieModule.cs
- SmtpFailedRecipientsException.cs
- UserInitiatedRoutedEventPermissionAttribute.cs
- SQLInt64Storage.cs
- UITypeEditor.cs
- WorkflowApplicationAbortedEventArgs.cs
- AppearanceEditorPart.cs
- WebEncodingValidator.cs
- TypeReference.cs
- BrowsableAttribute.cs
- BitConverter.cs
- MessageQueuePermission.cs
- CreateUserWizardStep.cs
- ServiceBehaviorAttribute.cs
- ASCIIEncoding.cs
- DataSourceCache.cs
- DataGridCheckBoxColumn.cs
- PreviewKeyDownEventArgs.cs
- ConditionCollection.cs
- TreeSet.cs
- ElementNotEnabledException.cs
- FastPropertyAccessor.cs
- DataGridViewCellStateChangedEventArgs.cs
- ClusterSafeNativeMethods.cs
- ControlBindingsConverter.cs
- MergeLocalizationDirectives.cs
- FixedTextPointer.cs
- ScriptResourceAttribute.cs
- IndexOutOfRangeException.cs
- XmlLangPropertyAttribute.cs
- Condition.cs
- Context.cs
- ComponentSerializationService.cs
- SqlFileStream.cs
- FieldReference.cs
- WebCodeGenerator.cs
- SetterBaseCollection.cs
- ColumnProvider.cs
- HtmlShim.cs
- CodeDirectionExpression.cs
- ProgressiveCrcCalculatingStream.cs
- ReachIDocumentPaginatorSerializer.cs
- EventLog.cs
- FakeModelPropertyImpl.cs
- Trace.cs
- DataBinding.cs
- HttpServerChannel.cs
- EntityProviderServices.cs
- VariableAction.cs