Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / System / Windows / Media / Effects / BitmapEffectrendercontext.cs / 1 / BitmapEffectrendercontext.cs
//------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2005 // // File: BitmapEffectRenderContext.cs //----------------------------------------------------------------------------- using MS.Internal; using System; using System.IO; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Reflection; using System.Runtime.InteropServices; using System.Windows; using System.Windows.Media; using System.Windows.Markup; using System.Windows.Media.Animation; using System.Windows.Media.Composition; using System.Security; using MS.Internal.PresentationCore; namespace System.Windows.Media.Effects { ////// BitmapEffectRenderContext /// internal class BitmapEffectRenderContext { SafeMILHandle /*IMILBitmapEffectRenderContext*/ context; ////// BitmapEffectRenderContext /// public BitmapEffectRenderContext() { Create(); } ////// NativeContext /// internal SafeMILHandle NativeContextSafeHandle { get { return context; } } ////// Sets the output pixel format /// public PixelFormat OutputPixelFormat { #if never get { Guid guid; HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.GetOutputPixelFormat(NativeContextSafeHandle, out guid)); return PixelFormat.GetPixelFormat(guid); } #endif set { Guid guid = value.Guid; HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetOutputPixelFormat(NativeContextSafeHandle, ref guid)); } } #if never ////// /// public bool SoftwareRenderer { set { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetUseSoftwareRenderer(context, value)); } } #endif ////// Gets or sets the transform for the effects pipeline /// public Matrix Transform { get { double m11, m12, m21, m22, m31, m32; HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.GetFinalTransform(NativeContextSafeHandle, out m11, out m12, out m21, out m22, out m31, out m32)); return new Matrix(m11, m12, m21, m22, m31, m32); } set { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetInitialTransform(NativeContextSafeHandle, value.M11, value.M12, value.M21, value.M22, value.OffsetX, value.OffsetY)); } } ////// Sets the output DPI /// public Point OutputDPI { #if never get { double dpiX, dpiY; HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.GetOutputDPI(NativeContextSafeHandle, out dpiX, out dpiY)); return new Point(dpiX, dpiY); } #endif set { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetOutputDPI(NativeContextSafeHandle, value.X, value.Y)); } } ////// Sets the region of interest /// public Rect RenderRect { set { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetRegionOfInterest(context, ref value)); } } ////// Create context /// ////// Critical - calls critical code method FactoryMaker.FactoryMaker /// TreatAsSafe - as there is a demand /// [SecurityCritical, SecurityTreatAsSafe] internal void Create() { SecurityHelper.DemandUIWindowPermission(); using (FactoryMaker myFactory = new FactoryMaker()) { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.MILFactoryEffects.CreateBitmapEffectContext(myFactory.FactoryPtr, out context)); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2005 // // File: BitmapEffectRenderContext.cs //----------------------------------------------------------------------------- using MS.Internal; using System; using System.IO; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.Reflection; using System.Runtime.InteropServices; using System.Windows; using System.Windows.Media; using System.Windows.Markup; using System.Windows.Media.Animation; using System.Windows.Media.Composition; using System.Security; using MS.Internal.PresentationCore; namespace System.Windows.Media.Effects { ////// BitmapEffectRenderContext /// internal class BitmapEffectRenderContext { SafeMILHandle /*IMILBitmapEffectRenderContext*/ context; ////// BitmapEffectRenderContext /// public BitmapEffectRenderContext() { Create(); } ////// NativeContext /// internal SafeMILHandle NativeContextSafeHandle { get { return context; } } ////// Sets the output pixel format /// public PixelFormat OutputPixelFormat { #if never get { Guid guid; HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.GetOutputPixelFormat(NativeContextSafeHandle, out guid)); return PixelFormat.GetPixelFormat(guid); } #endif set { Guid guid = value.Guid; HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetOutputPixelFormat(NativeContextSafeHandle, ref guid)); } } #if never ////// /// public bool SoftwareRenderer { set { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetUseSoftwareRenderer(context, value)); } } #endif ////// Gets or sets the transform for the effects pipeline /// public Matrix Transform { get { double m11, m12, m21, m22, m31, m32; HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.GetFinalTransform(NativeContextSafeHandle, out m11, out m12, out m21, out m22, out m31, out m32)); return new Matrix(m11, m12, m21, m22, m31, m32); } set { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetInitialTransform(NativeContextSafeHandle, value.M11, value.M12, value.M21, value.M22, value.OffsetX, value.OffsetY)); } } ////// Sets the output DPI /// public Point OutputDPI { #if never get { double dpiX, dpiY; HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.GetOutputDPI(NativeContextSafeHandle, out dpiX, out dpiY)); return new Point(dpiX, dpiY); } #endif set { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetOutputDPI(NativeContextSafeHandle, value.X, value.Y)); } } ////// Sets the region of interest /// public Rect RenderRect { set { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.IMILBitmapEffectRenderContext.SetRegionOfInterest(context, ref value)); } } ////// Create context /// ////// Critical - calls critical code method FactoryMaker.FactoryMaker /// TreatAsSafe - as there is a demand /// [SecurityCritical, SecurityTreatAsSafe] internal void Create() { SecurityHelper.DemandUIWindowPermission(); using (FactoryMaker myFactory = new FactoryMaker()) { HRESULT.Check(MS.Win32.PresentationCore.UnsafeNativeMethods.MILFactoryEffects.CreateBitmapEffectContext(myFactory.FactoryPtr, out context)); } } } } // 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
- QilChoice.cs
- Operator.cs
- PasswordRecovery.cs
- WasEndpointConfigContainer.cs
- SystemNetHelpers.cs
- DecoderReplacementFallback.cs
- HtmlProps.cs
- TextServicesLoader.cs
- RuntimeIdentifierPropertyAttribute.cs
- ADConnectionHelper.cs
- ClientSettings.cs
- LinkUtilities.cs
- Stream.cs
- SqlVersion.cs
- XamlTypeWithExplicitNamespace.cs
- CodeParameterDeclarationExpression.cs
- Point3DAnimationBase.cs
- EntityViewGenerator.cs
- AsymmetricSignatureDeformatter.cs
- Gdiplus.cs
- WeakReferenceEnumerator.cs
- _NTAuthentication.cs
- NotSupportedException.cs
- ZoneLinkButton.cs
- SQLBytes.cs
- CodeTypeMemberCollection.cs
- ObjectListShowCommandsEventArgs.cs
- VisemeEventArgs.cs
- OdbcError.cs
- _DomainName.cs
- Schema.cs
- EditingMode.cs
- Base64Encoder.cs
- FieldDescriptor.cs
- TreeNodeCollection.cs
- CookieParameter.cs
- ArgumentOutOfRangeException.cs
- SchemaElement.cs
- NaturalLanguageHyphenator.cs
- GeometryDrawing.cs
- Cursors.cs
- ContextBase.cs
- Effect.cs
- CodeExporter.cs
- SortedList.cs
- ProxyElement.cs
- ToolStripSplitButton.cs
- CharAnimationBase.cs
- HandlerWithFactory.cs
- WindowsStatic.cs
- ToolStripLabel.cs
- NumberAction.cs
- PrintPageEvent.cs
- ImageList.cs
- MenuRendererStandards.cs
- CalendarDay.cs
- XsdDataContractExporter.cs
- GridViewRowPresenterBase.cs
- OdbcEnvironment.cs
- SignedPkcs7.cs
- SqlTypesSchemaImporter.cs
- AuthenticationService.cs
- DataObject.cs
- RadialGradientBrush.cs
- ToolStripPanelRow.cs
- XmlAutoDetectWriter.cs
- ResXDataNode.cs
- AsyncPostBackErrorEventArgs.cs
- ImageConverter.cs
- ToolboxItemWrapper.cs
- basecomparevalidator.cs
- ResolveInfo.cs
- tabpagecollectioneditor.cs
- DataRowCollection.cs
- ToolboxComponentsCreatedEventArgs.cs
- LoginCancelEventArgs.cs
- Nullable.cs
- OleDbRowUpdatingEvent.cs
- CrossContextChannel.cs
- ProgressBar.cs
- EntityObject.cs
- DataServiceQuery.cs
- TreeNode.cs
- Message.cs
- Byte.cs
- RSAOAEPKeyExchangeFormatter.cs
- Panel.cs
- EditorPartChrome.cs
- RSAOAEPKeyExchangeDeformatter.cs
- ClientBuildManagerCallback.cs
- odbcmetadatafactory.cs
- ScriptingProfileServiceSection.cs
- PathParser.cs
- MultiSelector.cs
- InstanceDescriptor.cs
- OutputCacheProfileCollection.cs
- followingquery.cs
- GridViewRowCollection.cs
- RSAPKCS1SignatureFormatter.cs
- BitmapData.cs