Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Input / Stylus / RawStylusSystemGestureInputReport.cs / 1305600 / RawStylusSystemGestureInputReport.cs
using System; using System.ComponentModel; using System.Security; using System.Security.Permissions; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Input { ///////////////////////////////////////////////////////////////////////// ////// [TBS] /// internal class RawStylusSystemGestureInputReport : RawStylusInputReport { // We don't want to publically expose the double tap system gesture so we define it here. internal const SystemGesture InternalSystemGestureDoubleTap = (SystemGesture)0x11; ////// Validates whether a given SystemGesture has an allowable value. /// /// The SysemGesture to test. /// Whether Flick is allowed. /// Whether DoubleTab is allowed. ///True if the SystemGesture matches an allowed gesture. False otherwise. internal static bool IsValidSystemGesture(SystemGesture systemGesture, bool allowFlick, bool allowDoubleTap) { switch (systemGesture) { case SystemGesture.None: case SystemGesture.Tap: case SystemGesture.RightTap: case SystemGesture.Drag: case SystemGesture.RightDrag: case SystemGesture.HoldEnter: case SystemGesture.HoldLeave: case SystemGesture.HoverEnter: case SystemGesture.HoverLeave: case SystemGesture.TwoFingerTap: #if ROLLOVER_IMPLEMENTED case SystemGesture.Rollover: #endif return true; case SystemGesture.Flick: return allowFlick; case InternalSystemGestureDoubleTap: return allowDoubleTap; default: return false; } } ///////////////////////////////////////////////////////////////////// ////// Constructs an instance of the RawStylusSystemGestureInputReport class. /// /// /// The mode in which the input is being provided. /// /// /// The time when the input occured. /// /// /// The PresentationSource over which the stylus moved. /// /// /// PenContext that generated this event. /// /// /// tablet id. /// /// /// Stylus device id. /// /// /// System Gesture. /// /// /// X location of the system gesture (in tablet device coordindates). /// /// /// Y location of the system gesture (in tablet device coordindates). /// /// /// Button state info data. /// ////// Critical:This handles critical data in the form of PresentationSource /// TreatAsSafe:There are demands on the critical data(PresentationSource) /// [SecurityCritical,SecurityTreatAsSafe] internal RawStylusSystemGestureInputReport( InputMode mode, int timestamp, PresentationSource inputSource, PenContext penContext, int tabletId, int stylusDeviceId, SystemGesture systemGesture, int gestureX, int gestureY, int buttonState) : base( mode, timestamp, inputSource, penContext, RawStylusActions.SystemGesture, tabletId, stylusDeviceId, new int[] {}) { if (!RawStylusSystemGestureInputReport.IsValidSystemGesture(systemGesture, true, true)) { throw new InvalidEnumArgumentException(SR.Get( SRID.Enum_Invalid, "systemGesture")); } _id = systemGesture; _gestureX = gestureX; _gestureY = gestureY; _buttonState = buttonState; } ///////////////////////////////////////////////////////////////////// ////// Read-only access to the stylus gesture id. /// internal SystemGesture SystemGesture { get { return _id; } } ///////////////////////////////////////////////////////////////////// ////// Read-only access to the X location of the system gesture /// in tablet device coordinates. /// internal int GestureX { get { return _gestureX; } } ///////////////////////////////////////////////////////////////////// ////// Read-only access to the Y location of the system gesture /// in tablet device coordinates. /// internal int GestureY { get { return _gestureY; } } ///////////////////////////////////////////////////////////////////// ////// Read-only access to the button state info (useful for flicks). /// internal int ButtonState { get { return _buttonState; } } ///////////////////////////////////////////////////////////////////// SystemGesture _id; int _gestureX;// gesture location in tablet device coordinates int _gestureY; int _buttonState; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. using System; using System.ComponentModel; using System.Security; using System.Security.Permissions; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace System.Windows.Input { ///////////////////////////////////////////////////////////////////////// ////// [TBS] /// internal class RawStylusSystemGestureInputReport : RawStylusInputReport { // We don't want to publically expose the double tap system gesture so we define it here. internal const SystemGesture InternalSystemGestureDoubleTap = (SystemGesture)0x11; ////// Validates whether a given SystemGesture has an allowable value. /// /// The SysemGesture to test. /// Whether Flick is allowed. /// Whether DoubleTab is allowed. ///True if the SystemGesture matches an allowed gesture. False otherwise. internal static bool IsValidSystemGesture(SystemGesture systemGesture, bool allowFlick, bool allowDoubleTap) { switch (systemGesture) { case SystemGesture.None: case SystemGesture.Tap: case SystemGesture.RightTap: case SystemGesture.Drag: case SystemGesture.RightDrag: case SystemGesture.HoldEnter: case SystemGesture.HoldLeave: case SystemGesture.HoverEnter: case SystemGesture.HoverLeave: case SystemGesture.TwoFingerTap: #if ROLLOVER_IMPLEMENTED case SystemGesture.Rollover: #endif return true; case SystemGesture.Flick: return allowFlick; case InternalSystemGestureDoubleTap: return allowDoubleTap; default: return false; } } ///////////////////////////////////////////////////////////////////// ////// Constructs an instance of the RawStylusSystemGestureInputReport class. /// /// /// The mode in which the input is being provided. /// /// /// The time when the input occured. /// /// /// The PresentationSource over which the stylus moved. /// /// /// PenContext that generated this event. /// /// /// tablet id. /// /// /// Stylus device id. /// /// /// System Gesture. /// /// /// X location of the system gesture (in tablet device coordindates). /// /// /// Y location of the system gesture (in tablet device coordindates). /// /// /// Button state info data. /// ////// Critical:This handles critical data in the form of PresentationSource /// TreatAsSafe:There are demands on the critical data(PresentationSource) /// [SecurityCritical,SecurityTreatAsSafe] internal RawStylusSystemGestureInputReport( InputMode mode, int timestamp, PresentationSource inputSource, PenContext penContext, int tabletId, int stylusDeviceId, SystemGesture systemGesture, int gestureX, int gestureY, int buttonState) : base( mode, timestamp, inputSource, penContext, RawStylusActions.SystemGesture, tabletId, stylusDeviceId, new int[] {}) { if (!RawStylusSystemGestureInputReport.IsValidSystemGesture(systemGesture, true, true)) { throw new InvalidEnumArgumentException(SR.Get( SRID.Enum_Invalid, "systemGesture")); } _id = systemGesture; _gestureX = gestureX; _gestureY = gestureY; _buttonState = buttonState; } ///////////////////////////////////////////////////////////////////// ////// Read-only access to the stylus gesture id. /// internal SystemGesture SystemGesture { get { return _id; } } ///////////////////////////////////////////////////////////////////// ////// Read-only access to the X location of the system gesture /// in tablet device coordinates. /// internal int GestureX { get { return _gestureX; } } ///////////////////////////////////////////////////////////////////// ////// Read-only access to the Y location of the system gesture /// in tablet device coordinates. /// internal int GestureY { get { return _gestureY; } } ///////////////////////////////////////////////////////////////////// ////// Read-only access to the button state info (useful for flicks). /// internal int ButtonState { get { return _buttonState; } } ///////////////////////////////////////////////////////////////////// SystemGesture _id; int _gestureX;// gesture location in tablet device coordinates int _gestureY; int _buttonState; } } // 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
- FrameSecurityDescriptor.cs
- StylusPoint.cs
- BezierSegment.cs
- WebService.cs
- OpenTypeCommon.cs
- WasEndpointConfigContainer.cs
- BookmarkOptionsHelper.cs
- ProfileInfo.cs
- HijriCalendar.cs
- BezierSegment.cs
- HttpClientChannel.cs
- MimeParameters.cs
- TransformProviderWrapper.cs
- GridEntryCollection.cs
- SelectedGridItemChangedEvent.cs
- UnsafeCollabNativeMethods.cs
- OrthographicCamera.cs
- EntitySqlQueryBuilder.cs
- DocumentGridContextMenu.cs
- _ProxyChain.cs
- MsdtcClusterUtils.cs
- ReadingWritingEntityEventArgs.cs
- HttpCookiesSection.cs
- DataBoundControlAdapter.cs
- SqlDataReader.cs
- cache.cs
- MouseCaptureWithinProperty.cs
- SamlDoNotCacheCondition.cs
- EdmScalarPropertyAttribute.cs
- AdornedElementPlaceholder.cs
- BrowserCapabilitiesCodeGenerator.cs
- DropShadowBitmapEffect.cs
- ADConnectionHelper.cs
- RelatedCurrencyManager.cs
- OleDbRowUpdatingEvent.cs
- BitmapCodecInfo.cs
- AttributeAction.cs
- EllipticalNodeOperations.cs
- HierarchicalDataBoundControl.cs
- LinkTarget.cs
- TraceSwitch.cs
- CallbackHandler.cs
- GridToolTip.cs
- SourceChangedEventArgs.cs
- WpfSharedBamlSchemaContext.cs
- XmlWriterSettings.cs
- DSASignatureDeformatter.cs
- AutomationPropertyInfo.cs
- PrintPageEvent.cs
- HtmlInputSubmit.cs
- LineVisual.cs
- CompositionTarget.cs
- EntityDataReader.cs
- NetCodeGroup.cs
- VisualStyleTypesAndProperties.cs
- FontEditor.cs
- ModuleElement.cs
- Journaling.cs
- OdbcDataReader.cs
- FlowLayout.cs
- Propagator.JoinPropagator.cs
- SR.cs
- CompoundFileStreamReference.cs
- TransactionFlowBindingElementImporter.cs
- HttpCacheVaryByContentEncodings.cs
- SmiEventSink_DeferedProcessing.cs
- SiteMapNode.cs
- App.cs
- rsa.cs
- MailMessage.cs
- RenderDataDrawingContext.cs
- ReliableMessagingHelpers.cs
- ModelVisual3D.cs
- HostedElements.cs
- BlockUIContainer.cs
- StringWriter.cs
- KnownIds.cs
- AssemblyBuilder.cs
- SessionStateUtil.cs
- Graphics.cs
- FrugalList.cs
- TextEditorLists.cs
- Stacktrace.cs
- LayoutManager.cs
- ComboBox.cs
- XmlEntityReference.cs
- InvalidateEvent.cs
- DynamicActivity.cs
- DataGridViewColumnCollection.cs
- RectIndependentAnimationStorage.cs
- Dynamic.cs
- LockCookie.cs
- SerializationAttributes.cs
- DataGridViewRow.cs
- DiagnosticStrings.cs
- __ComObject.cs
- AdjustableArrowCap.cs
- oledbconnectionstring.cs
- ComponentSerializationService.cs
- BitSet.cs