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
cfwl_scrollbartp.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_THEME_CFWL_SCROLLBARTP_H_
8#define XFA_FWL_THEME_CFWL_SCROLLBARTP_H_
9
10#include <array>
11#include <memory>
12
13#include "fxjs/gc/heap.h"
14#include "xfa/fwl/theme/cfwl_widgettp.h"
15
16namespace pdfium {
17
18class CFWL_ScrollBarTP final : public CFWL_WidgetTP {
19 public:
21 ~CFWL_ScrollBarTP() override;
22
23 // CFWL_WidgetTP:
24 void DrawBackground(const CFWL_ThemeBackground& pParams) override;
25
26 private:
27 struct SBThemeData {
28 FX_ARGB clrTrackBKStart;
29 FX_ARGB clrTrackBKEnd;
30 std::array<FX_ARGB, 4> clrBtnBK;
31 std::array<FX_ARGB, 4> clrBtnBorder;
32 };
33
34 CFWL_ScrollBarTP();
35
36 void DrawThumbBtn(CFGAS_GEGraphics* pGraphics,
37 const CFX_RectF& rect,
38 bool bVert,
39 FWLTHEME_STATE eState,
40 const CFX_Matrix& matrix);
41 void DrawTrack(CFGAS_GEGraphics* pGraphics,
42 const CFX_RectF& rect,
43 bool bVert,
44 FWLTHEME_STATE eState,
45 bool bLowerTrack,
46 const CFX_Matrix& matrix);
47 void DrawMaxMinBtn(CFGAS_GEGraphics* pGraphics,
48 const CFX_RectF& rect,
50 FWLTHEME_STATE eState,
51 const CFX_Matrix& matrix);
52 void SetThemeData();
53
54 std::unique_ptr<SBThemeData> const m_pThemeData;
55};
56
57} // namespace pdfium
58
59// TODO(crbug.com/42271761): Remove.
60using pdfium::CFWL_ScrollBarTP;
61
62#endif // XFA_FWL_THEME_CFWL_SCROLLBARTP_H_
~CFWL_BarcodeTP() override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
~CFWL_CaretTP() override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
void DrawText(const CFWL_ThemeText &pParams) override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
~CFWL_EditTP() override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
~CFWL_ListBoxTP() override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
void DrawText(const CFWL_ThemeText &pParams) override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
void DrawBackground(const CFWL_ThemeBackground &pParams) override
void FillBackground(CFGAS_GEGraphics *pGraphics, const CFX_RectF &rect, const CFX_Matrix &matrix)
virtual void DrawBackground(const CFWL_ThemeBackground &pParams)
void DrawFocus(CFGAS_GEGraphics *pGraphics, const CFX_RectF &rect, const CFX_Matrix &matrix)
void EnsureTTOInitialized(IFWL_ThemeProvider *pProvider)
void DrawBtn(CFGAS_GEGraphics *pGraphics, const CFX_RectF &rect, FWLTHEME_STATE eState, const CFX_Matrix &matrix)
std::unique_ptr< CColorData > m_pColorData
virtual void DrawText(const CFWL_ThemeText &pParams)
std::unique_ptr< CFDE_TextOut > m_pTextOut
void DrawBorder(CFGAS_GEGraphics *pGraphics, const CFX_RectF &rect, const CFX_Matrix &matrix)
void Trace(cppgc::Visitor *visitor) const
void DrawArrowBtn(CFGAS_GEGraphics *pGraphics, const CFX_RectF &rect, FWLTHEME_DIRECTION eDict, FWLTHEME_STATE eState, const CFX_Matrix &matrix)
void FillSolidRect(CFGAS_GEGraphics *pGraphics, FX_ARGB fillColor, const CFX_RectF &rect, const CFX_Matrix &matrix)
void DrawArrow(CFGAS_GEGraphics *pGraphics, const CFX_RectF &rect, FWLTHEME_DIRECTION eDict, FX_ARGB argSign, const CFX_Matrix &matrix)
virtual FWL_Type GetClassID() const =0
CFWL_WidgetTP * GetTheme(const CFWL_Widget *pWidget) const
void Trace(cppgc::Visitor *visitor) const override
IFWL_ThemeProvider(cppgc::Heap *pHeap)
uint32_t FX_ARGB
Definition fx_dib.h:36
#define CONSTRUCT_VIA_MAKE_GARBAGE_COLLECTED
Definition heap.h:32
Definition heap.h:12
FWLTHEME_DIRECTION
Definition cfwl_utils.h:19
FWLTHEME_STATE
Definition cfwl_utils.h:17
std::array< FX_ARGB, 4 > clrStart
std::array< FX_ARGB, 4 > clrBorder
std::array< FX_ARGB, 4 > clrSign
std::array< FX_ARGB, 4 > clrEnd