LibEngsas
eheaderviewspanned.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2014 EngSaS - Engineering Solutions and Services Langenbach. All rights reserved.
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, write to the Free Software
16  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
17  MA 02110-1301 USA.
18 */
19 
20 #ifndef EHEADERVIEWSPANNED_H
21 #define EHEADERVIEWSPANNED_H
22 
23 #include "eheaderviewbase.h"
24 #include "eglobal.h"
25 
35 {
36  Q_OBJECT
37  public:
38  EHeaderViewSpanned(Qt::Orientation orientation, QWidget * parent = NULL);
39 
40  void setSpanned(int spanFirst, int spanLast, const QString &title);
41 
42  QSize sectionSizeFromContents(int logicalIndex) const;
43 
44  protected:
45  void paintSection(QPainter *painter, const QRect &rect, int logicalIndex) const;
46 
47  private slots:
48  void spannedSectionResized(int logicalIndex, int oldSize, int newSize);
49 
50  private:
51  bool isSpanned(int logicalIndex) const;
52 
53  int _spanFirst, _spanLast;
54  QString _spanTitle;
55 };
56 
57 
58 #endif // EHEADERVIEWSPANNED_H
Definition: eheaderviewbase.h:26
#define E_CORE_EXPORT
Definition: eglobal.h:107
int _spanLast
Definition: eheaderviewspanned.h:53
QString _spanTitle
Definition: eheaderviewspanned.h:54
The spanned sections are labeled with the title set by setSpanned() in the first row of the header an...
Definition: eheaderviewspanned.h:34