else
else if (argt->value == WWW_DIRECTION_BACK)
mozilla_modify( PtWidget_t *widget, PtArg_t const *argt ) {	PtMozillaWidget_t *moz = (PtMozillaWidget_t *)widget;	nsIPref *pref = moz->EmbedRef->GetPrefs();	switch( argt->type )  	{		case Pt_ARG_MOZ_GET_URL:			MozLoadURL(moz, (char *)(argt->value));			break;		case Pt_ARG_MOZ_NAVIGATE_PAGE:			if (moz->EmbedRef)			{				if (argt->value == WWW_DIRECTION_FWD)					moz->EmbedRef->Forward();				else					moz->EmbedRef->Back();			}			break;		case Pt_ARG_MOZ_STOP:			if (moz->EmbedRef)				moz->EmbedRef->Stop();			break;		case Pt_ARG_MOZ_RELOAD:			if (moz->EmbedRef)				moz->EmbedRef->Reload(0);			break;		case Pt_ARG_MOZ_PRINT: 			{			WWWRequest *pPageInfo = ( WWWRequest * ) argt->value;			PpPrintContext_t *pc = moz_construct_print_context( pPageInfo );			moz->EmbedRef->Print(pc);			}		    break;		case Pt_ARG_MOZ_OPTION:			mozilla_set_pref(widget, (char*)argt->len, (char*)argt->value);			break;		case Pt_ARG_MOZ_ENCODING:  			pref->SetUnicharPref( "intl.charset.default", NS_ConvertASCIItoUCS2((char*)argt->value).get());			break;		case Pt_ARG_MOZ_COMMAND:			switch ((int)(argt->value)) 			{				case Pt_MOZ_COMMAND_CUT: {					moz->EmbedRef->Cut();					}					break;				case Pt_MOZ_COMMAND_COPY: {					moz->EmbedRef->Copy();					}					break;				case Pt_MOZ_COMMAND_PASTE: {					moz->EmbedRef->Paste();					}					break;				case Pt_MOZ_COMMAND_SELECTALL: {					moz->EmbedRef->SelectAll();					}					break;				case Pt_MOZ_COMMAND_CLEAR: {					moz->EmbedRef->Clear();					}					break;				case Pt_MOZ_COMMAND_FIND: {					PtWebCommand_t *wdata = ( PtWebCommand_t * ) argt->len;					nsCOMPtr<nsIWebBrowserFind> finder( do_GetInterface( moz->EmbedRef->mWindow->mWebBrowser ) );					finder->SetSearchString( NS_ConvertASCIItoUCS2(wdata->FindInfo.szString).get() );					finder->SetMatchCase( wdata->FindInfo.flags & FINDFLAG_MATCH_CASE );					finder->SetFindBackwards( wdata->FindInfo.flags & FINDFLAG_GO_BACKWARDS );					finder->SetWrapFind( wdata->FindInfo.flags & FINDFLAG_START_AT_TOP );//				finder->SetEntireWord( entireWord ); /* not defined in voyager */					PRBool didFind;					finder->FindNext( &didFind );					break;					}			}			break;		case Pt_ARG_MOZ_WEB_DATA_URL:#if 0				moz->MyBrowser->WebBrowserContainer->OpenStream( moz->MyBrowser->WebBrowser, "file://", "text/html" );				strcpy( moz->url, (char*)argt->value );#endif				break;		case Pt_ARG_MOZ_UNKNOWN_RESP: #if 1			{				PtMozUnknownResp_t *data = ( PtMozUnknownResp_t * ) argt->value;				switch( data->response ) 				{					case WWW_RESPONSE_OK:						if( moz->EmbedRef->app_launcher ) {							if( moz->download_dest ) free( moz->download_dest );							moz->download_dest = strdup( data->filename );							moz->EmbedRef->app_launcher->SaveToDisk( NULL, PR_TRUE );							}						break;					case WWW_RESPONSE_CANCEL: {							moz->EmbedRef->app_launcher->Cancel( );							moz->EmbedRef->app_launcher->CloseProgressWindow( );							moz->EmbedRef->app_launcher = NULL;							}						break;				}			}#endif			break;		case Pt_ARG_MOZ_DOWNLOAD: 			{				if( moz->download_dest ) 					free( moz->download_dest );				moz->download_dest = strdup( (char*)argt->len );				moz->EmbedRef->SaveURI((char*)argt->value, (char*) argt->len);			}			break;		case Pt_ARG_MOZ_WEB_DATA: {#if 0				WWWRequest *req = ( WWWRequest * ) argt->value;				char *hdata;				int len;				if( strcmp( moz->url, req->DataHdr.url ) ) break;				hdata = (char*) argt->len;				len = req->DataHdr.length;				switch( req->DataHdr.type ) {					case WWW_DATA_HEADER:						if( !moz->MyBrowser->WebBrowserContainer->IsStreaming( ) ) break;						/* request the document body */						if( moz->web_data_req_cb ) {							PtCallbackInfo_t  cbinfo;							PtMozillaDataRequestCb_t cb;							memset( &cbinfo, 0, sizeof( cbinfo ) );							cbinfo.reason = Pt_CB_MOZ_WEB_DATA_REQ;							cbinfo.cbdata = &cb;							cb.type = WWW_DATA_BODY;							cb.length = 32768;							strcpy( cb.url, moz->url );							PtInvokeCallbackList( moz->web_data_req_cb, (PtWidget_t *)moz, &cbinfo);							}						break;					case WWW_DATA_BODY: {						if( !moz->MyBrowser->WebBrowserContainer->IsStreaming( ) ) break;						if( len )							moz->MyBrowser->WebBrowserContainer->AppendToStream( hdata, len );						else moz->MyBrowser->WebBrowserContainer->CloseStream( );						/* request the next piece of the body */						PtCallbackInfo_t  cbinfo;						PtMozillaDataRequestCb_t cb;						memset( &cbinfo, 0, sizeof( cbinfo ) );						cbinfo.reason = Pt_CB_MOZ_WEB_DATA_REQ;						cbinfo.cbdata = &cb;						cb.type = len ? WWW_DATA_BODY : WWW_DATA_CLOSE;						cb.length = 32768;						strcpy( cb.url, moz->url );						PtInvokeCallbackList( moz->web_data_req_cb, (PtWidget_t *)moz, &cbinfo);						}						break;					case WWW_DATA_CLOSE:						if( !moz->MyBrowser->WebBrowserContainer->IsStreaming( ) ) break;						moz->MyBrowser->WebBrowserContainer->CloseStream( );						break;					}#endif				}			break;		}	return;}