KReport

KReportItemField.h
1 /* This file is part of the KDE project
2  * Copyright (C) 2007-2008 by Adam Pigg ([email protected])
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
16  */
17 
18 #ifndef KREPORTITEMFIELD_H
19 #define KREPORTITEMFIELD_H
20 
21 #include "KReportItemBase.h"
22 
23 #include <KProperty>
24 
25 class QDomNode;
26 
27 namespace Scripting
28 {
29 class Field;
30 }
31 
32 class KReportItemField : public KReportItemBase
33 {
35 public:
36  KReportItemField();
37  explicit KReportItemField(const QDomNode & element);
38  ~KReportItemField() override;
39 
40  QString typeName() const override;
41  int renderSimpleData(OROPage *page, OROSection *section, const QPointF &offset, const QVariant &data, KReportScriptHandler *script) override;
42 
43 protected:
44  KProperty * m_horizontalAlignment;
45  KProperty * m_verticalAlignment;
46  KProperty * m_font;
47  //KProperty * m_trackTotal;
48  //KProperty * m_trackBuiltinFormat;
49  //KProperty * _useSubTotal;
50  //KProperty * _trackTotalFormat;
51  KProperty * m_foregroundColor;
52  KProperty * m_backgroundColor;
53  KProperty* m_backgroundOpacity;
54  KProperty* m_lineColor;
55  KProperty* m_lineWeight;
56  KProperty* m_lineStyle;
57  KProperty* m_wordWrap;
58  KProperty* m_canGrow;
59  KProperty* m_itemValue;
60 
61  //bool builtinFormat;
62  //QString format;
63 
64  QStringList fieldNames(const QString &);
65 
66  KReportLineStyle lineStyle() const;
67  KReportTextStyleData textStyle() const;
68 
69  int textFlags() const;
70 
71  QFont font() const {
72  return m_font->value().value<QFont>();
73  }
74 
75 private:
76  void createProperties() override;
77 
78  friend class Scripting::Field;
79 };
80 
81 #endif
Q_OBJECTQ_OBJECT
Base class for items that are drawn syncronously.
virtual int renderSimpleData(OROPage *page, OROSection *section, const QPointF &offset, const QVariant &data, KReportScriptHandler *script)
Render the item into a primitive which is used by the second stage renderer.
The KReportLineStyle class represents line style.
T value() const const
virtual QString typeName() const =0
Return the item type as a string.
Represents a single page in a document and may contain zero or more OROPrimitive objects all of which...
Field script interface.
Represents a single a single row in a document and may contain zero or more OROPrimitives.
Field item script interface.
QVariant value() const
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Tue Feb 7 2023 04:17:37 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.