KReport

KReportDetailSectionData.h
1 /* This file is part of the KDE project
2  * Copyright (C) 2001-2007 by OpenMFG, LLC ([email protected])
3  * Copyright (C) 2007-2008 by Adam Pigg ([email protected])
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
17  */
18 
19 #ifndef KREPORTDETAILSECTIONDATA_H
20 #define KREPORTDETAILSECTIONDATA_H
21 
22 #include <QObject>
23 
24 #include "KReportDataSource.h"
25 
26 class KReportSectionData;
27 class KReportDetailGroupSectionData;
28 class KReportDocument;
29 
30 class QDomElement;
31 
32 /**
33 */
34 class KReportDetailSectionData : public QObject
35 {
36  Q_OBJECT
37 public:
38  explicit KReportDetailSectionData(QObject *parent = nullptr);
39  KReportDetailSectionData(const QDomElement &elemSource, KReportDocument *report);
40  ~KReportDetailSectionData() override;
41 
42  enum class PageBreak {
43  None,
44  AtEnd
45  };
46 
47  QString name;
48  PageBreak pageBreak;
50 
51  KReportSectionData *detailSection;
52 
54 
55  bool isValid() const {
56  return m_valid;
57  }
58 
59 private:
60  bool m_valid;
61 };
62 
63 class KReportDetailGroupSectionData
64 {
65 public:
66  KReportDetailGroupSectionData();
67 
68  enum class PageBreak {
69  None,
70  AfterGroupFooter,
71  BeforeGroupHeader
72  };
73 
74  QString column;
75  PageBreak pagebreak;
76  Qt::SortOrder m_sort;
77 
78  KReportSectionData *groupHeader;
79  KReportSectionData *groupFooter;
80 };
81 
82 #endif
Q_OBJECTQ_OBJECT
SortOrder
KReportSectionData is used to store the information about a specific report section.
bool isValid(QStringView ifopt)
const char * name(StandardAction id)
Top level report document definition. A KReportDocment defines the design of a document,...
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Sun Oct 1 2023 04:06:34 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.