Extra GUI Controls - Drag and Drop, Radial Menus, Containers, Utilities's icon

Extra GUI Controls - Drag and Drop, Radial Menus, Containers, Utilities 0.9.2 Scripts 4.0 Community

Submitted by user don-tnowe; MIT; 2024-12-05

A collection of control nodes usable in a variety of games and GUI applications.

Containers:

- Interpolated Box/Flow/Free: Containers that smoothly animate children when they enter or change order. Drag-and-drop reordering and drag-and-drop to move between containers in both variants. Vertical layout and compacting children to fit are features supported in the Box variant.
- Radial Container: script-based "Pie menu", supports texturing, tweening, different item sizes (via size_flags_stretch_ratio), and multiple position-to-index functions.
- ScaleContainer: When resized, scales children instead of resizing them. With the integer scale setting, can be used for pixel-perfect viewports.
- Child Transform Container: transform a Control's children while preserving minimum size.
- ScrollZoomView: node that can have one child and allows to scroll and zoom using the mouse. Allows smooth zoom.
- MaxSizeContainer: Limits child size to a max size.
- View Switcher: Keeps only one child, and optionally a background, visible.

Utility:
- Draggable: node that can be dragged and resized with the mouse pointer, with grid snapping, parent-clipping, and a visible resize margin.
- MultiSelection: allows dragging a box-selection over children of any specified node. Can detect [CollisionObject2D] and [Control] nodes. Can move all selected [Draggable] and [InterpolatedContainer] nodes together.
- Connection Line: connection arrow between two Control nodes, even across different parents. Can be dragged to be reconnected to another node with the same parent, with optional creation of waypoints to path through.
- Container Quantity Keeper: Keeps count of duplicates added as a child to a node, and merges them into one node. Best with **Interpolated Box/Flow**.
- Remote Transform Rect: transform a Control remotely similar to RemoteTransform2D/3D
- Data Dropper: passes Godot's built-in drag-and-drop callbacks via signal
- Flipped Split: SplitContainer anchored to the other side for when the parent is resized

Input:

- Theme Icon Button: I use it in my other plugins all the time! Grabs icon from theme by name.
- Properties Box: Form to input values like you'd use the inspector. Strings, bools, numbers (sliders supported) and enums. Allows foldable groups.
- Unfolded Option Button: list of options, pick one or use as bit flags


View files Download Submit an issue Recent Edits