KD Reports API Documentation
2.2
Loading...
Searching...
No Matches
source
src
KDReports
KDReportsHLineElement.cpp
Go to the documentation of this file.
1
/****************************************************************************
2
**
3
** This file is part of the KD Reports library.
4
**
5
** SPDX-FileCopyrightText: 2007 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
6
**
7
** SPDX-License-Identifier: MIT
8
**
9
****************************************************************************/
10
11
#include "
KDReportsHLineElement.h
"
12
#include "
KDReportsHLineTextObject_p.h
"
13
#include "
KDReportsLayoutHelper_p.h
"
// mmToPixels
14
#include "
KDReportsReportBuilder_p.h
"
15
#include <QDebug>
16
17
class
KDReports::HLineElementPrivate
18
{
19
public
:
20
QString
m_id;
21
QColor
m_color;
22
23
qreal m_thickness;
24
int
m_margin;
25
};
26
27
KDReports::HLineElement::HLineElement
()
28
:
Element
()
29
, d(new HLineElementPrivate)
30
{
31
d->m_color =
Qt::gray
;
32
d->m_thickness = 2;
33
d->m_margin = 6;
34
}
35
36
KDReports::HLineElement::HLineElement
(
const
HLineElement
&other)
37
:
Element
(other)
38
, d(new HLineElementPrivate(*other.d))
39
{
40
}
41
42
KDReports::HLineElement
&
KDReports::HLineElement::operator=
(
const
HLineElement
&other)
43
{
44
if
(&other ==
this
)
45
return
*
this
;
46
Element::operator=
(other);
47
*d = *other.d;
48
return
*
this
;
49
}
50
51
KDReports::HLineElement::~HLineElement
()
52
{
53
}
54
55
void
KDReports::HLineElement::setColor
(
const
QColor
&color)
56
{
57
d->m_color = color;
58
}
59
60
QColor
KDReports::HLineElement::color
()
const
61
{
62
return
d->m_color;
63
}
64
65
void
KDReports::HLineElement::setThickness
(qreal t)
66
{
67
d->m_thickness = t;
68
}
69
70
qreal
KDReports::HLineElement::thickness
()
const
71
{
72
return
d->m_thickness;
73
}
74
75
void
KDReports::HLineElement::setMargin
(
int
m)
76
{
77
d->m_margin = m;
// in mm
78
}
79
80
int
KDReports::HLineElement::margin
()
const
81
{
82
return
d->m_margin;
83
}
84
85
void
KDReports::HLineElement::build
(
ReportBuilder
&builder)
const
86
{
87
QTextCursor
&cursor = builder.
cursor
();
88
89
QTextCharFormat
fmt;
90
91
fmt.
setObjectType
(
HLineTextObject::HLineTextFormat
);
92
fmt.
setProperty
(
HLineTextObject::Color
, d->m_color);
93
fmt.
setProperty
(
HLineTextObject::Thickness
, d->m_thickness);
94
// qDebug() << "Setting Margin to" << d->m_margin << "mm" << mmToPixels( d->m_margin ) << "px";
95
fmt.
setProperty
(
HLineTextObject::Margin
,
double
(
mmToPixels
(d->m_margin)));
96
97
cursor.
insertText
(
QString
(
QChar::ObjectReplacementCharacter
), fmt);
98
}
99
100
KDReports::Element
*
KDReports::HLineElement::clone
()
const
101
{
102
return
new
HLineElement
(*
this
);
103
}
KDReportsHLineElement.h
KDReportsHLineTextObject_p.h
KDReportsLayoutHelper_p.h
KDReportsReportBuilder_p.h
KDReports::Element
Definition
KDReportsElement.h:35
KDReports::Element::operator=
Element & operator=(const Element &other)
Definition
KDReportsElement.cpp:30
KDReports::HLineElement
Definition
KDReportsHLineElement.h:31
KDReports::HLineElement::build
void build(ReportBuilder &builder) const override
Definition
KDReportsHLineElement.cpp:85
KDReports::HLineElement::margin
int margin() const
Definition
KDReportsHLineElement.cpp:80
KDReports::HLineElement::thickness
qreal thickness() const
Definition
KDReportsHLineElement.cpp:70
KDReports::HLineElement::color
QColor color() const
Definition
KDReportsHLineElement.cpp:60
KDReports::HLineElement::setThickness
void setThickness(qreal t)
Definition
KDReportsHLineElement.cpp:65
KDReports::HLineElement::~HLineElement
~HLineElement() override
Definition
KDReportsHLineElement.cpp:51
KDReports::HLineElement::setColor
void setColor(const QColor &color)
Definition
KDReportsHLineElement.cpp:55
KDReports::HLineElement::operator=
HLineElement & operator=(const HLineElement &other)
Definition
KDReportsHLineElement.cpp:42
KDReports::HLineElement::clone
Element * clone() const override
Definition
KDReportsHLineElement.cpp:100
KDReports::HLineElement::setMargin
void setMargin(int m)
Definition
KDReportsHLineElement.cpp:75
KDReports::HLineElement::HLineElement
HLineElement()
Definition
KDReportsHLineElement.cpp:27
KDReports::HLineTextObject::HLineTextFormat
@ HLineTextFormat
Definition
KDReportsHLineTextObject_p.h:35
KDReports::HLineTextObject::Margin
@ Margin
Definition
KDReportsHLineTextObject_p.h:41
KDReports::HLineTextObject::Color
@ Color
Definition
KDReportsHLineTextObject_p.h:39
KDReports::HLineTextObject::Thickness
@ Thickness
Definition
KDReportsHLineTextObject_p.h:40
KDReports::ReportBuilder
Definition
KDReportsReportBuilder_p.h:36
KDReports::ReportBuilder::cursor
QTextCursor & cursor()
Definition
KDReportsReportBuilder_p.h:44
KDReports::mmToPixels
KDREPORTS_EXPORT qreal mmToPixels(qreal mm)
Definition
KDReportsLayoutHelper.cpp:17
QChar::ObjectReplacementCharacter
ObjectReplacementCharacter
QColor
QString
Qt::gray
gray
QTextCharFormat
QTextCursor
QTextCursor::insertText
void insertText(const QString &text)
QTextFormat::setObjectType
void setObjectType(int type)
QTextFormat::setProperty
void setProperty(int propertyId, const QVariant &value)
© Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
https://www.kdab.com/development-resources/qt-tools/kd-reports/
Generated on Wed Apr 24 2024 04:08:14 for KD Reports API Documentation by doxygen 1.9.8