From 247470bf6e6b0582cbedbc05bca11a67b973d7c1 Mon Sep 17 00:00:00 2001 From: sr55 Date: Sun, 29 Apr 2012 01:04:55 +0000 Subject: WinGui (WPF) Fix a bug in the GongSolutions WPF Drag/Drop Library to prevent a crash with dropdowns when clicking an item outside of the listbox control area. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4613 b64f7644-9d1e-0410-96f1-a4d463321fa5 --- .../WPFDragDrop/GongSolutions.Wpf.DragDrop.XML | 305 +++++++++++++++++++-- .../WPFDragDrop/GongSolutions.Wpf.DragDrop.dll | Bin 29184 -> 31232 bytes .../WPFDragDrop/GongSolutions.Wpf.DragDrop.pdb | Bin 0 -> 77312 bytes 3 files changed, 286 insertions(+), 19 deletions(-) create mode 100644 win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.pdb (limited to 'win/CS/libraries') diff --git a/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.XML b/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.XML index 8270f7326..6d3ed76fe 100644 --- a/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.XML +++ b/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.XML @@ -4,34 +4,100 @@ GongSolutions.Wpf.DragDrop - + - Interface implemented by Drop Handlers. + Gets the drag data. + + + If the drag came from within the framework, this will hold: + + - The dragged data if a single item was dragged. + - A typed IEnumerable if multiple items were dragged. + - + - Updates the current drag state. + Gets a object holding information about the source of the drag, + if the drag came from within the framework. + + + + + Gets the mouse position relative to the VisualTarget + + + + + Gets or sets the class of drop target to display. - - Information about the drag. - + + The standard drop target adorner classes are held in the + class. + + + + + Gets or sets the allowed effects for the drop. + - To allow a drop at the current drag position, the property on - should be set to a value other than - and should be set to a non-null value. + This must be set to a value other than by a drop handler in order + for a drop to be possible. - + - Performs a drop. + Gets the current insert position within . + + + + + Gets the collection that the target ItemsControl is bound to. - - Information about the drop. - + + If the current drop target is unbound or not an ItemsControl, this will be null. + + + + + Gets the object that the current drop target is bound to. + + + + If the current drop target is unbound or not an ItemsControl, this will be null. + + + + + Gets the current group target. + + + + If the drag is currently over an ItemsControl with groups, describes the group that + the drag is currently over. + + + + + Gets the control that is the current drop target. + + + + + Gets the item in an ItemsControl that is the current drop target. + + + + If the current drop target is unbound or not an ItemsControl, this will be null. + + + + + Gets th orientation of the current drop target. + @@ -40,8 +106,8 @@ The class holds all of the framework's information about the current - target of a drag. It is used by method to determine whether - the current drop target is valid, and by to perform the drop. + target of a drag. It is used by method to determine whether + the current drop target is valid, and by to perform the drop. @@ -79,6 +145,11 @@ if the drag came from within the framework. + + + Gets the mouse position relative to the VisualTarget + + Gets or sets the class of drop target to display. @@ -151,12 +222,127 @@ Gets th orientation of the current drop target. + + + The drag adorner. + + + + + The m_ adorner layer. + + + + + The m_ adornment. + + + + + The m_ mouse position. + + + + + Initializes a new instance of the class. + + + The adorned element. + + + The adornment. + + + + + The detatch. + + + + + The get desired transform. + + + The transform. + + + + + + + The arrange override. + + + The final size. + + + + + + + The get visual child. + + + The index. + + + + + + + The measure override. + + + The constraint. + + + + + + + Gets or sets MousePosition. + + + + + Gets VisualChildrenCount. + + + + + Interface implemented by Drop Handlers. + + + + + Updates the current drag state. + + + + Information about the drag. + + + + To allow a drop at the current drag position, the property on + should be set to a value other than + and should be set to a non-null value. + + + + + Performs a drop. + + + + Information about the drop. + + Interface implemented by Drag Handlers. - + Queries whether a drag can be started. @@ -170,6 +356,87 @@ should be set to a value other than . + + + Notifies the drag handler that a drop has occurred. + + + + Information about the drop. + + + + + Gets or sets the drag data. + + + + This must be set by a drag handler in order for a drag to start. + + + + + Gets the position of the click that initiated the drag, relative to . + + + + + Gets or sets the allowed effects for the drag. + + + + This must be set to a value other than by a drag handler in order + for a drag to start. + + + + + Gets the mouse button that initiated the drag. + + + + + Gets the collection that the source ItemsControl is bound to. + + + + If the control that initated the drag is unbound or not an ItemsControl, this will be null. + + + + + Gets the object that a dragged item is bound to. + + + + If the control that initated the drag is unbound or not an ItemsControl, this will be null. + + + + + Gets a collection of objects that the selected items in an ItemsControl are bound to. + + + + If the control that initated the drag is unbound or not an ItemsControl, this will be empty. + + + + + Gets the control that initiated the drag. + + + + + Gets the item in an ItemsControl that started the drag. + + + + If the control that initiated the drag is an ItemsControl, this property will hold the item + container of the clicked item. For example, if is a ListBox this + will hold a ListBoxItem. + + Holds information about a the source of a drag drop operation. @@ -177,7 +444,7 @@ The class holds all of the framework's information about the source - of a drag. It is used by to determine whether a drag + of a drag. It is used by to determine whether a drag can start, and what the dragged data should be. diff --git a/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.dll b/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.dll index 237a45c09..f4925187d 100644 Binary files a/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.dll and b/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.dll differ diff --git a/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.pdb b/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.pdb new file mode 100644 index 000000000..5015d297b Binary files /dev/null and b/win/CS/libraries/WPFDragDrop/GongSolutions.Wpf.DragDrop.pdb differ -- cgit v1.2.3