Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_elided_label.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2016 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7#include "kis_elided_label.h"
8
10{
11 QString longText;
12 Qt::TextElideMode mode;
13};
14
15KisElidedLabel::KisElidedLabel(const QString &text, Qt::TextElideMode mode, QWidget *parent)
16 : QLabel(text, parent),
17 m_d(new Private)
18{
19 m_d->mode = mode;
20 m_d->longText = text;
21}
22
26
27void KisElidedLabel::setLongText(const QString &text)
28{
29 m_d->longText = text;
30 updateText();
31}
32
33void KisElidedLabel::resizeEvent(QResizeEvent *event)
34{
35 QLabel::resizeEvent(event);
36 updateText();
37}
38
40{
41 QFontMetrics metrics(font());
42 QString elidedText = metrics.elidedText(m_d->longText, m_d->mode, width());
43 setText(elidedText);
44}
KisElidedLabel(const QString &text, Qt::TextElideMode mode, QWidget *parent=0)
const QScopedPointer< Private > m_d
void resizeEvent(QResizeEvent *event) override
void setLongText(const QString &text)
~KisElidedLabel() override