Warning, file /graphics/krita/libs/ui/input/config/kis_input_configuration_page_item.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /*
0002  * This file is part of the KDE project
0003  * SPDX-FileCopyrightText: 2013 Arjen Hiemstra <ahiemstra@heimr.nl>
0004  *
0005  * SPDX-License-Identifier: GPL-2.0-or-later
0006  */
0007 
0008 #ifndef KISINPUTCONFIGURATIONPAGEITEM_H
0009 #define KISINPUTCONFIGURATIONPAGEITEM_H
0010 
0011 #include <QWidget>
0012 
0013 namespace Ui
0014 {
0015 class KisInputConfigurationPageItem;
0016 }
0017 
0018 class KisActionShortcutsModel;
0019 class KisAbstractInputAction;
0020 /**
0021  * \brief A collapsible widget displaying an action, its description and associated shortcuts.
0022  *
0023  * This is used in KisInputConfigurationPage to display a list of actions and the associated
0024  * shortcuts, depending on the current profile.
0025  */
0026 class KisInputConfigurationPageItem : public QWidget
0027 {
0028     Q_OBJECT
0029 public:
0030     KisInputConfigurationPageItem(QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags());
0031     ~KisInputConfigurationPageItem() override;
0032 
0033     void setAction(KisAbstractInputAction *action);
0034 
0035     void setWarningEnabled(bool enabled, QString additionalToolTipText = QString());
0036 
0037 Q_SIGNALS:
0038     void inputConfigurationChanged();
0039 
0040 public Q_SLOTS:
0041     void setExpanded(bool expand);
0042 
0043 private Q_SLOTS:
0044     void deleteShortcut();
0045 
0046 private:
0047     Ui::KisInputConfigurationPageItem *ui {nullptr};
0048     KisAbstractInputAction *m_action {nullptr};
0049     KisActionShortcutsModel *m_shortcutsModel {nullptr};
0050 
0051     const QString m_defaultToolTipText;
0052 };
0053 
0054 #endif // KISINPUTCONFIGURATIONPAGEITEM_H