void CScript_HostPseudoModel::Response(CFXJSE_Arguments* pArguments) { int32_t iLength = pArguments->GetLength(); if (iLength < 1 || iLength > 4) { ThrowException(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"response"); return; } CXFA_FFNotify* pNotify = m_pDocument->GetNotify(); if (!pNotify) { return; } CFX_WideString wsQuestion; CFX_WideString wsTitle; CFX_WideString wsDefaultAnswer; FX_BOOL bMark = FALSE; if (iLength >= 1) { CFX_ByteString bsQuestion = pArguments->GetUTF8String(0); wsQuestion = CFX_WideString::FromUTF8(bsQuestion.AsStringC()); } if (iLength >= 2) { CFX_ByteString bsTitle = pArguments->GetUTF8String(1); wsTitle = CFX_WideString::FromUTF8(bsTitle.AsStringC()); } if (iLength >= 3) { CFX_ByteString bsDefaultAnswer = pArguments->GetUTF8String(2); wsDefaultAnswer = CFX_WideString::FromUTF8(bsDefaultAnswer.AsStringC()); } if (iLength >= 4) { bMark = pArguments->GetInt32(3) == 0 ? FALSE : TRUE; } CFX_WideString wsAnswer = pNotify->GetAppProvider()->Response( wsQuestion, wsTitle, wsDefaultAnswer, bMark); CFXJSE_Value* pValue = pArguments->GetReturnValue(); if (pValue) pValue->SetString(FX_UTF8Encode(wsAnswer).AsStringC()); }
void CScript_HostPseudoModel::CurrentDateTime(CFXJSE_Arguments* pArguments) { CXFA_FFNotify* pNotify = m_pDocument->GetNotify(); if (!pNotify) { return; } CFX_WideString wsDataTime = pNotify->GetCurrentDateTime(); CFXJSE_Value* pValue = pArguments->GetReturnValue(); if (pValue) pValue->SetString(FX_UTF8Encode(wsDataTime).AsStringC()); }
void FXJSE_Value_SetUTF8String(FXJSE_HVALUE hValue, const CFX_ByteStringC& szString) { CFXJSE_Value* lpValue = reinterpret_cast<CFXJSE_Value*>(hValue); ASSERT(lpValue); return lpValue->SetString(szString); }