Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / WinForms / Managed / System / WinForms / DropSource.cs / 1 / DropSource.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System; /// internal class DropSource : UnsafeNativeMethods.IOleDropSource { private const int DragDropSDrop = 0x00040100; private const int DragDropSCancel = 0x00040101; private const int DragDropSUseDefaultCursors = 0x00040102; private ISupportOleDropSource peer; public DropSource(ISupportOleDropSource peer ) { if (peer == null) throw new ArgumentNullException("peer"); this.peer = peer; } public int OleQueryContinueDrag(int fEscapePressed, int grfKeyState) { QueryContinueDragEventArgs qcdevent = null; bool escapePressed = (fEscapePressed != 0); DragAction action = DragAction.Continue; if (escapePressed) { action = DragAction.Cancel; } else if ((grfKeyState & NativeMethods.MK_LBUTTON) == 0 && (grfKeyState & NativeMethods.MK_RBUTTON) == 0 && (grfKeyState & NativeMethods.MK_MBUTTON) == 0) { action = DragAction.Drop; } qcdevent = new QueryContinueDragEventArgs(grfKeyState,escapePressed, action); peer.OnQueryContinueDrag(qcdevent); int hr = 0; switch (qcdevent.Action) { case DragAction.Drop: hr = DragDropSDrop; break; case DragAction.Cancel: hr = DragDropSCancel; break; } return hr; } public int OleGiveFeedback(int dwEffect) { GiveFeedbackEventArgs gfbevent = new GiveFeedbackEventArgs((DragDropEffects) dwEffect, true); peer.OnGiveFeedback(gfbevent); if (gfbevent.UseDefaultCursors) { return DragDropSUseDefaultCursors; } return 0; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Windows.Forms { using System; /// internal class DropSource : UnsafeNativeMethods.IOleDropSource { private const int DragDropSDrop = 0x00040100; private const int DragDropSCancel = 0x00040101; private const int DragDropSUseDefaultCursors = 0x00040102; private ISupportOleDropSource peer; public DropSource(ISupportOleDropSource peer ) { if (peer == null) throw new ArgumentNullException("peer"); this.peer = peer; } public int OleQueryContinueDrag(int fEscapePressed, int grfKeyState) { QueryContinueDragEventArgs qcdevent = null; bool escapePressed = (fEscapePressed != 0); DragAction action = DragAction.Continue; if (escapePressed) { action = DragAction.Cancel; } else if ((grfKeyState & NativeMethods.MK_LBUTTON) == 0 && (grfKeyState & NativeMethods.MK_RBUTTON) == 0 && (grfKeyState & NativeMethods.MK_MBUTTON) == 0) { action = DragAction.Drop; } qcdevent = new QueryContinueDragEventArgs(grfKeyState,escapePressed, action); peer.OnQueryContinueDrag(qcdevent); int hr = 0; switch (qcdevent.Action) { case DragAction.Drop: hr = DragDropSDrop; break; case DragAction.Cancel: hr = DragDropSCancel; break; } return hr; } public int OleGiveFeedback(int dwEffect) { GiveFeedbackEventArgs gfbevent = new GiveFeedbackEventArgs((DragDropEffects) dwEffect, true); peer.OnGiveFeedback(gfbevent); if (gfbevent.UseDefaultCursors) { return DragDropSUseDefaultCursors; } return 0; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- regiisutil.cs
- SourceFileBuildProvider.cs
- DataReaderContainer.cs
- InvalidFilterCriteriaException.cs
- AnimationLayer.cs
- WinInet.cs
- ArraySet.cs
- DesignerForm.cs
- BindingListCollectionView.cs
- QuadraticBezierSegment.cs
- HostingEnvironmentException.cs
- FrameworkElement.cs
- NativeMethods.cs
- ThreadExceptionEvent.cs
- UnsafeNativeMethods.cs
- RemoteWebConfigurationHostStream.cs
- XmlSchemaSequence.cs
- GenericUriParser.cs
- SamlSecurityToken.cs
- SoapExtensionTypeElementCollection.cs
- TypeUtil.cs
- ContainerVisual.cs
- TextEvent.cs
- __ConsoleStream.cs
- ValueExpressions.cs
- ReachPageContentSerializerAsync.cs
- WeakReferenceList.cs
- FileAuthorizationModule.cs
- BooleanConverter.cs
- QuadraticBezierSegment.cs
- ProtectedProviderSettings.cs
- ClientType.cs
- RichTextBoxConstants.cs
- DESCryptoServiceProvider.cs
- XhtmlConformanceSection.cs
- Calendar.cs
- DataGridViewColumnCollection.cs
- FileDialog_Vista.cs
- TextContainerChangeEventArgs.cs
- XmlExpressionDumper.cs
- DebugManager.cs
- Message.cs
- MetadataSection.cs
- CodeTypeConstructor.cs
- LinkedDataMemberFieldEditor.cs
- TypeBrowserDialog.cs
- PropertyRecord.cs
- PointAnimation.cs
- OletxDependentTransaction.cs
- TrackingProfile.cs
- XslCompiledTransform.cs
- ErrorWebPart.cs
- XmlSchemaSimpleTypeList.cs
- ReflectionTypeLoadException.cs
- FileIOPermission.cs
- HostedElements.cs
- FileDataSourceCache.cs
- WindowsRichEditRange.cs
- AsymmetricKeyExchangeDeformatter.cs
- MergePropertyDescriptor.cs
- XmlJsonWriter.cs
- TemplateBamlRecordReader.cs
- ScrollChrome.cs
- EventLogQuery.cs
- HuffCodec.cs
- MultipleViewPatternIdentifiers.cs
- ClientConfigurationHost.cs
- PenCursorManager.cs
- WCFServiceClientProxyGenerator.cs
- HtmlElementCollection.cs
- OperationParameterInfo.cs
- NetworkInformationException.cs
- ScrollPattern.cs
- ToolStripProgressBar.cs
- CompositeKey.cs
- TableHeaderCell.cs
- StructuredTypeEmitter.cs
- WebPartVerbCollection.cs
- UnmanagedMemoryStreamWrapper.cs
- ConfigXmlComment.cs
- ProcessMonitor.cs
- BamlTreeNode.cs
- RecoverInstanceLocksCommand.cs
- ImmComposition.cs
- TypeExtensionConverter.cs
- validation.cs
- TextRangeEdit.cs
- HandlerBase.cs
- WebPartHelpVerb.cs
- TreePrinter.cs
- ListSortDescriptionCollection.cs
- DocumentReference.cs
- ConfigurationStrings.cs
- ExtenderControl.cs
- DbParameterHelper.cs
- dataobject.cs
- DBConnectionString.cs
- EventItfInfo.cs
- RequestResponse.cs
- XhtmlConformanceSection.cs