2 * Copyright (C) 2007 Petri Damsten <damu@iki.fi>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Library General Public License as
6 * published by the Free Software Foundation; either version 2, or
7 * (at your option) any later version.
9 * This program 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
12 * GNU General Public License for more details
14 * You should have received a copy of the GNU Library General Public
15 * License along with this program; if not, write to the
16 * Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20 #include "monitoricon.h"
24 #include <KIconLoader>
28 class MonitorIcon::Private
31 Private() : imageSize(22, 22) { }
38 MonitorIcon::MonitorIcon(QGraphicsItem
*parent
) :
39 QGraphicsWidget(parent
),
42 setSizePolicy(QSizePolicy::Fixed
, QSizePolicy::Fixed
);
43 setPreferredSize(d
->imageSize
.width() + 2 * MARGIN
, d
->imageSize
.height() + 2 * MARGIN
);
46 MonitorIcon::~MonitorIcon()
51 QString
MonitorIcon::image() const
56 void MonitorIcon::setImage(const QString
&image
)
62 QStringList
MonitorIcon::overlays() const
67 void MonitorIcon::setOverlays( const QStringList
& overlays
)
69 d
->overlays
= overlays
;
73 void MonitorIcon::paint(QPainter
*p
,
74 const QStyleOptionGraphicsItem
*option
,
80 p
->drawPixmap(QPointF((size().width() - d
->imageSize
.width()) / 2,
81 (size().height() - d
->imageSize
.height()) / 2),
82 KIcon(d
->image
, KIconLoader::global(),
83 d
->overlays
).pixmap(d
->imageSize
.toSize()));
86 #include "monitoricon.moc"