diff options
Diffstat (limited to 'xfa/fwl/core/cfwl_combobox.cpp')
-rw-r--r-- | xfa/fwl/core/cfwl_combobox.cpp | 39 |
1 files changed, 18 insertions, 21 deletions
diff --git a/xfa/fwl/core/cfwl_combobox.cpp b/xfa/fwl/core/cfwl_combobox.cpp index e00f785ade..825df9c538 100644 --- a/xfa/fwl/core/cfwl_combobox.cpp +++ b/xfa/fwl/core/cfwl_combobox.cpp @@ -11,6 +11,24 @@ #include "xfa/fwl/core/fwl_error.h" #include "xfa/fwl/core/ifwl_widget.h" +CFWL_ComboBox::CFWL_ComboBox(const IFWL_App* app) : CFWL_Widget(app) {} + +CFWL_ComboBox::~CFWL_ComboBox() {} + +void CFWL_ComboBox::Initialize(const CFWL_WidgetProperties* pProperties) { + ASSERT(!m_pIface); + + if (pProperties) + *m_pProperties = *pProperties; + + std::unique_ptr<IFWL_ComboBox> pComboBox(new IFWL_ComboBox( + m_pApp, m_pProperties->MakeWidgetImpProperties(&m_comboBoxData))); + pComboBox->Initialize(); + + m_pIface = std::move(pComboBox); + CFWL_Widget::Initialize(pProperties); +} + IFWL_ComboBox* CFWL_ComboBox::GetWidget() { return static_cast<IFWL_ComboBox*>(m_pIface.get()); } @@ -19,23 +37,6 @@ const IFWL_ComboBox* CFWL_ComboBox::GetWidget() const { return static_cast<IFWL_ComboBox*>(m_pIface.get()); } -FWL_Error CFWL_ComboBox::Initialize(const CFWL_WidgetProperties* pProperties) { - if (m_pIface) - return FWL_Error::Indefinite; - if (pProperties) { - *m_pProperties = *pProperties; - } - std::unique_ptr<IFWL_ComboBox> pComboBox(new IFWL_ComboBox( - m_pProperties->MakeWidgetImpProperties(&m_comboBoxData))); - FWL_Error ret = pComboBox->Initialize(); - if (ret != FWL_Error::Succeeded) { - return ret; - } - m_pIface = std::move(pComboBox); - CFWL_Widget::Initialize(); - return FWL_Error::Succeeded; -} - int32_t CFWL_ComboBox::AddString(const CFX_WideStringC& wsText) { std::unique_ptr<CFWL_ComboBoxItem> pItem(new CFWL_ComboBoxItem); pItem->m_wsText = wsText; @@ -231,10 +232,6 @@ FWL_Error CFWL_ComboBox::EditModifyStylesEx(uint32_t dwStylesExAdded, : FWL_Error::Indefinite; } -CFWL_ComboBox::CFWL_ComboBox() {} - -CFWL_ComboBox::~CFWL_ComboBox() {} - CFWL_ComboBox::CFWL_ComboBoxDP::CFWL_ComboBoxDP() { m_fItemHeight = 0; m_fMaxListHeight = 0; |