From f7a7d7e07396c3a0fae617ed8f15f29fd491bc3a Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Mon, 27 Apr 2015 11:31:26 -0700 Subject: Revert "Kill operator LPCWSTR from CFX_WideString()." This reverts commit 15a62973b9b89c3e229cc0ab501c45967f91b325. Reason for revert: broke build on windows, mac. I must have missed some platform-specific conversions. TBR=brucedawson@chromium.org Review URL: https://codereview.chromium.org/1108883002 --- core/include/fpdfapi/fpdf_parser.h | 7 +- core/include/fpdfdoc/fpdf_doc.h | 2 +- core/include/fxcrt/fx_string.h | 7 ++ .../src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp | 4 + core/src/fpdfapi/fpdf_parser/fpdf_parser_fdf.cpp | 6 +- .../fpdfapi/fpdf_parser/fpdf_parser_objects.cpp | 2 +- core/src/fpdfdoc/doc_ap.cpp | 6 +- core/src/fpdfdoc/doc_basic.cpp | 2 +- core/src/fpdfdoc/doc_form.cpp | 5 +- core/src/fpdfdoc/doc_formfield.cpp | 8 +- core/src/fpdftext/fpdf_text_int.cpp | 4 +- core/src/fxcrt/fx_basic_wstring.cpp | 4 +- fpdfsdk/src/formfiller/FFL_ComboBox.cpp | 17 ++-- fpdfsdk/src/formfiller/FFL_IFormFiller.cpp | 2 +- fpdfsdk/src/formfiller/FFL_ListBox.cpp | 6 +- fpdfsdk/src/formfiller/FFL_TextField.cpp | 9 +- fpdfsdk/src/fpdfdoc.cpp | 2 +- fpdfsdk/src/fsdk_annothandler.cpp | 11 ++- fpdfsdk/src/fsdk_baseform.cpp | 2 +- fpdfsdk/src/fxedit/fxet_edit.cpp | 4 +- fpdfsdk/src/javascript/Document.cpp | 28 +++---- fpdfsdk/src/javascript/Field.cpp | 28 ++++--- fpdfsdk/src/javascript/JS_Context.cpp | 4 +- fpdfsdk/src/javascript/JS_GlobalData.cpp | 5 +- fpdfsdk/src/javascript/JS_Value.cpp | 4 +- fpdfsdk/src/javascript/PublicMethods.cpp | 98 +++++++++++----------- fpdfsdk/src/javascript/app.cpp | 22 ++--- fpdfsdk/src/javascript/global.cpp | 24 +++--- fpdfsdk/src/javascript/util.cpp | 16 ++-- fpdfsdk/src/pdfwindow/PWL_ComboBox.cpp | 4 +- fpdfsdk/src/pdfwindow/PWL_Edit.cpp | 16 ++-- fpdfsdk/src/pdfwindow/PWL_IconList.cpp | 2 +- fpdfsdk/src/pdfwindow/PWL_Note.cpp | 19 +++-- fpdfsdk/src/pdfwindow/PWL_Utils.cpp | 15 ++-- 34 files changed, 212 insertions(+), 183 deletions(-) diff --git a/core/include/fpdfapi/fpdf_parser.h b/core/include/fpdfapi/fpdf_parser.h index 20766702e2..c72acc834f 100644 --- a/core/include/fpdfapi/fpdf_parser.h +++ b/core/include/fpdfapi/fpdf_parser.h @@ -793,14 +793,9 @@ CFX_ByteString PDF_NameDecode(FX_BSTR orig); CFX_ByteString PDF_NameDecode(const CFX_ByteString& orig); CFX_ByteString PDF_NameEncode(const CFX_ByteString& orig); CFX_ByteString PDF_EncodeString(const CFX_ByteString& src, FX_BOOL bHex = FALSE); +CFX_WideString PDF_DecodeText(const CFX_ByteString& str, CFX_CharMap* pCharMap = NULL); CFX_WideString PDF_DecodeText(FX_LPCBYTE pData, FX_DWORD size, CFX_CharMap* pCharMap = NULL); -inline CFX_WideString PDF_DecodeText(const CFX_ByteString& bstr, CFX_CharMap* pCharMap = NULL) { - return PDF_DecodeText((FX_LPCBYTE)bstr.c_str(), bstr.GetLength(), pCharMap); -} CFX_ByteString PDF_EncodeText(FX_LPCWSTR pString, int len = -1, CFX_CharMap* pCharMap = NULL); -inline CFX_ByteString PDF_EncodeText(const CFX_WideString& str, CFX_CharMap* pCharMap = NULL) { - return PDF_EncodeText(str.c_str(), str.GetLength(), pCharMap); -} FX_FLOAT PDF_ClipFloat(FX_FLOAT f); class CFDF_Document : public CPDF_IndirectObjects { diff --git a/core/include/fpdfdoc/fpdf_doc.h b/core/include/fpdfdoc/fpdf_doc.h index 31480f90bc..40d57236cd 100644 --- a/core/include/fpdfdoc/fpdf_doc.h +++ b/core/include/fpdfdoc/fpdf_doc.h @@ -1162,7 +1162,7 @@ public: int FindOption(CFX_WideString csOptLabel); - int FindOptionValue(const CFX_WideString& csOptValue, int iStartIndex = 0); + int FindOptionValue(FX_LPCWSTR csOptValue, int iStartIndex = 0); diff --git a/core/include/fxcrt/fx_string.h b/core/include/fxcrt/fx_string.h index 0dbba4ca85..1efb814b08 100644 --- a/core/include/fxcrt/fx_string.h +++ b/core/include/fxcrt/fx_string.h @@ -636,8 +636,15 @@ public: return m_pData ? m_pData->m_String : L""; } + // Implicit conversion to C-style wide string -- deprecated + operator FX_LPCWSTR() const + { + return m_pData ? m_pData->m_String : L""; + } + void Empty(); + FX_BOOL IsEmpty() const { return !GetLength(); diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp index 0bb66da209..9514065eeb 100644 --- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp +++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_decode.cpp @@ -436,6 +436,10 @@ CFX_WideString PDF_DecodeText(FX_LPCBYTE src_data, FX_DWORD src_len, CFX_CharMap } return result; } +CFX_WideString PDF_DecodeText(const CFX_ByteString& bstr, CFX_CharMap* pCharMap) +{ + return PDF_DecodeText((FX_LPCBYTE)bstr.c_str(), bstr.GetLength(), pCharMap); +} CFX_ByteString PDF_EncodeText(FX_LPCWSTR pString, int len, CFX_CharMap* pCharMap) { if (len == -1) { diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_fdf.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_fdf.cpp index 5bacfd7393..db4d0dba43 100644 --- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_fdf.cpp +++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_fdf.cpp @@ -141,7 +141,7 @@ void FPDF_FileSpec_SetWin32Path(CPDF_Object* pFileSpec, const CFX_WideString& fi } else if (filepath.GetLength() > 1 && filepath[0] == '\\' && filepath[1] == '\\') { result = ChangeSlash(filepath.c_str() + 1); } else { - result = ChangeSlash(filepath.c_str()); + result = ChangeSlash(filepath); } if (pFileSpec->GetType() == PDFOBJ_STRING) { pFileSpec->SetString(CFX_ByteString::FromUnicode(result)); @@ -173,7 +173,7 @@ CFX_WideString FPDF_FileSpec_GetWin32Path(const CPDF_Object* pFileSpec) wsFileName = CFX_WideString::FromLocal(pFileSpec->GetString()); } if (wsFileName[0] != '/') { - return ChangeSlash(wsFileName.c_str()); + return ChangeSlash(wsFileName); } if (wsFileName[2] == '/') { CFX_WideString result; @@ -184,7 +184,7 @@ CFX_WideString FPDF_FileSpec_GetWin32Path(const CPDF_Object* pFileSpec) } else { CFX_WideString result; result += '\\'; - result += ChangeSlash(wsFileName.c_str()); + result += ChangeSlash(wsFileName); return result; } } diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp index 008349c61c..912af297f5 100644 --- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp +++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp @@ -375,7 +375,7 @@ void CPDF_Number::SetNumber(FX_FLOAT value) m_Float = value; } CPDF_String::CPDF_String(const CFX_WideString& str) : CPDF_Object(PDFOBJ_STRING), m_bHex(FALSE) { - m_String = PDF_EncodeText(str); + m_String = PDF_EncodeText(str, str.GetLength()); } CPDF_Array::~CPDF_Array() { diff --git a/core/src/fpdfdoc/doc_ap.cpp b/core/src/fpdfdoc/doc_ap.cpp index 8a195a747d..ccc800aa1a 100644 --- a/core/src/fpdfdoc/doc_ap.cpp +++ b/core/src/fpdfdoc/doc_ap.cpp @@ -464,7 +464,7 @@ static FX_BOOL GenerateWidgetAP(CPDF_Document* pDoc, CPDF_Dictionary* pAnnotDict vt.SetLimitChar(dwMaxLen); } vt.Initialize(); - vt.SetText(swValue.c_str()); + vt.SetText(swValue); vt.RearrangeAll(); CPDF_Rect rcContent = vt.GetContentRect(); CPDF_Point ptOffset(0.0f, 0.0f); @@ -502,7 +502,7 @@ static FX_BOOL GenerateWidgetAP(CPDF_Document* pDoc, CPDF_Dictionary* pAnnotDict vt.SetFontSize(fFontSize); } vt.Initialize(); - vt.SetText(swValue.c_str()); + vt.SetText(swValue); vt.RearrangeAll(); CPDF_Rect rcContent = vt.GetContentRect(); CPDF_Point ptOffset = CPDF_Point(0.0f, (rcContent.Height() - rcEdit.Height()) / 2.0f); @@ -573,7 +573,7 @@ static FX_BOOL GenerateWidgetAP(CPDF_Document* pDoc, CPDF_Dictionary* pAnnotDict vt.SetFontSize(fFontSize); } vt.Initialize(); - vt.SetText(swItem.c_str()); + vt.SetText(swItem); vt.RearrangeAll(); FX_FLOAT fItemHeight = vt.GetContentRect().Height(); if (bSelected) { diff --git a/core/src/fpdfdoc/doc_basic.cpp b/core/src/fpdfdoc/doc_basic.cpp index 48f3ccae98..496ed86122 100644 --- a/core/src/fpdfdoc/doc_basic.cpp +++ b/core/src/fpdfdoc/doc_basic.cpp @@ -567,6 +567,6 @@ FX_INT32 CPDF_PageLabel::GetPageByLabel(FX_BSTR bsLabel) const } FX_INT32 CPDF_PageLabel::GetPageByLabel(FX_WSTR wsLabel) const { - CFX_ByteString bsLabel = PDF_EncodeText(wsLabel.GetPtr()); + CFX_ByteString bsLabel = PDF_EncodeText((CFX_WideString)wsLabel); return GetPageByLabel(bsLabel); } diff --git a/core/src/fpdfdoc/doc_form.cpp b/core/src/fpdfdoc/doc_form.cpp index db56adc58d..47f4a9139c 100644 --- a/core/src/fpdfdoc/doc_form.cpp +++ b/core/src/fpdfdoc/doc_form.cpp @@ -34,7 +34,7 @@ class _CFieldNameExtractor public: _CFieldNameExtractor(const CFX_WideString& full_name) { - m_pStart = full_name.c_str(); + m_pStart = full_name; m_pEnd = m_pStart + full_name.GetLength(); m_pCur = m_pStart; } @@ -733,8 +733,7 @@ int CPDF_InterForm::CompareFieldName(const CFX_ByteString& name1, const CFX_Byte } int CPDF_InterForm::CompareFieldName(const CFX_WideString& name1, const CFX_WideString& name2) { - FX_LPCWSTR ptr1 = name1.c_str(); - FX_LPCWSTR ptr2 = name2.c_str(); + FX_LPCWSTR ptr1 = name1, ptr2 = name2; if (name1.GetLength() != name2.GetLength()) { int i = 0; while (ptr1[i] == ptr2[i]) { diff --git a/core/src/fpdfdoc/doc_formfield.cpp b/core/src/fpdfdoc/doc_formfield.cpp index 6de46de08a..a2f0fbd297 100644 --- a/core/src/fpdfdoc/doc_formfield.cpp +++ b/core/src/fpdfdoc/doc_formfield.cpp @@ -646,7 +646,7 @@ FX_BOOL CPDF_FormField::SetItemSelection(int index, FX_BOOL bSelected, FX_BOOL b if (m_Type == ListBox) { SelectOption(index, TRUE); if (!(m_Flags & FORMLIST_MULTISELECT)) { - m_pDict->SetAtString("V", PDF_EncodeText(opt_value)); + m_pDict->SetAtString("V", PDF_EncodeText(opt_value, opt_value.GetLength())); } else { CPDF_Array* pArray = CPDF_Array::Create(); if (pArray == NULL) { @@ -668,7 +668,7 @@ FX_BOOL CPDF_FormField::SetItemSelection(int index, FX_BOOL bSelected, FX_BOOL b m_pDict->SetAt("V", pArray); } } else if (m_Type == ComboBox) { - m_pDict->SetAtString("V", PDF_EncodeText(opt_value)); + m_pDict->SetAtString("V", PDF_EncodeText(opt_value, opt_value.GetLength())); CPDF_Array* pI = CPDF_Array::Create(); if (pI == NULL) { return FALSE; @@ -783,7 +783,7 @@ int CPDF_FormField::FindOption(CFX_WideString csOptLabel) } return -1; } -int CPDF_FormField::FindOptionValue(const CFX_WideString& csOptValue, int iStartIndex) +int CPDF_FormField::FindOptionValue(FX_LPCWSTR csOptValue, int iStartIndex) { if (iStartIndex < 0) { iStartIndex = 0; @@ -811,7 +811,7 @@ FX_BOOL CPDF_FormField::CheckControl(int iControlIndex, FX_BOOL bChecked, FX_BOO if (bNotify && m_pForm->m_pFormNotify != NULL) { SaveCheckedFieldStatus(this, statusArray); } - CFX_WideString csWExport = pControl->GetExportValue(); + CFX_WideString csWExport = pControl->GetExportValue(); CFX_ByteString csBExport = PDF_EncodeText(csWExport); int iCount = CountControls(); FX_BOOL bUnison = PDF_FormField_IsUnison(this); diff --git a/core/src/fpdftext/fpdf_text_int.cpp b/core/src/fpdftext/fpdf_text_int.cpp index be92c86d60..2b9a079006 100644 --- a/core/src/fpdftext/fpdf_text_int.cpp +++ b/core/src/fpdftext/fpdf_text_int.cpp @@ -2379,7 +2379,7 @@ FX_BOOL CPDF_TextPageFind::FindNext() continue; } int endIndex; - nResultPos = m_strText.Find(csWord.c_str(), nStartPos); + nResultPos = m_strText.Find(csWord, nStartPos); if (nResultPos == -1) { m_IsFind = FALSE; return m_IsFind; @@ -2496,7 +2496,7 @@ void CPDF_TextPageFind::ExtractFindWhat(const CFX_WideString& findwhat) int index = 0; while(1) { CFX_WideString csWord = TEXT_EMPTY; - int ret = ExtractSubString(csWord, findwhat.c_str(), index, TEXT_BLANK_CHAR); + int ret = ExtractSubString(csWord, findwhat, index, TEXT_BLANK_CHAR); if(csWord.IsEmpty()) { if(ret) { m_csFindWhatArray.Add(CFX_WideString(L"")); diff --git a/core/src/fxcrt/fx_basic_wstring.cpp b/core/src/fxcrt/fx_basic_wstring.cpp index e255aa0779..dfdbef8bd6 100644 --- a/core/src/fxcrt/fx_basic_wstring.cpp +++ b/core/src/fxcrt/fx_basic_wstring.cpp @@ -1062,13 +1062,13 @@ static CFX_ByteString _DefMap_GetByteString(CFX_CharMap* pCharMap, const CFX_Wid { int src_len = widestr.GetLength(); int codepage = pCharMap->m_GetCodePage ? pCharMap->m_GetCodePage() : 0; - int dest_len = FXSYS_WideCharToMultiByte(codepage, 0, widestr.c_str(), src_len, NULL, 0, NULL, NULL); + int dest_len = FXSYS_WideCharToMultiByte(codepage, 0, widestr, src_len, NULL, 0, NULL, NULL); if (dest_len == 0) { return CFX_ByteString(); } CFX_ByteString bytestr; FX_LPSTR dest_buf = bytestr.GetBuffer(dest_len); - FXSYS_WideCharToMultiByte(codepage, 0, widestr.c_str(), src_len, dest_buf, dest_len, NULL, NULL); + FXSYS_WideCharToMultiByte(codepage, 0, widestr, src_len, dest_buf, dest_len, NULL, NULL); bytestr.ReleaseBuffer(dest_len); return bytestr; } diff --git a/fpdfsdk/src/formfiller/FFL_ComboBox.cpp b/fpdfsdk/src/formfiller/FFL_ComboBox.cpp index 012ed4a730..9e58c952aa 100644 --- a/fpdfsdk/src/formfiller/FFL_ComboBox.cpp +++ b/fpdfsdk/src/formfiller/FFL_ComboBox.cpp @@ -77,23 +77,28 @@ CPWL_Wnd* CFFL_ComboBox::NewPDFWindow(const PWL_CREATEPARAM& cp, CPDFSDK_PageVie pWnd->AttachFFLData(this); pWnd->Create(cp); + ASSERT(m_pApp != NULL); CFFL_IFormFiller* pFormFiller = m_pApp->GetIFormFiller(); pWnd->SetFillerNotify(pFormFiller); + ASSERT(m_pWidget != NULL); FX_INT32 nCurSel = m_pWidget->GetSelectedIndex(0); + CFX_WideString swText; + if (nCurSel < 0) swText = m_pWidget->GetValue(); else swText = m_pWidget->GetOptionLabel(nCurSel); - + for (FX_INT32 i=0,sz=m_pWidget->CountOptions(); iAddString(m_pWidget->GetOptionLabel(i).c_str()); + pWnd->AddString(m_pWidget->GetOptionLabel(i)); } - + pWnd->SetSelect(nCurSel); - pWnd->SetText(swText.c_str()); + pWnd->SetText(swText); + return pWnd; } @@ -240,7 +245,7 @@ void CFFL_ComboBox::SetActionData(CPDFSDK_PageView* pPageView, CPDF_AAction::AAc if (CPWL_Edit* pEdit = (CPWL_Edit*)*pComboBox) { pEdit->SetSel(fa.nSelStart, fa.nSelEnd); - pEdit->ReplaceSel(fa.sChange.c_str()); + pEdit->ReplaceSel(fa.sChange); } } break; @@ -292,7 +297,7 @@ void CFFL_ComboBox::RestoreState(CPDFSDK_PageView* pPageView) { if (CPWL_Edit* pEdit = (CPWL_Edit*)*pComboBox) { - pEdit->SetText(m_State.sValue.c_str()); + pEdit->SetText(m_State.sValue); pEdit->SetSel(m_State.nStart, m_State.nEnd); } } diff --git a/fpdfsdk/src/formfiller/FFL_IFormFiller.cpp b/fpdfsdk/src/formfiller/FFL_IFormFiller.cpp index 1656ba5c5d..2b21e13cfc 100644 --- a/fpdfsdk/src/formfiller/FFL_IFormFiller.cpp +++ b/fpdfsdk/src/formfiller/FFL_IFormFiller.cpp @@ -973,7 +973,7 @@ void CFFL_IFormFiller::OnFormat(CPDFSDK_Widget* pWidget, CPDFSDK_PageView* pPage if (bFormated) { - pInterForm->ResetFieldAppearance(pWidget->GetFormField(), sValue.c_str(), TRUE); + pInterForm->ResetFieldAppearance(pWidget->GetFormField(), sValue, TRUE); pInterForm->UpdateField(pWidget->GetFormField()); } diff --git a/fpdfsdk/src/formfiller/FFL_ListBox.cpp b/fpdfsdk/src/formfiller/FFL_ListBox.cpp index dffd17538f..87ae552a66 100644 --- a/fpdfsdk/src/formfiller/FFL_ListBox.cpp +++ b/fpdfsdk/src/formfiller/FFL_ListBox.cpp @@ -76,9 +76,11 @@ CPWL_Wnd* CFFL_ListBox::NewPDFWindow(const PWL_CREATEPARAM& cp, CPDFSDK_PageView CFFL_IFormFiller* pIFormFiller = m_pApp->GetIFormFiller(); pWnd->SetFillerNotify(pIFormFiller); + ASSERT(m_pWidget != NULL); + for (FX_INT32 i=0,sz=m_pWidget->CountOptions(); iAddString(m_pWidget->GetOptionLabel(i).c_str()); - + pWnd->AddString(m_pWidget->GetOptionLabel(i)); + if (pWnd->HasFlag(PLBS_MULTIPLESEL)) { m_OriginSelections.RemoveAll(); diff --git a/fpdfsdk/src/formfiller/FFL_TextField.cpp b/fpdfsdk/src/formfiller/FFL_TextField.cpp index f488fac6ae..f45d95364d 100644 --- a/fpdfsdk/src/formfiller/FFL_TextField.cpp +++ b/fpdfsdk/src/formfiller/FFL_TextField.cpp @@ -129,8 +129,9 @@ CPWL_Wnd* CFFL_TextField::NewPDFWindow(const PWL_CREATEPARAM& cp, CPDFSDK_PageVi pWnd->SetLimitChar(nMaxLen); } } - - pWnd->SetText(swValue.c_str()); + + pWnd->SetText(swValue); + return pWnd; } @@ -250,7 +251,7 @@ void CFFL_TextField::SetActionData(CPDFSDK_PageView* pPageView, CPDF_AAction::AA { pEdit->SetFocus(); pEdit->SetSel(fa.nSelStart, fa.nSelEnd); - pEdit->ReplaceSel(fa.sChange.c_str()); + pEdit->ReplaceSel(fa.sChange); } break; default: @@ -291,7 +292,7 @@ void CFFL_TextField::RestoreState(CPDFSDK_PageView* pPageView) if (CPWL_Edit* pWnd = (CPWL_Edit*)GetPDFWindow(pPageView, TRUE)) { - pWnd->SetText(m_State.sValue.c_str()); + pWnd->SetText(m_State.sValue); pWnd->SetSel(m_State.nStart, m_State.nEnd); } } diff --git a/fpdfsdk/src/fpdfdoc.cpp b/fpdfsdk/src/fpdfdoc.cpp index 52d88b276e..6f36674e68 100644 --- a/fpdfsdk/src/fpdfdoc.cpp +++ b/fpdfsdk/src/fpdfdoc.cpp @@ -11,7 +11,7 @@ static int THISMODULE = 0; static CPDF_Bookmark FindBookmark(const CPDF_BookmarkTree& tree, CPDF_Bookmark bookmark, const CFX_WideString& title) { - if (bookmark && bookmark.GetTitle().CompareNoCase(title.c_str()) == 0) { + if (bookmark && bookmark.GetTitle().CompareNoCase(title) == 0) { // First check this item return bookmark; } diff --git a/fpdfsdk/src/fsdk_annothandler.cpp b/fpdfsdk/src/fsdk_annothandler.cpp index bc0f047897..9f208d34e2 100644 --- a/fpdfsdk/src/fsdk_annothandler.cpp +++ b/fpdfsdk/src/fsdk_annothandler.cpp @@ -668,22 +668,27 @@ void CPDFSDK_BFAnnotHandler::OnLoad(CPDFSDK_Annot* pAnnot) else { CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)pAnnot; - if (!pWidget->IsAppearanceValid()) + + if (!pWidget->IsAppearanceValid()) pWidget->ResetAppearance(NULL, FALSE); - + int nFieldType = pWidget->GetFieldType(); + if (nFieldType == FIELDTYPE_TEXTFIELD || nFieldType == FIELDTYPE_COMBOBOX) { FX_BOOL bFormated = FALSE; CFX_WideString sValue = pWidget->OnFormat(0, bFormated); + if (bFormated && nFieldType == FIELDTYPE_COMBOBOX) { - pWidget->ResetAppearance(sValue.c_str(), FALSE); + pWidget->ResetAppearance(sValue, FALSE); } } + if (m_pFormFiller) m_pFormFiller->OnLoad(pAnnot); + } } diff --git a/fpdfsdk/src/fsdk_baseform.cpp b/fpdfsdk/src/fsdk_baseform.cpp index 123af9f714..0c0492d723 100644 --- a/fpdfsdk/src/fsdk_baseform.cpp +++ b/fpdfsdk/src/fsdk_baseform.cpp @@ -2529,7 +2529,7 @@ int CPDFSDK_InterForm::AfterValueChange(const CPDF_FormField* pField) FX_BOOL bFormated = FALSE; CFX_WideString sValue = this->OnFormat(pFormField, 0, bFormated); if (bFormated) - this->ResetFieldAppearance(pFormField, sValue.c_str(), TRUE); + this->ResetFieldAppearance(pFormField, sValue, TRUE); else this->ResetFieldAppearance(pFormField, NULL, TRUE); this->UpdateField(pFormField); diff --git a/fpdfsdk/src/fxedit/fxet_edit.cpp b/fpdfsdk/src/fxedit/fxet_edit.cpp index 0015c0f4ed..c7f7ce5b04 100644 --- a/fpdfsdk/src/fxedit/fxet_edit.cpp +++ b/fpdfsdk/src/fxedit/fxet_edit.cpp @@ -745,7 +745,7 @@ void CFXEU_Clear::Undo() { m_pEdit->SelectNone(); m_pEdit->SetCaret(m_wrSel.BeginPos); - m_pEdit->InsertText(m_swText.c_str(), DEFAULT_CHARSET, NULL, NULL, FALSE, TRUE); + m_pEdit->InsertText(m_swText, DEFAULT_CHARSET, NULL,NULL,FALSE,TRUE); m_pEdit->SetSel(m_wrSel.BeginPos,m_wrSel.EndPos); } } @@ -833,7 +833,7 @@ void CFXEU_InsertText::Redo() { m_pEdit->SelectNone(); m_pEdit->SetCaret(m_wpOld); - m_pEdit->InsertText(m_swText.c_str(), m_nCharset, &m_SecProps, &m_WordProps, FALSE, TRUE); + m_pEdit->InsertText(m_swText, m_nCharset,&m_SecProps, &m_WordProps,FALSE,TRUE); } } diff --git a/fpdfsdk/src/javascript/Document.cpp b/fpdfsdk/src/javascript/Document.cpp index be568e10cc..624cad7eb2 100644 --- a/fpdfsdk/src/javascript/Document.cpp +++ b/fpdfsdk/src/javascript/Document.cpp @@ -370,7 +370,7 @@ FX_BOOL Document::getNthFieldName(IFXJS_Context* cc, const CJS_Parameters& param if (!pField) return FALSE; - vRet = pField->GetFullName().c_str(); + vRet = pField->GetFullName(); return TRUE; } @@ -878,15 +878,15 @@ FX_BOOL Document::info(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sEr JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, -1); - JS_PutObjectString(isolate, pObj, L"Author", cwAuthor.c_str()); - JS_PutObjectString(isolate, pObj, L"Title", cwTitle.c_str()); - JS_PutObjectString(isolate, pObj, L"Subject", cwSubject.c_str()); - JS_PutObjectString(isolate, pObj, L"Keywords", cwKeywords.c_str()); - JS_PutObjectString(isolate, pObj, L"Creator", cwCreator.c_str()); - JS_PutObjectString(isolate, pObj, L"Producer", cwProducer.c_str()); - JS_PutObjectString(isolate, pObj, L"CreationDate", cwCreationDate.c_str()); - JS_PutObjectString(isolate, pObj, L"ModDate", cwModDate.c_str()); - JS_PutObjectString(isolate, pObj, L"Trapped", cwTrapped.c_str()); + JS_PutObjectString(isolate,pObj, L"Author", cwAuthor); + JS_PutObjectString(isolate,pObj, L"Title", cwTitle); + JS_PutObjectString(isolate,pObj, L"Subject", cwSubject); + JS_PutObjectString(isolate,pObj, L"Keywords", cwKeywords); + JS_PutObjectString(isolate,pObj, L"Creator", cwCreator); + JS_PutObjectString(isolate,pObj, L"Producer", cwProducer); + JS_PutObjectString(isolate,pObj, L"CreationDate", cwCreationDate); + JS_PutObjectString(isolate,pObj, L"ModDate", cwModDate); + JS_PutObjectString(isolate,pObj, L"Trapped", cwTrapped); // It's to be compatible to non-standard info dictionary. FX_POSITION pos = pDictionary->GetStartPos(); @@ -896,11 +896,11 @@ FX_BOOL Document::info(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sEr CPDF_Object* pValueObj = pDictionary->GetNextElement(pos, bsKey); CFX_WideString wsKey = CFX_WideString::FromUTF8(bsKey, bsKey.GetLength()); if((pValueObj->GetType()==PDFOBJ_STRING) || (pValueObj->GetType()==PDFOBJ_NAME) ) - JS_PutObjectString(isolate, pObj, wsKey.c_str(), pValueObj->GetUnicodeText().c_str()); + JS_PutObjectString(isolate,pObj, wsKey, pValueObj->GetUnicodeText()); if(pValueObj->GetType()==PDFOBJ_NUMBER) - JS_PutObjectNumber(isolate,pObj, wsKey.c_str(), (float)pValueObj->GetNumber()); + JS_PutObjectNumber(isolate,pObj, wsKey, (float)pValueObj->GetNumber()); if(pValueObj->GetType()==PDFOBJ_BOOLEAN) - JS_PutObjectBoolean(isolate,pObj, wsKey.c_str(), (bool)pValueObj->GetInteger()); + JS_PutObjectBoolean(isolate,pObj, wsKey, (bool)pValueObj->GetInteger()); } vp << pObj; @@ -1672,7 +1672,7 @@ FX_BOOL Document::getPageNthWord(IFXJS_Context* cc, const CJS_Parameters& params swRet.TrimRight(); } - vRet = swRet.c_str(); + vRet = swRet; return TRUE; } diff --git a/fpdfsdk/src/javascript/Field.cpp b/fpdfsdk/src/javascript/Field.cpp index 7476fa5728..e5572da3e6 100644 --- a/fpdfsdk/src/javascript/Field.cpp +++ b/fpdfsdk/src/javascript/Field.cpp @@ -11,6 +11,7 @@ #include "../../include/javascript/JS_Value.h" #include "../../include/javascript/Field.h" #include "../../include/javascript/JS_EventHandler.h" +//#include "../include/JS_ResMgr.h" #include "../../include/javascript/JS_Context.h" #include "../../include/javascript/JS_Runtime.h" #include "../../include/javascript/Document.h" @@ -258,7 +259,7 @@ void Field::UpdateFormField(CPDFSDK_Document* pDocument, CPDF_FormField* pFormFi FX_BOOL bFormated = FALSE; CFX_WideString sValue = pWidget->OnFormat(0, bFormated); if (bFormated) - pWidget->ResetAppearance(sValue.c_str(), FALSE); + pWidget->ResetAppearance(sValue, FALSE); else pWidget->ResetAppearance(NULL, FALSE); } @@ -315,7 +316,7 @@ void Field::UpdateFormControl(CPDFSDK_Document* pDocument, CPDF_FormControl* pFo FX_BOOL bFormated = FALSE; CFX_WideString sValue = pWidget->OnFormat(0, bFormated); if (bFormated) - pWidget->ResetAppearance(sValue.c_str(), FALSE); + pWidget->ResetAppearance(sValue, FALSE); else pWidget->ResetAppearance(NULL, FALSE); } @@ -3126,7 +3127,7 @@ FX_BOOL Field::value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro double dRet; FX_BOOL bDot; - if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str(), dRet, bDot)) + if (CJS_PublicMethods::ConvertStringToNumber(swValue,dRet,bDot)) { if (bDot) vp << dRet; @@ -3147,9 +3148,9 @@ FX_BOOL Field::value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro for (int i = 0, sz = pFormField->CountSelectedItems(); i < sz; i++) { iIndex = pFormField->GetSelectedIndex(i); - ElementValue = pFormField->GetOptionValue(iIndex).c_str(); + ElementValue = pFormField->GetOptionValue(iIndex); if (FXSYS_wcslen(ElementValue.ToCFXWideString().c_str()) == 0) - ElementValue = pFormField->GetOptionLabel(iIndex).c_str(); + ElementValue = pFormField->GetOptionLabel(iIndex); ValueArray.SetElement(i, ElementValue); } vp << ValueArray; @@ -3160,7 +3161,7 @@ FX_BOOL Field::value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro double dRet; FX_BOOL bDot; - if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str(), dRet, bDot)) + if (CJS_PublicMethods::ConvertStringToNumber(swValue,dRet,bDot)) { if (bDot) vp << dRet; @@ -3181,9 +3182,10 @@ FX_BOOL Field::value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro if (pFormField->GetControl(i)->IsChecked()) { CFX_WideString swValue = pFormField->GetControl(i)->GetExportValue(); + double dRet; FX_BOOL bDot; - if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str(), dRet, bDot)) + if (CJS_PublicMethods::ConvertStringToNumber(swValue,dRet,bDot)) { if (bDot) vp << dRet; @@ -3389,11 +3391,11 @@ FX_BOOL Field::buttonGetCaption(IFXJS_Context* cc, const CJS_Parameters& params, if (!pFormControl)return FALSE; if (nface == 0) - vRet = pFormControl->GetNormalCaption().c_str(); + vRet = pFormControl->GetNormalCaption(); else if (nface == 1) - vRet = pFormControl->GetDownCaption().c_str(); + vRet = pFormControl->GetDownCaption(); else if (nface == 2) - vRet = pFormControl->GetRolloverCaption().c_str(); + vRet = pFormControl->GetRolloverCaption(); else return FALSE; @@ -3683,12 +3685,12 @@ FX_BOOL Field::getItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va { CFX_WideString strval = pFormField->GetOptionValue(nIdx); if (strval.IsEmpty()) - vRet = pFormField->GetOptionLabel(nIdx).c_str(); + vRet = pFormField->GetOptionLabel(nIdx); else - vRet = strval.c_str(); + vRet = strval; } else - vRet = pFormField->GetOptionLabel(nIdx).c_str(); + vRet = pFormField->GetOptionLabel(nIdx); } else return FALSE; diff --git a/fpdfsdk/src/javascript/JS_Context.cpp b/fpdfsdk/src/javascript/JS_Context.cpp index 277abc08e5..bdcb1ac542 100644 --- a/fpdfsdk/src/javascript/JS_Context.cpp +++ b/fpdfsdk/src/javascript/JS_Context.cpp @@ -72,11 +72,11 @@ FX_BOOL CJS_Context::DoJob(int nMode, const CFX_WideString& script, CFX_WideStri { if (nMode == 0) { - nRet = JS_Execute(*m_pRuntime, this, script.c_str(), script.GetLength(), &error); + nRet = JS_Execute(*m_pRuntime, this, script, script.GetLength(), &error); } else { - nRet = JS_Parse(*m_pRuntime, this, script.c_str(), script.GetLength(), &error); + nRet = JS_Parse(*m_pRuntime, this, script, script.GetLength(), &error); } } diff --git a/fpdfsdk/src/javascript/JS_GlobalData.cpp b/fpdfsdk/src/javascript/JS_GlobalData.cpp index b4e4a5b108..83771dfe57 100644 --- a/fpdfsdk/src/javascript/JS_GlobalData.cpp +++ b/fpdfsdk/src/javascript/JS_GlobalData.cpp @@ -353,7 +353,8 @@ void CJS_GlobalData::LoadGlobalPersistentVariables() FX_LPBYTE pBuffer = NULL; FX_INT32 nLength = 0; - LoadFileBuffer(m_sFilePath.c_str(), pBuffer, nLength); + LoadFileBuffer(m_sFilePath, pBuffer, nLength); + CRYPT_ArcFourCryptBlock(pBuffer, nLength, JS_RC4KEY, sizeof(JS_RC4KEY)); if (pBuffer) @@ -508,7 +509,7 @@ void CJS_GlobalData::SaveGlobalPersisitentVariables() sFile.AppendBlock(sData.GetBuffer(), sData.GetSize()); CRYPT_ArcFourCryptBlock(sFile.GetBuffer(), sFile.GetSize(), JS_RC4KEY, sizeof(JS_RC4KEY)); - WriteFileBuffer(m_sFilePath.c_str(), (FX_LPCSTR)sFile.GetBuffer(), sFile.GetSize()); + WriteFileBuffer(m_sFilePath, (FX_LPCSTR)sFile.GetBuffer(), sFile.GetSize()); } void CJS_GlobalData::LoadFileBuffer(FX_LPCWSTR sFilePath, FX_LPBYTE& pBuffer, FX_INT32& nLength) diff --git a/fpdfsdk/src/javascript/JS_Value.cpp b/fpdfsdk/src/javascript/JS_Value.cpp index 1b36f314ca..be374895e4 100644 --- a/fpdfsdk/src/javascript/JS_Value.cpp +++ b/fpdfsdk/src/javascript/JS_Value.cpp @@ -216,7 +216,7 @@ void CJS_Value::SetNull() void CJS_Value::operator = (FX_LPCSTR pStr) { - operator = (CFX_WideString::FromLocal(pStr).c_str()); + operator = (CFX_WideString::FromLocal(pStr)); } void CJS_Value::operator = (CJS_Array & array) @@ -433,7 +433,7 @@ void CJS_PropValue::operator >>(CFX_WideString &wide_string) const void CJS_PropValue::operator <<(CFX_WideString wide_string) { ASSERT(!m_bIsSetting); - CJS_Value::operator = (wide_string.c_str()); + CJS_Value::operator = (wide_string); } void CJS_PropValue::operator >>(CJS_Array &array) const diff --git a/fpdfsdk/src/javascript/PublicMethods.cpp b/fpdfsdk/src/javascript/PublicMethods.cpp index 539d7c780a..6a9839ebf5 100644 --- a/fpdfsdk/src/javascript/PublicMethods.cpp +++ b/fpdfsdk/src/javascript/PublicMethods.cpp @@ -104,7 +104,7 @@ static FX_LPCWSTR fullmonths[] = FX_BOOL CJS_PublicMethods::IsNumber(FX_LPCWSTR string) { CFX_WideString sTrim = StrTrim(string); - FX_LPCWSTR pTrim = sTrim.c_str(); + FX_LPCWSTR pTrim = sTrim; FX_LPCWSTR p = pTrim; @@ -231,7 +231,7 @@ CFX_WideString CJS_PublicMethods::StrRTrim(FX_LPCWSTR pStr) CFX_WideString CJS_PublicMethods::StrTrim(FX_LPCWSTR pStr) { - return StrRTrim(StrLTrim(pStr).c_str()); + return StrRTrim(StrLTrim(pStr)); } CFX_ByteString CJS_PublicMethods::StrLTrim(FX_LPCSTR pStr) @@ -591,7 +591,7 @@ double CJS_PublicMethods::ParseNormalDate(const CFX_WideString & value, FX_BOOL& CFX_WideString swTemp; swTemp.Format(L"%d/%d/%d %d:%d:%d",nMonth,nDay,nYear,nHour,nMin,nSec); - return JS_DateParse(swTemp.c_str()); + return JS_DateParse(swTemp); } double CJS_PublicMethods::MakeRegularDate(const CFX_WideString & value, const CFX_WideString & format, FX_BOOL& bWrongFormat) @@ -796,7 +796,7 @@ double CJS_PublicMethods::MakeRegularDate(const CFX_WideString & value, const CF CFX_WideString sFullMonths = fullmonths[m]; sFullMonths.MakeLower(); - if (sFullMonths.Find(sMonth.c_str(), 0) != -1) + if (sFullMonths.Find(sMonth, 0) != -1) { nMonth = m + 1; i += 4; @@ -888,7 +888,7 @@ double CJS_PublicMethods::MakeRegularDate(const CFX_WideString & value, const CF if (JS_PortIsNan(dRet)) { - dRet = JS_DateParse(value.c_str()); + dRet = JS_DateParse(value); } } @@ -1075,7 +1075,7 @@ FX_BOOL CJS_PublicMethods::AFNumber_Format(IFXJS_Context* cc, const CJS_Paramete int iSepStyle = params[1].ToInt(); int iNegStyle = params[2].ToInt(); // params[3] is iCurrStyle, it's not used. - std::wstring wstrCurrency(params[4].ToCFXWideString().c_str()); + std::wstring wstrCurrency(params[4].ToCFXWideString()); FX_BOOL bCurrencyPrepend = params[5].ToBool(); if (iDec < 0) iDec = -iDec; @@ -1169,7 +1169,8 @@ FX_BOOL CJS_PublicMethods::AFNumber_Format(IFXJS_Context* cc, const CJS_Paramete //for processing currency string Value = CFX_WideString::FromLocal(strValue); - std::wstring strValue2 = Value.c_str(); + + std::wstring strValue2(Value); if (bCurrencyPrepend) strValue2 = wstrCurrency + strValue2; @@ -1280,24 +1281,25 @@ FX_BOOL CJS_PublicMethods::AFNumber_Keystroke(IFXJS_Context* cc, const CJS_Param if (pEvent->WillCommit()) { CFX_WideString wstrChange = w_strChange; - CFX_WideString wstrValue = StrLTrim(w_strValue.c_str()); + CFX_WideString wstrValue = StrLTrim(w_strValue); if (wstrValue.IsEmpty()) return TRUE; CFX_WideString swTemp = wstrValue; swTemp.Replace(L",", L"."); - if (!IsNumber(swTemp.c_str())) + if (!IsNumber(swTemp)) //!(IsNumber(wstrChange) && { pEvent->Rc() = FALSE; sError = JSGetStringFromID(pContext, IDS_STRING_JSAFNUMBER_KEYSTROKE); - Alert(pContext, sError.c_str()); + Alert(pContext, sError); return TRUE; } return TRUE; // it happens after the last keystroke and before validating, } - - std::wstring w_strValue2 = w_strValue.c_str(); - std::wstring w_strChange2 = w_strChange.c_str(); + + std::wstring w_strValue2 (w_strValue); + std::wstring w_strChange2(w_strChange); + std::wstring w_strSelected; if(-1 != pEvent->SelStart()) w_strSelected = w_strValue2.substr(pEvent->SelStart(),(pEvent->SelEnd() - pEvent->SelStart())); @@ -1542,8 +1544,8 @@ FX_BOOL CJS_PublicMethods::AFDate_FormatEx(IFXJS_Context* cc, const CJS_Paramete if (JS_PortIsNan(dDate)) { CFX_WideString swMsg; - swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSPARSEDATE).c_str(), sFormat.c_str()); - Alert(pContext, swMsg.c_str()); + swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSPARSEDATE), sFormat.c_str()); + Alert(pContext, swMsg); return FALSE; } @@ -1595,17 +1597,17 @@ double CJS_PublicMethods::MakeInterDate(CFX_WideString strValue) if(sTemp.Compare(L"Nov") == 0) nMonth = 11; if(sTemp.Compare(L"Dec") == 0) nMonth = 12; - nDay = (int)ParseStringToNumber(wsArray[2].c_str()); - nHour = (int)ParseStringToNumber(wsArray[3].c_str()); - nMin = (int)ParseStringToNumber(wsArray[4].c_str()); - nSec = (int)ParseStringToNumber(wsArray[5].c_str()); - nYear = (int)ParseStringToNumber(wsArray[7].c_str()); + nDay = (int)ParseStringToNumber(wsArray[2]); + nHour = (int)ParseStringToNumber(wsArray[3]); + nMin = (int)ParseStringToNumber(wsArray[4]); + nSec = (int)ParseStringToNumber(wsArray[5]); + nYear = (int)ParseStringToNumber(wsArray[7]); double dRet = JS_MakeDate(JS_MakeDay(nYear,nMonth - 1,nDay),JS_MakeTime(nHour, nMin, nSec, 0)); if (JS_PortIsNan(dRet)) { - dRet = JS_DateParse(strValue.c_str()); + dRet = JS_DateParse(strValue); } return dRet; @@ -1639,8 +1641,8 @@ FX_BOOL CJS_PublicMethods::AFDate_KeystrokeEx(IFXJS_Context* cc, const CJS_Param if (bWrongFormat || JS_PortIsNan(dRet)) { CFX_WideString swMsg; - swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSPARSEDATE).c_str(), sFormat.c_str()); - Alert(pContext, swMsg.c_str()); + swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSPARSEDATE), sFormat.c_str()); + Alert(pContext, swMsg); pEvent->Rc() = FALSE; return TRUE; } @@ -1849,7 +1851,7 @@ FX_BOOL CJS_PublicMethods::AFSpecial_KeystrokeEx(IFXJS_Context* cc, const CJS_Pa if (wstrMask.IsEmpty()) return TRUE; - std::wstring wstrValue = valEvent.c_str(); + std::wstring wstrValue(valEvent); if (pEvent->WillCommit()) { @@ -1866,14 +1868,14 @@ FX_BOOL CJS_PublicMethods::AFSpecial_KeystrokeEx(IFXJS_Context* cc, const CJS_Pa if (iIndexMask != wstrMask.GetLength() || (iIndexMask != wstrValue.size() && wstrMask.GetLength() != 0)) { - Alert(pContext, JSGetStringFromID(pContext, IDS_STRING_JSAFNUMBER_KEYSTROKE).c_str()); + Alert(pContext, JSGetStringFromID(pContext, IDS_STRING_JSAFNUMBER_KEYSTROKE)); pEvent->Rc() = FALSE; } return TRUE; } CFX_WideString &wideChange = pEvent->Change(); - std::wstring wChange = wideChange.c_str(); + std::wstring wChange(wideChange); if (wChange.empty()) return TRUE; @@ -1881,14 +1883,14 @@ FX_BOOL CJS_PublicMethods::AFSpecial_KeystrokeEx(IFXJS_Context* cc, const CJS_Pa if (wstrValue.length() - (pEvent->SelEnd()-pEvent->SelStart()) + wChange.length() > (FX_DWORD)wstrMask.GetLength()) { - Alert(pContext, JSGetStringFromID(pContext, IDS_STRING_JSPARAM_TOOLONG).c_str()); + Alert(pContext, JSGetStringFromID(pContext, IDS_STRING_JSPARAM_TOOLONG)); pEvent->Rc() = FALSE; return TRUE; } if (iIndexMask >= wstrMask.GetLength() && (!wChange.empty())) { - Alert(pContext, JSGetStringFromID(pContext, IDS_STRING_JSPARAM_TOOLONG).c_str()); + Alert(pContext, JSGetStringFromID(pContext, IDS_STRING_JSPARAM_TOOLONG)); pEvent->Rc() = FALSE; return TRUE; } @@ -1897,7 +1899,7 @@ FX_BOOL CJS_PublicMethods::AFSpecial_KeystrokeEx(IFXJS_Context* cc, const CJS_Pa { if (iIndexMask >= wstrMask.GetLength()) { - Alert(pContext, JSGetStringFromID(pContext, IDS_STRING_JSPARAM_TOOLONG).c_str()); + Alert(pContext, JSGetStringFromID(pContext, IDS_STRING_JSPARAM_TOOLONG)); pEvent->Rc() = FALSE; return TRUE; } @@ -1944,8 +1946,8 @@ FX_BOOL CJS_PublicMethods::AFSpecial_Keystroke(IFXJS_Context* cc, const CJS_Para //CJS_Value val = pEvent->Value(); CFX_WideString& val = pEvent->Value(); std::string strSrc = CFX_ByteString::FromUnicode(val).c_str(); - std::wstring wstrChange = pEvent->Change().c_str(); - + std::wstring wstrChange(pEvent->Change()); + switch (iIndex) { case 0: @@ -1999,7 +2001,7 @@ FX_BOOL CJS_PublicMethods::AFMergeChange(IFXJS_Context* cc, const CJS_Parameters if (pEventHandler->WillCommit()) { - vRet = swValue.c_str(); + vRet = swValue; return TRUE; } @@ -2015,7 +2017,7 @@ FX_BOOL CJS_PublicMethods::AFMergeChange(IFXJS_Context* cc, const CJS_Parameters postfix = swValue.Mid(pEventHandler->SelEnd(), swValue.GetLength() - pEventHandler->SelEnd()); else postfix = L""; - vRet = (prefix + pEventHandler->Change() + postfix).c_str(); + vRet = prefix + pEventHandler->Change() + postfix; return TRUE; } @@ -2040,8 +2042,8 @@ FX_BOOL CJS_PublicMethods::AFParseDateEx(IFXJS_Context* cc, const CJS_Parameters if (JS_PortIsNan(dDate)) { CFX_WideString swMsg; - swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSPARSEDATE).c_str(), sFormat.c_str()); - Alert((CJS_Context *)cc, swMsg.c_str()); + swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSPARSEDATE), sFormat.c_str()); + Alert((CJS_Context *)cc, swMsg); return FALSE; } @@ -2060,7 +2062,7 @@ FX_BOOL CJS_PublicMethods::AFSimple(IFXJS_Context* cc, const CJS_Parameters& par return FALSE; } - vRet = (double)AF_Simple(params[0].ToCFXWideString().c_str(), params[1].ToDouble(), params[2].ToDouble()); + vRet = (double)AF_Simple(params[0].ToCFXWideString(), params[1].ToDouble(), params[2].ToDouble()); return TRUE; } @@ -2074,7 +2076,7 @@ FX_BOOL CJS_PublicMethods::AFMakeNumber(IFXJS_Context* cc, const CJS_Parameters& sError = JSGetStringFromID(pContext, IDS_STRING_JSPARAMERROR); return FALSE; } - vRet = ParseStringToNumber(params[0].ToCFXWideString().c_str()); + vRet = ParseStringToNumber(params[0].ToCFXWideString()); return TRUE; } @@ -2110,7 +2112,7 @@ FX_BOOL CJS_PublicMethods::AFSimple_Calculate(IFXJS_Context* cc, const CJS_Param double dValue; CFX_WideString sFunction = params[0].ToCFXWideString(); - if (wcscmp(sFunction.c_str(), L"PRD") == 0) + if (wcscmp(sFunction, L"PRD") == 0) dValue = 1.0; else dValue = 0.0; @@ -2136,7 +2138,7 @@ FX_BOOL CJS_PublicMethods::AFSimple_Calculate(IFXJS_Context* cc, const CJS_Param case FIELDTYPE_TEXTFIELD: case FIELDTYPE_COMBOBOX: { - dTemp = ParseStringToNumber(pFormField->GetValue().c_str()); + dTemp = ParseStringToNumber(pFormField->GetValue()); break; } case FIELDTYPE_PUSHBUTTON: @@ -2154,7 +2156,7 @@ FX_BOOL CJS_PublicMethods::AFSimple_Calculate(IFXJS_Context* cc, const CJS_Param { if (pFormCtrl->IsChecked()) { - dTemp += ParseStringToNumber(pFormCtrl->GetExportValue().c_str()); + dTemp += ParseStringToNumber(pFormCtrl->GetExportValue()); break; } else @@ -2170,7 +2172,7 @@ FX_BOOL CJS_PublicMethods::AFSimple_Calculate(IFXJS_Context* cc, const CJS_Param break; else { - dTemp = ParseStringToNumber(pFormField->GetValue().c_str()); + dTemp = ParseStringToNumber(pFormField->GetValue()); break; } } @@ -2178,17 +2180,17 @@ FX_BOOL CJS_PublicMethods::AFSimple_Calculate(IFXJS_Context* cc, const CJS_Param break; } - if (i == 0 && j == 0 && (wcscmp(sFunction.c_str(), L"MIN") == 0 || wcscmp(sFunction.c_str(), L"MAX") == 0)) + if (i == 0 && j == 0 && (wcscmp(sFunction,L"MIN") == 0 || wcscmp(sFunction, L"MAX") == 0)) dValue = dTemp; - dValue = AF_Simple(sFunction.c_str(), dValue, dTemp); + dValue = AF_Simple(sFunction, dValue, dTemp); nFieldsCount++; } } } - if (wcscmp(sFunction.c_str(), L"AVG") == 0 && nFieldsCount > 0) + if (wcscmp(sFunction, L"AVG") == 0 && nFieldsCount > 0) dValue /= nFieldsCount; dValue = (double)floor(dValue * FXSYS_pow((double)10,(double)6) + 0.49) / FXSYS_pow((double)10,(double)6); @@ -2229,26 +2231,26 @@ FX_BOOL CJS_PublicMethods::AFRange_Validate(IFXJS_Context* cc, const CJS_Paramet if (bGreaterThan && bLessThan) { if (dEentValue < dGreaterThan || dEentValue > dLessThan) - swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSRANGE1).c_str(), + swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSRANGE1), params[1].ToCFXWideString().c_str(), params[3].ToCFXWideString().c_str()); } else if (bGreaterThan) { if (dEentValue < dGreaterThan) - swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSRANGE2).c_str(), + swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSRANGE2), params[1].ToCFXWideString().c_str()); } else if (bLessThan) { if (dEentValue > dLessThan) - swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSRANGE3).c_str(), + swMsg.Format(JSGetStringFromID(pContext, IDS_STRING_JSRANGE3), params[3].ToCFXWideString().c_str()); } if (!swMsg.IsEmpty()) { - Alert(pContext, swMsg.c_str()); + Alert(pContext, swMsg); pEvent->Rc() = FALSE; } return TRUE; diff --git a/fpdfsdk/src/javascript/app.cpp b/fpdfsdk/src/javascript/app.cpp index 552d26854d..2cb7f67f27 100644 --- a/fpdfsdk/src/javascript/app.cpp +++ b/fpdfsdk/src/javascript/app.cpp @@ -416,7 +416,7 @@ FX_BOOL app::alert(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& v CJS_Runtime* pRuntime = pContext->GetJSRuntime(); ASSERT(pRuntime != NULL); pRuntime->BeginBlock(); - vRet = MsgBox(pRuntime->GetReaderApp(), JSGetPageView(cc), swMsg.c_str(), swTitle.c_str(), iType, iIcon); + vRet = MsgBox(pRuntime->GetReaderApp(), JSGetPageView(cc),swMsg,swTitle,iType,iIcon); pRuntime->EndBlock(); return TRUE; @@ -455,21 +455,24 @@ FX_BOOL app::fs(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) FX_BOOL app::setInterval(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& vRet, CFX_WideString& sError) { - CJS_Context* pContext = (CJS_Context*)cc; if (params.size() > 2 || params.size() == 0) { - sError = JSGetStringFromID(pContext, IDS_STRING_JSPARAMERROR); + sError = JSGetStringFromID((CJS_Context*)cc, IDS_STRING_JSPARAMERROR); return FALSE; } - CFX_WideString script = params.size() > 0 ? params[0].ToCFXWideString() : L""; + CJS_Context* pContext = (CJS_Context*)cc; + ASSERT(pContext != NULL); + CJS_Runtime* pRuntime = pContext->GetJSRuntime(); + ASSERT(pRuntime != NULL); + + CFX_WideString script = params.size() > 0 ? (FX_LPCWSTR)(params[0].ToCFXWideString()) : L""; if (script.IsEmpty()) { - sError = JSGetStringFromID(pContext, IDS_STRING_JSAFNUMBER_KEYSTROKE); + sError = JSGetStringFromID((CJS_Context*)cc, IDS_STRING_JSAFNUMBER_KEYSTROKE); return TRUE; } - CJS_Runtime* pRuntime = pContext->GetJSRuntime(); FX_DWORD dwInterval = params.size() > 1 ? params[1].ToInt() : 1000; CPDFDoc_Environment* pApp = pRuntime->GetReaderApp(); @@ -512,7 +515,7 @@ FX_BOOL app::setTimeOut(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val CJS_Runtime* pRuntime = pContext->GetJSRuntime(); ASSERT(pRuntime != NULL); - CFX_WideString script = params.size() > 0 ? params[0].ToCFXWideString() : L""; + CFX_WideString script = params.size() > 0 ? (FX_LPCWSTR)(params[0].ToCFXWideString()) : L""; if (script.IsEmpty()) { sError = JSGetStringFromID((CJS_Context*)cc, IDS_STRING_JSAFNUMBER_KEYSTROKE); @@ -900,8 +903,7 @@ FX_BOOL app::response(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value return FALSE; memset(pBuff, 0, MAX_INPUT_BYTES + 2); - int nLengthBytes = pApp->JS_appResponse(swQuestion.c_str(), swTitle.c_str(), swDefault.c_str(), - swLabel.c_str(), bPassWord, pBuff, MAX_INPUT_BYTES); + int nLengthBytes = pApp->JS_appResponse(swQuestion, swTitle, swDefault, swLabel, bPassWord, pBuff, MAX_INPUT_BYTES); if (nLengthBytes <= 0) { vRet.SetNull(); @@ -911,7 +913,7 @@ FX_BOOL app::response(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value if (nLengthBytes > MAX_INPUT_BYTES) nLengthBytes = MAX_INPUT_BYTES; - vRet = CFX_WideString::FromUTF16LE((unsigned short*)pBuff, nLengthBytes / sizeof(unsigned short)).c_str(); + vRet = CFX_WideString::FromUTF16LE((unsigned short*)pBuff, nLengthBytes / sizeof(unsigned short)); delete[] pBuff; return TRUE; } diff --git a/fpdfsdk/src/javascript/global.cpp b/fpdfsdk/src/javascript/global.cpp index 418508f89e..c3d11b0a84 100644 --- a/fpdfsdk/src/javascript/global.cpp +++ b/fpdfsdk/src/javascript/global.cpp @@ -297,18 +297,18 @@ void global_alternate::UpdateGlobalPersistentVariables() case JS_GLOBALDATA_TYPE_NUMBER: this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_NUMBER, pData->data.dData, false, "", v8::Handle(), pData->bPersistent == 1); JS_PutObjectNumber(NULL,(JSFXObject)(*m_pJSObject), - pData->data.sKey.UTF8Decode().c_str(), pData->data.dData); + pData->data.sKey.UTF8Decode(), pData->data.dData); break; case JS_GLOBALDATA_TYPE_BOOLEAN: this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_BOOLEAN, 0, (bool)(pData->data.bData == 1), "", v8::Handle(), pData->bPersistent == 1); JS_PutObjectBoolean(NULL,(JSFXObject)(*m_pJSObject), - pData->data.sKey.UTF8Decode().c_str(), (bool)(pData->data.bData == 1)); + pData->data.sKey.UTF8Decode(), (bool)(pData->data.bData == 1)); break; case JS_GLOBALDATA_TYPE_STRING: this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_STRING, 0, false, pData->data.sData, v8::Handle(), pData->bPersistent == 1); - JS_PutObjectString(NULL, (JSFXObject)(*m_pJSObject), - pData->data.sKey.UTF8Decode().c_str(), - pData->data.sData.UTF8Decode().c_str()); + JS_PutObjectString(NULL,(JSFXObject)(*m_pJSObject), + pData->data.sKey.UTF8Decode(), + pData->data.sData.UTF8Decode()); break; case JS_GLOBALDATA_TYPE_OBJECT: { @@ -320,13 +320,13 @@ void global_alternate::UpdateGlobalPersistentVariables() this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_OBJECT, 0, false, "", (JSObject)pObj, pData->bPersistent == 1); JS_PutObjectObject(NULL,(JSFXObject)(*m_pJSObject), - pData->data.sKey.UTF8Decode().c_str(), (JSObject)pObj); + pData->data.sKey.UTF8Decode(), (JSObject)pObj); } break; case JS_GLOBALDATA_TYPE_NULL: this->SetGlobalVariables(pData->data.sKey, JS_GLOBALDATA_TYPE_NULL, 0, false, "", v8::Handle(), pData->bPersistent == 1); JS_PutObjectNull(NULL,(JSFXObject)(*m_pJSObject), - pData->data.sKey.UTF8Decode().c_str()); + pData->data.sKey.UTF8Decode()); break; } } @@ -466,24 +466,24 @@ void global_alternate::PutObjectProperty(v8::Handle pObj, CJS_KeyVal switch (pObjData->nType) { case JS_GLOBALDATA_TYPE_NUMBER: - JS_PutObjectNumber(NULL,(JSObject)pObj, pObjData->sKey.UTF8Decode().c_str(), pObjData->dData); + JS_PutObjectNumber(NULL,(JSObject)pObj, pObjData->sKey.UTF8Decode(), pObjData->dData); break; case JS_GLOBALDATA_TYPE_BOOLEAN: - JS_PutObjectBoolean(NULL,(JSObject)pObj, pObjData->sKey.UTF8Decode().c_str(), (bool)(pObjData->bData == 1)); + JS_PutObjectBoolean(NULL,(JSObject)pObj, pObjData->sKey.UTF8Decode(), (bool)(pObjData->bData == 1)); break; case JS_GLOBALDATA_TYPE_STRING: - JS_PutObjectString(NULL,(JSObject)pObj, pObjData->sKey.UTF8Decode().c_str(), pObjData->sData.UTF8Decode().c_str()); + JS_PutObjectString(NULL,(JSObject)pObj, pObjData->sKey.UTF8Decode(), pObjData->sData.UTF8Decode()); break; case JS_GLOBALDATA_TYPE_OBJECT: { IJS_Runtime* pRuntime = JS_GetRuntime((JSFXObject)(*m_pJSObject)); v8::Handle pNewObj = JS_NewFxDynamicObj(pRuntime, NULL, -1); PutObjectProperty(pNewObj, pObjData); - JS_PutObjectObject(NULL, (JSObject)pObj, pObjData->sKey.UTF8Decode().c_str(), (JSObject)pNewObj); + JS_PutObjectObject(NULL, (JSObject)pObj, pObjData->sKey.UTF8Decode(), (JSObject)pNewObj); } break; case JS_GLOBALDATA_TYPE_NULL: - JS_PutObjectNull(NULL,(JSObject)pObj, pObjData->sKey.UTF8Decode().c_str()); + JS_PutObjectNull(NULL,(JSObject)pObj, pObjData->sKey.UTF8Decode()); break; } } diff --git a/fpdfsdk/src/javascript/util.cpp b/fpdfsdk/src/javascript/util.cpp index 26c59a32ad..f7e97acb1f 100644 --- a/fpdfsdk/src/javascript/util.cpp +++ b/fpdfsdk/src/javascript/util.cpp @@ -265,7 +265,7 @@ FX_BOOL util::printd(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& return FALSE; } - vRet = swResult.c_str(); + vRet = swResult; return TRUE; } else if (p1.GetType() == VT_string) @@ -288,9 +288,9 @@ FX_BOOL util::printd(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& { int iStart = 0; int iEnd; - while((iEnd = cFormat.find(fcTable[iIndex].lpszJSMark, iStart)) != -1) + while((iEnd = cFormat.find((CFX_WideString)fcTable[iIndex].lpszJSMark, iStart)) != -1) { - cFormat.replace(iEnd, FXSYS_wcslen(fcTable[iIndex].lpszJSMark), fcTable[iIndex].lpszCppMark); + cFormat.replace(iEnd, FXSYS_wcslen(fcTable[iIndex].lpszJSMark), (CFX_WideString)fcTable[iIndex].lpszCppMark); iStart = iEnd; } } @@ -342,7 +342,7 @@ FX_BOOL util::printd(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value& //strFormat.Format(strFormat,cTableAd[iIndex].iValue); int iStart = 0; int iEnd; - while((iEnd = cFormat.find(cTableAd[iIndex].lpszJSMark, iStart)) != -1) + while((iEnd = cFormat.find((CFX_WideString)cTableAd[iIndex].lpszJSMark,iStart)) != -1) { if (iEnd > 0) { @@ -384,9 +384,9 @@ void util::printd(const std::wstring &cFormat2, CJS_Date jsDate, bool bXFAPictur { int iStart = 0; int iEnd; - while((iEnd = cFormat.find(fcTable[iIndex].lpszJSMark, iStart)) != -1) + while((iEnd = cFormat.find((CFX_WideString)fcTable[iIndex].lpszJSMark,iStart)) != -1) { - cFormat.replace(iEnd,FXSYS_wcslen(fcTable[iIndex].lpszJSMark), fcTable[iIndex].lpszCppMark); + cFormat.replace(iEnd,FXSYS_wcslen(fcTable[iIndex].lpszJSMark), (CFX_WideString)fcTable[iIndex].lpszCppMark); iStart = iEnd; } } @@ -438,7 +438,7 @@ void util::printd(const std::wstring &cFormat2, CJS_Date jsDate, bool bXFAPictur //strFormat.Format(strFormat,cTableAd[iIndex].iValue); int iStart = 0; int iEnd; - while((iEnd = cFormat.find(cTableAd[iIndex].lpszJSMark, iStart)) != -1) + while((iEnd = cFormat.find((CFX_WideString)cTableAd[iIndex].lpszJSMark,iStart)) != -1) { if (iEnd > 0) { @@ -640,6 +640,6 @@ FX_BOOL util::byteToChar(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va unsigned char cByte = (unsigned char)nByte; CFX_WideString csValue; csValue.Format(L"%c", cByte); - vRet = csValue.c_str(); + vRet = csValue; return TRUE; } diff --git a/fpdfsdk/src/pdfwindow/PWL_ComboBox.cpp b/fpdfsdk/src/pdfwindow/PWL_ComboBox.cpp index 6627189bd7..01810ffd7a 100644 --- a/fpdfsdk/src/pdfwindow/PWL_ComboBox.cpp +++ b/fpdfsdk/src/pdfwindow/PWL_ComboBox.cpp @@ -266,7 +266,7 @@ void CPWL_ComboBox::SetSelect(FX_INT32 nItemIndex) if (m_pList) m_pList->Select(nItemIndex); - m_pEdit->SetText(m_pList->GetText().c_str()); + m_pEdit->SetText(m_pList->GetText()); m_nSelectItem = nItemIndex; } @@ -638,7 +638,7 @@ void CPWL_ComboBox::SetSelectText() { CFX_WideString swText = m_pList->GetText(); m_pEdit->SelectAll(); - m_pEdit->ReplaceSel(m_pList->GetText().c_str()); + m_pEdit->ReplaceSel(m_pList->GetText()); m_pEdit->SelectAll(); m_nSelectItem = m_pList->GetCurSel(); diff --git a/fpdfsdk/src/pdfwindow/PWL_Edit.cpp b/fpdfsdk/src/pdfwindow/PWL_Edit.cpp index f704a67731..1cbbf9a17e 100644 --- a/fpdfsdk/src/pdfwindow/PWL_Edit.cpp +++ b/fpdfsdk/src/pdfwindow/PWL_Edit.cpp @@ -78,7 +78,7 @@ void CPWL_Edit::SetText(FX_LPCWSTR csText) } } - m_pEdit->SetText(swText.c_str()); + m_pEdit->SetText(swText); } void CPWL_Edit::RePosChildWnd() @@ -192,7 +192,7 @@ void CPWL_Edit::PasteText() if (swClipboard.GetLength() > 0) { Clear(); - InsertText(swClipboard.c_str()); + InsertText(swClipboard); } if (m_pFillerNotify) @@ -682,23 +682,23 @@ FX_BOOL CPWL_Edit::OnRButtonUp(const CPDF_Point & point, FX_DWORD nFlag) break; case WM_PWLEDIT_SUGGEST + 0: SetSel(m_pEdit->WordPlaceToWordIndex(wrLatin.BeginPos),m_pEdit->WordPlaceToWordIndex(wrLatin.EndPos)); - ReplaceSel(sSuggestWords[0].UTF8Decode().c_str()); + ReplaceSel(sSuggestWords[0].UTF8Decode()); break; case WM_PWLEDIT_SUGGEST + 1: SetSel(m_pEdit->WordPlaceToWordIndex(wrLatin.BeginPos),m_pEdit->WordPlaceToWordIndex(wrLatin.EndPos)); - ReplaceSel(sSuggestWords[1].UTF8Decode().c_str()); + ReplaceSel(sSuggestWords[1].UTF8Decode()); break; case WM_PWLEDIT_SUGGEST + 2: SetSel(m_pEdit->WordPlaceToWordIndex(wrLatin.BeginPos),m_pEdit->WordPlaceToWordIndex(wrLatin.EndPos)); - ReplaceSel(sSuggestWords[2].UTF8Decode().c_str()); + ReplaceSel(sSuggestWords[2].UTF8Decode()); break; case WM_PWLEDIT_SUGGEST + 3: SetSel(m_pEdit->WordPlaceToWordIndex(wrLatin.BeginPos),m_pEdit->WordPlaceToWordIndex(wrLatin.EndPos)); - ReplaceSel(sSuggestWords[3].UTF8Decode().c_str()); + ReplaceSel(sSuggestWords[3].UTF8Decode()); break; - case WM_PWLEDIT_SUGGEST + 4: + case WM_PWLEDIT_SUGGEST + 4: SetSel(m_pEdit->WordPlaceToWordIndex(wrLatin.BeginPos),m_pEdit->WordPlaceToWordIndex(wrLatin.EndPos)); - ReplaceSel(sSuggestWords[4].UTF8Decode().c_str()); + ReplaceSel(sSuggestWords[4].UTF8Decode()); break; default: break; diff --git a/fpdfsdk/src/pdfwindow/PWL_IconList.cpp b/fpdfsdk/src/pdfwindow/PWL_IconList.cpp index 990f8b893f..1d58a90111 100644 --- a/fpdfsdk/src/pdfwindow/PWL_IconList.cpp +++ b/fpdfsdk/src/pdfwindow/PWL_IconList.cpp @@ -107,7 +107,7 @@ void CPWL_IconList_Item::SetIcon(FX_INT32 nIconIndex) void CPWL_IconList_Item::SetText(const CFX_WideString& str) { - m_pText->SetText(str.c_str()); + m_pText->SetText(str); } CFX_WideString CPWL_IconList_Item::GetText() const diff --git a/fpdfsdk/src/pdfwindow/PWL_Note.cpp b/fpdfsdk/src/pdfwindow/PWL_Note.cpp index 33d1b3b009..7bc8fad395 100644 --- a/fpdfsdk/src/pdfwindow/PWL_Note.cpp +++ b/fpdfsdk/src/pdfwindow/PWL_Note.cpp @@ -82,7 +82,7 @@ void CPWL_Note_Options::CreateChildWnd(const PWL_CREATEPARAM & cp) void CPWL_Note_Options::SetText(const CFX_WideString& sText) { - m_pText->SetText(sText.c_str()); + m_pText->SetText(sText); } void CPWL_Note_Options::DrawThisAppearance(CFX_RenderDevice* pDevice, CPDF_Matrix* pUser2Device) @@ -443,9 +443,9 @@ void CPWL_Note_Contents::SetText(const CFX_WideString& sText) if (m_pEdit) { m_pEdit->EnableNotify(FALSE); - m_pEdit->SetText(sText.c_str()); + m_pEdit->SetText(sText); m_pEdit->EnableNotify(TRUE); - OnNotify(m_pEdit, PNM_NOTEEDITCHANGED, 0, 0); + OnNotify(m_pEdit, PNM_NOTEEDITCHANGED, 0, 0); } } @@ -811,7 +811,7 @@ void CPWL_NoteItem::SetSubjectName(const CFX_WideString& sName) { if (m_pSubject) { - m_pSubject->SetText(sName.c_str()); + m_pSubject->SetText(sName); } if (IPWL_NoteNotify* pNotify = GetNoteNotify()) @@ -848,10 +848,11 @@ void CPWL_NoteItem::ResetSubjectName(FX_INT32 nItemIndex) ASSERT(pNote != NULL); CFX_WideString sSubject; - sSubject.Format(pNote->GetReplyString().c_str(), nItemIndex); + sSubject.Format(pNote->GetReplyString(), nItemIndex); if (!m_sAuthor.IsEmpty()) { + sSubject += L" - "; sSubject += m_sAuthor; } @@ -862,12 +863,12 @@ void CPWL_NoteItem::ResetSubjectName(FX_INT32 nItemIndex) void CPWL_NoteItem::SetDateTime(FX_SYSTEMTIME time) { m_dtNote = time; - + CFX_WideString swTime; swTime.Format(L"%04d-%02d-%02d %02d:%02d:%02d", time.wYear, time.wMonth, time.wDay, time.wHour, time.wMinute, time.wSecond); if (m_pDateTime) { - m_pDateTime->SetText(swTime.c_str()); + m_pDateTime->SetText(swTime); } this->RePosChildWnd(); @@ -1527,14 +1528,14 @@ void CPWL_Note::SetAuthorName(const CFX_WideString& sName) { if (m_pAuthor) { - m_pAuthor->SetText(sName.c_str()); + m_pAuthor->SetText(sName); RePosChildWnd(); } if (IPWL_NoteNotify* pNotify = GetNoteNotify()) { pNotify->OnSetAuthorName(this); - } + } } CFX_WideString CPWL_Note::GetAuthorName() const diff --git a/fpdfsdk/src/pdfwindow/PWL_Utils.cpp b/fpdfsdk/src/pdfwindow/PWL_Utils.cpp index b57f8e019d..1de6b56d5e 100644 --- a/fpdfsdk/src/pdfwindow/PWL_Utils.cpp +++ b/fpdfsdk/src/pdfwindow/PWL_Utils.cpp @@ -641,8 +641,9 @@ CFX_ByteString CPWL_Utils::GetTextAppStream(const CPDF_Rect & rcBBox,IFX_Edit_Fo CFX_ByteTextBuf sRet; if (IFX_Edit * pEdit = IFX_Edit::NewEdit()) - { + { pEdit->SetFontMap(pFontMap); + pEdit->SetPlateRect(rcBBox); pEdit->SetAlignmentH(nAlignmentH); pEdit->SetAlignmentV(nAlignmentV); @@ -652,15 +653,16 @@ CFX_ByteString CPWL_Utils::GetTextAppStream(const CPDF_Rect & rcBBox,IFX_Edit_Fo pEdit->SetAutoFontSize(TRUE); else pEdit->SetFontSize(fFontSize); - pEdit->Initialize(); - pEdit->SetText(sText.c_str()); + pEdit->SetText(sText); + CFX_ByteString sEdit = CPWL_Utils::GetEditAppStream(pEdit, CPDF_Point(0.0f,0.0f)); if (sEdit.GetLength() > 0) { sRet << "BT\n" << CPWL_Utils::GetColorAppStream(crText) << sEdit << "ET\n"; } + IFX_Edit::DelEdit(pEdit); } @@ -679,8 +681,9 @@ CFX_ByteString CPWL_Utils::GetPushButtonAppStream(const CPDF_Rect & rcBBox, const FX_FLOAT fAutoFontScale = 1.0f / 3.0f; if (IFX_Edit * pEdit = IFX_Edit::NewEdit()) - { + { pEdit->SetFontMap(pFontMap); + pEdit->SetAlignmentH(1); pEdit->SetAlignmentV(1); pEdit->SetMultiLine(FALSE); @@ -689,11 +692,11 @@ CFX_ByteString CPWL_Utils::GetPushButtonAppStream(const CPDF_Rect & rcBBox, pEdit->SetAutoFontSize(TRUE); else pEdit->SetFontSize(fFontSize); - pEdit->Initialize(); - pEdit->SetText(sLabel.c_str()); + pEdit->SetText(sLabel); CPDF_Rect rcLabelContent = pEdit->GetContentRect(); + CPWL_Icon Icon; PWL_CREATEPARAM cp; cp.dwFlags = PWS_VISIBLE; -- cgit v1.2.3