Index: xfa/fwl/core/cfwl_combobox.cpp |
diff --git a/xfa/fwl/core/cfwl_combobox.cpp b/xfa/fwl/core/cfwl_combobox.cpp |
index 60b6e507d13f0ad10d3a764917c0f0570bead5c9..fa2698be6e347ff08440967e14466e7be2abbd7f 100644 |
--- a/xfa/fwl/core/cfwl_combobox.cpp |
+++ b/xfa/fwl/core/cfwl_combobox.cpp |
@@ -24,7 +24,8 @@ const IFWL_ComboBox* ToComboBox(const IFWL_Widget* widget) { |
} // namespace |
-CFWL_ComboBox::CFWL_ComboBox(const IFWL_App* app) : CFWL_Widget(app) {} |
+CFWL_ComboBox::CFWL_ComboBox(const IFWL_App* app) |
+ : CFWL_Widget(app), m_fMaxListHeight(0), m_fItemHeight(0) {} |
CFWL_ComboBox::~CFWL_ComboBox() {} |
@@ -32,7 +33,7 @@ void CFWL_ComboBox::Initialize() { |
ASSERT(!m_pIface); |
m_pIface = pdfium::MakeUnique<IFWL_ComboBox>( |
- m_pApp, pdfium::MakeUnique<CFWL_WidgetProperties>(&m_comboBoxData)); |
+ m_pApp, pdfium::MakeUnique<CFWL_WidgetProperties>(this)); |
CFWL_Widget::Initialize(); |
} |
@@ -41,8 +42,8 @@ int32_t CFWL_ComboBox::AddString(const CFX_WideStringC& wsText) { |
std::unique_ptr<CFWL_ComboBoxItem> pItem(new CFWL_ComboBoxItem); |
pItem->m_wsText = wsText; |
pItem->m_dwStyles = 0; |
- m_comboBoxData.m_ItemArray.push_back(std::move(pItem)); |
- return m_comboBoxData.m_ItemArray.size() - 1; |
+ m_ItemArray.push_back(std::move(pItem)); |
+ return m_ItemArray.size() - 1; |
} |
int32_t CFWL_ComboBox::AddString(const CFX_WideStringC& wsText, |
@@ -51,31 +52,30 @@ int32_t CFWL_ComboBox::AddString(const CFX_WideStringC& wsText, |
pItem->m_wsText = wsText; |
pItem->m_dwStyles = 0; |
pItem->m_pDIB = pIcon; |
- m_comboBoxData.m_ItemArray.push_back(std::move(pItem)); |
- return m_comboBoxData.m_ItemArray.size() - 1; |
+ m_ItemArray.push_back(std::move(pItem)); |
+ return m_ItemArray.size() - 1; |
} |
bool CFWL_ComboBox::RemoveAt(int32_t iIndex) { |
- if (iIndex < 0 || |
- static_cast<size_t>(iIndex) >= m_comboBoxData.m_ItemArray.size()) { |
+ if (iIndex < 0 || static_cast<size_t>(iIndex) >= m_ItemArray.size()) { |
return false; |
} |
- m_comboBoxData.m_ItemArray.erase(m_comboBoxData.m_ItemArray.begin() + iIndex); |
+ m_ItemArray.erase(m_ItemArray.begin() + iIndex); |
return true; |
} |
void CFWL_ComboBox::RemoveAll() { |
- m_comboBoxData.m_ItemArray.clear(); |
+ m_ItemArray.clear(); |
} |
int32_t CFWL_ComboBox::CountItems() { |
- return m_comboBoxData.CountItems(GetWidget()); |
+ return CountItems(GetWidget()); |
} |
FWL_Error CFWL_ComboBox::GetTextByIndex(int32_t iIndex, |
CFX_WideString& wsText) { |
- CFWL_ComboBoxItem* pItem = static_cast<CFWL_ComboBoxItem*>( |
- m_comboBoxData.GetItem(m_pIface.get(), iIndex)); |
+ CFWL_ComboBoxItem* pItem = |
+ static_cast<CFWL_ComboBoxItem*>(GetItem(m_pIface.get(), iIndex)); |
if (!pItem) |
return FWL_Error::Indefinite; |
wsText = pItem->m_wsText; |
@@ -141,13 +141,13 @@ bool CFWL_ComboBox::EditUndo(const IFDE_TxtEdtDoRecord* pRecord) { |
} |
FWL_Error CFWL_ComboBox::SetMaxListHeight(FX_FLOAT fMaxHeight) { |
- m_comboBoxData.m_fMaxListHeight = fMaxHeight; |
+ m_fMaxListHeight = fMaxHeight; |
return FWL_Error::Succeeded; |
} |
FWL_Error CFWL_ComboBox::SetItemData(int32_t iIndex, void* pData) { |
- CFWL_ComboBoxItem* pItem = static_cast<CFWL_ComboBoxItem*>( |
- m_comboBoxData.GetItem(m_pIface.get(), iIndex)); |
+ CFWL_ComboBoxItem* pItem = |
+ static_cast<CFWL_ComboBoxItem*>(GetItem(m_pIface.get(), iIndex)); |
if (!pItem) |
return FWL_Error::Indefinite; |
pItem->m_pData = pData; |
@@ -155,8 +155,8 @@ FWL_Error CFWL_ComboBox::SetItemData(int32_t iIndex, void* pData) { |
} |
void* CFWL_ComboBox::GetItemData(int32_t iIndex) { |
- CFWL_ComboBoxItem* pItem = static_cast<CFWL_ComboBoxItem*>( |
- m_comboBoxData.GetItem(m_pIface.get(), iIndex)); |
+ CFWL_ComboBoxItem* pItem = |
+ static_cast<CFWL_ComboBoxItem*>(GetItem(m_pIface.get(), iIndex)); |
return pItem ? pItem->m_pData : nullptr; |
} |
@@ -237,34 +237,25 @@ FWL_Error CFWL_ComboBox::EditModifyStylesEx(uint32_t dwStylesExAdded, |
: FWL_Error::Indefinite; |
} |
-CFWL_ComboBox::CFWL_ComboBoxDP::CFWL_ComboBoxDP() { |
- m_fItemHeight = 0; |
- m_fMaxListHeight = 0; |
-} |
- |
-CFWL_ComboBox::CFWL_ComboBoxDP::~CFWL_ComboBoxDP() {} |
- |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::GetCaption( |
- IFWL_Widget* pWidget, |
- CFX_WideString& wsCaption) { |
+FWL_Error CFWL_ComboBox::GetCaption(IFWL_Widget* pWidget, |
+ CFX_WideString& wsCaption) { |
return FWL_Error::Succeeded; |
} |
-int32_t CFWL_ComboBox::CFWL_ComboBoxDP::CountItems(const IFWL_Widget* pWidget) { |
+int32_t CFWL_ComboBox::CountItems(const IFWL_Widget* pWidget) { |
return m_ItemArray.size(); |
} |
-IFWL_ListItem* CFWL_ComboBox::CFWL_ComboBoxDP::GetItem( |
- const IFWL_Widget* pWidget, |
- int32_t nIndex) { |
+IFWL_ListItem* CFWL_ComboBox::GetItem(const IFWL_Widget* pWidget, |
+ int32_t nIndex) { |
if (nIndex < 0 || static_cast<size_t>(nIndex) >= m_ItemArray.size()) |
return nullptr; |
return m_ItemArray[nIndex].get(); |
} |
-int32_t CFWL_ComboBox::CFWL_ComboBoxDP::GetItemIndex(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem) { |
+int32_t CFWL_ComboBox::GetItemIndex(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem) { |
auto it = std::find_if( |
m_ItemArray.begin(), m_ItemArray.end(), |
[pItem](const std::unique_ptr<CFWL_ComboBoxItem>& candidate) { |
@@ -273,9 +264,9 @@ int32_t CFWL_ComboBox::CFWL_ComboBoxDP::GetItemIndex(IFWL_Widget* pWidget, |
return it != m_ItemArray.end() ? it - m_ItemArray.begin() : -1; |
} |
-bool CFWL_ComboBox::CFWL_ComboBoxDP::SetItemIndex(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- int32_t nIndex) { |
+bool CFWL_ComboBox::SetItemIndex(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ int32_t nIndex) { |
if (nIndex < 0 || static_cast<size_t>(nIndex) >= m_ItemArray.size()) |
return false; |
@@ -283,25 +274,25 @@ bool CFWL_ComboBox::CFWL_ComboBoxDP::SetItemIndex(IFWL_Widget* pWidget, |
return true; |
} |
-uint32_t CFWL_ComboBox::CFWL_ComboBoxDP::GetItemStyles(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem) { |
+uint32_t CFWL_ComboBox::GetItemStyles(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem) { |
if (!pItem) |
return 0; |
return static_cast<CFWL_ComboBoxItem*>(pItem)->m_dwStyles; |
} |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::GetItemText(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- CFX_WideString& wsText) { |
+FWL_Error CFWL_ComboBox::GetItemText(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ CFX_WideString& wsText) { |
if (!pItem) |
return FWL_Error::Indefinite; |
wsText = static_cast<CFWL_ComboBoxItem*>(pItem)->m_wsText; |
return FWL_Error::Succeeded; |
} |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::GetItemRect(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- CFX_RectF& rtItem) { |
+FWL_Error CFWL_ComboBox::GetItemRect(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ CFX_RectF& rtItem) { |
if (!pItem) |
return FWL_Error::Indefinite; |
CFWL_ComboBoxItem* pComboItem = static_cast<CFWL_ComboBoxItem*>(pItem); |
@@ -310,78 +301,73 @@ FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::GetItemRect(IFWL_Widget* pWidget, |
return FWL_Error::Succeeded; |
} |
-void* CFWL_ComboBox::CFWL_ComboBoxDP::GetItemData(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem) { |
+void* CFWL_ComboBox::GetItemData(IFWL_Widget* pWidget, IFWL_ListItem* pItem) { |
return pItem ? static_cast<CFWL_ComboBoxItem*>(pItem)->m_pData : nullptr; |
} |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::SetItemStyles(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- uint32_t dwStyle) { |
+FWL_Error CFWL_ComboBox::SetItemStyles(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ uint32_t dwStyle) { |
if (!pItem) |
return FWL_Error::Indefinite; |
static_cast<CFWL_ComboBoxItem*>(pItem)->m_dwStyles = dwStyle; |
return FWL_Error::Succeeded; |
} |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::SetItemText(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- const FX_WCHAR* pszText) { |
+FWL_Error CFWL_ComboBox::SetItemText(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ const FX_WCHAR* pszText) { |
if (!pItem) |
return FWL_Error::Indefinite; |
static_cast<CFWL_ComboBoxItem*>(pItem)->m_wsText = pszText; |
return FWL_Error::Succeeded; |
} |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::SetItemRect(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- const CFX_RectF& rtItem) { |
+FWL_Error CFWL_ComboBox::SetItemRect(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ const CFX_RectF& rtItem) { |
if (!pItem) |
return FWL_Error::Indefinite; |
static_cast<CFWL_ComboBoxItem*>(pItem)->m_rtItem = rtItem; |
return FWL_Error::Succeeded; |
} |
-FX_FLOAT CFWL_ComboBox::CFWL_ComboBoxDP::GetItemHeight(IFWL_Widget* pWidget) { |
+FX_FLOAT CFWL_ComboBox::GetItemHeight(IFWL_Widget* pWidget) { |
return m_fItemHeight; |
} |
-CFX_DIBitmap* CFWL_ComboBox::CFWL_ComboBoxDP::GetItemIcon( |
- IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem) { |
+CFX_DIBitmap* CFWL_ComboBox::GetItemIcon(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem) { |
return pItem ? static_cast<CFWL_ComboBoxItem*>(pItem)->m_pDIB : nullptr; |
} |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::GetItemCheckRect(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- CFX_RectF& rtCheck) { |
+FWL_Error CFWL_ComboBox::GetItemCheckRect(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ CFX_RectF& rtCheck) { |
rtCheck = static_cast<CFWL_ComboBoxItem*>(pItem)->m_rtCheckBox; |
return FWL_Error::Succeeded; |
} |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::SetItemCheckRect( |
- IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- const CFX_RectF& rtCheck) { |
+FWL_Error CFWL_ComboBox::SetItemCheckRect(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ const CFX_RectF& rtCheck) { |
static_cast<CFWL_ComboBoxItem*>(pItem)->m_rtCheckBox = rtCheck; |
return FWL_Error::Succeeded; |
} |
-uint32_t CFWL_ComboBox::CFWL_ComboBoxDP::GetItemCheckState( |
- IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem) { |
+uint32_t CFWL_ComboBox::GetItemCheckState(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem) { |
return static_cast<CFWL_ComboBoxItem*>(pItem)->m_dwCheckState; |
} |
-FWL_Error CFWL_ComboBox::CFWL_ComboBoxDP::SetItemCheckState( |
- IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- uint32_t dwCheckState) { |
+FWL_Error CFWL_ComboBox::SetItemCheckState(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ uint32_t dwCheckState) { |
static_cast<CFWL_ComboBoxItem*>(pItem)->m_dwCheckState = dwCheckState; |
return FWL_Error::Succeeded; |
} |
-FX_FLOAT CFWL_ComboBox::CFWL_ComboBoxDP::GetListHeight(IFWL_Widget* pWidget) { |
+FX_FLOAT CFWL_ComboBox::GetListHeight(IFWL_Widget* pWidget) { |
return m_fMaxListHeight; |
} |