summaryrefslogtreecommitdiff
path: root/fpdfsdk/pwl/cpwl_combo_box.cpp
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2018-10-26 22:08:43 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-10-26 22:08:43 +0000
commit9590dee526c514d87dc1f47569d1136ffcf539ad (patch)
treeeaea0d3d96ee9248b1cb0dc34fc2950192b7f9ef /fpdfsdk/pwl/cpwl_combo_box.cpp
parente027c9765c1aa5ea2a4293fc6ea29a96e3fc2c73 (diff)
downloadpdfium-9590dee526c514d87dc1f47569d1136ffcf539ad.tar.xz
Pass unique_ptr to CPWL_Wnd::AddChild().
But stop short of updating the underlying data structures. Change-Id: I7d8edc74f71725005b81359484d30caddbe958d7 Reviewed-on: https://pdfium-review.googlesource.com/c/44693 Commit-Queue: Tom Sepez <tsepez@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org>
Diffstat (limited to 'fpdfsdk/pwl/cpwl_combo_box.cpp')
-rw-r--r--fpdfsdk/pwl/cpwl_combo_box.cpp24
1 files changed, 13 insertions, 11 deletions
diff --git a/fpdfsdk/pwl/cpwl_combo_box.cpp b/fpdfsdk/pwl/cpwl_combo_box.cpp
index 70893ca437..887b0225e5 100644
--- a/fpdfsdk/pwl/cpwl_combo_box.cpp
+++ b/fpdfsdk/pwl/cpwl_combo_box.cpp
@@ -272,10 +272,6 @@ void CPWL_ComboBox::CreateEdit(const CreateParams& cp) {
if (m_pEdit)
return;
- m_pEdit = new CPWL_Edit(CloneAttachedData());
- m_pEdit->AttachFFLData(m_pFormFiller.Get());
- AddChild(m_pEdit.Get());
-
CreateParams ecp = cp;
ecp.dwFlags = PWS_VISIBLE | PWS_CHILD | PWS_BORDER | PES_CENTER |
PES_AUTOSCROLL | PES_UNDO;
@@ -289,6 +285,11 @@ void CPWL_ComboBox::CreateEdit(const CreateParams& cp) {
ecp.rcRectWnd = CFX_FloatRect();
ecp.dwBorderWidth = 0;
ecp.nBorderStyle = BorderStyle::SOLID;
+
+ auto pEdit = pdfium::MakeUnique<CPWL_Edit>(CloneAttachedData());
+ m_pEdit = pEdit.get();
+ m_pEdit->AttachFFLData(m_pFormFiller.Get());
+ AddChild(std::move(pEdit));
m_pEdit->Realize(ecp);
}
@@ -296,9 +297,6 @@ void CPWL_ComboBox::CreateButton(const CreateParams& cp) {
if (m_pButton)
return;
- m_pButton = new CPWL_CBButton(CloneAttachedData());
- AddChild(m_pButton.Get());
-
CreateParams bcp = cp;
bcp.dwFlags = PWS_VISIBLE | PWS_CHILD | PWS_BORDER | PWS_BACKGROUND;
bcp.sBackgroundColor = CFX_Color(CFX_Color::kRGB, 220.0f / 255.0f,
@@ -307,6 +305,10 @@ void CPWL_ComboBox::CreateButton(const CreateParams& cp) {
bcp.dwBorderWidth = 2;
bcp.nBorderStyle = BorderStyle::BEVELED;
bcp.eCursorType = FXCT_ARROW;
+
+ auto pButton = pdfium::MakeUnique<CPWL_CBButton>(CloneAttachedData());
+ m_pButton = pButton.get();
+ AddChild(std::move(pButton));
m_pButton->Realize(bcp);
}
@@ -314,10 +316,6 @@ void CPWL_ComboBox::CreateListBox(const CreateParams& cp) {
if (m_pList)
return;
- m_pList = new CPWL_CBListBox(CloneAttachedData());
- m_pList->AttachFFLData(m_pFormFiller.Get());
- AddChild(m_pList.Get());
-
CreateParams lcp = cp;
lcp.dwFlags =
PWS_CHILD | PWS_BORDER | PWS_BACKGROUND | PLBS_HOVERSEL | PWS_VSCROLL;
@@ -335,6 +333,10 @@ void CPWL_ComboBox::CreateListBox(const CreateParams& cp) {
if (cp.sBackgroundColor.nColorType == CFX_Color::kTransparent)
lcp.sBackgroundColor = PWL_DEFAULT_WHITECOLOR;
+ auto pList = pdfium::MakeUnique<CPWL_CBListBox>(CloneAttachedData());
+ m_pList = pList.get();
+ m_pList->AttachFFLData(m_pFormFiller.Get());
+ AddChild(std::move(pList));
m_pList->Realize(lcp);
}