Skip to main content

Crate ferroui_xaml_interactions_draganddrop

Crate ferroui_xaml_interactions_draganddrop 

Source
Expand description

ferroui-xaml-interactions-draganddrop

Drag and drop behaviors, ported from the Xaml.Behaviors.Interactions.DragAndDrop project of Xaml.Behaviors (see NOTICE.md):

The styles of the reference (Styles.xaml: the adorners of the tree view items a drag passes over) are compiled by the build of the crate; an application includes them with <StyleInclude Source="ferres://FerroUI.Xaml.Interactions.DragAndDrop/Styles.xaml" />.

The namespace of the crate is FerroUI.Xaml.Interactions.DragAndDrop (and FerroUI.Xaml.Interactions.DragAndDrop.Controls for the preview window), the first mapped into the default XML namespace of the framework: documents name its types without a prefix once register_types ran.

Modules§

values
Not from the reference: the untyped values the behaviors pass to handlers, actions and commands (the object arguments of the reference).

Structs§

AddPreviewFilesAction
Adds the files of a drag event (the parameter of the action) to the items of an ItemsControl: the items_control, or else the sender.
ContentControlFilesDropBehavior
Behavior that handles file drop operations for ContentControl: while files are dragged over the control it shows content_during_drag on background_during_drag, and the command of the behavior executes with the dropped files (see FilesDropBehavior).
ContextDragBehavior
Behavior that starts a drag operation using the associated context data, and notifies its handler before and after the drag.
ContextDragBehaviorBase
Behavior base class that starts a drag operation using the associated context data: the context, or else the data context of the associated control, travels with the drag (by its key in the drag data) to the drop behaviors of this crate.
ContextDragBehaviorBaseVTable
The virtual table of the class.
ContextDragWithDirectionBehavior
Behavior that starts drag and drop with information about drag direction: the drag data holds "up" or "down", as the pointer moved up or down to start the drag.
ContextDropBehavior
Behavior that enables dropping context data onto the associated control using a predefined IDropHandler.
ContextDropBehaviorBase
Behavior base class that enables dropping context data onto the associated control: the drag events of the control go to the members of ContextDropBehaviorBaseImpl, with the context of the drag source (found by its key in the drag data) and the context of the target, or else the data context of the control.
ContextDropBehaviorBaseVTable
The virtual table of the class.
DragAndDropEventsBehavior
Base class for behaviors that respond to drag-and-drop events: the drag events of the target_control, or else of the associated control, go to the members of DragAndDropEventsBehaviorImpl.
DragAndDropEventsBehaviorVTable
The virtual table of the class.
DragDropCommandsBehavior
Behavior that exposes commands for drag-and-drop events: each drag event executes its command with the event args (or no parameter), and the can_execute_* properties tell whether each command can execute.
DragPreviewService
Provides a lightweight preview window shown during a managed drag operation.
DragPreviewWindow
Lightweight always-on-top window used to display drag preview content: transparent, non-interactive, topmost and sized to its content.
DropBehaviorBase
Base class for behaviors that respond to drag-and-drop events: the drag events of the associated control go to the handler, and the deriving class executes the command of the behavior with execute_command.
FilesDropBehavior
Behavior that handles file drop operations: the command of the behavior executes with the dropped files.
FilesPreviewBehavior
Behavior that collects the files dragged over the associated control: the preview_files hold them while the drag is over the control.
ManagedContextDragBehavior
Behavior that initiates an in-process managed drag with an optional preview window.
ManagedContextDropArgs
Arguments used by managed drop handlers to describe the drop context.
ManagedContextDropBehavior
Drop target behavior that integrates with ManagedDragDropService.
ManagedDragDropService
Provides a lightweight, managed drag-drop state shared within the application.
PanelDragBehavior
Behavior that starts a drag operation for a control so it can be moved between panels. The control itself is used as the drag context.
PanelDropBehavior
Behavior that allows dropping controls dragged with PanelDragBehavior: the dragged control moves to the panel of the behavior (to the drop position in a canvas).
TextDropBehavior
Behavior that handles text drop operations: the command of the behavior executes with the dropped text.
TypedDragBehavior
Behavior that initiates a drag operation for a specific data type, and notifies its handler before and after the drag.
TypedDragBehaviorBase
Behavior base class that initiates a drag operation for a specific data type: the press starts a drag only over an element whose data context is of the data_type.
TypedDragBehaviorBaseVTable
The virtual table of the class.

Statics§

ASSEMBLY
What this crate states about itself for markup: its assembly name and the namespace the XML namespace of the framework maps to.

Traits§

BaseTreeViewDropHandler
Provides base drag-and-drop visuals and validation helpers for TreeView scenarios: while an item is dragged over a tree view, the item under the pointer gets the class DraggingUp or DraggingDown (the half of the item the pointer is over), or TargetHighlight when the dragged item would move to another parent (the styles document of the crate styles these classes).
ContextDragBehaviorBaseImpl
The overridable members introduced by the class.
ContextDragBehaviorBaseImplExt
Access to the base implementations of the overridable members.
ContextDropBehaviorBaseImpl
The overridable members introduced by the class.
ContextDropBehaviorBaseImplExt
Access to the base implementations of the overridable members.
DragAndDropEventsBehaviorImpl
The overridable members introduced by the class.
DragAndDropEventsBehaviorImplExt
Access to the base implementations of the overridable members.
DropHandlerBase
Provides helper methods for custom drop handlers.
IDragHandler
Provides callbacks for drag operations.
IDropHandler
Defines callbacks for handling drag-and-drop operations.
ManagedDataTransferExtensions
Provides helpers to retrieve managed drag-drop payloads from data transfer objects.
ManagedDataTransferItemExtensions
Provides helpers to retrieve managed drag-drop payloads from the items of data transfer objects (see ManagedDataTransferExtensions).
TypedDragBehaviorBaseImpl
The overridable members introduced by the class.
TypedDragBehaviorBaseImplExt
Access to the base implementations of the overridable members.

Functions§

register_types
Registers the namespaces, the types, the assembly and the compiled markup of this crate (and of the crates it is built on), and with the feature document-assets the styles document as an asset. Cheap and idempotent.