private void MouseManager_ClickEvent(object sender, ClickArgs e) { var clickedObject = e.clickedObject; //if you clicked an object that is not selected already if (selectedObject != clickedObject) { //clear previous selection if (DeselectionEvent != null && selectedObject != null) { DeselectionEvent.Invoke(this, new ClickArgs(selectedObject)); } //select the object if (SelectionEvent != null && clickedObject != null) { SelectionEvent.Invoke(this, new ClickArgs(clickedObject)); } } else { //if you clicked the selected object //deselect the object if (DeselectionEvent != null) { DeselectionEvent.Invoke(this, new ClickArgs(clickedObject)); } } }
/// <summary> /// Invokes the SelectionEvent event listener /// </summary> public static void InvokeSelection() { if (SelectionEvent != null) { SelectionEvent.Invoke(); } }
//--------------------------------------------------------------------------/ // Messages //--------------------------------------------------------------------------/ protected override void Awake() { base.Awake(); this.onSelect = new SelectionEvent(); this.onDeselect = new SelectionEvent(); this.onClick = new SelectionEvent(); }
private void HandleDialogueInput() { if (currentDialogue == null || currentDialogue.selectionEvent == null) { return; } int index = currentDialogue.index; if (Input.GetKeyDown(KeyCode.S)) { currentDialogue.index = Math.Min(index + 1, currentDialogue.values.Count - 1); RenderDialogue(currentDialogue); } else if (Input.GetKeyDown(KeyCode.W)) { currentDialogue.index = Math.Max(0, index - 1); RenderDialogue(currentDialogue); } else if (Input.GetKeyDown(KeyCode.E)) { SelectionEvent ev = currentDialogue.selectionEvent; currentDialogue = null; ev.Invoke(index); } }
//--------------------------------------------------------------------------/ // Messages //--------------------------------------------------------------------------/ private void Awake() { // Set the filter this.SetFilter(); // Set callbacks this.onValueChanged = new SelectionEvent(); this.dropdown.onValueChanged.AddListener(this.OnDropdownChanged); this.inputField.onValueChanged.AddListener(this.OnInputFieldChanged); }
public void Clear() { this.m_Owner = null; this.m_TreeViewNeededEvent = null; this.m_SelectionEvent = null; this.m_DoubleClickedEvent = null; this.m_OriginalSelectedID = 0; this.m_UserData = 0; this.m_TreeView = null; this.m_TreeViewState = null; this.m_ErrorCounter = 0; this.m_FocusSearchFilter = false; }
private void RollForward(SelectionEvent e) { switch (e.Action) { case Action.Add: AddRange(e.Entities); break; case Action.Remove: RemoveRange(e.Entities); break; } }
private void RollForward(SelectionEvent e) { switch (e.Action) { case Action.ADD: AddRange(e.Entities); break; case Action.REMOVE: RemoveRange(e.Entities); break; default: break; } }
public void Init( Rect position, EditorWindow owner, UnityAction <TreeSelectorData> treeViewNeededCallback, UnityAction <TreeViewItem> selectionCallback, UnityAction doubleClickedCallback, int initialSelectedTreeViewItemID, int userData) { Clear(); m_Owner = owner; m_TreeViewNeededEvent = new TreeViewNeededEvent(); m_TreeViewNeededEvent.AddPersistentListener(treeViewNeededCallback, UnityEventCallState.EditorAndRuntime); m_SelectionEvent = new SelectionEvent(); m_SelectionEvent.AddPersistentListener(selectionCallback, UnityEventCallState.EditorAndRuntime); m_DoubleClickedEvent = new DoubleClickedEvent(); m_DoubleClickedEvent.AddPersistentListener(doubleClickedCallback, UnityEventCallState.EditorAndRuntime); m_OriginalSelectedID = initialSelectedTreeViewItemID; m_UserData = userData; m_FocusSearchFilter = true; // start by focusing search field // Initial setup EnsureTreeViewIsValid(GetTreeViewRect(position)); if (m_TreeView != null) { m_TreeView.SetSelection(new[] { m_OriginalSelectedID }, true); // If nothing is selected we expand all to better start overview. If we have a selection it has been revealed in SetSelection above if (m_OriginalSelectedID == 0) { m_TreeView.data.SetExpandedWithChildren(m_TreeView.data.root, true); } } m_Debounce = Delayer.Debounce(context => { DoSearchFilter(); m_Owner.Repaint(); }); }
public void Clear() { m_Owner = null; m_TreeViewNeededEvent = null; m_SelectionEvent = null; m_DoubleClickedEvent = null; m_OriginalSelectedID = 0; m_UserData = 0; m_TreeView = null; m_TreeViewState = null; m_ErrorCounter = 0; m_FocusSearchFilter = false; m_Debounce?.Dispose(); m_Debounce = null; }
public void Init(Rect position, EditorWindow owner, UnityAction <TreeSelectorData> treeViewNeededCallback, UnityAction <TreeViewItem> selectionCallback, UnityAction doubleClickedCallback, int initialSelectedTreeViewItemID, int userData) { this.Clear(); this.m_Owner = owner; this.m_TreeViewNeededEvent = new TreeViewNeededEvent(); this.m_TreeViewNeededEvent.AddPersistentListener(treeViewNeededCallback, UnityEventCallState.EditorAndRuntime); this.m_SelectionEvent = new SelectionEvent(); this.m_SelectionEvent.AddPersistentListener(selectionCallback, UnityEventCallState.EditorAndRuntime); this.m_DoubleClickedEvent = new DoubleClickedEvent(); this.m_DoubleClickedEvent.AddPersistentListener(doubleClickedCallback, UnityEventCallState.EditorAndRuntime); this.m_OriginalSelectedID = initialSelectedTreeViewItemID; this.m_UserData = userData; this.m_FocusSearchFilter = true; this.EnsureTreeViewIsValid(this.GetTreeViewRect(position)); if (this.m_TreeView != null) { int[] selectedIDs = new int[] { this.m_OriginalSelectedID }; this.m_TreeView.SetSelection(selectedIDs, true); if (this.m_OriginalSelectedID == 0) { this.m_TreeView.data.SetExpandedWithChildren(this.m_TreeView.data.root, true); } } }
public SelectAllEvent(SelectionEvent srcEvent) : base(srcEvent) { }
public SelectRectangleEvent(SelectionEvent srcEvent, ObjcParameter objc) : base(srcEvent) { _objc = objc; }
public DialogueContent(string text, List <string> values) { this.selectionEvent = values == null ? null : new SelectionEvent(); this.text = text; this.values = values; }
public SelectionFromChannelEvent(SelectionEvent srcEvent, string name) : base(srcEvent) { _name = name; }
protected override void Start() { base.Start(); OnFinishedSelection = new SelectionEvent(); Selection = new List <MeshEditor.MeshElement>(); }
public SelectNoneEvent(SelectionEvent srcEvent) : base(srcEvent) { }
void Awake() { OnSelect = new SelectionEvent(); OnDeselect = new DeselectionEvent(); }
public void widgetDefaultSelected(SelectionEvent e) { handler.handle(e); }