Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Input / ProcessInputEventArgs.cs / 1305600 / ProcessInputEventArgs.cs
using System; using System.Security.Permissions; using System.Security; using MS.Internal; using MS.Internal.PresentationCore; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Input { ////// Provides access to the input manager's staging area. /// ////// An instance of this class, or a derived class, is passed to the /// handlers of the following events: /// public class ProcessInputEventArgs : NotifyInputEventArgs { // Only we can make these. Note that we cache and resuse instances. internal ProcessInputEventArgs() {} //////
///- ///
////// - ///
////// /// Critical - calls a critical method base.Reset /// [SecurityCritical] internal override void Reset(StagingAreaInputItem input, InputManager inputManager) { _allowAccessToStagingArea = true; base.Reset(input, inputManager); } ////// Pushes an input event onto the top of the staging area. /// /// /// The input event to place on the staging area. This may not /// be null, and may not already exist in the staging area. /// /// /// An existing staging area item to promote the state from. /// ////// The staging area input item that wraps the specified input. /// ////// Callers must have UIPermission(PermissionState.Unrestricted) to call this API. /// ////// Critical - calls a critical method ( PushInput) /// PublicOK - there is a link demand for public callers. /// [SecurityCritical ] [UIPermissionAttribute(SecurityAction.LinkDemand,Unrestricted=true)] public StagingAreaInputItem PushInput(InputEventArgs input, StagingAreaInputItem promote) // Note: this should be a bool, and always use the InputItem available on these args. { if(!_allowAccessToStagingArea) { throw new InvalidOperationException(SR.Get(SRID.NotAllowedToAccessStagingArea)); } return this.UnsecureInputManager.PushInput(input, promote); } ////// Pushes an input event onto the top of the staging area. /// /// /// The input event to place on the staging area. This may not /// be null, and may not already exist in the staging area. /// ////// The specified staging area input item. /// ////// Callers must have UIPermission(PermissionState.Unrestricted) to call this API. /// ////// Critical - calls a critical method ( PushInput) /// PublicOK - there is a link demand for public callers. /// [SecurityCritical] [UIPermissionAttribute(SecurityAction.LinkDemand,Unrestricted=true)] public StagingAreaInputItem PushInput(StagingAreaInputItem input) { if(!_allowAccessToStagingArea) { throw new InvalidOperationException(SR.Get(SRID.NotAllowedToAccessStagingArea)); } return this.UnsecureInputManager.PushInput(input); } ////// Pops off the input event on the top of the staging area. /// ////// The input event that was on the top of the staging area. /// This can be null, if the staging area was empty. /// ////// Callers must have UIPermission(PermissionState.Unrestricted) to call this API. /// ////// Critical - calls a critical function ( InputManager.PopInput) /// PublicOK - there is a demand. /// [SecurityCritical] public StagingAreaInputItem PopInput() { SecurityHelper.DemandUnrestrictedUIPermission(); if(!_allowAccessToStagingArea) { throw new InvalidOperationException(SR.Get(SRID.NotAllowedToAccessStagingArea)); } return this.UnsecureInputManager.PopInput(); } ////// Returns the input event on the top of the staging area. /// ////// The input event that is on the top of the staging area. /// This can be null, if the staging area is empty. /// ////// Callers must have UIPermission(PermissionState.Unrestricted) to call this API. /// ////// Critical - accesses UnsecureInputManager /// PublicOK - there is a demand. /// [SecurityCritical] public StagingAreaInputItem PeekInput() { SecurityHelper.DemandUnrestrictedUIPermission(); if(!_allowAccessToStagingArea) { throw new InvalidOperationException(SR.Get(SRID.NotAllowedToAccessStagingArea)); } return this.UnsecureInputManager.PeekInput(); } private bool _allowAccessToStagingArea; } ////// Delegate type for handles of events that use /// public delegate void ProcessInputEventHandler(object sender, ProcessInputEventArgs e); } // 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
- ClassValidator.cs
- HttpCacheParams.cs
- AttachedAnnotationChangedEventArgs.cs
- TargetParameterCountException.cs
- ThreadExceptionDialog.cs
- PngBitmapDecoder.cs
- UnaryOperationBinder.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- PerformanceCounterManager.cs
- FixedBufferAttribute.cs
- __ConsoleStream.cs
- ImpersonateTokenRef.cs
- ECDiffieHellmanPublicKey.cs
- RegexWriter.cs
- FormsAuthentication.cs
- WebBrowser.cs
- PropertyOrder.cs
- NavigationFailedEventArgs.cs
- UserNameSecurityTokenProvider.cs
- EllipticalNodeOperations.cs
- FileDialogCustomPlacesCollection.cs
- Size3DValueSerializer.cs
- NetworkInterface.cs
- SqlRemoveConstantOrderBy.cs
- ConfigurationCollectionAttribute.cs
- MatcherBuilder.cs
- Geometry.cs
- shaperfactoryquerycacheentry.cs
- AncestorChangedEventArgs.cs
- WindowsRichEditRange.cs
- VirtualPathUtility.cs
- DataGridViewCell.cs
- TrackingQueryElement.cs
- Underline.cs
- CompoundFileStreamReference.cs
- ExpandSegmentCollection.cs
- translator.cs
- TriggerActionCollection.cs
- XMLSchema.cs
- XmlSchemaParticle.cs
- GenericPrincipal.cs
- BaseCAMarshaler.cs
- StrokeFIndices.cs
- HttpHostedTransportConfiguration.cs
- DropDownButton.cs
- ServiceNameCollection.cs
- ImageResources.Designer.cs
- XmlNamespaceDeclarationsAttribute.cs
- Registry.cs
- ToolboxComponentsCreatingEventArgs.cs
- Rect3D.cs
- ContourSegment.cs
- XmlSchemaException.cs
- DBConcurrencyException.cs
- StringArrayConverter.cs
- XPathDocument.cs
- TextProperties.cs
- CultureMapper.cs
- GlyphRun.cs
- HtmlHead.cs
- KeyToListMap.cs
- XmlDocumentFragment.cs
- ServiceChannel.cs
- DocumentGridContextMenu.cs
- FacetValueContainer.cs
- XsdDateTime.cs
- CssTextWriter.cs
- PrintController.cs
- DesigntimeLicenseContext.cs
- XmlSerializableServices.cs
- ObjectSerializerFactory.cs
- BitmapVisualManager.cs
- SiteMapNodeItem.cs
- ManagedIStream.cs
- CheckedPointers.cs
- FormsAuthenticationConfiguration.cs
- FileFormatException.cs
- BrowserCapabilitiesCompiler.cs
- BamlResourceSerializer.cs
- IPGlobalProperties.cs
- DesignerActionVerbList.cs
- ScrollBarRenderer.cs
- XmlKeywords.cs
- FullTextLine.cs
- MetadataSection.cs
- ColumnTypeConverter.cs
- WebSysDescriptionAttribute.cs
- UserControl.cs
- TagPrefixCollection.cs
- LogEntrySerialization.cs
- EntityProviderServices.cs
- CheckBoxList.cs
- TransportElement.cs
- Rect.cs
- XmlReflectionMember.cs
- RSAPKCS1KeyExchangeFormatter.cs
- ExpressionEditorSheet.cs
- DynamicResourceExtension.cs
- XmlDocument.cs
- DWriteFactory.cs