1 /*
2     SPDX-FileCopyrightText: 2004 Esben Mose Hansen <kde@mosehansen.dk>
3 
4     SPDX-License-Identifier: GPL-2.0-or-later
5 */
6 #include "historystringitem.h"
7 
8 #include <QCryptographicHash>
9 
HistoryStringItem(const QString & data)10 HistoryStringItem::HistoryStringItem(const QString &data)
11     : HistoryItem(QCryptographicHash::hash(data.toUtf8(), QCryptographicHash::Sha1))
12     , m_data(data)
13 {
14 }
15 
16 /* virtual */
write(QDataStream & stream) const17 void HistoryStringItem::write(QDataStream &stream) const
18 {
19     stream << QStringLiteral("string") << m_data;
20 }
21 
mimeData() const22 QMimeData *HistoryStringItem::mimeData() const
23 {
24     QMimeData *data = new QMimeData();
25     data->setText(m_data);
26     return data;
27 }
28 
text() const29 QString HistoryStringItem::text() const
30 {
31     const int TEXT_LENGTH_LIMIT = 200;
32     return m_data.left(TEXT_LENGTH_LIMIT - 1) + (m_data.length() <= TEXT_LENGTH_LIMIT ? QStringLiteral("") : QStringLiteral("…"));
33 }
34