File indexing completed on 2024-04-28 04:42:10

0001 /* This file is part of the KDE project
0002    Copyright (C) 2010 by Adam Pigg (adam@piggz.co.uk)
0003 
0004    This library is free software; you can redistribute it and/or
0005    modify it under the terms of the GNU Library General Public
0006    License as published by the Free Software Foundation; either
0007    version 2.1 of the License, or (at your option) any later version.
0008 
0009    This library is distributed in the hope that it will be useful,
0010    but WITHOUT ANY WARRANTY; without even the implied warranty of
0011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0012    Library General Public License for more details.
0013 
0014    You should have received a copy of the GNU Library General Public License
0015    along with this library; see the file COPYING.LIB.  If not, write to
0016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0017    Boston, MA 02110-1301, USA.
0018 */
0019 
0020 #include "KReportPropertiesButton.h"
0021 
0022 #include <QPainter>
0023 
0024 KReportPropertiesButton::KReportPropertiesButton(QWidget* parent) :  QCheckBox(parent)
0025 {
0026     setToolTip(tr("Select entire report"));
0027     setWhatsThis(tr("A button that allows a report's surface to be selected, allowing its properties to be seen."));
0028 }
0029 
0030 void KReportPropertiesButton::paintEvent(QPaintEvent* event)
0031 {
0032     Q_UNUSED(event);
0033 
0034     QPainter painter(this);
0035     QPen pen(palette().windowText(), 2.0, Qt::SolidLine, Qt::SquareCap, Qt::MiterJoin);
0036     QColor c(pen.color());
0037     c.setAlpha(120);
0038     pen.setColor(c);
0039     painter.setPen(pen);
0040     painter.drawRect(4, 4, width() - 8, height() - 8);
0041 
0042     if (isChecked()) {
0043         painter.fillRect(7, 7, width() - 14, height() - 14, pen.brush());
0044     }
0045 }
0046