Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
cfx_graphstate.cpp
Go to the documentation of this file.
1
// Copyright 2016 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
#
include
"core/fxge/cfx_graphstate.h"
8
9
#
include
<
utility
>
10
11
CFX_GraphState
::
CFX_GraphState
() =
default
;
12
13
CFX_GraphState
::
CFX_GraphState
(
const
CFX_GraphState
& that) =
default
;
14
15
CFX_GraphState
::~
CFX_GraphState
() =
default
;
16
17
void
CFX_GraphState
::
Emplace
() {
18
m_Ref.Emplace();
19
}
20
21
void
CFX_GraphState
::
SetLineDash
(std::vector<
float
> dashes,
22
float
phase,
23
float
scale) {
24
CFX_GraphStateData
* pData = m_Ref.GetPrivateCopy();
25
pData
->
m_DashPhase
= phase * scale;
26
for
(
float
& val : dashes)
27
val *= scale;
28
pData->m_DashArray =
std
::move(dashes);
29
}
30
31
void
CFX_GraphState
::
SetLineDashPhase
(
float
phase) {
32
CFX_GraphStateData
* pData = m_Ref.GetPrivateCopy();
33
pData
->
m_DashPhase
= phase;
34
}
35
36
std
::
vector
<
float
>
CFX_GraphState
::
GetLineDashArray
()
const
{
37
std::vector<
float
> ret;
38
39
if
(m_Ref.GetObject())
40
ret = m_Ref.GetObject()->m_DashArray;
41
42
return
ret;
43
}
44
45
size_t
CFX_GraphState
::
GetLineDashSize
()
const
{
46
return
m_Ref.GetObject() ? m_Ref.GetObject()->m_DashArray.size() : 0;
47
}
48
49
float
CFX_GraphState
::
GetLineDashPhase
()
const
{
50
return
m_Ref.GetObject() ? m_Ref.GetObject()->m_DashPhase : 1.0f;
51
}
52
53
float
CFX_GraphState
::
GetLineWidth
()
const
{
54
return
m_Ref.GetObject() ? m_Ref.GetObject()->m_LineWidth : 1.0f;
55
}
56
57
void
CFX_GraphState
::
SetLineWidth
(
float
width) {
58
m_Ref.GetPrivateCopy()->m_LineWidth = width;
59
}
60
61
CFX_GraphStateData
::
LineCap
CFX_GraphState
::
GetLineCap
()
const
{
62
return
m_Ref.GetObject() ? m_Ref.GetObject()->m_LineCap
63
: CFX_GraphStateData::LineCap::kButt;
64
}
65
void
CFX_GraphState
::
SetLineCap
(
CFX_GraphStateData
::
LineCap
cap) {
66
m_Ref.GetPrivateCopy()->m_LineCap = cap;
67
}
68
69
CFX_GraphStateData
::
LineJoin
CFX_GraphState
::
GetLineJoin
()
const
{
70
return
m_Ref.GetObject() ? m_Ref.GetObject()->m_LineJoin
71
: CFX_GraphStateData::LineJoin::kMiter;
72
}
73
74
void
CFX_GraphState
::
SetLineJoin
(
CFX_GraphStateData
::
LineJoin
join) {
75
m_Ref.GetPrivateCopy()->m_LineJoin = join;
76
}
77
78
float
CFX_GraphState
::
GetMiterLimit
()
const
{
79
return
m_Ref.GetObject() ? m_Ref.GetObject()->m_MiterLimit : 10.f;
80
}
81
82
void
CFX_GraphState
::
SetMiterLimit
(
float
limit) {
83
m_Ref.GetPrivateCopy()->m_MiterLimit = limit;
84
}
CFX_GraphStateData
Definition
cfx_graphstatedata.h:16
CFX_GraphStateData::LineCap
LineCap
Definition
cfx_graphstatedata.h:18
CFX_GraphStateData::m_DashPhase
float m_DashPhase
Definition
cfx_graphstatedata.h:32
CFX_GraphStateData::LineJoin
LineJoin
Definition
cfx_graphstatedata.h:20
CFX_GraphState
Definition
cfx_graphstate.h:17
CFX_GraphState::~CFX_GraphState
~CFX_GraphState()
CFX_GraphState::GetLineDashPhase
float GetLineDashPhase() const
Definition
cfx_graphstate.cpp:49
CFX_GraphState::CFX_GraphState
CFX_GraphState()
CFX_GraphState::SetLineWidth
void SetLineWidth(float width)
Definition
cfx_graphstate.cpp:57
CFX_GraphState::CFX_GraphState
CFX_GraphState(const CFX_GraphState &that)
CFX_GraphState::GetLineDashArray
std::vector< float > GetLineDashArray() const
Definition
cfx_graphstate.cpp:36
CFX_GraphState::SetMiterLimit
void SetMiterLimit(float limit)
Definition
cfx_graphstate.cpp:82
CFX_GraphState::SetLineJoin
void SetLineJoin(CFX_GraphStateData::LineJoin join)
Definition
cfx_graphstate.cpp:74
CFX_GraphState::Emplace
void Emplace()
Definition
cfx_graphstate.cpp:17
CFX_GraphState::GetMiterLimit
float GetMiterLimit() const
Definition
cfx_graphstate.cpp:78
CFX_GraphState::SetLineDashPhase
void SetLineDashPhase(float phase)
Definition
cfx_graphstate.cpp:31
CFX_GraphState::SetLineDash
void SetLineDash(std::vector< float > dashes, float phase, float scale)
Definition
cfx_graphstate.cpp:21
CFX_GraphState::GetLineWidth
float GetLineWidth() const
Definition
cfx_graphstate.cpp:53
CFX_GraphState::GetLineCap
CFX_GraphStateData::LineCap GetLineCap() const
Definition
cfx_graphstate.cpp:61
CFX_GraphState::GetLineDashSize
size_t GetLineDashSize() const
Definition
cfx_graphstate.cpp:45
CFX_GraphState::GetLineJoin
CFX_GraphStateData::LineJoin GetLineJoin() const
Definition
cfx_graphstate.cpp:69
CFX_GraphState::SetLineCap
void SetLineCap(CFX_GraphStateData::LineCap cap)
Definition
cfx_graphstate.cpp:65
std
[33]
Definition
src_corelib_tools_qhash.cpp:421
qtwebengine
src
3rdparty
chromium
third_party
pdfium
core
fxge
cfx_graphstate.cpp
Generated on
for Qt by
1.18.0