gecko-dev/nav-java/stubs/include/java.h
1998-03-28 02:44:41 +00:00

175 lines
4.3 KiB
C

/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#ifndef _NAVJAVA_H_
#define _NAVJAVA_H_
#include "lo_ele.h"
#ifndef NSPR20
#include "prevent.h"
#else
#include "plevent.h"
#endif
#include "jri.h"
#include "prthread.h"
/* for Mocha glue */
#include "jsapi.h"
#include "jsjava.h"
XP_BEGIN_PROTOS
struct java_applet_Applet;
struct netscape_applet_EmbeddedAppletFrame;
struct netscape_javascript_JSObject;
struct netscape_security_Zig;
struct Hjava_lang_Object;
/* Type of data that hangs off of LO_JavaStruct->FE_Data */
typedef struct LJAppletData LJAppletData;
struct LJAppletData {
int16 generation;
};
typedef enum LJJavaStatus
{
LJJavaStatus_Enabled, /* but not Running */
LJJavaStatus_Disabled, /* explicitly disabled */
LJJavaStatus_Running, /* enabled and started */
LJJavaStatus_Failed /* enabled but failed to start */
} LJJavaStatus;
/*******************************************************************************
* Mozilla Events
******************************************************************************/
/* Generic event struct for events coming from layer */
typedef struct _tagNAppletEvent {
int id;
void* data;
} NAppletEvent;
JRI_PUBLIC_API(void)
LJ_AddToClassPath(char* dirPath);
JRI_PUBLIC_API(char *)
LJ_Applet_GetText(LJAppletData* ad);
JRI_PUBLIC_API(void)
LJ_Applet_print(LJAppletData *ad, void* printInfo);
JRI_PUBLIC_API(void)
LJ_CreateApplet(LO_JavaAppStruct *java, MWContext *cx,
NET_ReloadMethod reloadMethod);
JRI_PUBLIC_API(void)
LJ_DeleteSessionData(MWContext* cx, void* sdata);
JRI_PUBLIC_API(void)
LJ_DiscardEventsForContext(MWContext* context);
JRI_PUBLIC_API(void)
LJ_DisplayJavaApp(MWContext *context, ...);
JRI_PUBLIC_API(JRIEnv *)
LJ_EnsureJavaEnv(PRThread *thread);
JRI_PUBLIC_API(void)
LJ_FreeJavaAppElement(MWContext *context, ...);
JRI_PUBLIC_API(char *)
LJ_GetAppletScriptOrigin(JRIEnv *env);
JRI_PUBLIC_API(void)
LJ_GetJavaAppSize(MWContext *context, LO_JavaAppStruct *java_struct,
NET_ReloadMethod reloadMethod);
JRI_PUBLIC_API(PRBool)
LJ_GetJavaEnabled(void);
JRI_PUBLIC_API(struct netscape_javascript_JSObject*)
LJ_GetMochaWindow(MWContext *cx);
JRI_PUBLIC_API(PRBool)
LJ_HandleEvent(MWContext* context, LO_JavaAppStruct *pJava, void *event);
JRI_PUBLIC_API(void)
LJ_HideConsole(void);
JRI_PUBLIC_API(void)
LJ_HideJavaAppElement(MWContext *context, ...);
JRI_PUBLIC_API(void)
LJ_IconifyApplets(MWContext* context);
PR_PUBLIC_API(void *)
LJ_InitializeZig(void *zipPtr);
jref
LJ_InvokeMethod(jglobal clazzGlobal, ...);
JRI_PUBLIC_API(JRIEnv *)
LJ_JSJ_CurrentEnv(JSContext *cx);
JRI_PUBLIC_API(void)
LJ_JSJ_Init();
PR_PUBLIC_API(char *)
LJ_LoadFromZipFile(void *zip, char *fn);
PR_PUBLIC_API(int)
LJ_PrintZigError(int status, void *zigPtr, const char *metafile, char *pathname,
char *errortext);
JRI_PUBLIC_API(void)
LJ_SetConsoleShowCallback(void (*func)(int on, void* a), void *arg);
void
LJ_SetProgramName(const char *name);
JRI_PUBLIC_API(void)
LJ_ShowConsole(void);
JRI_PUBLIC_API(LJJavaStatus)
LJ_ShutdownJava(void);
JRI_PUBLIC_API(void)
LJ_UniconifyApplets(MWContext* context);
/* ??? Is it needed for windows ??? */
/* LJ_StartupJava used in ./cmd/winfe/woohoo.cpp */
/* ns/modules/applet/include/java.h */
/* ns/modules/applet/src/lj_init.c */
JRI_PUBLIC_API(LJJavaStatus)
LJ_StartupJava(void);
JRI_PUBLIC_API(MWContext *)
NSN_JavaContextToRealContext(MWContext *javaContext);
JRI_PUBLIC_API(void)
NSN_RegisterJavaConverter(void);
JRI_PUBLIC_API(void)
PrintToConsole(const char* bytes);
/******************************************************************************/
XP_END_PROTOS
#endif /* _NAVJAVA_H_ */