/******************************************************************************* * Copyright (c) 2000, 2011 IBM Corporation and others. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ /** * Callback implementation. */ #ifndef INC_callback_H #define INC_callback_H #include "swt.h" #ifdef REDUCED_CALLBACKS #define MAX_CALLBACKS 16 #else #if (defined(USE_ASSEMBLER) || defined(GTK)) #define MAX_CALLBACKS 256 #else #define MAX_CALLBACKS 128 #endif #endif /* REDUCED_CALLBACKS */ #define MAX_ARGS 12 typedef struct CALLBACK_DATA { jobject callback; jmethodID methodID; jobject object; jboolean isStatic; jboolean isArrayBased; jint argCount; jlong errorResult; #if defined(COCOA) int arg_Selector; #elif defined(GTK) int arg_GObject; int arg_GdkEvent; int arg_SwtSignalID; #endif } CALLBACK_DATA; #endif /* ifndef INC_callback_H */