Index: xfa/fwl/core/cfwl_listbox.h |
diff --git a/xfa/fwl/core/cfwl_listbox.h b/xfa/fwl/core/cfwl_listbox.h |
index cb77f90a63249fca335d26b068388893e04a0550..d91ddff328dca66bf2a441b2d294df0973fcb815 100644 |
--- a/xfa/fwl/core/cfwl_listbox.h |
+++ b/xfa/fwl/core/cfwl_listbox.h |
@@ -15,9 +15,21 @@ |
#include "xfa/fwl/core/ifwl_listbox.h" |
#include "xfa/fwl/core/ifwl_widget.h" |
-class CFWL_ListItem; |
+class CFWL_ListItem : public IFWL_ListItem { |
+ public: |
+ CFWL_ListItem(); |
+ ~CFWL_ListItem(); |
-class CFWL_ListBox : public CFWL_Widget { |
+ CFX_RectF m_rtItem; |
+ uint32_t m_dwStates; |
+ CFX_WideString m_wsText; |
+ CFX_DIBitmap* m_pDIB; |
+ void* m_pData; |
+ uint32_t m_dwCheckState; |
+ CFX_RectF m_rtCheckBox; |
+}; |
+ |
+class CFWL_ListBox : public CFWL_Widget, public IFWL_ListBoxDP { |
public: |
CFWL_ListBox(const IFWL_App*); |
~CFWL_ListBox() override; |
@@ -46,75 +58,53 @@ class CFWL_ListBox : public CFWL_Widget { |
IFWL_ListItem* GetItemAtPoint(FX_FLOAT fx, FX_FLOAT fy); |
uint32_t GetItemStates(IFWL_ListItem* pItem); |
- protected: |
- class CFWL_ListBoxDP : public IFWL_ListBoxDP { |
- public: |
- CFWL_ListBoxDP(); |
- ~CFWL_ListBoxDP() override; |
- |
- // IFWL_DataProvider: |
- FWL_Error GetCaption(IFWL_Widget* pWidget, |
- CFX_WideString& wsCaption) override; |
- |
- // IFWL_ListBoxDP: |
- int32_t CountItems(const IFWL_Widget* pWidget) override; |
- IFWL_ListItem* GetItem(const IFWL_Widget* pWidget, int32_t nIndex) override; |
- int32_t GetItemIndex(IFWL_Widget* pWidget, IFWL_ListItem* pItem) override; |
- bool SetItemIndex(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- int32_t nIndex) override; |
- uint32_t GetItemStyles(IFWL_Widget* pWidget, IFWL_ListItem* pItem) override; |
- FWL_Error GetItemText(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- CFX_WideString& wsText) override; |
- FWL_Error GetItemRect(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- CFX_RectF& rtItem) override; |
- void* GetItemData(IFWL_Widget* pWidget, IFWL_ListItem* pItem) override; |
- FWL_Error SetItemStyles(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- uint32_t dwStyle) override; |
- FWL_Error SetItemText(IFWL_Widget* pWidget, |
+ // IFWL_DataProvider: |
+ FWL_Error GetCaption(IFWL_Widget* pWidget, |
+ CFX_WideString& wsCaption) override; |
+ |
+ // IFWL_ListBoxDP: |
+ int32_t CountItems(const IFWL_Widget* pWidget) override; |
+ IFWL_ListItem* GetItem(const IFWL_Widget* pWidget, int32_t nIndex) override; |
+ int32_t GetItemIndex(IFWL_Widget* pWidget, IFWL_ListItem* pItem) override; |
+ bool SetItemIndex(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ int32_t nIndex) override; |
+ uint32_t GetItemStyles(IFWL_Widget* pWidget, IFWL_ListItem* pItem) override; |
+ FWL_Error GetItemText(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ CFX_WideString& wsText) override; |
+ FWL_Error GetItemRect(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ CFX_RectF& rtItem) override; |
+ void* GetItemData(IFWL_Widget* pWidget, IFWL_ListItem* pItem) override; |
+ FWL_Error SetItemStyles(IFWL_Widget* pWidget, |
IFWL_ListItem* pItem, |
- const FX_WCHAR* pszText) override; |
- FWL_Error SetItemRect(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- const CFX_RectF& rtItem) override; |
- FX_FLOAT GetItemHeight(IFWL_Widget* pWidget) override; |
- CFX_DIBitmap* GetItemIcon(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem) override; |
- FWL_Error GetItemCheckRect(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- CFX_RectF& rtCheck) override; |
- FWL_Error SetItemCheckRect(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- const CFX_RectF& rtCheck) override; |
- uint32_t GetItemCheckState(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem) override; |
- FWL_Error SetItemCheckState(IFWL_Widget* pWidget, |
- IFWL_ListItem* pItem, |
- uint32_t dwCheckState) override; |
- |
- std::vector<std::unique_ptr<CFWL_ListItem>> m_ItemArray; |
- CFX_WideString m_wsData; |
- FX_FLOAT m_fItemHeight; |
- }; |
- |
- CFWL_ListBoxDP m_ListBoxDP; |
-}; |
- |
-class CFWL_ListItem : public IFWL_ListItem { |
- public: |
- CFWL_ListItem(); |
- ~CFWL_ListItem(); |
- |
- CFX_RectF m_rtItem; |
- uint32_t m_dwStates; |
- CFX_WideString m_wsText; |
- CFX_DIBitmap* m_pDIB; |
- void* m_pData; |
- uint32_t m_dwCheckState; |
- CFX_RectF m_rtCheckBox; |
+ uint32_t dwStyle) override; |
+ FWL_Error SetItemText(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ const FX_WCHAR* pszText) override; |
+ FWL_Error SetItemRect(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ const CFX_RectF& rtItem) override; |
+ FX_FLOAT GetItemHeight(IFWL_Widget* pWidget) override; |
+ CFX_DIBitmap* GetItemIcon(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem) override; |
+ FWL_Error GetItemCheckRect(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ CFX_RectF& rtCheck) override; |
+ FWL_Error SetItemCheckRect(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ const CFX_RectF& rtCheck) override; |
+ uint32_t GetItemCheckState(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem) override; |
+ FWL_Error SetItemCheckState(IFWL_Widget* pWidget, |
+ IFWL_ListItem* pItem, |
+ uint32_t dwCheckState) override; |
+ |
+ private: |
+ std::vector<std::unique_ptr<CFWL_ListItem>> m_ItemArray; |
+ CFX_WideString m_wsData; |
+ FX_FLOAT m_fItemHeight; |
}; |
#endif // XFA_FWL_CORE_CFWL_LISTBOX_H_ |