зеркало из https://github.com/mozilla/pjs.git
86 строки
2.9 KiB
Plaintext
86 строки
2.9 KiB
Plaintext
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
|
*
|
|
* The contents of this file are subject to the Mozilla Public
|
|
* License Version 1.1 (the "License"); you may not use this file
|
|
* except in compliance with the License. You may obtain a copy of
|
|
* the License at http://www.mozilla.org/MPL/
|
|
*
|
|
* Software distributed under the License is distributed on an "AS
|
|
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
|
* implied. See the License for the specific language governing
|
|
* rights and limitations under the License.
|
|
*
|
|
* The Original Code is The Waterfall Java Plugin Module
|
|
*
|
|
* The Initial Developer of the Original Code is Sun Microsystems Inc
|
|
* Portions created by Sun Microsystems Inc are Copyright (C) 2001
|
|
* All Rights Reserved.
|
|
*
|
|
* $Id: nsoji2.idl,v 1.1 2001-05-10 18:12:41 edburns%acm.org Exp $
|
|
*
|
|
*
|
|
* Contributor(s):
|
|
*
|
|
* Nikolay N. Igotti <inn@sparc.spb.su>
|
|
*/
|
|
|
|
#include "nsISupports.idl"
|
|
|
|
%{C++
|
|
|
|
// external C++ includes here - they can be Mozilla dependent, but not
|
|
// JDK dependent
|
|
// we using older plugin stuff for easyness of integration
|
|
// this should be removed in future
|
|
//several hacks to live with current Mozilla tree
|
|
#define JNI_H
|
|
#define JRI_H
|
|
#define JRI_MD_H
|
|
#include "jvmp.h"
|
|
#include "nsplugindefs.h"
|
|
#include "nsIPluginInstancePeer.h"
|
|
//Java Script stuff
|
|
#include "jsapi.h"
|
|
|
|
typedef enum nsPluggableJVMStatus {
|
|
nsPluggableJVMStatus_Enabled, /* but not Running */
|
|
nsPluggableJVMStatus_Disabled, /* explicitly disabled */
|
|
nsPluggableJVMStatus_Running, /* enabled and started */
|
|
nsPluggableJVMStatus_Failed /* enabled but failed to start */
|
|
} nsPluggableJVMStatus;
|
|
|
|
typedef struct _nsPluginThread nsPluginThread;
|
|
|
|
// Auxilary macroses
|
|
#define OJI_LOG(s1) { fprintf (stderr, "MOZWF: "); \
|
|
fprintf(stderr, s1); fprintf(stderr, "\n"); }
|
|
#define OJI_LOG2(s1, s2) { fprintf (stderr, "MOZWF: "); \
|
|
fprintf(stderr, s1, s2); fprintf(stderr, "\n"); }
|
|
#define OJI_LOG3(s1, s2, s3) { fprintf (stderr, "MOZWF: "); \
|
|
fprintf(stderr, s1, s2, s3); fprintf(stderr, "\n"); }
|
|
#define OJI_LOG4(s1, s2, s3, s4) { fprintf (stderr, "MOZWF: "); \
|
|
fprintf(stderr, s1, s2, s3 ,s4); fprintf(stderr, "\n"); }
|
|
#define OJI_LOG5(s1, s2, s3, s4, s5) { fprintf (stderr, "MOZWF: "); \
|
|
fprintf(stderr, s1, s2, s3 ,s4, s5); fprintf(stderr, "\n"); }
|
|
|
|
%}
|
|
|
|
// native types
|
|
native nsNativeWindow(nsPluginWindow*);
|
|
native nsNativeMonitor(PRMonitor*);
|
|
native nsJVMStatus(nsPluggableJVMStatus);
|
|
// hackz - should be in jvmp.h
|
|
native jp_jobject(jobject);
|
|
native jp_jint(jint);
|
|
native jp_jlong(jlong);
|
|
native jp_JNIEnv(JNIEnv*);
|
|
native jp_CallInfo(struct JSObject_CallInfo*);
|
|
// hackz - should be scripting engine independent
|
|
native nsScriptRuntime(JSRuntime*);
|
|
native nsScriptContext(JSContext*);
|
|
native nsScriptObject(JSObject*);
|
|
|
|
// interfaces to be IDL'ized
|
|
interface nsISecureEnv;
|
|
interface nsIPluginInstancePeer;
|