webengine/wmlengine/src/wml/include/wml_scrproxy.h
changeset 74 91031d3aab7d
parent 68 92a765b5b3e7
child 85 e358f2276d3f
equal deleted inserted replaced
68:92a765b5b3e7 74:91031d3aab7d
     1 /*
       
     2 * Copyright (c) 1999 - 2001 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of the License "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: 
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 /***************************************************************************
       
    20 **   File: wml_scrproxy.h
       
    21 **   Subsystem Name: WAE User Agent
       
    22 **   Purpose:  This module is responsible for coordinating the WML Script Engine
       
    23 **   with the WML Interpreter and the User Interface.
       
    24 **************************************************************************/
       
    25 #ifndef WML_SCRPROXY_H
       
    26 #define WML_SCRPROXY_H
       
    27 
       
    28 /*
       
    29 ** Includes
       
    30 */
       
    31 #include "nw_scrproxy.h"
       
    32 #include "nwx_generic_dlg.h"
       
    33 #include "nw_wtai_api.h"
       
    34 #include "BrsrStatusCodes.h"
       
    35 
       
    36 #ifdef __cplusplus
       
    37 extern "C" {
       
    38 #endif /* __cplusplus */
       
    39   
       
    40 /*
       
    41 ** Type Declarations
       
    42 */
       
    43 /* interface to the script interpreter */
       
    44 typedef struct {
       
    45   /* request to run a script. transfer ownership of the url, referer, and content
       
    46   to the script server */
       
    47   TBrowserStatusCode (*run) (NW_Ucs2 *url, NW_Ucs2 *postfields,
       
    48                      NW_Ucs2 *referer, NW_Byte *content,
       
    49                      const NW_Uint32 len, const NW_Http_CharSet_t charset);
       
    50 
       
    51   /* request to abort the running script */
       
    52   TBrowserStatusCode (*abort) (void);
       
    53 } NW_ScriptSrvApi_t;
       
    54 
       
    55 
       
    56 /*
       
    57 ** Global Function Declarations
       
    58 */
       
    59 /*************** interface from the WAE Browser ***************/
       
    60 
       
    61 /* dispose the script proxy */
       
    62 /* this function is not being used any where.
       
    63 TBrowserStatusCode NW_ScrProxy_Dispose(NW_ScrProxy_t *scrProxy);
       
    64 */
       
    65 
       
    66 /* script interpreter is not responding */
       
    67 TBrowserStatusCode NW_ScrProxy_ScrNotRespondingError(NW_ScrProxy_t *scrProxy);
       
    68 
       
    69 /* check if any script is still running */
       
    70 TBrowserStatusCode NW_ScrProxy_IsScriptRunning(NW_ScrProxy_t *scrProxy,
       
    71                                         NW_Bool *result);
       
    72 
       
    73 /* acknowledgement for a script start */
       
    74 TBrowserStatusCode NW_ScrProxy_RunScriptAck(NW_ScrProxy_t *scrProxy,
       
    75                                      const TBrowserStatusCode status);
       
    76 
       
    77 /* script has completed */
       
    78 TBrowserStatusCode NW_ScrProxy_Finish(NW_ScrProxy_t *scrProxy,
       
    79                                const TBrowserStatusCode status,
       
    80                                const NW_Ucs2 *message);
       
    81 
       
    82 /* acknowledgement for a script abort */
       
    83 TBrowserStatusCode NW_ScrProxy_AbortAck(NW_ScrProxy_t *scrProxy,
       
    84                                  const TBrowserStatusCode status);
       
    85 
       
    86 /* alert the user with a dialog */
       
    87 TBrowserStatusCode NW_ScrProxy_DlgAlert(NW_ScrProxy_t *scrProxy, 
       
    88                                  const NW_Ucs2 *message,
       
    89                                  void  *callbackCtx,
       
    90                                  NW_ScrProxy_DlgAlertCB_t *callback);
       
    91 
       
    92 TBrowserStatusCode NW_ScrProxy_NotifyError(NW_ScrProxy_t *scrProxy, 
       
    93                                  const TBrowserStatusCode status);
       
    94 
       
    95 /* confirm with the user with a dialog */
       
    96 TBrowserStatusCode NW_ScrProxy_DlgConfirm(NW_ScrProxy_t *scrProxy,
       
    97                                   const NW_Ucs2 *message, 
       
    98                                   const NW_Ucs2 *yesMessage,
       
    99                                   const NW_Ucs2 *noMessage,
       
   100                                   void  *callbackCtx,
       
   101                                   NW_Dlg_ConfirmCB_t *callback);
       
   102 
       
   103 /* prompt the user with a dialog */
       
   104 TBrowserStatusCode NW_ScrProxy_DlgPrompt(NW_ScrProxy_t *scrProxy,
       
   105                                   const NW_Ucs2 *message,
       
   106                                   const NW_Ucs2 *defaultInput,
       
   107                                   void  *callbackCtx,
       
   108                                   NW_ScrProxy_DlgPromptCB_t *callback);
       
   109 
       
   110 /* prompt the user with a generic dialog */
       
   111 TBrowserStatusCode NW_ScrProxy_GenericDlgListSelect(NW_ScrProxy_t *scrProxy, NW_Dlg_ListSelect_t *data,
       
   112                                              void* callbackCtx, NW_Dlg_ListSelectCB_t* callback);
       
   113 
       
   114 
       
   115 /* prompt the user with a generic dialog */
       
   116 TBrowserStatusCode NW_ScrProxy_GenericDlgPrompt(NW_ScrProxy_t *scrProxy, NW_Dlg_Prompt_t *data,
       
   117                                          void* callbackCtx, NW_Dlg_PromptCB_t* callback);
       
   118 
       
   119 /* prompt the user with a generic dialog */
       
   120 TBrowserStatusCode NW_ScrProxy_GenericDlgInputPrompt(NW_ScrProxy_t *scrProxy, NW_Dlg_InputPrompt_t *data,
       
   121                                               void* callbackCtx, NW_Dlg_InputPromptCB_t* callback);
       
   122 
       
   123 
       
   124 /* acknowledgement for a script exit */
       
   125 TBrowserStatusCode NW_ScrProxy_GetVar(NW_ScrProxy_t *scrProxy,
       
   126                               const NW_Ucs2 *var, 
       
   127                               NW_Ucs2 **ret_string);
       
   128 
       
   129 /* set a variable */
       
   130 TBrowserStatusCode NW_ScrProxy_SetVar(NW_ScrProxy_t *scrProxy, 
       
   131                               const NW_Ucs2 *var, 
       
   132                               const NW_Ucs2 *value);
       
   133 
       
   134 /* execute a wml prev task on the wml interpreter */
       
   135 TBrowserStatusCode NW_ScrProxy_LoadPrev(NW_ScrProxy_t *scrProxy);
       
   136 
       
   137 /* execute a newcontext on the wml interpreter */
       
   138 TBrowserStatusCode NW_ScrProxy_NewContext(NW_ScrProxy_t *scrProxy);
       
   139 
       
   140 /* refresh the wml interpreter */
       
   141 TBrowserStatusCode NW_ScrProxy_Refresh(NW_ScrProxy_t *scrProxy);
       
   142 
       
   143 /* execute a load url on the wml interpreter */
       
   144 TBrowserStatusCode NW_ScrProxy_LoadUrl(NW_ScrProxy_t *scrProxy,
       
   145                                 const NW_Ucs2 *url,
       
   146                                 const NW_Ucs2 *param);
       
   147 
       
   148 /* Query Browser app for Suspend/Resume of Script */
       
   149 TBrowserStatusCode NW_ScrProxy_BrowerApp_QueryForSuspRes(NW_ScrProxy_t *scrProxy);
       
   150 /* WTAI functions */
       
   151 
       
   152 /* public library */
       
   153 TBrowserStatusCode NW_ScrProxy_wp_makeCall(NW_ScrProxy_t *scrProxy, 
       
   154                                     NW_Ucs2 *number);
       
   155 TBrowserStatusCode NW_ScrProxy_wp_sendDTMF(NW_ScrProxy_t *scrProxy, 
       
   156                                     NW_Ucs2 *dtmf);
       
   157 TBrowserStatusCode NW_ScrProxy_wp_addPBEntry(NW_ScrProxy_t *scrProxy, 
       
   158                                     NW_Ucs2 *number,
       
   159                                       NW_Ucs2 *name);
       
   160 
       
   161 /* not yet supported */
       
   162 
       
   163 #if 0
       
   164 
       
   165 /* voice call library */
       
   166 TBrowserStatusCode NW_ScrProxy_wvc_setup     (NW_ScrProxy_t *scrProxy, 
       
   167                                       NW_Ucs2 *number, NW_Bool mode, 
       
   168                                       NW_Opaque_t *result);
       
   169 
       
   170 TBrowserStatusCode NW_ScrProxy_wvc_accept    (NW_ScrProxy_t *scrProxy, 
       
   171                                       NW_Opaque_t *handle, NW_Bool *mode, 
       
   172                                       NW_Opaque_t *result);
       
   173 
       
   174 TBrowserStatusCode NW_ScrProxy_wvc_release   (NW_ScrProxy_t *scrProxy, 
       
   175                                       NW_Opaque_t *handle, 
       
   176                                       NW_Opaque_t *result);
       
   177 
       
   178 TBrowserStatusCode NW_ScrProxy_wvc_sendDTMF  (NW_ScrProxy_t *scrProxy, 
       
   179                                       NW_Opaque_t *handle, NW_Ucs2 *dtmf, 
       
   180                                       NW_Opaque_t *result);
       
   181 
       
   182 TBrowserStatusCode NW_ScrProxy_wvc_callStatus(NW_ScrProxy_t *scrProxy, 
       
   183                                       NW_Opaque_t *handle, NW_Ucs2 *field, 
       
   184                                       NW_Opaque_t *result);
       
   185 
       
   186 TBrowserStatusCode NW_ScrProxy_wvc_list      (NW_ScrProxy_t *scrProxy, 
       
   187                                       NW_Bool returnFirst, 
       
   188                                       NW_Opaque_t *result);
       
   189 
       
   190 
       
   191 /* network text library */
       
   192 TBrowserStatusCode NW_ScrProxy_wnt_send      (NW_ScrProxy_t *scrProxy, 
       
   193                                       NW_Ucs2 *address, NW_Ucs2 *text, 
       
   194                                       NW_Opaque_t *result);
       
   195 
       
   196 TBrowserStatusCode NW_ScrProxy_wnt_list      (NW_ScrProxy_t *scrProxy, 
       
   197                                       NW_Bool returnFirst, NW_Int32 type, 
       
   198                                       NW_Opaque_t *result);
       
   199 
       
   200 TBrowserStatusCode NW_ScrProxy_wnt_remove    (NW_ScrProxy_t *scrProxy, 
       
   201                                       NW_Opaque_t *handle, 
       
   202                                       NW_Opaque_t *result);
       
   203 
       
   204 TBrowserStatusCode NW_ScrProxy_wnt_getFieldValue (void *ctx, 
       
   205                                       NW_Opaque_t *msgHandle, NW_Ucs2 *field, 
       
   206                                       NW_Opaque_t *result);
       
   207 
       
   208 TBrowserStatusCode NW_ScrProxy_wnt_markAsRead(NW_ScrProxy_t *scrProxy, 
       
   209                                       NW_Opaque_t *handle, 
       
   210                                       NW_Opaque_t *result);
       
   211 
       
   212 
       
   213 /* phone book library */
       
   214 TBrowserStatusCode NW_ScrProxy_wpb_write     (NW_ScrProxy_t *scrProxy, 
       
   215                                       NW_Int32 index, NW_Ucs2 *number, NW_Ucs2 *name, 
       
   216                                       NW_Opaque_t *result);
       
   217 
       
   218 TBrowserStatusCode NW_ScrProxy_wpb_search    (NW_ScrProxy_t *scrProxy, 
       
   219                                       NW_Ucs2 *field, NW_Ucs2 *value, 
       
   220                                       NW_Opaque_t *result);
       
   221 
       
   222 TBrowserStatusCode NW_ScrProxy_wpb_remove    (NW_ScrProxy_t *scrProxy, 
       
   223                                       NW_Int32 index, 
       
   224                                       NW_Opaque_t *result);
       
   225 
       
   226 TBrowserStatusCode NW_ScrProxy_wpb_getFieldValue (void *ctx, 
       
   227                                       NW_Int32 index, NW_Ucs2 *field, 
       
   228                                       NW_Opaque_t *result);
       
   229 
       
   230 TBrowserStatusCode NW_ScrProxy_wpb_change    (NW_ScrProxy_t *scrProxy, 
       
   231                                       NW_Int32 index, NW_Ucs2 *field, NW_Ucs2 *value, 
       
   232                                       NW_Opaque_t *result);
       
   233 
       
   234 
       
   235 /* call log library */
       
   236 TBrowserStatusCode NW_ScrProxy_wcl_dialled   (NW_ScrProxy_t *scrProxy, 
       
   237                                       NW_Bool returnFirst, 
       
   238                                       NW_Opaque_t *result);
       
   239 
       
   240 TBrowserStatusCode NW_ScrProxy_wcl_missed    (NW_ScrProxy_t *scrProxy, 
       
   241                                       NW_Bool returnFirst, 
       
   242                                       NW_Opaque_t *result);
       
   243 
       
   244 TBrowserStatusCode NW_ScrProxy_wcl_received  (NW_ScrProxy_t *scrProxy, 
       
   245                                       NW_Bool returnFirst, 
       
   246                                       NW_Opaque_t *result);
       
   247 
       
   248 TBrowserStatusCode NW_ScrProxy_wcl_getFieldValue(NW_ScrProxy_t *scrProxy, 
       
   249                                       NW_Opaque_t *logHandle, NW_Ucs2 *field, 
       
   250                                       NW_Opaque_t *result);
       
   251 
       
   252 
       
   253 /* miscellaneous library */
       
   254 TBrowserStatusCode NW_ScrProxy_wm_setIndicator  (NW_ScrProxy_t *scrProxy, 
       
   255                                           NW_Int32 type, NW_Int32 newState, 
       
   256                                           NW_Opaque_t *result);
       
   257 
       
   258 TBrowserStatusCode NW_ScrProxy_wm_endcontext (NW_ScrProxy_t *scrProxy,
       
   259                                        NW_Opaque_t *result);
       
   260 
       
   261 TBrowserStatusCode NW_ScrProxy_wm_getProtection (NW_ScrProxy_t *scrProxy,  
       
   262                                           NW_Opaque_t *result);
       
   263 
       
   264 TBrowserStatusCode NW_ScrProxy_wm_setProtection (NW_ScrProxy_t *scrProxy,  
       
   265                                           NW_Bool mode, 
       
   266                                           NW_Opaque_t *result);
       
   267 
       
   268 
       
   269 /* is136 specific library */ 
       
   270 TBrowserStatusCode NW_ScrProxy_is136_sendFlash  (NW_ScrProxy_t *scrProxy,  
       
   271                                           NW_Opaque_t *handle, NW_Ucs2 *flash, 
       
   272                                           NW_Opaque_t *result);
       
   273 
       
   274 TBrowserStatusCode NW_ScrProxy_is136_sendAlert  (NW_ScrProxy_t *scrProxy,  
       
   275                                           NW_Opaque_t *handle, NW_Ucs2 *alert, 
       
   276                                           NW_Opaque_t *result);
       
   277 
       
   278 
       
   279 /* gsm specific library */
       
   280 TBrowserStatusCode NW_ScrProxy_gsm_hold      (NW_ScrProxy_t *scrProxy, 
       
   281                                       NW_Opaque_t *handle, 
       
   282                                       NW_Opaque_t *result);
       
   283 
       
   284 TBrowserStatusCode NW_ScrProxy_gsm_retrieve  (NW_ScrProxy_t *scrProxy, 
       
   285                                       NW_Opaque_t *handle, 
       
   286                                       NW_Opaque_t *result);
       
   287 
       
   288 TBrowserStatusCode NW_ScrProxy_gsm_transfer  (NW_ScrProxy_t *scrProxy, 
       
   289                                       NW_Opaque_t *Bhandle, NW_Opaque_t *Chandle, 
       
   290                                       NW_Opaque_t *result);
       
   291 
       
   292 TBrowserStatusCode NW_ScrProxy_gsm_deflect   (NW_ScrProxy_t *scrProxy, 
       
   293                                       NW_Opaque_t *handle, NW_Ucs2 *number, 
       
   294                                       NW_Opaque_t *result);
       
   295 
       
   296 TBrowserStatusCode NW_ScrProxy_gsm_multiparty(NW_ScrProxy_t *scrProxy, 
       
   297                                       NW_Opaque_t *result);
       
   298 
       
   299 TBrowserStatusCode NW_ScrProxy_gsm_separate  (NW_ScrProxy_t *scrProxy,
       
   300                                       NW_Opaque_t *handle,
       
   301                                       NW_Opaque_t *result);
       
   302 
       
   303 TBrowserStatusCode NW_ScrProxy_gsm_sendUSSD  (NW_ScrProxy_t *scrProxy, 
       
   304                                       NW_Ucs2 *message, NW_Int32 codingScheme, 
       
   305                                       NW_Int32 type, NW_Int32 transactionID, 
       
   306                                       NW_Opaque_t *result);
       
   307 
       
   308 TBrowserStatusCode NW_ScrProxy_gsm_netinfo   (NW_ScrProxy_t *scrProxy, 
       
   309                                       NW_Int32 type, 
       
   310                                       NW_Opaque_t *result);
       
   311 
       
   312 
       
   313 /* pdc specific library */
       
   314 TBrowserStatusCode NW_ScrProxy_pdc_hold      (NW_ScrProxy_t *scrProxy, 
       
   315                                       NW_Opaque_t *handle, 
       
   316                                       NW_Opaque_t *result);
       
   317 
       
   318 TBrowserStatusCode NW_ScrProxy_pdc_retrieve  (NW_ScrProxy_t *scrProxy, 
       
   319                                       NW_Opaque_t *handle, 
       
   320                                       NW_Opaque_t *result);
       
   321 
       
   322 TBrowserStatusCode NW_ScrProxy_pdc_transfer  (NW_ScrProxy_t *scrProxy, 
       
   323                                       NW_Opaque_t *handle, NW_Ucs2 *number, 
       
   324                                       NW_Opaque_t *result);
       
   325 
       
   326 TBrowserStatusCode NW_ScrProxy_pdc_deflect   (NW_ScrProxy_t *scrProxy, 
       
   327                                       NW_Opaque_t *handle, NW_Ucs2 *dest, 
       
   328                                       NW_Opaque_t *result);
       
   329 
       
   330 TBrowserStatusCode NW_ScrProxy_pdc_multiparty(NW_ScrProxy_t *scrProxy,
       
   331                                       NW_Opaque_t *result);
       
   332 
       
   333 TBrowserStatusCode NW_ScrProxy_pdc_separate  (NW_ScrProxy_t *scrProxy, 
       
   334                                       NW_Opaque_t *handle, 
       
   335                                       NW_Opaque_t *result);
       
   336 
       
   337 
       
   338 #endif /* if 0 */
       
   339 
       
   340 /* Nokia proprietary */
       
   341 TBrowserStatusCode NW_ScrProxy_nokia_locationInfo(NW_ScrProxy_t *scrProxy, 
       
   342                                            NW_Ucs2 *url,
       
   343                                            NW_Ucs2 *ll_format,
       
   344                                            NW_Ucs2 *pn_format);
       
   345 
       
   346 #ifdef __cplusplus
       
   347 } // extern "C" {
       
   348 #endif /* __cplusplus */
       
   349 
       
   350 
       
   351 #endif  /* WML_SCRPROXY_H */