MCPcopy Create free account
hub / github.com/MITK/MITK / paintEvent

Method paintEvent

Modules/QtWidgets/src/QmitkNodeSelectionButton.cpp:201–270  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

199}
200
201void QmitkNodeSelectionButton::paintEvent(QPaintEvent *p)
202{
203 QPushButton::paintEvent(p);
204
205 auto styleSheet = qApp->styleSheet();
206
207 QPainter painter(this);
208 QTextDocument td(this);
209 td.setDefaultStyleSheet(styleSheet);
210
211 auto widgetSize = this->size();
212 QPoint origin = QPoint(5, 5);
213
214 if (this->m_SelectedNode)
215 {
216 auto iconLength = widgetSize.height() - 10;
217 auto node = this->m_SelectedNode;
218
219 itk::ModifiedTimeType dataMTime = 0;
220 if (m_SelectedNode->GetData())
221 {
222 dataMTime = m_SelectedNode->GetData()->GetMTime();
223 }
224 if (dataMTime>m_DataMTime || this->m_OutDatedThumbNail)
225 {
226 this->m_ThumbNail = GetPixmapFromImageNode(node, iconLength);
227 this->m_OutDatedThumbNail = false;
228 m_DataMTime = dataMTime;
229 }
230
231 auto thumbNailOrigin = origin;
232 thumbNailOrigin.setY(thumbNailOrigin.y() + ((iconLength - m_ThumbNail.height()) / 2));
233 painter.drawPixmap(thumbNailOrigin, m_ThumbNail);
234 origin.setX(origin.x() + iconLength + 5);
235
236 if (this->isEnabled())
237 {
238 td.setHtml(QString::fromStdString("<font class=\"normal\">" + node->GetName() + "</font>"));
239 }
240 else
241 {
242 td.setHtml(QString::fromStdString("<font class=\"disabled\">" + node->GetName() + "</font>"));
243 }
244 }
245 else
246 {
247 if (this->isEnabled())
248 {
249 if (this->m_IsOptional)
250 {
251 td.setHtml(QString("<font class=\"normal\">") + m_Info + QString("</font>"));
252 }
253 else
254 {
255 td.setHtml(QString("<font class=\"warning\">") + m_Info + QString("</font>"));
256 }
257 }
258 else

Callers

nothing calls this directly

Calls 9

QPointClass · 0.85
GetPixmapFromImageNodeFunction · 0.85
isEnabledMethod · 0.80
translateMethod · 0.80
QStringClass · 0.50
sizeMethod · 0.45
GetDataMethod · 0.45
GetMTimeMethod · 0.45
GetNameMethod · 0.45

Tested by

no test coverage detected