Quick Add Menu adds a drop down menu in the scene dock which gives quickly accessible nodes that can be added to your scene, similar to Unreal's Quick Add menu, or Unity's right click options in the scene hierarchy.
It can be expanded to include your own custom nodes as well.
The menu's items depend on the type of node you have selected.
Customization
You can customize the Quick Add Menu by adding your own nodes and section headers.
Customization can be done with different function calls inside and out of the quick_add_menu.gd add_custom_items() function.
The best place to start is inside of the add_custom_items() function if you do not have your own editor plugin.
Custom Items
Items within the quick menu consist of a String name, an Texture2D icon, and a Callable for creating the nodes
The callable needs to return an Array[Node] to work.
The first element of the returned array will be the node added to the selected node, and nodes afterwards in the array will be children of that new node.
func add_custom_items(): ## Add custom items
var item = QuickAddMenu.Item.new("Rigid Body", get_icon("RigidBody3D"), func(): return [RigidBody3D.new()] as Array[Node])
QuickAddMenu.node_3d_list.append(item)
Or one with children:
func rigidbody() -> Array[Node]:
var body:RigidBody3D = RigidBody3D.new()
var collider:CollisionShape3D = CollisionShape3D.new() # Child of body
collider.shape = BoxShape3D.new()
return [body, collider]
func add_custom_items(): ## Add custom items
var item = QuickAddMenu.Item.new("Rigid Body", get_icon("RigidBody3D"), rigidbody)
QuickAddMenu.node_3d_list.append(item)
This code should end up looking like this:

Custom Headers
Headers within the quick menu consist of a String name, and a Texture2D icon
func add_custom_items(): ## Add custom items
var header = QuickAddMenu.Item.new_header("This is a cool header!")
QuickAddMenu.node_3d_list.append(header)
This code should end up looking like this:

Changelog for version v1.0
No changelog provided for this version.