File indexing completed on 2025-02-02 04:22:15

0001 /*
0002  *  SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 #ifndef KisMultiSensorsSelector_H
0007 #define KisMultiSensorsSelector_H
0008 
0009 class KisCubicCurve;
0010 class QModelIndex;
0011 class KisCurveOption;
0012 
0013 #include <QWidget>
0014 #include <KisCurveOptionData.h>
0015 #include <lager/cursor.hpp>
0016 
0017 class KisMultiSensorsSelector : public QWidget
0018 {
0019     Q_OBJECT
0020 public:
0021 
0022     KisMultiSensorsSelector(QWidget* parent);
0023     ~KisMultiSensorsSelector() override;
0024 
0025     void setOptionDataCursor(lager::cursor<KisCurveOptionDataCommon> optionData);
0026 
0027     void setCurrent(const QString &id);
0028     QString currentHighlighted();
0029 
0030 private Q_SLOTS:
0031 
0032     void sensorActivated(const QModelIndex& index);
0033     void setCurrent(const QModelIndex& index);
0034 
0035 Q_SIGNALS:
0036     void highlightedSensorChanged(const QString &id);
0037 
0038 protected:
0039     bool eventFilter(QObject *obj, QEvent *event) override;
0040 
0041 private:
0042     struct Private;
0043     Private* const d;
0044 };
0045 
0046 #endif // KisMultiSensorsSelector_H