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
- GridSplitterAutomationPeer.cs
- PackageFilter.cs
- CharUnicodeInfo.cs
- ObjectManager.cs
- DbFunctionCommandTree.cs
- WebPartConnectionsConfigureVerb.cs
- FieldDescriptor.cs
- XmlHierarchicalEnumerable.cs
- ScrollItemPatternIdentifiers.cs
- FormatConvertedBitmap.cs
- NonClientArea.cs
- Semaphore.cs
- CodeLinePragma.cs
- BindingManagerDataErrorEventArgs.cs
- QueryStringParameter.cs
- TextTreeInsertElementUndoUnit.cs
- Dynamic.cs
- DataGridViewCellConverter.cs
- UnitySerializationHolder.cs
- ListenerSessionConnection.cs
- NameValueCollection.cs
- SessionEndedEventArgs.cs
- SocketPermission.cs
- XamlValidatingReader.cs
- ValidationSummary.cs
- XmlQueryRuntime.cs
- PhotoPrintingIntent.cs
- GrammarBuilderDictation.cs
- ProcessHostMapPath.cs
- DescendentsWalker.cs
- MarkupWriter.cs
- PathFigure.cs
- PlainXmlWriter.cs
- CustomBindingCollectionElement.cs
- StandardOleMarshalObject.cs
- CodeChecksumPragma.cs
- ComplexLine.cs
- TextRange.cs
- SpeechSeg.cs
- PackageDigitalSignatureManager.cs
- DocobjHost.cs
- X509CertificateCollection.cs
- VirtualizingStackPanel.cs
- CustomServiceCredentials.cs
- updatecommandorderer.cs
- CancellationToken.cs
- CallId.cs
- RightsManagementEncryptionTransform.cs
- _UriTypeConverter.cs
- ErrorEventArgs.cs
- Operator.cs
- TextOutput.cs
- EncryptedXml.cs
- HttpDebugHandler.cs
- Hash.cs
- HelpEvent.cs
- DeclarationUpdate.cs
- FileVersionInfo.cs
- Margins.cs
- Visual3DCollection.cs
- ClientSession.cs
- XmlStreamNodeWriter.cs
- ActionNotSupportedException.cs
- PropertyPushdownHelper.cs
- MultipleViewPattern.cs
- ThreadBehavior.cs
- WebEventTraceProvider.cs
- WorkflowQueueInfo.cs
- LayoutSettings.cs
- WebPartDisplayModeEventArgs.cs
- SelfIssuedAuthRSAPKCS1SignatureDeformatter.cs
- FormsAuthenticationTicket.cs
- EventListenerClientSide.cs
- PersonalizationEntry.cs
- HtmlPanelAdapter.cs
- ColumnMap.cs
- UInt64Storage.cs
- ValuePattern.cs
- SystemColorTracker.cs
- Main.cs
- TableLayoutPanel.cs
- PermissionRequestEvidence.cs
- RegisteredArrayDeclaration.cs
- ScopelessEnumAttribute.cs
- Point3D.cs
- ExpressionEvaluator.cs
- DbFunctionCommandTree.cs
- StringValidatorAttribute.cs
- HtmlHead.cs
- XPathSelectionIterator.cs
- MachineSettingsSection.cs
- UInt32Converter.cs
- WebRequestModuleElement.cs
- WSDualHttpBindingElement.cs
- DataGridTable.cs
- TextBoxView.cs
- TypeFieldSchema.cs
- Timer.cs
- RoutedCommand.cs
- GPStream.cs