1#![doc = include_str!("../README.md")]
2#![allow(non_snake_case)]
3
4pub mod core;
5
6pub mod a11y;
7pub mod animate;
8pub mod autoscroll;
9pub mod board;
10pub mod canvas;
11pub mod debug;
12#[cfg(feature = "desktop")]
13pub mod desktop;
14pub mod dragout;
15pub mod external;
16pub mod files;
17pub mod grid;
18pub mod multiselect;
19pub mod sortable;
20mod sortable_kernel;
21pub mod test;
22pub mod tree;
23
24pub mod prelude {
26 pub use crate::a11y::{LiveRegion, ReorderButtons};
27 pub use crate::animate::FlipItem;
28 pub use crate::autoscroll::{edge_delta, frame_delta, AutoScroll, ScrollAxis};
29 pub use crate::board::{
30 apply_move, BoardColumn, BoardItem, BoardPayload, BoardSlot, ContainerId, MoveEvent,
31 };
32 pub use crate::bridge_drop_zone;
33 pub use crate::canvas::{
34 canvas_keyboard_pointer, canvas_position, canvas_to_client, client_to_canvas, Bounds,
35 CanvasDrop, CanvasDropZone, CanvasKeyboardPlacement, SnapGrid,
36 };
37 pub use crate::core::{
38 apply_clone_or_move, apply_list_clone_or_move, apply_modifiers, client_point, edge_of,
39 effective_effect, element_point, rank_collisions, screen_delta_to_world, screen_to_world,
40 transition, try_apply_clone_or_move, try_apply_list_clone_or_move, use_bridge_world,
41 use_dnd, use_dnd_model, use_dnd_monitor, use_dnd_provider, use_dnd_strings, use_dnd_world,
42 use_joined_window, use_rect_refresh, use_zone_id, use_zone_registry, world_delta_to_screen,
43 world_to_screen, ActivationConstraint, ActivationPolicy, Activator, ApplyDropError,
44 BridgeDropZone, BridgeGeometry, BridgeWorld, CancelReason, CanvasViewport, Collision,
45 CollisionDetector, CollisionRequest, CollisionStrategy, Direction, DndContext, DndEvent,
46 DndProvider, DndScope, DndStrings, DndWorld, DragHandle, DragId, DragMode, DragModifier,
47 DragOverlay, DragSnapshot, DragStart, DragState, Draggable, DropEffect, DropEffects,
48 DropOutcome, DropQuery, DropReceipt, DropZone, Edge, EdgeSet, GestureEffect, GestureEvent,
49 GesturePhase, JoinedWindow, ModifierCtx, NoDrag, ParentZone, Point, PointerKind, Rect,
50 RectRefresh, ReleasePolicy, SettleSlot, TouchSense, WindowGeometry, WindowKey,
51 ZoneCandidate, ZoneId, ZoneRecord, ZoneRegistration, ZoneRegistry,
52 };
53 pub use crate::debug::DndDebugOverlay;
54 #[cfg(feature = "desktop")]
55 pub use crate::desktop::MultiWindowProvider;
56 #[cfg(feature = "serde")]
57 pub use crate::dragout::TypedDragSource;
58 pub use crate::dragout::{ExternalDragSource, OutboundContent};
59 pub use crate::external::{classify, ExternalDrop, ExternalDropZone, ExternalPayload};
60 #[cfg(feature = "serde")]
61 pub use crate::external::{TypedDrop, TypedDropZone};
62 pub use crate::files::{FileDrop, FileDropZone, FileFilter, FileRejection};
63 pub use crate::grid::{cell_of, index_of, SortableGrid};
64 pub use crate::multiselect::{
65 use_selection, use_selection_from_signal, SelectableDraggable, Selection, SelectionCount,
66 };
67 pub use crate::sortable::{
68 apply_reorder, apply_sort, apply_swap, displacement, project_layout, Axis, DropPlacement,
69 ItemTransform, Placement, ReorderEvent, ReorderMode, SortEvent, SortStrategy,
70 SortableCollection, SortableGroup, SortableGroupId, SortableHandle, SortableItem,
71 SortableList, SortablePayload, SortableProvider,
72 };
73 pub use crate::tree::{
74 intent_from_offset, would_create_cycle, DropIntent, NodeId, TreeDropEvent, TreeNodeTarget,
75 };
76}