protected override void DoubleClickedItem(int id) { var element = (ActionTreeViewItem)FindItem(id, rootItem); var rect = new Rect(GUIUtility.GUIToScreenPoint(Event.current.mousePosition), Vector2.zero); BindingPropertiesPopup.Show(rect, element, Reload); }
protected override void RowGUI(RowGUIArgs args) { if (args.item is InputTreeViewLine) { var bindingItem = (args.item as InputTreeViewLine); // We try to predict the indentation var indent = (args.item.depth + 2) * 6 + 10; bindingItem.OnGUI(args.rowRect, args.selected, args.focused, indent); var btnRect = args.rowRect; btnRect.x = btnRect.width - 20; btnRect.width = 20; if (!bindingItem.hasProperties) { return; } if (GUI.Button(btnRect, "...")) { var screenPoint = GUIUtility.GUIToScreenPoint(new Vector2(btnRect.x, btnRect.y)); btnRect.x = screenPoint.x; btnRect.y = screenPoint.y; BindingPropertiesPopup.Show(btnRect, bindingItem, Reload); } } }