diff --git a/angular-tree-control.js b/angular-tree-control.js
index <HASH>..<HASH> 100644
--- a/angular-tree-control.js
+++ b/angular-tree-control.js
@@ -110,9 +110,9 @@ if (typeof module !== "undefined" && typeof exports !== "undefined" && module.ex
                     selectedNode: "=?",
                     selectedNodes: "=?",
                     expandedNodes: "=?",
-                    onSelection: "&",
-                    onNodeToggle: "&",
-                    onRightClick: "&",
+                    onSelection: "&?",
+                    onNodeToggle: "&?",
+                    onRightClick: "&?",
                     menuId: "@",
                     options: "=?",
                     orderBy: "=?",
Change function bindings to optional bindings.

- They are all covered by individual `if` statements anyway (#L<I>, #L<I>, #L<I>).

- Fixes right click triggering a selection, even if no external function is specified (Tree template no longer includes tree-right-click for an empty angular `parentGet` function).