Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Documents / FixedSOMImage.cs / 1 / FixedSOMImage.cs
/*++ File: FixedSOMImage.cs Copyright (C) 2005 Microsoft Corporation. All rights reserved. Description: SOM object that wraps an image on the page. The corresponding markup element can be either an image or a Path with an ImageBrush History: 05/17/2005: agurcan - Created --*/ namespace System.Windows.Documents { using System.Windows.Automation; using System.Windows.Controls; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; using System.Globalization; using System.Diagnostics; internal sealed class FixedSOMImage : FixedSOMElement { //-------------------------------------------------------------------- // // Constructors // //--------------------------------------------------------------------- #region Constructors private FixedSOMImage(Rect imageRect, GeneralTransform trans, Uri sourceUri, FixedNode node, DependencyObject o) : base(node, trans) { _boundingRect = trans.TransformBounds(imageRect); _source = sourceUri; _startIndex = 0; _endIndex = 1; _name = AutomationProperties.GetName(o); _helpText = AutomationProperties.GetHelpText(o); } #endregion Constructors //------------------------------------------------------------------- // // Public Methods // //--------------------------------------------------------------------- #region Public Methods public static FixedSOMImage Create(FixedPage page, Image image, FixedNode fixedNode) { Uri imageUri = null; if (image.Source is BitmapImage) { BitmapImage imageSource = image.Source as BitmapImage; imageUri = imageSource.UriSource; } else if (image.Source is BitmapFrame) { BitmapFrame imageSource = image.Source as BitmapFrame; imageUri = new Uri(imageSource.ToString(), UriKind.RelativeOrAbsolute); } Rect sourceRect = new Rect(image.RenderSize); GeneralTransform transform = image.TransformToAncestor(page); return new FixedSOMImage(sourceRect, transform, imageUri, fixedNode, image); } public static FixedSOMImage Create(FixedPage page, Path path, FixedNode fixedNode) { Debug.Assert(path.Fill is ImageBrush); ImageSource source = ((ImageBrush)(path.Fill)).ImageSource; Uri imageUri = null; if (source is BitmapImage) { BitmapImage imageSource = source as BitmapImage; imageUri = imageSource.UriSource; } else if (source is BitmapFrame) { BitmapFrame imageSource = source as BitmapFrame; imageUri = new Uri(imageSource.ToString(), UriKind.RelativeOrAbsolute); } Rect sourceRect = path.Data.Bounds; GeneralTransform trans = path.TransformToAncestor(page); return new FixedSOMImage(sourceRect, trans, imageUri, fixedNode, path); } #if DEBUG public override void Render(DrawingContext dc, string label, DrawDebugVisual debugVisual) { Pen pen = new Pen(Brushes.Yellow, 1); Rect rect = _boundingRect; rect.Inflate(5,5); dc.DrawRectangle(null, pen , rect); if (label != null && debugVisual == DrawDebugVisual.Paragraphs) { base.RenderLabel(dc, label); } } #endif #endregion Public Methods //-------------------------------------------------------------------- // // Internal Properties // //--------------------------------------------------------------------- #region Internal Properties internal Uri Source { get { return _source; } } internal String Name { get { return _name; } } internal String HelpText { get { return _helpText; } } #endregion Internal Properties //-------------------------------------------------------------------- // // Private Fields // //---------------------------------------------------------------------- #region Private Fields private Uri _source; private String _name; private String _helpText; #endregion Interanl Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. /*++ File: FixedSOMImage.cs Copyright (C) 2005 Microsoft Corporation. All rights reserved. Description: SOM object that wraps an image on the page. The corresponding markup element can be either an image or a Path with an ImageBrush History: 05/17/2005: agurcan - Created --*/ namespace System.Windows.Documents { using System.Windows.Automation; using System.Windows.Controls; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; using System.Globalization; using System.Diagnostics; internal sealed class FixedSOMImage : FixedSOMElement { //-------------------------------------------------------------------- // // Constructors // //--------------------------------------------------------------------- #region Constructors private FixedSOMImage(Rect imageRect, GeneralTransform trans, Uri sourceUri, FixedNode node, DependencyObject o) : base(node, trans) { _boundingRect = trans.TransformBounds(imageRect); _source = sourceUri; _startIndex = 0; _endIndex = 1; _name = AutomationProperties.GetName(o); _helpText = AutomationProperties.GetHelpText(o); } #endregion Constructors //------------------------------------------------------------------- // // Public Methods // //--------------------------------------------------------------------- #region Public Methods public static FixedSOMImage Create(FixedPage page, Image image, FixedNode fixedNode) { Uri imageUri = null; if (image.Source is BitmapImage) { BitmapImage imageSource = image.Source as BitmapImage; imageUri = imageSource.UriSource; } else if (image.Source is BitmapFrame) { BitmapFrame imageSource = image.Source as BitmapFrame; imageUri = new Uri(imageSource.ToString(), UriKind.RelativeOrAbsolute); } Rect sourceRect = new Rect(image.RenderSize); GeneralTransform transform = image.TransformToAncestor(page); return new FixedSOMImage(sourceRect, transform, imageUri, fixedNode, image); } public static FixedSOMImage Create(FixedPage page, Path path, FixedNode fixedNode) { Debug.Assert(path.Fill is ImageBrush); ImageSource source = ((ImageBrush)(path.Fill)).ImageSource; Uri imageUri = null; if (source is BitmapImage) { BitmapImage imageSource = source as BitmapImage; imageUri = imageSource.UriSource; } else if (source is BitmapFrame) { BitmapFrame imageSource = source as BitmapFrame; imageUri = new Uri(imageSource.ToString(), UriKind.RelativeOrAbsolute); } Rect sourceRect = path.Data.Bounds; GeneralTransform trans = path.TransformToAncestor(page); return new FixedSOMImage(sourceRect, trans, imageUri, fixedNode, path); } #if DEBUG public override void Render(DrawingContext dc, string label, DrawDebugVisual debugVisual) { Pen pen = new Pen(Brushes.Yellow, 1); Rect rect = _boundingRect; rect.Inflate(5,5); dc.DrawRectangle(null, pen , rect); if (label != null && debugVisual == DrawDebugVisual.Paragraphs) { base.RenderLabel(dc, label); } } #endif #endregion Public Methods //-------------------------------------------------------------------- // // Internal Properties // //--------------------------------------------------------------------- #region Internal Properties internal Uri Source { get { return _source; } } internal String Name { get { return _name; } } internal String HelpText { get { return _helpText; } } #endregion Internal Properties //-------------------------------------------------------------------- // // Private Fields // //---------------------------------------------------------------------- #region Private Fields private Uri _source; private String _name; private String _helpText; #endregion Interanl Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SspiHelper.cs
- FloatMinMaxAggregationOperator.cs
- ServiceRoute.cs
- AesManaged.cs
- SnapshotChangeTrackingStrategy.cs
- EntityDataSourceMemberPath.cs
- CryptoHandle.cs
- SystemIPGlobalStatistics.cs
- MetafileHeader.cs
- NamedPermissionSet.cs
- AssemblySettingAttributes.cs
- DataGridViewSelectedRowCollection.cs
- FileSystemEventArgs.cs
- BitConverter.cs
- SqlDataSourceCache.cs
- HMACMD5.cs
- TerminatorSinks.cs
- DrawingVisual.cs
- OleDbStruct.cs
- CompensatableTransactionScopeActivity.cs
- SqlParameterCollection.cs
- RuntimeWrappedException.cs
- XmlAttributeProperties.cs
- EntityCommandExecutionException.cs
- JoinTreeSlot.cs
- Bidi.cs
- SystemUdpStatistics.cs
- DbTransaction.cs
- CachedRequestParams.cs
- CompositeFontFamily.cs
- StylusSystemGestureEventArgs.cs
- ServiceRoute.cs
- FixedSOMTableRow.cs
- ActiveDocumentEvent.cs
- NameValueFileSectionHandler.cs
- ResourceProperty.cs
- DebugController.cs
- HttpResponseInternalWrapper.cs
- ContentPathSegment.cs
- RectAnimationUsingKeyFrames.cs
- AnonymousIdentificationSection.cs
- AssociatedControlConverter.cs
- SendKeys.cs
- BulletChrome.cs
- IPipelineRuntime.cs
- GcSettings.cs
- Thumb.cs
- ClientConvert.cs
- IntellisenseTextBox.cs
- SafePointer.cs
- DesignSurfaceServiceContainer.cs
- QuaternionAnimation.cs
- TextureBrush.cs
- TokenBasedSetEnumerator.cs
- XamlLoadErrorInfo.cs
- AuthorizationSection.cs
- InvalidAsynchronousStateException.cs
- Query.cs
- ServiceDescriptionContext.cs
- DoubleLink.cs
- CounterSampleCalculator.cs
- InitializerFacet.cs
- CTreeGenerator.cs
- DetailsViewUpdatedEventArgs.cs
- TypeCodeDomSerializer.cs
- MsmqInputChannelBase.cs
- MetadataArtifactLoaderComposite.cs
- PolyQuadraticBezierSegment.cs
- UpdateExpressionVisitor.cs
- OdbcInfoMessageEvent.cs
- CompressEmulationStream.cs
- RegexCharClass.cs
- HttpHandlerActionCollection.cs
- CLRBindingWorker.cs
- BodyGlyph.cs
- RoleGroupCollectionEditor.cs
- OleServicesContext.cs
- TemplateColumn.cs
- EventLogQuery.cs
- TreeViewItemAutomationPeer.cs
- GridViewSortEventArgs.cs
- NameHandler.cs
- TransformedBitmap.cs
- SapiRecognizer.cs
- Unit.cs
- OpCellTreeNode.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- AttributeQuery.cs
- MeshGeometry3D.cs
- QilTernary.cs
- XDeferredAxisSource.cs
- PtsHelper.cs
- XsdDuration.cs
- DefinitionUpdate.cs
- ManagementClass.cs
- BitmapEncoder.cs
- _SingleItemRequestCache.cs
- XmlElementAttributes.cs
- DataGridViewBand.cs
- BindableTemplateBuilder.cs