File indexing completed on 2024-06-16 05:24:47
0001 /* 0002 This file is part of the Kasten Framework, made within the KDE community. 0003 0004 SPDX-FileCopyrightText: 2009 Friedrich W. H. Kossebau <kossebau@kde.org> 0005 0006 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0007 */ 0008 0009 #include "bookmarkeditpopup.hpp" 0010 0011 // Okteta core 0012 // #include <Okteta/Bookmark> 0013 // Qt 0014 #include <QLineEdit> 0015 #include <QIcon> 0016 0017 namespace Kasten { 0018 0019 BookmarkEditPopup::BookmarkEditPopup(QWidget* parent) 0020 : AbstractLinePopup(parent) 0021 { 0022 setAttribute(Qt::WA_DeleteOnClose, true); 0023 0024 setIcon(QIcon::fromTheme(QStringLiteral("bookmark-new"))); 0025 0026 mBookmarkNameLineEdit = new QLineEdit(this); 0027 mBookmarkNameLineEdit->setClearButtonEnabled(true); 0028 connect(mBookmarkNameLineEdit, &QLineEdit::returnPressed, this, &AbstractLinePopup::accept); 0029 0030 setWidget(mBookmarkNameLineEdit); 0031 0032 connect(this, &AbstractLinePopup::finished, this, &BookmarkEditPopup::onFinished); 0033 } 0034 0035 BookmarkEditPopup::~BookmarkEditPopup() = default; 0036 0037 QString BookmarkEditPopup::name() const { return mBookmarkNameLineEdit->text(); } 0038 0039 void BookmarkEditPopup::setName(const QString& name) 0040 { 0041 mBookmarkNameLineEdit->setText(name); 0042 mBookmarkNameLineEdit->selectAll(); 0043 } 0044 0045 void BookmarkEditPopup::setCursorPosition(int cursorPosition) 0046 { 0047 m_cursorPosition = cursorPosition; 0048 } 0049 0050 void BookmarkEditPopup::onFinished(int result) 0051 { 0052 if (result != Accepted) { 0053 return; 0054 } 0055 0056 Q_EMIT bookmarkAccepted(m_cursorPosition, name()); 0057 } 0058 0059 } 0060 0061 #include "moc_bookmarkeditpopup.cpp"