1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
/*
SPDX-FileCopyrightText: 2025 Laurent Montel <montel@kde.org>
SPDX-License-Identifier: GPL-2.0-or-later
*/
#include "viewerpluginaiwidget.h"
#include <KLocalizedString>
#include <QStyle>
#include <QToolButton>
#include <QVBoxLayout>
#include <TextAutoGenerateText/TextAutoGenerateManager>
#include <TextAutoGenerateText/TextAutoGenerateQuickAskWidget>
using namespace Qt::Literals::StringLiterals;
ViewerPluginAIWidget::ViewerPluginAIWidget(QWidget *parent)
: QWidget{parent}
, mCloseButton(new QToolButton(this))
, mTextAutoGenerateQuickAskWidget(new TextAutoGenerateText::TextAutoGenerateQuickAskWidget(new TextAutoGenerateText::TextAutoGenerateManager(this)))
{
auto layout = new QVBoxLayout(this);
layout->setSpacing(0);
layout->setContentsMargins({});
auto hboxLayout = new QHBoxLayout;
hboxLayout->setSpacing(style()->pixelMetric(QStyle::PM_LayoutHorizontalSpacing));
hboxLayout->setContentsMargins(style()->pixelMetric(QStyle::PM_LayoutLeftMargin),
style()->pixelMetric(QStyle::PM_LayoutTopMargin),
style()->pixelMetric(QStyle::PM_LayoutRightMargin),
style()->pixelMetric(QStyle::PM_LayoutBottomMargin));
mCloseButton->setObjectName(u"close-button"_s);
mCloseButton->setIcon(QIcon::fromTheme(u"dialog-close"_s));
mCloseButton->setIconSize(QSize(16, 16));
mCloseButton->setToolTip(i18nc("@info:tooltip", "Close"));
#ifndef QT_NO_ACCESSIBILITY
mCloseButton->setAccessibleName(i18n("Close"));
#endif
mCloseButton->setAutoRaise(true);
hboxLayout->addWidget(mCloseButton);
hboxLayout->addStretch(1);
layout->addLayout(hboxLayout);
layout->addWidget(mTextAutoGenerateQuickAskWidget);
connect(mCloseButton, &QToolButton::clicked, this, &ViewerPluginAIWidget::slotCloseWidget);
}
ViewerPluginAIWidget::~ViewerPluginAIWidget() = default;
void ViewerPluginAIWidget::slotCloseWidget()
{
if (isHidden()) {
return;
}
hide();
// TODO Q_EMIT toolsWasClosed();
}
#include "moc_viewerpluginaiwidget.cpp"
|