1#include "Testing.h"
2
3#include <Foundation/NSAutoreleasePool.h>
4#include <Foundation/NSDictionary.h>
5#include <Foundation/NSString.h>
6
7#include <AppKit/NSApplication.h>
8#include <AppKit/NSEvent.h>
9
10int main()
11{
12  CREATE_AUTORELEASE_POOL(arp);
13  NSEvent *ev;
14
15  START_SET("NSEvent GNUstep delta")
16
17  NS_DURING
18  {
19    [NSApplication sharedApplication];
20  }
21  NS_HANDLER
22  {
23    if ([[localException name] isEqualToString: NSInternalInconsistencyException ])
24       SKIP("It looks like GNUstep backend is not yet installed")
25  }
26  NS_ENDHANDLER
27
28  ev = [NSEvent mouseEventWithType: NSLeftMouseDown
29                          location: NSMakePoint(0.0, 0.0)
30                     modifierFlags: 0
31                         timestamp: 0
32                      windowNumber: 0
33                           context: nil
34                       eventNumber: 0
35                        clickCount: 0
36                          pressure: 0.0];
37  pass([ev deltaX] == 0.0, "-deltaX with NSLeftMouseDown event works");
38  pass([ev deltaY] == 0.0, "-deltaY with NSLeftMouseDown event works");
39  pass([ev deltaZ] == 0.0, "-deltaZ with NSLeftMouseDown event works");
40
41  ev = [NSEvent keyEventWithType: NSKeyDown
42                        location: NSMakePoint(0.0, 0.0)
43                   modifierFlags: 0
44                       timestamp: 0
45                    windowNumber: 0
46                         context: nil
47                      characters: @"a"
48                charactersIgnoringModifiers: @"a"
49                       isARepeat: NO
50                         keyCode: 65];
51  pass([ev deltaX] == 0.0, "-deltaX with NSKeyDown event works");
52  pass([ev deltaY] == 0.0, "-deltaY with NSKeyDown event works");
53  pass([ev deltaZ] == 0.0, "-deltaZ with NSKeyDown event works");
54
55  END_SET("NSEvent GNUstep delta")
56
57  DESTROY(arp);
58  return 0;
59}
60