File indexing completed on 2024-05-12 04:39:28

0001 /*
0002     SPDX-FileCopyrightText: 2008 Aleix Pol <aleixpol@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef CMAKECACHEDELEGATE_H
0008 #define CMAKECACHEDELEGATE_H
0009 
0010 #include <QItemDelegate>
0011 #include <QWidget>
0012 class KUrlRequester;
0013 
0014 class CMakeCacheDelegate : public QItemDelegate
0015 {
0016     Q_OBJECT
0017     public:
0018         explicit CMakeCacheDelegate(QObject* parent);
0019         ~CMakeCacheDelegate() override;
0020         QWidget * createEditor(QWidget * parent, const QStyleOptionViewItem & option,
0021                                          const QModelIndex & index ) const override;
0022         
0023         void setEditorData ( QWidget * editor, const QModelIndex & index ) const override;
0024         void setModelData ( QWidget * editor, QAbstractItemModel * model, const QModelIndex & index ) const override;
0025         void paint ( QPainter * painter, const QStyleOptionViewItem & option, const QModelIndex & index ) const override;
0026         QSize sizeHint(const QStyleOptionViewItem & option, const QModelIndex & index ) const override;
0027 
0028     private Q_SLOTS:
0029         void closingEditor(QWidget * editor, QAbstractItemDelegate::EndEditHint hint = NoHint);
0030         void checkboxToggled();
0031 
0032     private:
0033         KUrlRequester *m_sample;
0034 };
0035 
0036 #endif