diff -r 000000000000 -r dd21522fd290 webengine/wmlengine/src/wml/include/wml_scrproxy.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/webengine/wmlengine/src/wml/include/wml_scrproxy.h Mon Mar 30 12:54:55 2009 +0300 @@ -0,0 +1,351 @@ +/* +* Copyright (c) 1999 - 2001 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + + +/*************************************************************************** +** File: wml_scrproxy.h +** Subsystem Name: WAE User Agent +** Purpose: This module is responsible for coordinating the WML Script Engine +** with the WML Interpreter and the User Interface. +**************************************************************************/ +#ifndef WML_SCRPROXY_H +#define WML_SCRPROXY_H + +/* +** Includes +*/ +#include "nw_scrproxy.h" +#include "nwx_generic_dlg.h" +#include "nw_wtai_api.h" +#include "BrsrStatusCodes.h" + +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +/* +** Type Declarations +*/ +/* interface to the script interpreter */ +typedef struct { + /* request to run a script. transfer ownership of the url, referer, and content + to the script server */ + TBrowserStatusCode (*run) (NW_Ucs2 *url, NW_Ucs2 *postfields, + NW_Ucs2 *referer, NW_Byte *content, + const NW_Uint32 len, const NW_Http_CharSet_t charset); + + /* request to abort the running script */ + TBrowserStatusCode (*abort) (void); +} NW_ScriptSrvApi_t; + + +/* +** Global Function Declarations +*/ +/*************** interface from the WAE Browser ***************/ + +/* dispose the script proxy */ +/* this function is not being used any where. +TBrowserStatusCode NW_ScrProxy_Dispose(NW_ScrProxy_t *scrProxy); +*/ + +/* script interpreter is not responding */ +TBrowserStatusCode NW_ScrProxy_ScrNotRespondingError(NW_ScrProxy_t *scrProxy); + +/* check if any script is still running */ +TBrowserStatusCode NW_ScrProxy_IsScriptRunning(NW_ScrProxy_t *scrProxy, + NW_Bool *result); + +/* acknowledgement for a script start */ +TBrowserStatusCode NW_ScrProxy_RunScriptAck(NW_ScrProxy_t *scrProxy, + const TBrowserStatusCode status); + +/* script has completed */ +TBrowserStatusCode NW_ScrProxy_Finish(NW_ScrProxy_t *scrProxy, + const TBrowserStatusCode status, + const NW_Ucs2 *message); + +/* acknowledgement for a script abort */ +TBrowserStatusCode NW_ScrProxy_AbortAck(NW_ScrProxy_t *scrProxy, + const TBrowserStatusCode status); + +/* alert the user with a dialog */ +TBrowserStatusCode NW_ScrProxy_DlgAlert(NW_ScrProxy_t *scrProxy, + const NW_Ucs2 *message, + void *callbackCtx, + NW_ScrProxy_DlgAlertCB_t *callback); + +TBrowserStatusCode NW_ScrProxy_NotifyError(NW_ScrProxy_t *scrProxy, + const TBrowserStatusCode status); + +/* confirm with the user with a dialog */ +TBrowserStatusCode NW_ScrProxy_DlgConfirm(NW_ScrProxy_t *scrProxy, + const NW_Ucs2 *message, + const NW_Ucs2 *yesMessage, + const NW_Ucs2 *noMessage, + void *callbackCtx, + NW_Dlg_ConfirmCB_t *callback); + +/* prompt the user with a dialog */ +TBrowserStatusCode NW_ScrProxy_DlgPrompt(NW_ScrProxy_t *scrProxy, + const NW_Ucs2 *message, + const NW_Ucs2 *defaultInput, + void *callbackCtx, + NW_ScrProxy_DlgPromptCB_t *callback); + +/* prompt the user with a generic dialog */ +TBrowserStatusCode NW_ScrProxy_GenericDlgListSelect(NW_ScrProxy_t *scrProxy, NW_Dlg_ListSelect_t *data, + void* callbackCtx, NW_Dlg_ListSelectCB_t* callback); + + +/* prompt the user with a generic dialog */ +TBrowserStatusCode NW_ScrProxy_GenericDlgPrompt(NW_ScrProxy_t *scrProxy, NW_Dlg_Prompt_t *data, + void* callbackCtx, NW_Dlg_PromptCB_t* callback); + +/* prompt the user with a generic dialog */ +TBrowserStatusCode NW_ScrProxy_GenericDlgInputPrompt(NW_ScrProxy_t *scrProxy, NW_Dlg_InputPrompt_t *data, + void* callbackCtx, NW_Dlg_InputPromptCB_t* callback); + + +/* acknowledgement for a script exit */ +TBrowserStatusCode NW_ScrProxy_GetVar(NW_ScrProxy_t *scrProxy, + const NW_Ucs2 *var, + NW_Ucs2 **ret_string); + +/* set a variable */ +TBrowserStatusCode NW_ScrProxy_SetVar(NW_ScrProxy_t *scrProxy, + const NW_Ucs2 *var, + const NW_Ucs2 *value); + +/* execute a wml prev task on the wml interpreter */ +TBrowserStatusCode NW_ScrProxy_LoadPrev(NW_ScrProxy_t *scrProxy); + +/* execute a newcontext on the wml interpreter */ +TBrowserStatusCode NW_ScrProxy_NewContext(NW_ScrProxy_t *scrProxy); + +/* refresh the wml interpreter */ +TBrowserStatusCode NW_ScrProxy_Refresh(NW_ScrProxy_t *scrProxy); + +/* execute a load url on the wml interpreter */ +TBrowserStatusCode NW_ScrProxy_LoadUrl(NW_ScrProxy_t *scrProxy, + const NW_Ucs2 *url, + const NW_Ucs2 *param); + +/* Query Browser app for Suspend/Resume of Script */ +TBrowserStatusCode NW_ScrProxy_BrowerApp_QueryForSuspRes(NW_ScrProxy_t *scrProxy); +/* WTAI functions */ + +/* public library */ +TBrowserStatusCode NW_ScrProxy_wp_makeCall(NW_ScrProxy_t *scrProxy, + NW_Ucs2 *number); +TBrowserStatusCode NW_ScrProxy_wp_sendDTMF(NW_ScrProxy_t *scrProxy, + NW_Ucs2 *dtmf); +TBrowserStatusCode NW_ScrProxy_wp_addPBEntry(NW_ScrProxy_t *scrProxy, + NW_Ucs2 *number, + NW_Ucs2 *name); + +/* not yet supported */ + +#if 0 + +/* voice call library */ +TBrowserStatusCode NW_ScrProxy_wvc_setup (NW_ScrProxy_t *scrProxy, + NW_Ucs2 *number, NW_Bool mode, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wvc_accept (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, NW_Bool *mode, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wvc_release (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wvc_sendDTMF (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, NW_Ucs2 *dtmf, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wvc_callStatus(NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, NW_Ucs2 *field, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wvc_list (NW_ScrProxy_t *scrProxy, + NW_Bool returnFirst, + NW_Opaque_t *result); + + +/* network text library */ +TBrowserStatusCode NW_ScrProxy_wnt_send (NW_ScrProxy_t *scrProxy, + NW_Ucs2 *address, NW_Ucs2 *text, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wnt_list (NW_ScrProxy_t *scrProxy, + NW_Bool returnFirst, NW_Int32 type, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wnt_remove (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wnt_getFieldValue (void *ctx, + NW_Opaque_t *msgHandle, NW_Ucs2 *field, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wnt_markAsRead(NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + + +/* phone book library */ +TBrowserStatusCode NW_ScrProxy_wpb_write (NW_ScrProxy_t *scrProxy, + NW_Int32 index, NW_Ucs2 *number, NW_Ucs2 *name, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wpb_search (NW_ScrProxy_t *scrProxy, + NW_Ucs2 *field, NW_Ucs2 *value, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wpb_remove (NW_ScrProxy_t *scrProxy, + NW_Int32 index, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wpb_getFieldValue (void *ctx, + NW_Int32 index, NW_Ucs2 *field, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wpb_change (NW_ScrProxy_t *scrProxy, + NW_Int32 index, NW_Ucs2 *field, NW_Ucs2 *value, + NW_Opaque_t *result); + + +/* call log library */ +TBrowserStatusCode NW_ScrProxy_wcl_dialled (NW_ScrProxy_t *scrProxy, + NW_Bool returnFirst, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wcl_missed (NW_ScrProxy_t *scrProxy, + NW_Bool returnFirst, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wcl_received (NW_ScrProxy_t *scrProxy, + NW_Bool returnFirst, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wcl_getFieldValue(NW_ScrProxy_t *scrProxy, + NW_Opaque_t *logHandle, NW_Ucs2 *field, + NW_Opaque_t *result); + + +/* miscellaneous library */ +TBrowserStatusCode NW_ScrProxy_wm_setIndicator (NW_ScrProxy_t *scrProxy, + NW_Int32 type, NW_Int32 newState, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wm_endcontext (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wm_getProtection (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_wm_setProtection (NW_ScrProxy_t *scrProxy, + NW_Bool mode, + NW_Opaque_t *result); + + +/* is136 specific library */ +TBrowserStatusCode NW_ScrProxy_is136_sendFlash (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, NW_Ucs2 *flash, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_is136_sendAlert (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, NW_Ucs2 *alert, + NW_Opaque_t *result); + + +/* gsm specific library */ +TBrowserStatusCode NW_ScrProxy_gsm_hold (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_gsm_retrieve (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_gsm_transfer (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *Bhandle, NW_Opaque_t *Chandle, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_gsm_deflect (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, NW_Ucs2 *number, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_gsm_multiparty(NW_ScrProxy_t *scrProxy, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_gsm_separate (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_gsm_sendUSSD (NW_ScrProxy_t *scrProxy, + NW_Ucs2 *message, NW_Int32 codingScheme, + NW_Int32 type, NW_Int32 transactionID, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_gsm_netinfo (NW_ScrProxy_t *scrProxy, + NW_Int32 type, + NW_Opaque_t *result); + + +/* pdc specific library */ +TBrowserStatusCode NW_ScrProxy_pdc_hold (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_pdc_retrieve (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_pdc_transfer (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, NW_Ucs2 *number, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_pdc_deflect (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, NW_Ucs2 *dest, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_pdc_multiparty(NW_ScrProxy_t *scrProxy, + NW_Opaque_t *result); + +TBrowserStatusCode NW_ScrProxy_pdc_separate (NW_ScrProxy_t *scrProxy, + NW_Opaque_t *handle, + NW_Opaque_t *result); + + +#endif /* if 0 */ + +/* Nokia proprietary */ +TBrowserStatusCode NW_ScrProxy_nokia_locationInfo(NW_ScrProxy_t *scrProxy, + NW_Ucs2 *url, + NW_Ucs2 *ll_format, + NW_Ucs2 *pn_format); + +#ifdef __cplusplus +} // extern "C" { +#endif /* __cplusplus */ + + +#endif /* WML_SCRPROXY_H */