Ejemplo n.º 1
0
 public TileGridAction(MouseButton button, MouseModifier mod, GridAction action, TileGridEventHandler callback = null)
 {
     this.button   = button;
     this.mod      = mod;
     this.action   = action;
     this.callback = callback;
 }
Ejemplo n.º 2
0
 public void RemoveMouseAction(MouseButton button, MouseModifier mod)
 {
     for (int i = 0; i < actionList.Count; i++)
     {
         var act = actionList[i];
         if (act.button == button && act.mod == mod)
         {
             actionList.Remove(act);
             i--;
         }
     }
 }
Ejemplo n.º 3
0
            public bool ModifierMatchesState(Gdk.ModifierType state)
            {
                if (mod.HasFlag(MouseModifier.Any))
                {
                    return(true);
                }
                MouseModifier flags = MouseModifier.None;

                if (state.HasFlag(Gdk.ModifierType.ControlMask))
                {
                    flags |= MouseModifier.Ctrl;
                }
                if (state.HasFlag(Gdk.ModifierType.ShiftMask))
                {
                    flags |= MouseModifier.Shift;
                }

                return(mod == flags);
            }
Ejemplo n.º 4
0
        public void AddMouseAction(MouseButton button, MouseModifier mod, GridAction action, TileGridEventHandler callback = null)
        {
            TileGridAction act;

            if (action == GridAction.Callback)
            {
                if (callback == null)
                {
                    throw new Exception("Need to specify a callback.");
                }
                act = new TileGridAction(button, mod, action, callback);
            }
            else
            {
                if (callback != null)
                {
                    throw new Exception("This action doesn't take a callback.");
                }
                act = new TileGridAction(button, mod, action);
            }

            actionList.Add(act);
        }