Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- Binding.cs
- AnnouncementSendsAsyncResult.cs
- XmlAnyAttributeAttribute.cs
- ProtocolElement.cs
- XamlHostingSectionGroup.cs
- LiteralControl.cs
- CommonProperties.cs
- KnowledgeBase.cs
- VersionUtil.cs
- LiteralControl.cs
- complextypematerializer.cs
- SQLSingleStorage.cs
- COM2IManagedPerPropertyBrowsingHandler.cs
- KeyEventArgs.cs
- RequiredFieldValidator.cs
- X509Certificate2.cs
- ObjectKeyFrameCollection.cs
- RenameRuleObjectDialog.Designer.cs
- UnsafeNetInfoNativeMethods.cs
- KeyedHashAlgorithm.cs
- CodeAttributeDeclarationCollection.cs
- AssociationSetMetadata.cs
- ResourceCategoryAttribute.cs
- StylusPointPropertyInfo.cs
- CodeLabeledStatement.cs
- AuthenticationModulesSection.cs
- ScaleTransform.cs
- ComplusEndpointConfigContainer.cs
- SecurityHelper.cs
- GridViewSelectEventArgs.cs
- SafeNativeMemoryHandle.cs
- Point3DAnimation.cs
- UnsettableComboBox.cs
- ISAPIApplicationHost.cs
- InputBuffer.cs
- SByteConverter.cs
- XPathNavigatorKeyComparer.cs
- AssemblyAssociatedContentFileAttribute.cs
- TraceContext.cs
- CharacterBuffer.cs
- AutoResetEvent.cs
- SqlConnectionPoolGroupProviderInfo.cs
- WebBrowserHelper.cs
- DataGridViewCell.cs
- CookielessHelper.cs
- MiniMapControl.xaml.cs
- EntityContainerEmitter.cs
- ScrollBar.cs
- ValidationSummary.cs
- OracleConnectionFactory.cs
- ArgIterator.cs
- RoleGroupCollection.cs
- DataGridViewRowCancelEventArgs.cs
- BooleanStorage.cs
- UserControl.cs
- EntityRecordInfo.cs
- ReferencedType.cs
- ExpandableObjectConverter.cs
- CellTreeNode.cs
- AuthenticationException.cs
- JpegBitmapDecoder.cs
- UnorderedHashRepartitionStream.cs
- SystemIPv4InterfaceProperties.cs
- EntityConnectionStringBuilder.cs
- SamlAttribute.cs
- odbcmetadatafactory.cs
- RelatedCurrencyManager.cs
- HttpListenerContext.cs
- CompositeActivityDesigner.cs
- TopClause.cs
- ObjectTypeMapping.cs
- DataGridViewLinkColumn.cs
- ConfigXmlElement.cs
- RestHandlerFactory.cs
- XmlHierarchyData.cs
- SmtpTransport.cs
- ColorIndependentAnimationStorage.cs
- RelativeSource.cs
- LinqDataSourceUpdateEventArgs.cs
- SelectionEditingBehavior.cs
- ResourceDefaultValueAttribute.cs
- TreeNodeCollectionEditor.cs
- SrgsSemanticInterpretationTag.cs
- DataGridBoolColumn.cs
- SpoolingTask.cs
- CounterCreationDataCollection.cs
- HttpCookie.cs
- MsmqMessageSerializationFormat.cs
- MulticastIPAddressInformationCollection.cs
- ToReply.cs
- SupportsEventValidationAttribute.cs
- LocatorGroup.cs
- XmlDataProvider.cs
- EmissiveMaterial.cs
- ImageCreator.cs
- _OverlappedAsyncResult.cs
- TabItemWrapperAutomationPeer.cs
- OverlappedAsyncResult.cs
- NativeMethodsOther.cs
- ParameterCollection.cs