summaryrefslogtreecommitdiff
path: root/xfa/include/fwl/lightwidget/theme.h
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/include/fwl/lightwidget/theme.h')
-rw-r--r--xfa/include/fwl/lightwidget/theme.h53
1 files changed, 28 insertions, 25 deletions
diff --git a/xfa/include/fwl/lightwidget/theme.h b/xfa/include/fwl/lightwidget/theme.h
index f5945f377d..c58f043a36 100644
--- a/xfa/include/fwl/lightwidget/theme.h
+++ b/xfa/include/fwl/lightwidget/theme.h
@@ -6,35 +6,38 @@
#ifndef _FWL_THEME_LIGHT_H
#define _FWL_THEME_LIGHT_H
-class CFWL_ThemeBackground;
-class CFWL_ThemeText;
-class CFWL_ThemePart;
+
+#include "xfa/include/fwl/core/fwl_theme.h"
+
class CFWL_WidgetTP;
class IFWL_Widget;
-class CFWL_Theme;
-class CFWL_Theme {
+
+class CFWL_Theme : public IFWL_ThemeProvider {
public:
- virtual FX_BOOL IsValidWidget(IFWL_Widget* pWidget);
- virtual FX_DWORD GetThemeID(IFWL_Widget* pWidget);
- virtual FX_DWORD SetThemeID(IFWL_Widget* pWidget,
- FX_DWORD dwThemeID,
- FX_BOOL bChildren = TRUE);
- virtual FWL_ERR GetThemeMatrix(IFWL_Widget* pWidget, CFX_Matrix& matrix);
- virtual FWL_ERR SetThemeMatrix(IFWL_Widget* pWidget,
- const CFX_Matrix& matrix);
- virtual FX_BOOL DrawBackground(CFWL_ThemeBackground* pParams);
- virtual FX_BOOL DrawText(CFWL_ThemeText* pParams);
- virtual void* GetCapacity(CFWL_ThemePart* pThemePart, FX_DWORD dwCapacity);
- virtual FX_BOOL IsCustomizedLayout(IFWL_Widget* pWidget);
- virtual FWL_ERR GetPartRect(CFWL_ThemePart* pThemePart, CFX_RectF& rtPart);
- virtual FX_BOOL IsInPart(CFWL_ThemePart* pThemePart,
- FX_FLOAT fx,
- FX_FLOAT fy);
- virtual FX_BOOL CalcTextRect(CFWL_ThemeText* pParams, CFX_RectF& rect);
- virtual FWL_ERR Initialize();
- virtual FWL_ERR Finalize();
CFWL_Theme();
- virtual ~CFWL_Theme();
+ ~CFWL_Theme() override;
+
+ // IFWL_ThemeProvider:
+ FX_BOOL IsValidWidget(IFWL_Widget* pWidget) override;
+ FX_DWORD GetThemeID(IFWL_Widget* pWidget) override;
+ FX_DWORD SetThemeID(IFWL_Widget* pWidget,
+ FX_DWORD dwThemeID,
+ FX_BOOL bChildren = TRUE) override;
+ FWL_ERR GetThemeMatrix(IFWL_Widget* pWidget, CFX_Matrix& matrix) override;
+ FWL_ERR SetThemeMatrix(IFWL_Widget* pWidget,
+ const CFX_Matrix& matrix) override;
+ FX_BOOL DrawBackground(CFWL_ThemeBackground* pParams) override;
+ FX_BOOL DrawText(CFWL_ThemeText* pParams) override;
+ void* GetCapacity(CFWL_ThemePart* pThemePart, FX_DWORD dwCapacity) override;
+ FX_BOOL IsCustomizedLayout(IFWL_Widget* pWidget) override;
+ FWL_ERR GetPartRect(CFWL_ThemePart* pThemePart, CFX_RectF& rtPart) override;
+ FX_BOOL IsInPart(CFWL_ThemePart* pThemePart,
+ FX_FLOAT fx,
+ FX_FLOAT fy) override;
+ FX_BOOL CalcTextRect(CFWL_ThemeText* pParams, CFX_RectF& rect) override;
+
+ FWL_ERR Initialize();
+ FWL_ERR Finalize();
FWL_ERR SetFont(IFWL_Widget* pWidget,
const FX_WCHAR* strFont,
FX_FLOAT fFontSize,