---
title: "otherEvent(with:location:modifierFlags:timestamp:windowNumber:context:subtype:data1:data2:)"
framework: appkit
role: symbol
role_heading: Type Method
path: "appkit/nsevent/otherevent(with:location:modifierflags:timestamp:windownumber:context:subtype:data1:data2:)"
---

# otherEvent(with:location:modifierFlags:timestamp:windowNumber:context:subtype:data1:data2:)

Creates and returns a new event object that describes a custom event.

## Declaration

```swift
class func otherEvent(with type: NSEvent.EventType, location: NSPoint, modifierFlags flags: NSEvent.ModifierFlags, timestamp time: TimeInterval, windowNumber wNum: Int, context unusedPassNil: NSGraphicsContext?, subtype: Int16, data1 d1: Int, data2 d2: Int) -> NSEvent?
```

## Parameters

- `type`: One of the following event-type constants: NSAppKitDefined NSSystemDefined NSApplicationDefined NSPeriodic If type is anything else, an NSInternalInconsistencyException is raised. Your code should only create events of type NSApplicationDefined.
- `location`: The cursor location in the base coordinate system of the window specified by windowNum.
- `flags`: An integer bit field containing any of the modifier key masks described in Getting Unicode Values, combined using the C bitwise OR operator.
- `time`: The time the event occurred in seconds since system startup.
- `wNum`: An integer that identifies the window device associated with the event, which is associated with the NSWindow that will receive the event.
- `unusedPassNil`: The display graphics context of the event. Pass nil for this parameter.
- `subtype`: A numeric identifier that further differentiates custom events of types NSAppKitDefined, NSSystemDefined, and NSApplicationDefined. NSPeriodic events don’t use this attribute.
- `d1`: Additional data associated with the event. NSPeriodic events don’t use these attributes.
- `d2`: Additional data associated with the event. NSPeriodic events don’t use these attributes.

## Return Value

Return Value The created NSEvent object or nil if the object couldn’t be created.

## See Also

### Related Documentation

- [subtype](appkit/nsevent/subtype.md)
- [data1](appkit/nsevent/data1.md)
- [systemUptime](foundation/processinfo/systemuptime.md)
- [data2](appkit/nsevent/data2.md)

### Creating an event object

- [keyEvent(with:location:modifierFlags:timestamp:windowNumber:context:characters:charactersIgnoringModifiers:isARepeat:keyCode:)](appkit/nsevent/keyevent(with:location:modifierflags:timestamp:windownumber:context:characters:charactersignoringmodifiers:isarepeat:keycode:).md)
- [mouseEvent(with:location:modifierFlags:timestamp:windowNumber:context:eventNumber:clickCount:pressure:)](appkit/nsevent/mouseevent(with:location:modifierflags:timestamp:windownumber:context:eventnumber:clickcount:pressure:).md)
- [enterExitEvent(with:location:modifierFlags:timestamp:windowNumber:context:eventNumber:trackingNumber:userData:)](appkit/nsevent/enterexitevent(with:location:modifierflags:timestamp:windownumber:context:eventnumber:trackingnumber:userdata:).md)
- [init(eventRef:)](appkit/nsevent/init(eventref:).md)
- [init(cgEvent:)](appkit/nsevent/init(cgevent:)-4igjn.md)
