Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / wpf / src / Core / CSharp / System / Windows / Media / Effects / BlurBitmapEffect.cs / 1 / BlurBitmapEffect.cs
//------------------------------------------------------------------------------ // Microsoft Avalon // Copyright (c) Microsoft Corporation, 2005 // // File: BlurBitmapEffect.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 MS.Internal.PresentationCore; using System.Security; namespace System.Windows.Media.Effects { ////// BlurBitmapEffectPrimitive /// public sealed partial class BlurBitmapEffect : BitmapEffect { ////// Constructor /// public BlurBitmapEffect() { } ////// Creates the unmanaged effect handle /// unsafe protected override SafeHandle CreateUnmanagedEffect() { return Create(new Guid(0xa924df87, 0x225d, 0x4373, 0x8f, 0x5b, 0xb9, 0xe, 0xc8, 0x5a, 0xe3, 0xde)); } ////// Update (propagetes) properties to the unmanaged effect /// ////// This method demands permission because effects should not be run /// in partial trust. /// /// SecurityCritical - because SetValue has a link demand /// SecutiryTreatAsSafe - because it demans UIWindow permission /// [SecurityCritical, SecurityTreatAsSafe] protected override void UpdateUnmanagedPropertyState(SafeHandle unmanagedEffect) { SecurityHelper.DemandUIWindowPermission(); BitmapEffect.SetValue(unmanagedEffect, "Radius", this.Radius); BitmapEffect.SetValue(unmanagedEffect, "KernelType", this.KernelType); } ////// An ImageEffect can be used to emulate a BlurBitmapEffect with certain restrictions. This /// method returns true when it is possible to emulate the BlurBitmapEffect using an ImageEffect. /// internal override bool CanBeEmulatedUsingEffectPipeline() { return (Radius <= 100.0); } ////// Returns a Effect that emulates this BlurBitmapEffect. /// internal override Effect GetEmulatingEffect() { if (_imageEffectEmulation == null) { _imageEffectEmulation = new BlurEffect(); } if (_imageEffectEmulation.Radius != Radius) { _imageEffectEmulation.Radius = Radius; } if (_imageEffectEmulation.KernelType != KernelType) { _imageEffectEmulation.KernelType = KernelType; } _imageEffectEmulation.RenderingBias = RenderingBias.Performance; return _imageEffectEmulation; } BlurEffect _imageEffectEmulation; } } // 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: BlurBitmapEffect.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 MS.Internal.PresentationCore; using System.Security; namespace System.Windows.Media.Effects { ////// BlurBitmapEffectPrimitive /// public sealed partial class BlurBitmapEffect : BitmapEffect { ////// Constructor /// public BlurBitmapEffect() { } ////// Creates the unmanaged effect handle /// unsafe protected override SafeHandle CreateUnmanagedEffect() { return Create(new Guid(0xa924df87, 0x225d, 0x4373, 0x8f, 0x5b, 0xb9, 0xe, 0xc8, 0x5a, 0xe3, 0xde)); } ////// Update (propagetes) properties to the unmanaged effect /// ////// This method demands permission because effects should not be run /// in partial trust. /// /// SecurityCritical - because SetValue has a link demand /// SecutiryTreatAsSafe - because it demans UIWindow permission /// [SecurityCritical, SecurityTreatAsSafe] protected override void UpdateUnmanagedPropertyState(SafeHandle unmanagedEffect) { SecurityHelper.DemandUIWindowPermission(); BitmapEffect.SetValue(unmanagedEffect, "Radius", this.Radius); BitmapEffect.SetValue(unmanagedEffect, "KernelType", this.KernelType); } ////// An ImageEffect can be used to emulate a BlurBitmapEffect with certain restrictions. This /// method returns true when it is possible to emulate the BlurBitmapEffect using an ImageEffect. /// internal override bool CanBeEmulatedUsingEffectPipeline() { return (Radius <= 100.0); } ////// Returns a Effect that emulates this BlurBitmapEffect. /// internal override Effect GetEmulatingEffect() { if (_imageEffectEmulation == null) { _imageEffectEmulation = new BlurEffect(); } if (_imageEffectEmulation.Radius != Radius) { _imageEffectEmulation.Radius = Radius; } if (_imageEffectEmulation.KernelType != KernelType) { _imageEffectEmulation.KernelType = KernelType; } _imageEffectEmulation.RenderingBias = RenderingBias.Performance; return _imageEffectEmulation; } BlurEffect _imageEffectEmulation; } } // 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
- ConfigXmlSignificantWhitespace.cs
- SplashScreenNativeMethods.cs
- CacheRequest.cs
- ListBoxItem.cs
- KnownBoxes.cs
- WindowsListViewSubItem.cs
- ILGenerator.cs
- DateTimeStorage.cs
- NotImplementedException.cs
- ProviderCollection.cs
- DataSourceCache.cs
- IndentedTextWriter.cs
- Pen.cs
- Int16.cs
- QuerySafeNavigator.cs
- RequestCache.cs
- WeakRefEnumerator.cs
- Util.cs
- EditCommandColumn.cs
- SelectedPathEditor.cs
- XamlWriter.cs
- ObsoleteAttribute.cs
- XmlIlTypeHelper.cs
- CodeTypeReference.cs
- StringResourceManager.cs
- NativeMethods.cs
- DefaultAssemblyResolver.cs
- ScalarOps.cs
- CommandValueSerializer.cs
- BaseTemplateCodeDomTreeGenerator.cs
- Schema.cs
- RequestBringIntoViewEventArgs.cs
- ReferencedAssembly.cs
- DebugViewWriter.cs
- DataBoundLiteralControl.cs
- FileFormatException.cs
- CustomErrorsSectionWrapper.cs
- AppSecurityManager.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- DictionaryKeyPropertyAttribute.cs
- XmlDesigner.cs
- CompilationUnit.cs
- Attachment.cs
- RuntimeIdentifierPropertyAttribute.cs
- ValidateNames.cs
- TCPClient.cs
- X509SecurityTokenProvider.cs
- Comparer.cs
- DetailsViewCommandEventArgs.cs
- ProfessionalColorTable.cs
- DeferredReference.cs
- NativeMethods.cs
- InvalidEnumArgumentException.cs
- QuotedPrintableStream.cs
- Variable.cs
- Menu.cs
- HtmlProps.cs
- NumberFormatter.cs
- XmlHelper.cs
- GridSplitterAutomationPeer.cs
- BuiltInExpr.cs
- SystemKeyConverter.cs
- WSSecureConversationFeb2005.cs
- bidPrivateBase.cs
- Hex.cs
- Span.cs
- Attachment.cs
- NavigationFailedEventArgs.cs
- MetadataFile.cs
- WindowsFormsSynchronizationContext.cs
- Calendar.cs
- ObjectDisposedException.cs
- CaretElement.cs
- GotoExpression.cs
- X509SecurityTokenProvider.cs
- OleTxTransactionInfo.cs
- XmlnsPrefixAttribute.cs
- XmlDataDocument.cs
- ContextConfiguration.cs
- NameValueCollection.cs
- InfoCardMasterKey.cs
- TextEditorCopyPaste.cs
- PageSettings.cs
- PublisherIdentityPermission.cs
- CqlQuery.cs
- DataGridViewCheckBoxColumn.cs
- DataGridViewCellStyleContentChangedEventArgs.cs
- RenderData.cs
- DataReaderContainer.cs
- DesignerActionVerbItem.cs
- EntityDataSourceSelectedEventArgs.cs
- WebPartVerb.cs
- CachedPathData.cs
- HMACSHA512.cs
- InvalidOleVariantTypeException.cs
- documentsequencetextcontainer.cs
- TraceContextEventArgs.cs
- ToolStripDropDownMenu.cs
- PEFileReader.cs
- BitmapCache.cs