diff options
author | dsinclair <dsinclair@chromium.org> | 2016-11-07 10:28:47 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-11-07 10:28:47 -0800 |
commit | eb3f68cc7f25a1e28464eb251161b8f08fcd04bc (patch) | |
tree | 36e565bac1a7760e605b181b7da4c08bda151cdd /xfa/fwl/core/cfwl_listbox.h | |
parent | a97fc7c6392c0adbd702bdf898cb9e20cee00a3e (diff) | |
download | pdfium-eb3f68cc7f25a1e28464eb251161b8f08fcd04bc.tar.xz |
Fold DataProviders into parent classes
This CL removes the data provider classes and folds the code into the parent
classes.
Review-Url: https://codereview.chromium.org/2480233003
Diffstat (limited to 'xfa/fwl/core/cfwl_listbox.h')
-rw-r--r-- | xfa/fwl/core/cfwl_listbox.h | 130 |
1 files changed, 60 insertions, 70 deletions
diff --git a/xfa/fwl/core/cfwl_listbox.h b/xfa/fwl/core/cfwl_listbox.h index cb77f90a63..d91ddff328 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_ |