7#ifndef XFA_FXFA_CXFA_FWLTHEME_H_
8#define XFA_FXFA_CXFA_FWLTHEME_H_
12#include "core/fxcrt/retain_ptr.h"
13#include "core/fxcrt/widestring.h"
14#include "fxjs/gc/heap.h"
15#include "v8/include/cppgc/garbage-collected.h"
16#include "v8/include/cppgc/member.h"
17#include "v8/include/cppgc/prefinalizer.h"
18#include "xfa/fwl/ifwl_themeprovider.h"
27class CXFA_FWLTheme
final :
public cppgc::GarbageCollected<CXFA_FWLTheme>,
29 CPPGC_USING_PRE_FINALIZER(CXFA_FWLTheme, PreFinalize);
38 void Trace(cppgc::Visitor* visitor)
const override;
40 void DrawText(
const CFWL_ThemeText& pParams)
override;
56 CXFA_FWLTheme(
cppgc::Heap* pHeap, CXFA_FFApp* pApp);
58 std::unique_ptr<CFDE_TextOut> m_pTextOut;
61 cppgc::Member<CXFA_FFApp>
const m_pApp;
69using pdfium::CXFA_FWLTheme;
void Trace(cppgc::Visitor *visitor) const override
bool LoadFWLTheme(CXFA_FFDoc *doc)
CFX_Timer::HandlerIface * GetTimerHandler() override
CFWL_WidgetMgr::AdapterIface * GetWidgetMgrAdapter() override
pdfium::IFWL_ThemeProvider * GetThemeProvider() override
cppgc::Heap * GetHeap() override
~CXFA_FWLTheme() override
CFX_SizeF GetSpaceAboveBelow(const CFWL_ThemePart &pThemePart) const override
float GetCYBorderSize() const override
RetainPtr< CFGAS_GEFont > GetFont(const CFWL_ThemePart &pThemePart) override
float GetScrollBarWidth() const override
CFX_RectF GetUIMargin(const CFWL_ThemePart &pThemePart) const override
void CalcTextRect(const CFWL_ThemeText &pParams, CFX_RectF *pRect) override
bool LoadCalendarFont(CXFA_FFDoc *doc)
float GetFontSize(const CFWL_ThemePart &pThemePart) const override
RetainPtr< CFGAS_GEFont > GetFWLFont() override
void DrawText(const CFWL_ThemeText &pParams) override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
FX_COLORREF GetTextColor(const CFWL_ThemePart &pThemePart) const override
float GetCXBorderSize() const override
float GetLineHeight(const CFWL_ThemePart &pThemePart) const override
void Trace(cppgc::Visitor *visitor) const override
CFX_STemplate< float > CFX_SizeF
#define CONSTRUCT_VIA_MAKE_GARBAGE_COLLECTED
fxcrt::WideString WideString