Plasma
Go to the documentation of this file.
22#include <QtGui/QPainter>
23#include <QtGui/QGraphicsSceneMouseEvent>
34 SvgWidgetPrivate(SvgWidget *widget, Svg *s,
const QString &element)
35 : q(widget), svg(s), elementID(element)
49SvgWidget::SvgWidget(QGraphicsItem *parent, Qt::WindowFlags wFlags)
51 d(new SvgWidgetPrivate(this, 0, QString()))
55SvgWidget::SvgWidget(
Svg *svg,
const QString &elementID, QGraphicsItem *parent, Qt::WindowFlags wFlags)
57 d(new SvgWidgetPrivate(this, svg, elementID))
61SvgWidget::~SvgWidget()
66void SvgWidget::mousePressEvent(QGraphicsSceneMouseEvent *event)
70 if (receivers(SIGNAL(
clicked(Qt::MouseButton)))) {
73 QGraphicsWidget::mousePressEvent(event);
77void SvgWidget::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
79 if (boundingRect().contains(event->pos())) {
84void SvgWidget::setSvg(
Svg *svg)
93 connect(
svg, SIGNAL(repaintNeeded()),
this, SLOT(svgChanged()));
98Svg *SvgWidget::svg()
const
103void SvgWidget::setElementID(
const QString &elementID)
106 d->svg->setContainsMultipleImages(!
elementID.isNull());
112QString SvgWidget::elementID()
const
123 d->svg->paint(painter, boundingRect(), d->elementID);
127QSizeF SvgWidget::sizeHint(Qt::SizeHint which,
const QSizeF & constraint)
const
129 if (d->svg && which == Qt::PreferredSize) {
130 if (d->elementID.isNull()) {
131 return d->svg->size();
133 return d->svg->elementSize(d->elementID);
136 return QGraphicsWidget::sizeHint(which, constraint);
142#include "svgwidget.moc"
A theme aware image-centric SVG class.
Namespace for everything in libplasma.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Thu Jul 20 2023 00:00:00 by
doxygen 1.9.8 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.