Lines 79-99
Link Here
|
79 |
\sa QSvgRenderer, {QtSvg Module}, QPicture |
79 |
\sa QSvgRenderer, {QtSvg Module}, QPicture |
80 |
*/ |
80 |
*/ |
81 |
|
81 |
|
82 |
class QSvgWidgetPrivate : public QWidgetPrivate |
|
|
83 |
{ |
84 |
Q_DECLARE_PUBLIC(QSvgWidget) |
85 |
public: |
86 |
QSvgRenderer *renderer; |
87 |
}; |
88 |
|
89 |
/*! |
82 |
/*! |
90 |
Constructs a new SVG display widget with the given \a parent. |
83 |
Constructs a new SVG display widget with the given \a parent. |
91 |
*/ |
84 |
*/ |
92 |
QSvgWidget::QSvgWidget(QWidget *parent) |
85 |
QSvgWidget::QSvgWidget(QWidget *parent) |
93 |
: QWidget(*new QSvgWidgetPrivate, parent, 0) |
86 |
: QWidget( parent ) |
94 |
{ |
87 |
{ |
95 |
d_func()->renderer = new QSvgRenderer(this); |
88 |
m_renderer = new QSvgRenderer(this); |
96 |
QObject::connect(d_func()->renderer, SIGNAL(repaintNeeded()), |
89 |
QObject::connect(m_renderer, SIGNAL(repaintNeeded()), |
97 |
this, SLOT(update())); |
90 |
this, SLOT(update())); |
98 |
} |
91 |
} |
99 |
|
92 |
|
Lines 102-111
Link Here
|
102 |
of the specified \a file. |
95 |
of the specified \a file. |
103 |
*/ |
96 |
*/ |
104 |
QSvgWidget::QSvgWidget(const QString &file, QWidget *parent) |
97 |
QSvgWidget::QSvgWidget(const QString &file, QWidget *parent) |
105 |
: QWidget(*new QSvgWidgetPrivate, parent, 0) |
98 |
: QWidget( parent ) |
106 |
{ |
99 |
{ |
107 |
d_func()->renderer = new QSvgRenderer(file, this); |
100 |
m_renderer = new QSvgRenderer(file, this); |
108 |
QObject::connect(d_func()->renderer, SIGNAL(repaintNeeded()), |
101 |
QObject::connect(m_renderer, SIGNAL(repaintNeeded()), |
109 |
this, SLOT(update())); |
102 |
this, SLOT(update())); |
110 |
} |
103 |
} |
111 |
|
104 |
|
Lines 122-129
Link Here
|
122 |
*/ |
115 |
*/ |
123 |
QSvgRenderer * QSvgWidget::renderer() const |
116 |
QSvgRenderer * QSvgWidget::renderer() const |
124 |
{ |
117 |
{ |
125 |
Q_D(const QSvgWidget); |
118 |
return m_renderer; |
126 |
return d->renderer; |
|
|
127 |
} |
119 |
} |
128 |
|
120 |
|
129 |
|
121 |
|
Lines 132-140
Link Here
|
132 |
*/ |
124 |
*/ |
133 |
QSize QSvgWidget::sizeHint() const |
125 |
QSize QSvgWidget::sizeHint() const |
134 |
{ |
126 |
{ |
135 |
Q_D(const QSvgWidget); |
127 |
if (m_renderer->isValid()) |
136 |
if (d->renderer->isValid()) |
128 |
return m_renderer->defaultSize(); |
137 |
return d->renderer->defaultSize(); |
|
|
138 |
else |
129 |
else |
139 |
return QSize(128, 64); |
130 |
return QSize(128, 64); |
140 |
} |
131 |
} |
Lines 145-153
Link Here
|
145 |
*/ |
136 |
*/ |
146 |
void QSvgWidget::paintEvent(QPaintEvent *) |
137 |
void QSvgWidget::paintEvent(QPaintEvent *) |
147 |
{ |
138 |
{ |
148 |
Q_D(QSvgWidget); |
|
|
149 |
QPainter p(this); |
139 |
QPainter p(this); |
150 |
d->renderer->render(&p); |
140 |
m_renderer->render(&p); |
151 |
} |
141 |
} |
152 |
|
142 |
|
153 |
/*! |
143 |
/*! |
Lines 155-162
Link Here
|
155 |
*/ |
145 |
*/ |
156 |
void QSvgWidget::load(const QString &file) |
146 |
void QSvgWidget::load(const QString &file) |
157 |
{ |
147 |
{ |
158 |
Q_D(const QSvgWidget); |
148 |
m_renderer->load(file); |
159 |
d->renderer->load(file); |
|
|
160 |
} |
149 |
} |
161 |
|
150 |
|
162 |
/*! |
151 |
/*! |
Lines 164-171
Link Here
|
164 |
*/ |
153 |
*/ |
165 |
void QSvgWidget::load(const QByteArray &contents) |
154 |
void QSvgWidget::load(const QByteArray &contents) |
166 |
{ |
155 |
{ |
167 |
Q_D(const QSvgWidget); |
156 |
m_renderer->load(contents); |
168 |
d->renderer->load(contents); |
|
|
169 |
} |
157 |
} |
170 |
|
158 |
|
171 |
QT_END_NAMESPACE |
159 |
QT_END_NAMESPACE |