Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Core / System / Windows / Input / ProcessInputEventArgs.cs / 1 / 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
- DataBindingCollection.cs
- BufferedReceiveManager.cs
- WindowAutomationPeer.cs
- Lasso.cs
- DataBoundControlAdapter.cs
- X509ChainPolicy.cs
- BasicBrowserDialog.designer.cs
- XpsViewerException.cs
- RoutedUICommand.cs
- SByteConverter.cs
- DataColumnPropertyDescriptor.cs
- MatrixIndependentAnimationStorage.cs
- Table.cs
- GeneralTransform.cs
- PreviewKeyDownEventArgs.cs
- ParameterBuilder.cs
- XmlUrlResolver.cs
- ExtensionWindowResizeGrip.cs
- PermissionToken.cs
- RenamedEventArgs.cs
- CompositionCommandSet.cs
- XmlIncludeAttribute.cs
- ReflectionServiceProvider.cs
- HtmlHistory.cs
- TransformGroup.cs
- ConstraintStruct.cs
- ServiceModelConfigurationSection.cs
- ActivityExecutionContextCollection.cs
- MultiBinding.cs
- DataRow.cs
- VScrollBar.cs
- StringAnimationUsingKeyFrames.cs
- ObfuscateAssemblyAttribute.cs
- ObjectQuery_EntitySqlExtensions.cs
- MobileControlPersister.cs
- TypeLoadException.cs
- CommandDevice.cs
- FunctionDescription.cs
- Visitor.cs
- TypeGeneratedEventArgs.cs
- Axis.cs
- XmlILModule.cs
- ObjectNavigationPropertyMapping.cs
- ControlSerializer.cs
- propertytag.cs
- WindowsFormsDesignerOptionService.cs
- DesignerAdapterAttribute.cs
- HtmlElementEventArgs.cs
- CodeNamespaceImport.cs
- Material.cs
- MimeWriter.cs
- AliasExpr.cs
- TextBreakpoint.cs
- QilList.cs
- ResourcePool.cs
- ReflectionServiceProvider.cs
- Font.cs
- NetworkCredential.cs
- WindowsComboBox.cs
- MarkupCompilePass2.cs
- GenericIdentity.cs
- ZoneLinkButton.cs
- BaseCollection.cs
- KeyInterop.cs
- ItemContainerProviderWrapper.cs
- XmlCharCheckingReader.cs
- PersonalizationProviderHelper.cs
- HitTestParameters.cs
- XamlToRtfParser.cs
- BuildProvider.cs
- ContentIterators.cs
- GeneralTransform2DTo3DTo2D.cs
- BezierSegment.cs
- _SslStream.cs
- EventQueueState.cs
- XmlTextReader.cs
- AspNetHostingPermission.cs
- XmlSigningNodeWriter.cs
- DrawToolTipEventArgs.cs
- TemplatePropertyEntry.cs
- ProcessHostFactoryHelper.cs
- DrawingContext.cs
- StylusPointDescription.cs
- Attribute.cs
- FindCriteria.cs
- ObjectReferenceStack.cs
- ObjectResult.cs
- TaskCanceledException.cs
- columnmapfactory.cs
- CardSpaceException.cs
- FeatureSupport.cs
- ChannelServices.cs
- HwndKeyboardInputProvider.cs
- NumberFormatter.cs
- EntityDataSourceContainerNameItem.cs
- XPathSelectionIterator.cs
- CodeIterationStatement.cs
- MultiAsyncResult.cs
- Utils.cs
- EndpointAddress.cs