<!--
{
  "availability" : [
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "AppKit",
  "identifier" : "/documentation/AppKit/NSEvent/EventTypeMask",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "AppKit"
    ],
    "preciseIdentifier" : "c:@E@NSEventMask"
  },
  "title" : "NSEvent.EventTypeMask"
}
-->

# NSEvent.EventTypeMask

Constants that you use to filter out specific event types from the stream of incoming events.

```
struct EventTypeMask
```

## Overview

Pass these constants to the [`NSCell`](/documentation/AppKit/NSCell) method [`sendAction(on:)`](/documentation/AppKit/NSCell/sendAction(on:)) to specify when an [`NSCell`](/documentation/AppKit/NSCell) object should send its action message.

## Topics

### Getting Any Event

[`any`](/documentation/AppKit/NSEvent/EventTypeMask/any)

A mask that matches any type of event.

### Getting Mouse-Related Events

[`leftMouseDown`](/documentation/AppKit/NSEvent/EventTypeMask/leftMouseDown)

A mask for left mouse-down events.

[`leftMouseDragged`](/documentation/AppKit/NSEvent/EventTypeMask/leftMouseDragged)

A mask for left mouse-dragged events.

[`leftMouseUp`](/documentation/AppKit/NSEvent/EventTypeMask/leftMouseUp)

A mask for left mouse-up events.

[`rightMouseDown`](/documentation/AppKit/NSEvent/EventTypeMask/rightMouseDown)

A mask for right mouse-down events.

[`rightMouseDragged`](/documentation/AppKit/NSEvent/EventTypeMask/rightMouseDragged)

A mask for right mouse-dragged events.

[`rightMouseUp`](/documentation/AppKit/NSEvent/EventTypeMask/rightMouseUp)

A mask for right mouse-up events.

[`otherMouseDown`](/documentation/AppKit/NSEvent/EventTypeMask/otherMouseDown)

A mask for tertiary mouse-down events.

[`otherMouseDragged`](/documentation/AppKit/NSEvent/EventTypeMask/otherMouseDragged)

A mask for tertiary mouse-dragged events.

[`otherMouseUp`](/documentation/AppKit/NSEvent/EventTypeMask/otherMouseUp)

A mask for tertiary mouse-up events.

[`mouseEntered`](/documentation/AppKit/NSEvent/EventTypeMask/mouseEntered)

A mask for mouse-entered events.

[`mouseMoved`](/documentation/AppKit/NSEvent/EventTypeMask/mouseMoved)

A mask for mouse-moved events.

[`mouseExited`](/documentation/AppKit/NSEvent/EventTypeMask/mouseExited)

A mask for mouse-exited events.

### Getting Keyboard Events

[`keyDown`](/documentation/AppKit/NSEvent/EventTypeMask/keyDown)

A mask for key-down events.

[`keyUp`](/documentation/AppKit/NSEvent/EventTypeMask/keyUp)

A mask for key-up events.

### Getting Touch Events

[`beginGesture`](/documentation/AppKit/NSEvent/EventTypeMask/beginGesture)

A mask for begin-gesture events.

[`endGesture`](/documentation/AppKit/NSEvent/EventTypeMask/endGesture)

A mask for end-gesture events.

[`magnify`](/documentation/AppKit/NSEvent/EventTypeMask/magnify)

A mask for magnify-gesture events.

[`smartMagnify`](/documentation/AppKit/NSEvent/EventTypeMask/smartMagnify)

A mask for smart-zoom gesture events.

[`swipe`](/documentation/AppKit/NSEvent/EventTypeMask/swipe)

A mask for swipe-gesture events.

[`rotate`](/documentation/AppKit/NSEvent/EventTypeMask/rotate)

A mask for rotate-gesture events.

[`gesture`](/documentation/AppKit/NSEvent/EventTypeMask/gesture)

A mask for generic gesture events.

[`directTouch`](/documentation/AppKit/NSEvent/EventTypeMask/directTouch)

A mask for touch events.

[`tabletPoint`](/documentation/AppKit/NSEvent/EventTypeMask/tabletPoint)

A mask for tablet-point events.

[`tabletProximity`](/documentation/AppKit/NSEvent/EventTypeMask/tabletProximity)

A mask for tablet-proximity events.

[`pressure`](/documentation/AppKit/NSEvent/EventTypeMask/pressure)

A mask for pressure-change events.

### Getting Input Events

[`scrollWheel`](/documentation/AppKit/NSEvent/EventTypeMask/scrollWheel)

A mask for scroll-wheel events.

[`changeMode`](/documentation/AppKit/NSEvent/EventTypeMask/changeMode)

A mask for change-mode events.

### Getting System Events

[`appKitDefined`](/documentation/AppKit/NSEvent/EventTypeMask/appKitDefined)

A mask for AppKit–defined events.

[`applicationDefined`](/documentation/AppKit/NSEvent/EventTypeMask/applicationDefined)

A mask for app-defined events.

[`cursorUpdate`](/documentation/AppKit/NSEvent/EventTypeMask/cursorUpdate)

A mask for cursor-update events.

[`flagsChanged`](/documentation/AppKit/NSEvent/EventTypeMask/flagsChanged)

A mask for flags-changed events.

[`periodic`](/documentation/AppKit/NSEvent/EventTypeMask/periodic)

A mask for periodic events.

[`systemDefined`](/documentation/AppKit/NSEvent/EventTypeMask/systemDefined)

A mask for system-defined events.

### Creating an Event Mask

[`init(rawValue:)`](/documentation/AppKit/NSEvent/EventTypeMask/init(rawValue:))

[`init(type:)`](/documentation/AppKit/NSEvent/EventTypeMask/init(type:))

Returns the event mask for the specified type.

### Deprecated Types

[`NSLeftMouseDownMask`](/documentation/AppKit/NSLeftMouseDownMask)

A mask for left mouse-down events.

[`NSLeftMouseUpMask`](/documentation/AppKit/NSLeftMouseUpMask)

A mask for left mouse-up events.

[`NSRightMouseDownMask`](/documentation/AppKit/NSRightMouseDownMask)

A mask for right mouse-down events.

[`NSRightMouseUpMask`](/documentation/AppKit/NSRightMouseUpMask)

A mask for right mouse-up events.

[`NSOtherMouseDownMask`](/documentation/AppKit/NSOtherMouseDownMask)

A mask for other mouse-down events.

[`NSOtherMouseUpMask`](/documentation/AppKit/NSOtherMouseUpMask)

A mask for other mouse-up events.

[`NSMouseMovedMask`](/documentation/AppKit/NSMouseMovedMask)

A mask for mouse-moved events.

[`NSLeftMouseDraggedMask`](/documentation/AppKit/NSLeftMouseDraggedMask)

A mask for left mouse-dragged events.

[`NSRightMouseDraggedMask`](/documentation/AppKit/NSRightMouseDraggedMask)

A mask for right mouse-dragged events.

[`NSOtherMouseDraggedMask`](/documentation/AppKit/NSOtherMouseDraggedMask)

A mask for other mouse-dragged events.

[`NSMouseEnteredMask`](/documentation/AppKit/NSMouseEnteredMask)

A mask for mouse-entered events.

[`NSMouseExitedMask`](/documentation/AppKit/NSMouseExitedMask)

A mask for mouse-exited events.

[`NSCursorUpdateMask`](/documentation/AppKit/NSCursorUpdateMask)

A mask for cursor-update events.

[`NSKeyDownMask`](/documentation/AppKit/NSKeyDownMask)

A mask for key-down events.

[`NSKeyUpMask`](/documentation/AppKit/NSKeyUpMask)

A mask for key-up events.

[`NSFlagsChangedMask`](/documentation/AppKit/NSFlagsChangedMask)

A mask for flags-changed events.

[`NSAppKitDefinedMask`](/documentation/AppKit/NSAppKitDefinedMask)

A mask for AppKit-defined events.

[`NSSystemDefinedMask`](/documentation/AppKit/NSSystemDefinedMask)

A mask for system-defined events.

[`NSApplicationDefinedMask`](/documentation/AppKit/NSApplicationDefinedMask)

A mask for app-defined events.

[`NSPeriodicMask`](/documentation/AppKit/NSPeriodicMask)

A mask for periodic events.

[`NSScrollWheelMask`](/documentation/AppKit/NSScrollWheelMask)

A mask for scroll-wheel events.

[`NSTabletPointMask`](/documentation/AppKit/NSTabletPointMask)

A mask for tablet-point events.

[`NSTabletProximityMask`](/documentation/AppKit/NSTabletProximityMask)

A mask for tablet-proximity events.

[`NSAnyEventMask`](/documentation/AppKit/NSAnyEventMask)

A mask that matches any type of event.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)