Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Input / ManipulationDeltaEventArgs.cs / 1305600 / ManipulationDeltaEventArgs.cs
//---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Diagnostics; using System.Security; using System.Windows; using System.Windows.Media; namespace System.Windows.Input { ////// Provides an update on an ocurring manipulation. /// public sealed class ManipulationDeltaEventArgs : InputEventArgs { ////// Instantiates a new instance of this class. /// internal ManipulationDeltaEventArgs( ManipulationDevice manipulationDevice, int timestamp, IInputElement manipulationContainer, Point origin, ManipulationDelta delta, ManipulationDelta cumulative, ManipulationVelocities velocities, bool isInertial) : base(manipulationDevice, timestamp) { if (delta == null) { throw new ArgumentNullException("delta"); } if (cumulative == null) { throw new ArgumentNullException("cumulative"); } if (velocities == null) { throw new ArgumentNullException("velocities"); } RoutedEvent = Manipulation.ManipulationDeltaEvent; ManipulationContainer = manipulationContainer; ManipulationOrigin = origin; DeltaManipulation = delta; CumulativeManipulation = cumulative; Velocities = velocities; IsInertial = isInertial; } ////// Invokes a handler of this event. /// protected override void InvokeEventHandler(Delegate genericHandler, object genericTarget) { if (genericHandler == null) { throw new ArgumentNullException("genericHandler"); } if (genericTarget == null) { throw new ArgumentNullException("genericTarget"); } if (RoutedEvent == Manipulation.ManipulationDeltaEvent) { ((EventHandler)genericHandler)(genericTarget, this); } else { base.InvokeEventHandler(genericHandler, genericTarget); } } /// /// Whether the event was generated due to inertia. /// public bool IsInertial { get; private set; } ////// Defines the coordinate space of the other properties. /// public IInputElement ManipulationContainer { get; private set; } ////// Returns the value of the origin. /// public Point ManipulationOrigin { get; private set; } ////// Returns the cumulative transformation associated with the manipulation. /// public ManipulationDelta CumulativeManipulation { get; private set; } ////// Returns the delta transformation associated with the manipulation. /// public ManipulationDelta DeltaManipulation { get; private set; } ////// Returns the current velocities associated with a manipulation. /// public ManipulationVelocities Velocities { get; private set; } ////// Allows a handler to specify that the manipulation has gone beyond certain boundaries. /// By default, this value will then be used to provide panning feedback on the window, but /// it can be change by handling the ManipulationBoundaryFeedback event. /// public void ReportBoundaryFeedback(ManipulationDelta unusedManipulation) { if (unusedManipulation == null) { throw new ArgumentNullException("unusedManipulation"); } UnusedManipulation = unusedManipulation; } ////// The value of the unused manipulation information in global coordinate space. /// internal ManipulationDelta UnusedManipulation { get; private set; } ////// Preempts further processing and completes the manipulation without any inertia. /// public void Complete() { RequestedComplete = true; RequestedInertia = false; RequestedCancel = false; } ////// Preempts further processing and completes the manipulation, allowing inertia to continue. /// public void StartInertia() { RequestedComplete = true; RequestedInertia = true; RequestedCancel = false; } ////// Method to cancel the Manipulation /// ///A bool indicating the success of Cancel public bool Cancel() { if (!IsInertial) { RequestedCancel = true; RequestedComplete = false; RequestedInertia = false; return true; } return false; } ////// A handler requested that the manipulation complete. /// internal bool RequestedComplete { get; private set; } ////// A handler requested that the manipulation complete with inertia. /// internal bool RequestedInertia { get; private set; } ////// A handler Requested to cancel the Manipulation /// internal bool RequestedCancel { get; private set; } ////// The Manipulators for this manipulation. /// public IEnumerableManipulators { get { if (_manipulators == null) { _manipulators = ((ManipulationDevice)Device).GetManipulatorsReadOnly(); } return _manipulators; } } private IEnumerable _manipulators; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // Copyright (C) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Diagnostics; using System.Security; using System.Windows; using System.Windows.Media; namespace System.Windows.Input { /// /// Provides an update on an ocurring manipulation. /// public sealed class ManipulationDeltaEventArgs : InputEventArgs { ////// Instantiates a new instance of this class. /// internal ManipulationDeltaEventArgs( ManipulationDevice manipulationDevice, int timestamp, IInputElement manipulationContainer, Point origin, ManipulationDelta delta, ManipulationDelta cumulative, ManipulationVelocities velocities, bool isInertial) : base(manipulationDevice, timestamp) { if (delta == null) { throw new ArgumentNullException("delta"); } if (cumulative == null) { throw new ArgumentNullException("cumulative"); } if (velocities == null) { throw new ArgumentNullException("velocities"); } RoutedEvent = Manipulation.ManipulationDeltaEvent; ManipulationContainer = manipulationContainer; ManipulationOrigin = origin; DeltaManipulation = delta; CumulativeManipulation = cumulative; Velocities = velocities; IsInertial = isInertial; } ////// Invokes a handler of this event. /// protected override void InvokeEventHandler(Delegate genericHandler, object genericTarget) { if (genericHandler == null) { throw new ArgumentNullException("genericHandler"); } if (genericTarget == null) { throw new ArgumentNullException("genericTarget"); } if (RoutedEvent == Manipulation.ManipulationDeltaEvent) { ((EventHandler)genericHandler)(genericTarget, this); } else { base.InvokeEventHandler(genericHandler, genericTarget); } } /// /// Whether the event was generated due to inertia. /// public bool IsInertial { get; private set; } ////// Defines the coordinate space of the other properties. /// public IInputElement ManipulationContainer { get; private set; } ////// Returns the value of the origin. /// public Point ManipulationOrigin { get; private set; } ////// Returns the cumulative transformation associated with the manipulation. /// public ManipulationDelta CumulativeManipulation { get; private set; } ////// Returns the delta transformation associated with the manipulation. /// public ManipulationDelta DeltaManipulation { get; private set; } ////// Returns the current velocities associated with a manipulation. /// public ManipulationVelocities Velocities { get; private set; } ////// Allows a handler to specify that the manipulation has gone beyond certain boundaries. /// By default, this value will then be used to provide panning feedback on the window, but /// it can be change by handling the ManipulationBoundaryFeedback event. /// public void ReportBoundaryFeedback(ManipulationDelta unusedManipulation) { if (unusedManipulation == null) { throw new ArgumentNullException("unusedManipulation"); } UnusedManipulation = unusedManipulation; } ////// The value of the unused manipulation information in global coordinate space. /// internal ManipulationDelta UnusedManipulation { get; private set; } ////// Preempts further processing and completes the manipulation without any inertia. /// public void Complete() { RequestedComplete = true; RequestedInertia = false; RequestedCancel = false; } ////// Preempts further processing and completes the manipulation, allowing inertia to continue. /// public void StartInertia() { RequestedComplete = true; RequestedInertia = true; RequestedCancel = false; } ////// Method to cancel the Manipulation /// ///A bool indicating the success of Cancel public bool Cancel() { if (!IsInertial) { RequestedCancel = true; RequestedComplete = false; RequestedInertia = false; return true; } return false; } ////// A handler requested that the manipulation complete. /// internal bool RequestedComplete { get; private set; } ////// A handler requested that the manipulation complete with inertia. /// internal bool RequestedInertia { get; private set; } ////// A handler Requested to cancel the Manipulation /// internal bool RequestedCancel { get; private set; } ////// The Manipulators for this manipulation. /// public IEnumerableManipulators { get { if (_manipulators == null) { _manipulators = ((ManipulationDevice)Device).GetManipulatorsReadOnly(); } return _manipulators; } } private IEnumerable _manipulators; } } // 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
- Debug.cs
- MultipleViewPattern.cs
- ExcCanonicalXml.cs
- Action.cs
- PropertyGridEditorPart.cs
- OdbcConnectionStringbuilder.cs
- TablePattern.cs
- MessageBodyMemberAttribute.cs
- BinaryParser.cs
- VariableAction.cs
- EventWaitHandle.cs
- GeneralTransform.cs
- IdentityHolder.cs
- ManifestSignatureInformation.cs
- StrokeFIndices.cs
- TreeNodeCollection.cs
- GroupBoxRenderer.cs
- ClientProxyGenerator.cs
- Classification.cs
- NavigationService.cs
- BeginGetFileNameFromUserRequest.cs
- Scalars.cs
- EntityClientCacheKey.cs
- TypeConstant.cs
- Tablet.cs
- WebBrowsableAttribute.cs
- RemotingSurrogateSelector.cs
- TextTreeNode.cs
- BufferedReadStream.cs
- ConfigurationManagerInternalFactory.cs
- HiddenFieldDesigner.cs
- TextFormatterContext.cs
- GlyphInfoList.cs
- DefaultTextStoreTextComposition.cs
- SmiRequestExecutor.cs
- SqlWriter.cs
- CollectionDataContract.cs
- ProfileEventArgs.cs
- NavigationPropertyEmitter.cs
- DataControlButton.cs
- Int32AnimationBase.cs
- RenderingEventArgs.cs
- WebConvert.cs
- UInt64.cs
- OLEDB_Util.cs
- ColumnHeader.cs
- FileChangesMonitor.cs
- CommandField.cs
- PerformanceCounterLib.cs
- RelatedPropertyManager.cs
- FixedTextView.cs
- ReadOnlyDictionary.cs
- Pair.cs
- SymbolTable.cs
- EventProviderClassic.cs
- ConsoleTraceListener.cs
- unsafenativemethodstextservices.cs
- EncoderBestFitFallback.cs
- XmlDocumentFieldSchema.cs
- versioninfo.cs
- DaylightTime.cs
- FastPropertyAccessor.cs
- ActiveXSite.cs
- InstancePersistenceException.cs
- DataGridViewRowPostPaintEventArgs.cs
- EventHandlers.cs
- ProfessionalColorTable.cs
- CodeDirectiveCollection.cs
- Automation.cs
- SessionSwitchEventArgs.cs
- ArrayTypeMismatchException.cs
- BuildResultCache.cs
- FieldMetadata.cs
- TextBoxRenderer.cs
- EllipticalNodeOperations.cs
- PageThemeCodeDomTreeGenerator.cs
- PolyLineSegmentFigureLogic.cs
- ToolStripPanelSelectionBehavior.cs
- BuildProviderUtils.cs
- FacetDescriptionElement.cs
- XPathMultyIterator.cs
- WeakHashtable.cs
- DebugViewWriter.cs
- ResourceDisplayNameAttribute.cs
- RenameRuleObjectDialog.cs
- ParserHooks.cs
- BitmapDownload.cs
- EntityDataSourceWizardForm.cs
- Opcode.cs
- BitmapImage.cs
- XmlUtilWriter.cs
- XmlSchemaChoice.cs
- BitmapPalettes.cs
- ArraySegment.cs
- TextServicesCompartmentContext.cs
- SqlServices.cs
- SmiMetaDataProperty.cs
- DesignerVerbToolStripMenuItem.cs
- Property.cs
- PointLight.cs