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
- WebPartHeaderCloseVerb.cs
- XPathDocument.cs
- FormViewInsertEventArgs.cs
- Delay.cs
- TypeSystemHelpers.cs
- WorkerRequest.cs
- ExternalCalls.cs
- DataBindingCollection.cs
- ColorKeyFrameCollection.cs
- XmlEnumAttribute.cs
- Claim.cs
- XhtmlBasicPageAdapter.cs
- SafeRegistryKey.cs
- ObjectViewQueryResultData.cs
- Ray3DHitTestResult.cs
- WebPageTraceListener.cs
- Queue.cs
- ViewBase.cs
- ServiceEndpoint.cs
- InitializerFacet.cs
- XmlLinkedNode.cs
- GraphicsPathIterator.cs
- SectionXmlInfo.cs
- Condition.cs
- ListenerAdapterBase.cs
- OleDbRowUpdatingEvent.cs
- SelectionProcessor.cs
- FlowLayoutSettings.cs
- XamlHostingConfiguration.cs
- ToolStripSplitButton.cs
- ParallelTimeline.cs
- xamlnodes.cs
- RoutingBehavior.cs
- MULTI_QI.cs
- RectValueSerializer.cs
- DeploymentSectionCache.cs
- VectorCollectionValueSerializer.cs
- WebAdminConfigurationHelper.cs
- PtsContext.cs
- HtmlInputImage.cs
- TitleStyle.cs
- TempFiles.cs
- MenuDesigner.cs
- DataObjectFieldAttribute.cs
- ListBindingConverter.cs
- ToolboxItemFilterAttribute.cs
- HybridWebProxyFinder.cs
- WebPartMinimizeVerb.cs
- BaseProcessor.cs
- GenericUriParser.cs
- TabControl.cs
- StrongBox.cs
- ResourceReader.cs
- SR.cs
- SecurityContext.cs
- SortedDictionary.cs
- Bind.cs
- EllipseGeometry.cs
- MediaPlayer.cs
- DataGridComponentEditor.cs
- FormsAuthenticationCredentials.cs
- XamlToRtfWriter.cs
- XmlCharCheckingWriter.cs
- CustomWebEventKey.cs
- FontEditor.cs
- CollectionViewProxy.cs
- DPCustomTypeDescriptor.cs
- Switch.cs
- TextFormatter.cs
- DateTimeValueSerializerContext.cs
- HttpCookiesSection.cs
- CatalogPart.cs
- WmfPlaceableFileHeader.cs
- Literal.cs
- DataStreams.cs
- TextParagraphView.cs
- ElementUtil.cs
- safemediahandle.cs
- EntityTemplateUserControl.cs
- AudioException.cs
- RouteParameter.cs
- CompositeCollectionView.cs
- TransformProviderWrapper.cs
- AudioBase.cs
- NumberSubstitution.cs
- ScriptingWebServicesSectionGroup.cs
- ProcessModelInfo.cs
- XmlSchemaImport.cs
- LinqDataSourceContextEventArgs.cs
- CodeDirectiveCollection.cs
- DataColumnSelectionConverter.cs
- GridViewSelectEventArgs.cs
- UrlMapping.cs
- HasCopySemanticsAttribute.cs
- EncryptRequest.cs
- parserscommon.cs
- MarkupCompiler.cs
- ZoneButton.cs
- AttributeCollection.cs
- MissingMethodException.cs