1 /*
   2  * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 /*
  26  * Implements the native code for the java.awt.AWTEvent class
  27  * and all of the classes in the java.awt.event package.
  28  *
  29  * THIS FILE DOES NOT IMPLEMENT ANY OF THE OBSOLETE java.awt.Event
  30  * CLASS. SEE awt_Event.[ch] FOR THAT CLASS' IMPLEMENTATION.
  31  */
  32 
  33 #ifdef HEADLESS
  34     #error This file should not be included in headless library
  35 #endif
  36 
  37 #include "awt_p.h"
  38 #include "java_awt_AWTEvent.h"
  39 #include "java_awt_event_InputEvent.h"
  40 #include "java_awt_event_KeyEvent.h"
  41 #include "jni_util.h"
  42 
  43 #include "awt_AWTEvent.h"
  44 
  45 struct AWTEventIDs awtEventIDs;
  46 struct InputEventIDs inputEventIDs;
  47 struct KeyEventIDs keyEventIDs;
  48 
  49 JNIEXPORT void JNICALL
  50 Java_java_awt_AWTEvent_initIDs(JNIEnv *env, jclass cls)
  51 {
  52     CHECK_NULL(awtEventIDs.bdata = (*env)->GetFieldID(env, cls, "bdata", "[B"));
  53     CHECK_NULL(awtEventIDs.consumed = (*env)->GetFieldID(env, cls, "consumed", "Z"));
  54     CHECK_NULL(awtEventIDs.id = (*env)->GetFieldID(env, cls, "id", "I"));
  55 }
  56 
  57 JNIEXPORT void JNICALL
  58 Java_java_awt_event_InputEvent_initIDs(JNIEnv *env, jclass cls)
  59 {
  60     CHECK_NULL(inputEventIDs.modifiers = (*env)->GetFieldID(env, cls, "modifiers", "I"));
  61 }
  62 
  63 JNIEXPORT void JNICALL
  64 Java_java_awt_event_KeyEvent_initIDs(JNIEnv *env, jclass cls)
  65 {
  66     CHECK_NULL(keyEventIDs.keyCode = (*env)->GetFieldID(env, cls, "keyCode", "I"));
  67     CHECK_NULL(keyEventIDs.keyChar = (*env)->GetFieldID(env, cls, "keyChar", "C"));
  68 }
  69 
  70 JNIEXPORT void JNICALL
  71 Java_java_awt_AWTEvent_nativeSetSource(JNIEnv *env, jobject self,
  72                                        jobject newSource)
  73 {
  74 
  75 }