Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
ifwl_themeprovider.h
Go to the documentation of this file.
1// Copyright 2014 The PDFium Authors
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7#ifndef XFA_FWL_IFWL_THEMEPROVIDER_H_
8#define XFA_FWL_IFWL_THEMEPROVIDER_H_
9
10#include "core/fxcrt/fx_coordinates.h"
11#include "core/fxcrt/retain_ptr.h"
12#include "core/fxge/dib/fx_dib.h"
13#include "fxjs/gc/heap.h"
14#include "v8/include/cppgc/garbage-collected.h"
15#include "v8/include/cppgc/member.h"
16
17class CFGAS_GEFont;
18class CFWL_ThemeBackground;
19class CFWL_ThemePart;
20class CFWL_ThemeText;
21class CFWL_Widget;
22class CFWL_WidgetTP;
23
25 public:
27
28 // GarbageCollectedMixin:
29 void Trace(cppgc::Visitor* visitor) const override;
30
31 virtual void DrawBackground(const CFWL_ThemeBackground& pParams) = 0;
32 virtual void DrawText(const CFWL_ThemeText& pParams) = 0;
33 virtual void CalcTextRect(const CFWL_ThemeText& pParams,
34 CFX_RectF* pRect) = 0;
35 virtual float GetCXBorderSize() const = 0;
36 virtual float GetCYBorderSize() const = 0;
37 virtual CFX_RectF GetUIMargin(const CFWL_ThemePart& pThemePart) const = 0;
38 virtual float GetFontSize(const CFWL_ThemePart& pThemePart) const = 0;
39 virtual RetainPtr<CFGAS_GEFont> GetFont(const CFWL_ThemePart& pThemePart) = 0;
40 virtual RetainPtr<CFGAS_GEFont> GetFWLFont() = 0;
41 virtual float GetLineHeight(const CFWL_ThemePart& pThemePart) const = 0;
42 virtual float GetScrollBarWidth() const = 0;
43 virtual FX_COLORREF GetTextColor(const CFWL_ThemePart& pThemePart) const = 0;
44 virtual CFX_SizeF GetSpaceAboveBelow(
45 const CFWL_ThemePart& pThemePart) const = 0;
46
47 protected:
48 explicit IFWL_ThemeProvider(cppgc::Heap* pHeap);
49
50 CFWL_WidgetTP* GetTheme(const CFWL_Widget* pWidget) const;
51
52 private:
53 cppgc::Member<CFWL_WidgetTP> m_pCheckBoxTP;
54 cppgc::Member<CFWL_WidgetTP> m_pListBoxTP;
55 cppgc::Member<CFWL_WidgetTP> m_pPictureBoxTP;
56 cppgc::Member<CFWL_WidgetTP> m_pSrollBarTP;
57 cppgc::Member<CFWL_WidgetTP> m_pEditTP;
58 cppgc::Member<CFWL_WidgetTP> m_pComboBoxTP;
59 cppgc::Member<CFWL_WidgetTP> m_pMonthCalendarTP;
60 cppgc::Member<CFWL_WidgetTP> m_pDateTimePickerTP;
61 cppgc::Member<CFWL_WidgetTP> m_pPushButtonTP;
62 cppgc::Member<CFWL_WidgetTP> m_pCaretTP;
63 cppgc::Member<CFWL_WidgetTP> m_pBarcodeTP;
64};
65
66#endif // XFA_FWL_IFWL_THEMEPROVIDER_H_
BC_TEXT_LOC
Definition BC_Library.h:12
BC_TYPE
Definition BC_Library.h:25
BC_CHAR_ENCODING
Definition BC_Library.h:20
#define FWL_STYLEEXT_SCB_Vert
CFWL_PartState
FWL_Type
Definition cfwl_widget.h:46
#define FWL_STATE_WGT_Focused
Definition cfwl_widget.h:42
void SetDataLength(int32_t dataLength)
FWL_Type GetClassID() const override
void SetType(BC_TYPE type)
void SetCalChecksum(bool calChecksum)
void SetWideNarrowRatio(int8_t ratio)
~CFWL_Barcode() override
void OnProcessEvent(CFWL_Event *pEvent) override
void Update() override
void DrawWidget(CFGAS_GEGraphics *pGraphics, const CFX_Matrix &matrix) override
void SetPrintChecksum(bool printChecksum)
void SetTextLocation(BC_TEXT_LOC location)
void SetStartChar(char startChar)
void SetText(const WideString &wsText) override
void SetEndChar(char endChar)
void SetModuleHeight(int32_t height)
void SetErrorCorrectionLevel(int32_t ecLevel)
void SetTextSkipNotify(const WideString &wsText) override
void SetModuleWidth(int32_t width)
bool IsProtectedType() const
void SetCharEncoding(BC_CHAR_ENCODING encoding)
bool CanUndo()
CFX_RectF GetAutosizedWidgetRect() override
Definition cfwl_edit.cpp:89
void OnTextChanged() override
CFX_RectF GetWidgetRect() override
Definition cfwl_edit.cpp:77
virtual void SetText(const WideString &wsText)
void SetLimit(int32_t nLimit)
const CFX_RectF & GetRTClient() const
Definition cfwl_edit.h:105
void OnProcessMessage(CFWL_Message *pMessage) override
bool Redo()
void ClearSelection()
void OnCaretChanged() override
void DrawWidget(CFGAS_GEGraphics *pGraphics, const CFX_Matrix &matrix) override
size_t GetTextLength() const
CFDE_TextEditEngine * GetTxtEdtEngine()
Definition cfwl_edit.h:106
void Trace(cppgc::Visitor *visitor) const override
Definition cfwl_edit.cpp:67
void SetScrollOffset(float fScrollOffset) override
CFWL_Edit(CFWL_App *app, const Properties &properties, CFWL_Widget *pOuter)
Definition cfwl_edit.cpp:50
void Update() override
~CFWL_Edit() override
int32_t GetLimit() const
FWL_WidgetHit HitTest(const CFX_PointF &point) override
bool OnValidate(const WideString &wsText) override
void SetAliasChar(wchar_t wAlias)
bool Undo()
bool Paste(const WideString &wsPaste)
void OnTextWillChange(CFDE_TextEditEngine::TextChange *change) override
absl::optional< WideString > Cut()
WideString GetText() const
FWL_Type GetClassID() const override
Definition cfwl_edit.cpp:73
void PreFinalize() override
Definition cfwl_edit.cpp:60
bool CanRedo()
void SelectAll()
void ShowCaret(CFX_RectF *pRect)
void OnProcessEvent(CFWL_Event *pEvent) override
absl::optional< WideString > Copy()
void ClearText()
void OnDrawWidget(CFGAS_GEGraphics *pGraphics, const CFX_Matrix &matrix) override
void SetStates(uint32_t dwStates) override
void HideCaret(CFX_RectF *pRect)
bool HasSelection() const
void OnSelChanged() override
void NotifyTextFull() override
std::pair< size_t, size_t > GetSelection() const
virtual void SetTextSkipNotify(const WideString &wsText)
float GetPos() const
~CFWL_EventScroll() override
CFWL_EventScroll(CFWL_Widget *pSrcTarget, Code code, float pos)
Code GetScrollCode() const
CFWL_Widget * GetDstTarget() const
Definition cfwl_event.h:41
Type GetType() const
Definition cfwl_event.h:39
CFWL_Event(Type type)
CFWL_Event(Type type, CFWL_Widget *pSrcTarget)
CFWL_Widget * GetSrcTarget() const
Definition cfwl_event.h:40
CFWL_Event(Type type, CFWL_Widget *pSrcTarget, CFWL_Widget *pDstTarget)
virtual ~CFWL_Event()
void OnDrawWidget(CFGAS_GEGraphics *pGraphics, const CFX_Matrix &matrix) override
float GetPos() const
void SetStepSize(float fStepSize)
float GetStepSize() const
void OnTimerFired() override
void GetRange(float *fMin, float *fMax) const
void OnProcessMessage(CFWL_Message *pMessage) override
void Update() override
FWL_Type GetClassID() const override
~CFWL_ScrollBar() override
void SetPos(float fPos)
void DrawWidget(CFGAS_GEGraphics *pGraphics, const CFX_Matrix &matrix) override
float GetPageSize() const
void SetPageSize(float fPageSize)
void SetRange(float fMin, float fMax)
void SetTrackPos(float fTrackPos)
uint32_t GetStyleExts() const
Properties m_Properties
IFWL_ThemeProvider * GetThemeProvider() const
bool IsLocked() const
void Concat(const CFX_Matrix &right)
virtual void DrawBackground(const CFWL_ThemeBackground &pParams)=0
virtual float GetLineHeight(const CFWL_ThemePart &pThemePart) const =0
CFWL_WidgetTP * GetTheme(const CFWL_Widget *pWidget) const
virtual RetainPtr< CFGAS_GEFont > GetFont(const CFWL_ThemePart &pThemePart)=0
IFWL_ThemeProvider(cppgc::Heap *pHeap)
virtual CFX_SizeF GetSpaceAboveBelow(const CFWL_ThemePart &pThemePart) const =0
virtual void DrawText(const CFWL_ThemeText &pParams)=0
virtual ~IFWL_ThemeProvider()
virtual FX_COLORREF GetTextColor(const CFWL_ThemePart &pThemePart) const =0
virtual float GetFontSize(const CFWL_ThemePart &pThemePart) const =0
virtual float GetCXBorderSize() const =0
virtual CFX_RectF GetUIMargin(const CFWL_ThemePart &pThemePart) const =0
virtual RetainPtr< CFGAS_GEFont > GetFWLFont()=0
void Trace(cppgc::Visitor *visitor) const override
virtual float GetCYBorderSize() const =0
virtual float GetScrollBarWidth() const =0
virtual void CalcTextRect(const CFWL_ThemeText &pParams, CFX_RectF *pRect)=0
FWL_WidgetHit
#define CONSTRUCT_VIA_MAKE_GARBAGE_COLLECTED
Definition heap.h:32
Definition heap.h:12