private bool RemoveMouseClickListener(IMouseClickListener iMouseClickListener) { if (!mMouseClickListener.ContainsKey(iMouseClickListener.Screen)) { return(false); } if (!mMouseClickListener[iMouseClickListener.Screen].Contains(iMouseClickListener)) { return(false); } mMouseClickListener[iMouseClickListener.Screen] .Remove(iMouseClickListener); mLeftClickType.Remove(iMouseClickListener); mRightClickType.Remove(iMouseClickListener); return(true); }
/// <summary> /// Adds the given object to the objects that receive mouse click events. /// EClickType is inBounds, outOfBounds or both. /// </summary> /// <param name="iMouseClickListener">The object which should receive events</param> /// <param name="leftClickType">The LeftClickType</param> /// <param name="rightClickType">The RightClickType</param> private void AddMouseClickListener(IMouseClickListener iMouseClickListener, EClickType leftClickType, EClickType rightClickType) { if (!mMouseClickListener.ContainsKey(iMouseClickListener.Screen)) { mMouseClickListener[iMouseClickListener.Screen] = new List <IMouseClickListener>(); } mMouseClickListener[iMouseClickListener.Screen] .Add(iMouseClickListener); if (!mLeftClickType.ContainsKey(iMouseClickListener)) { mLeftClickType.Add(iMouseClickListener, leftClickType); } if (!mRightClickType.ContainsKey(iMouseClickListener)) { mRightClickType.Add(iMouseClickListener, rightClickType); } }
public void FlagForRemoval(IMouseClickListener mouseClickListener) { mClickListenerToRemove.Add(mouseClickListener); }
public void FlagForAddition(IMouseClickListener clickListener, EClickType left, EClickType right) { mClickListenerToAdd.Add(new Triple <IMouseClickListener, EClickType, EClickType>(clickListener, left, right)); }
public void AddMouseListener(IMouseClickListener listener) { clickListeners.Add(listener); }