<?xml version="1.0"?>
<!DOCTYPE gsdoc PUBLIC "-//GNUstep//DTD gsdoc 1.0.4//EN" "http://www.gnustep.org/gsdoc-1_0_4.dtd">
<gsdoc base="NSEvent" up="Gui">
  <head>
    <title>NSEvent</title>
    <author name="Scott Christley">
      <email address="scottc@net-community.com">
        scottc@net-community.com
      </email>
    </author>
    <author name="Ovidiu Predescu">
      <email address="ovidiu@net-community.com">
        ovidiu@net-community.com
      </email>
    </author>
    <author name="Felipe A. Rodriguez">
      <email address="far@ix.netcom.com">
        far@ix.netcom.com
      </email>
    </author>
    <abstract>The event class</abstract>
    <copy>1996 Free Software Foundation, Inc.</copy>
  </head>
  <body>
    <front><contents /></front>
    <chapter>
      <heading>
        Software documentation for the NSEvent class
      </heading>
      <class name="NSEvent" super="NSObject" ovadd="1.0.0">
        <declared>AppKit/NSEvent.h</declared>
        <conform>NSCoding</conform>
        <conform>NSCopying</conform>
        <desc>
          <em>Description forthcoming.</em>
        </desc>
        <ivariable type="NSGraphicsContext*" name="event_context" validity="protected" ovadd="1.0.0">
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </ivariable>
        <ivariable type="NSTimeInterval" name="event_time" validity="protected" ovadd="1.0.0">
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </ivariable>
        <ivariable type="NSEventType" name="event_type" validity="protected" ovadd="1.0.0">
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </ivariable>
        <ivariable type="NSPoint" name="location_point" validity="protected" ovadd="1.0.0">
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </ivariable>
        <ivariable type="NSUInteger" name="modifier_flags" validity="protected" ovadd="1.0.0">
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </ivariable>
        <ivariable type="union _MB_event_data" name="union _MB_event_data" validity="protected" ovadd="1.0.0">
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </ivariable>
        <ivariable type="NSInteger" name="window_num" validity="protected" ovadd="1.0.0">
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </ivariable>
        <method type="NSEvent*" factory="yes" ovadd="1.0.0">
          <sel>enterExitEventWithType:</sel>
          <arg type="NSEventType">type</arg>
          <sel>location:</sel>
          <arg type="NSPoint">location</arg>
          <sel>modifierFlags:</sel>
          <arg type="NSUInteger">flags</arg>
          <sel>timestamp:</sel>
          <arg type="NSTimeInterval">time</arg>
          <sel>windowNumber:</sel>
          <arg type="NSInteger">windowNum</arg>
          <sel>context:</sel>
          <arg type="NSGraphicsContext*">context</arg>
          <sel>eventNumber:</sel>
          <arg type="NSInteger">eventNum</arg>
          <sel>trackingNumber:</sel>
          <arg type="NSInteger">trackingNum</arg>
          <sel>userData:</sel>
          <arg type="void*">userData</arg>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSEvent*" factory="yes" ovadd="1.0.0">
          <sel>keyEventWithType:</sel>
          <arg type="NSEventType">type</arg>
          <sel>location:</sel>
          <arg type="NSPoint">location</arg>
          <sel>modifierFlags:</sel>
          <arg type="NSUInteger">flags</arg>
          <sel>timestamp:</sel>
          <arg type="NSTimeInterval">time</arg>
          <sel>windowNumber:</sel>
          <arg type="NSInteger">windowNum</arg>
          <sel>context:</sel>
          <arg type="NSGraphicsContext*">context</arg>
          <sel>characters:</sel>
          <arg type="NSString*">keys</arg>
          <sel>charactersIgnoringModifiers:</sel>
          <arg type="NSString*">ukeys</arg>
          <sel>isARepeat:</sel>
          <arg type="BOOL">repeatKey</arg>
          <sel>keyCode:</sel>
          <arg type="unsigned short">code</arg>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSEvent*" factory="yes" ovadd="1.0.0">
          <sel>mouseEventWithType:</sel>
          <arg type="NSEventType">type</arg>
          <sel>location:</sel>
          <arg type="NSPoint">location</arg>
          <sel>modifierFlags:</sel>
          <arg type="NSUInteger">flags</arg>
          <sel>timestamp:</sel>
          <arg type="NSTimeInterval">time</arg>
          <sel>windowNumber:</sel>
          <arg type="NSInteger">windowNum</arg>
          <sel>context:</sel>
          <arg type="NSGraphicsContext*">context</arg>
          <sel>eventNumber:</sel>
          <arg type="NSInteger">eventNum</arg>
          <sel>clickCount:</sel>
          <arg type="NSInteger">clickNum</arg>
          <sel>pressure:</sel>
          <arg type="float">pressureValue</arg>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSEvent*" factory="yes" ovadd="0.0.0" ovrem="0.0.0">
          <sel>mouseEventWithType:</sel>
          <arg type="NSEventType">type</arg>
          <sel>location:</sel>
          <arg type="NSPoint">location</arg>
          <sel>modifierFlags:</sel>
          <arg type="NSUInteger">flags</arg>
          <sel>timestamp:</sel>
          <arg type="NSTimeInterval">time</arg>
          <sel>windowNumber:</sel>
          <arg type="NSInteger">windowNum</arg>
          <sel>context:</sel>
          <arg type="NSGraphicsContext*">context</arg>
          <sel>eventNumber:</sel>
          <arg type="NSInteger">eventNum</arg>
          <sel>clickCount:</sel>
          <arg type="NSInteger">clickNum</arg>
          <sel>pressure:</sel>
          <arg type="float">pressureValue</arg>
          <sel>buttonNumber:</sel>
          <arg type="NSInteger">buttonNum</arg>
          <sel>deltaX:</sel>
          <arg type="CGFloat">deltaX</arg>
          <sel>deltaY:</sel>
          <arg type="CGFloat">deltaY</arg>
          <sel>deltaZ:</sel>
          <arg type="CGFloat">deltaZ</arg>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSPoint" factory="yes" ovadd="1.0.0">
          <sel>mouseLocation</sel>
          <desc>
            Returns the current mouse location.
          </desc>
        </method>
        <method type="NSEvent*" factory="yes" ovadd="1.0.0">
          <sel>otherEventWithType:</sel>
          <arg type="NSEventType">type</arg>
          <sel>location:</sel>
          <arg type="NSPoint">location</arg>
          <sel>modifierFlags:</sel>
          <arg type="NSUInteger">flags</arg>
          <sel>timestamp:</sel>
          <arg type="NSTimeInterval">time</arg>
          <sel>windowNumber:</sel>
          <arg type="NSInteger">windowNum</arg>
          <sel>context:</sel>
          <arg type="NSGraphicsContext*">context</arg>
          <sel>subtype:</sel>
          <arg type="short">subType</arg>
          <sel>data1:</sel>
          <arg type="NSInteger">data1</arg>
          <sel>data2:</sel>
          <arg type="NSInteger">data2</arg>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="void" factory="yes" ovadd="1.0.0">
          <sel>startPeriodicEventsAfterDelay:</sel>
          <arg type="NSTimeInterval">delaySeconds</arg>
          <sel>withPeriod:</sel>
          <arg type="NSTimeInterval">periodSeconds</arg>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="void" factory="yes" ovadd="1.0.0">
          <sel>stopPeriodicEvents</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSInteger" ovadd="10.4.0">
          <sel>absoluteX</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSInteger" ovadd="10.4.0">
          <sel>absoluteY</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSInteger" ovadd="10.4.0">
          <sel>absoluteZ</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>buttonMask</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSInteger" ovadd="10.0.0">
          <sel>buttonNumber</sel>
          <desc>
            Returns the button number for the mouse button
            pressed in a mouse event. Intended primarily for
            the case where a mouse has three or more buttons, and
            you want to know which button an 'other' mouse event
            refers to.
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>capabilityMask</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSString*" ovadd="1.0.0">
          <sel>characters</sel>
          <desc>
            Returns the string of characters for a keyboard
            event. <br /> Raises an
            NSInternalInconsistencyException
            if applied to any other type of event.
          </desc>
        </method>
        <method type="NSString*" ovadd="1.0.0">
          <sel>charactersIgnoringModifiers</sel>
          <desc>
            Returns the string of characters for a keyboard
            event, as if no modifier keys had been pressed when
            the keyboard event occirred. <br /> Raises an
            NSInternalInconsistencyException
            if applied to any other type of event.
          </desc>
        </method>
        <method type="NSInteger" ovadd="1.0.0">
          <sel>clickCount</sel>
          <desc>
            Return the number of clicks associated with the
            mouse down or up event. This method is not applicable
            for any event type other than a mouse down or mouse up.
            <br /> Raises an NSInternalInconsistencyException if
            applied to any other type of event.
          </desc>
        </method>
        <method type="NSGraphicsContext*" ovadd="1.0.0">
          <sel>context</sel>
          <desc>
            Returns the graphics context for which this event
            was generated.
          </desc>
        </method>
        <method type="NSInteger" ovadd="1.0.0">
          <sel>data1</sel>
          <desc>
            Returns the 'data1' item associated with the event.
            <br /> Raises NSInternalInconsistencyException if
            the event is not of type NSAppKitDefined,
            NSSystemDefined, NSApplicationDefined, or
            NSPeriodic
          </desc>
        </method>
        <method type="NSInteger" ovadd="1.0.0">
          <sel>data2</sel>
          <desc>
            Returns the 'data2' item associated with the event.
            <br /> Raises NSInternalInconsistencyException if
            the event is not of type NSAppKitDefined,
            NSSystemDefined, NSApplicationDefined, or
            NSPeriodic
          </desc>
        </method>
        <method type="CGFloat" ovadd="10.0.0">
          <sel>deltaX</sel>
          <desc>
            <p>
              Returns the movement of the mouse on the X axis.
            </p>
            <p>
              This method is only valid for NSMouseMoved,
              NS*MouseDragged and NSScrollWheel events,
              otherwise it will return 0.
            </p>
          </desc>
        </method>
        <method type="CGFloat" ovadd="10.0.0">
          <sel>deltaY</sel>
          <desc>
            <p>
              Returns the movement of the mouse on the Y axis.
            </p>
            <p>
              This method is only valid for NSMouseMoved,
              NS*MouseDragged and NSScrollWheel events,
              otherwise it will return 0.
            </p>
          </desc>
        </method>
        <method type="CGFloat" ovadd="10.0.0">
          <sel>deltaZ</sel>
          <desc>
            <p>
              Returns the movement of the mouse on the Z axis.
            </p>
            <p>
              This method is only valid for NSMouseMoved,
              NS*MouseDragged and NSScrollWheel events,
              otherwise it will return 0.
            </p>
            <p>
              The value returned is 0.0 in most cases.
            </p>
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>deviceID</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSInteger" ovadd="1.0.0">
          <sel>eventNumber</sel>
          <desc>
            Returns the event number associated with any mouse
            event or tracking event. Event numbers are allocated
            sequentially when the system creates these
            events. <br /> Raises an
            NSInternalInconsistencyException
            if applied to any other type of event.
          </desc>
        </method>
        <method type="BOOL" ovadd="1.0.0">
          <sel>isARepeat</sel>
          <desc>
            Returns a flag to say if this is a keyboard repeat
            event. <br /> Raises an
            NSInternalInconsistencyException
            if applied to any other type of event than an NSKeyUp or
            NSKeyDown.
          </desc>
        </method>
        <method type="BOOL" ovadd="10.4.0">
          <sel>isEnteringProximity</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="unsigned short" ovadd="1.0.0">
          <sel>keyCode</sel>
          <desc>
            Returns the numeric key code of a keyboard event.
            <br /> Raises an NSInternalInconsistencyException if
            applied to any other type of event than an NSKeyUp
            or NSKeyDown.
          </desc>
        </method>
        <method type="NSPoint" ovadd="1.0.0">
          <sel>locationInWindow</sel>
          <desc>
            Returns the window location for which this event
            was generated (in the base coordinate system of the
            window).
          </desc>
        </method>
        <method type="NSUInteger" ovadd="1.0.0">
          <sel>modifierFlags</sel>
          <desc>
            Returns the modifier flag bits associated with the
            event.
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>pointingDeviceID</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>pointingDeviceSerialNumber</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSPointingDeviceType" ovadd="10.4.0">
          <sel>pointingDeviceType</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="float" ovadd="1.0.0">
          <sel>pressure</sel>
          <desc>
            Returns the pressure associated with a mouse event.
            This is a value in the range 0.0 to 1.0 and for mormal
            mouse events should be set to one of those extremes.
            This is used by pressure sensitive input devices.
            <br /> Raises an NSInternalInconsistencyException if
            applied to any other type of event than a mouse
            event.
          </desc>
        </method>
        <method type="float" ovadd="10.4.0">
          <sel>rotation</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="short" ovadd="1.0.0">
          <sel>subtype</sel>
          <desc>
            Returns the 'subtype' item associated with the
            event. <br /> Raises
            NSInternalInconsistencyException
            if the event is not of type NSAppKitDefined,
            NSSystemDefined, NSApplicationDefined,
            NSPeriodic or a mouve event.
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>systemTabletID</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>tabletID</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="float" ovadd="10.4.0">
          <sel>tangentialPressure</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSPoint" ovadd="10.4.0">
          <sel>tilt</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSTimeInterval" ovadd="1.0.0">
          <sel>timestamp</sel>
          <desc>
            Returns the time interval since system startup at
            which this event was generated.
          </desc>
        </method>
        <method type="NSInteger" ovadd="1.0.0">
          <sel>trackingNumber</sel>
          <desc>
            Returns a number identifying the tracking rectangle
            entered or exited. <br /> Raises an
            NSInternalInconsistencyException
            if applied to any other type of event than a mouse
            entered or exited event.
          </desc>
        </method>
        <method type="NSEventType" ovadd="1.0.0">
          <sel>type</sel>
          <desc>
            returns the type of this event.
          </desc>
        </method>
        <method type="unsigned long long" ovadd="10.4.0">
          <sel>uniqueID</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="void*" ovadd="1.0.0">
          <sel>userData</sel>
          <desc>
            Returns usder data associated with a tracking
            event... the data assigned to the tracking
            rectangle concerned when it was created.. <br />
            Raises an NSInternalInconsistencyException if
            applied to any other type of event than a mouse
            entered or exited event.
          </desc>
        </method>
        <method type="id" ovadd="10.4.0">
          <sel>vendorDefined</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>vendorID</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSUInteger" ovadd="10.4.0">
          <sel>vendorPointingDeviceType</sel>
          <desc>
            <em>Description forthcoming.</em>
          </desc>
        </method>
        <method type="NSWindow*" ovadd="1.0.0">
          <sel>window</sel>
          <desc>
            Returns the window for which this event was
            generated. <br /> Periodic events have no
            associated window, and you should not call this
            method for those events.
          </desc>
        </method>
        <method type="NSInteger" ovadd="1.0.0">
          <sel>windowNumber</sel>
          <desc>
            Returns the window number of the window for which
            this event was generated. <br /> Periodic events have
            no associated window, and you should not call this
            method for those events.
          </desc>
        </method>
      </class>
    </chapter>
  </body>
</gsdoc>
