Index: xfa/fwl/core/cfwl_widget.h |
diff --git a/xfa/fwl/core/cfwl_widget.h b/xfa/fwl/core/cfwl_widget.h |
deleted file mode 100644 |
index 15acbf53c0dd78dc0c4906f654bf053928aa655c..0000000000000000000000000000000000000000 |
--- a/xfa/fwl/core/cfwl_widget.h |
+++ /dev/null |
@@ -1,196 +0,0 @@ |
-// Copyright 2014 PDFium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
- |
-#ifndef XFA_FWL_CORE_CFWL_WIDGET_H_ |
-#define XFA_FWL_CORE_CFWL_WIDGET_H_ |
-#include <memory> |
- |
-#include "core/fxcrt/fx_coordinates.h" |
-#include "core/fxcrt/fx_system.h" |
-#include "xfa/fwl/core/cfwl_event.h" |
-#include "xfa/fwl/core/cfwl_themepart.h" |
-#include "xfa/fwl/core/cfwl_widgetmgr.h" |
-#include "xfa/fwl/core/fwl_widgethit.h" |
-#include "xfa/fwl/core/ifwl_widgetdelegate.h" |
-#include "xfa/fwl/theme/cfwl_widgettp.h" |
- |
-enum class FWL_Type { |
- Unknown = 0, |
- |
- Barcode, |
- Caret, |
- CheckBox, |
- ComboBox, |
- DateTimePicker, |
- Edit, |
- Form, |
- FormProxy, |
- ListBox, |
- MonthCalendar, |
- PictureBox, |
- PushButton, |
- ScrollBar, |
- SpinButton, |
- ToolTip |
-}; |
- |
-class CFWL_App; |
-class CFWL_AppImp; |
-class CFWL_MsgKey; |
-class CFWL_Widget; |
-class CFWL_WidgetMgr; |
-class CFWL_WidgetProperties; |
-class IFWL_ThemeProvider; |
- |
-class CFWL_Widget : public IFWL_WidgetDelegate { |
- public: |
- ~CFWL_Widget() override; |
- |
- virtual FWL_Type GetClassID() const = 0; |
- virtual bool IsInstance(const CFX_WideStringC& wsClass) const; |
- virtual CFX_RectF GetAutosizedWidgetRect(); |
- virtual CFX_RectF GetWidgetRect(); |
- virtual void GetClientRect(CFX_RectF& rect); |
- virtual void ModifyStylesEx(uint32_t dwStylesExAdded, |
- uint32_t dwStylesExRemoved); |
- virtual void SetStates(uint32_t dwStates); |
- virtual void RemoveStates(uint32_t dwStates); |
- virtual void Update() = 0; |
- virtual FWL_WidgetHit HitTest(FX_FLOAT fx, FX_FLOAT fy); |
- virtual void DrawWidget(CFX_Graphics* pGraphics, |
- const CFX_Matrix* pMatrix) = 0; |
- virtual void SetThemeProvider(IFWL_ThemeProvider* pThemeProvider); |
- |
- // IFWL_WidgetDelegate. |
- void OnProcessMessage(CFWL_Message* pMessage) override; |
- void OnProcessEvent(CFWL_Event* pEvent) override; |
- void OnDrawWidget(CFX_Graphics* pGraphics, |
- const CFX_Matrix* pMatrix) override; |
- |
- void InflateWidgetRect(CFX_RectF& rect); |
- void SetWidgetRect(const CFX_RectF& rect); |
- |
- void SetParent(CFWL_Widget* pParent); |
- |
- CFWL_Widget* GetOwner() { return m_pWidgetMgr->GetOwnerWidget(this); } |
- CFWL_Widget* GetOuter() const { return m_pOuter; } |
- |
- uint32_t GetStyles() const; |
- void ModifyStyles(uint32_t dwStylesAdded, uint32_t dwStylesRemoved); |
- uint32_t GetStylesEx() const; |
- uint32_t GetStates() const; |
- |
- void LockUpdate() { m_iLock++; } |
- void UnlockUpdate() { |
- if (IsLocked()) |
- m_iLock--; |
- } |
- |
- void TransformTo(CFWL_Widget* pWidget, FX_FLOAT& fx, FX_FLOAT& fy); |
- void GetMatrix(CFX_Matrix& matrix, bool bGlobal); |
- IFWL_ThemeProvider* GetThemeProvider() const; |
- |
- void SetDelegate(IFWL_WidgetDelegate* delegate) { m_pDelegate = delegate; } |
- IFWL_WidgetDelegate* GetDelegate() { |
- return m_pDelegate ? m_pDelegate : this; |
- } |
- const IFWL_WidgetDelegate* GetDelegate() const { |
- return m_pDelegate ? m_pDelegate : this; |
- } |
- |
- const CFWL_App* GetOwnerApp() const { return m_pOwnerApp; } |
- uint32_t GetEventKey() const { return m_nEventKey; } |
- void SetEventKey(uint32_t key) { m_nEventKey = key; } |
- |
- void* GetLayoutItem() const { return m_pLayoutItem; } |
- void SetLayoutItem(void* pItem) { m_pLayoutItem = pItem; } |
- |
- void SetFocus(bool bFocus); |
- void Repaint(const CFX_RectF* pRect); |
- |
- protected: |
- CFWL_Widget(const CFWL_App* app, |
- std::unique_ptr<CFWL_WidgetProperties> properties, |
- CFWL_Widget* pOuter); |
- |
- bool IsEnabled() const; |
- bool IsActive() const; |
- bool IsLocked() const { return m_iLock > 0; } |
- bool HasBorder() const; |
- bool HasEdge() const; |
- void GetEdgeRect(CFX_RectF& rtEdge); |
- FX_FLOAT GetBorderSize(bool bCX); |
- FX_FLOAT GetEdgeWidth(); |
- void GetRelativeRect(CFX_RectF& rect); |
- void* GetThemeCapacity(CFWL_WidgetCapacity dwCapacity); |
- IFWL_ThemeProvider* GetAvailableTheme(); |
- CFX_SizeF CalcTextSize(const CFX_WideString& wsText, |
- IFWL_ThemeProvider* pTheme, |
- bool bMultiLine); |
- void CalcTextRect(const CFX_WideString& wsText, |
- IFWL_ThemeProvider* pTheme, |
- uint32_t dwTTOStyles, |
- int32_t iTTOAlign, |
- CFX_RectF& rect); |
- void SetGrab(bool bSet); |
- void GetPopupPos(FX_FLOAT fMinHeight, |
- FX_FLOAT fMaxHeight, |
- const CFX_RectF& rtAnchor, |
- CFX_RectF& rtPopup); |
- void RegisterEventTarget(CFWL_Widget* pEventSource); |
- void UnregisterEventTarget(); |
- void DispatchEvent(CFWL_Event* pEvent); |
- void DrawBorder(CFX_Graphics* pGraphics, |
- CFWL_Part iPartBorder, |
- IFWL_ThemeProvider* pTheme, |
- const CFX_Matrix* pMatrix); |
- void DrawEdge(CFX_Graphics* pGraphics, |
- CFWL_Part iPartEdge, |
- IFWL_ThemeProvider* pTheme, |
- const CFX_Matrix* pMatrix); |
- |
- const CFWL_App* const m_pOwnerApp; |
- CFWL_WidgetMgr* const m_pWidgetMgr; |
- std::unique_ptr<CFWL_WidgetProperties> m_pProperties; |
- CFWL_Widget* m_pOuter; |
- int32_t m_iLock; |
- |
- private: |
- CFWL_Widget* GetParent() { return m_pWidgetMgr->GetParentWidget(this); } |
- CFX_SizeF GetOffsetFromParent(CFWL_Widget* pParent); |
- |
- bool IsVisible() const; |
- bool IsOverLapper() const; |
- bool IsPopup() const; |
- bool IsChild() const; |
- bool IsOffscreen() const; |
- CFWL_Widget* GetRootOuter(); |
- bool GetPopupPosMenu(FX_FLOAT fMinHeight, |
- FX_FLOAT fMaxHeight, |
- const CFX_RectF& rtAnchor, |
- CFX_RectF& rtPopup); |
- bool GetPopupPosComboBox(FX_FLOAT fMinHeight, |
- FX_FLOAT fMaxHeight, |
- const CFX_RectF& rtAnchor, |
- CFX_RectF& rtPopup); |
- bool GetPopupPosGeneral(FX_FLOAT fMinHeight, |
- FX_FLOAT fMaxHeight, |
- const CFX_RectF& rtAnchor, |
- CFX_RectF& rtPopup); |
- bool GetScreenSize(FX_FLOAT& fx, FX_FLOAT& fy); |
- void DrawBackground(CFX_Graphics* pGraphics, |
- CFWL_Part iPartBk, |
- IFWL_ThemeProvider* pTheme, |
- const CFX_Matrix* pMatrix); |
- void NotifyDriver(); |
- bool IsParent(CFWL_Widget* pParent); |
- |
- void* m_pLayoutItem; |
- uint32_t m_nEventKey; |
- IFWL_WidgetDelegate* m_pDelegate; // Not owned. |
-}; |
- |
-#endif // XFA_FWL_CORE_CFWL_WIDGET_H_ |