File indexing completed on 2024-05-12 04:38:12

0001 /*
0002     SPDX-FileCopyrightText: 2009 Andreas Pakulat <apaku@gmx.de>
0003     SPDX-FileCopyrightText: 2009 Niko Sams <niko.sams@gmail.com>
0004 
0005     SPDX-License-Identifier: LGPL-2.0-or-later
0006 */
0007 
0008 #ifndef DEPENDENCIESWIDGET_H
0009 #define DEPENDENCIESWIDGET_H
0010 
0011 #include <QWidget>
0012 #include <QItemSelection>
0013 #include <project/projectexport.h>
0014 
0015 namespace Ui { class DependenciesWidget; }
0016 namespace KDevelop {
0017 class IProject;
0018 
0019 class KDEVPLATFORMPROJECT_EXPORT DependenciesWidget : public QWidget
0020 {
0021     Q_OBJECT
0022     public:
0023         explicit DependenciesWidget(QWidget* parent);
0024         ~DependenciesWidget() override;
0025 
0026         void setSuggestion(KDevelop::IProject* project);
0027 
0028         void setDependencies(const QVariantList &deps);
0029         QVariantList dependencies() const;
0030 
0031     Q_SIGNALS:
0032         void changed();
0033 
0034     private:
0035         void depEdited( const QString& str );
0036         void checkActions( const QItemSelection& selected, const QItemSelection& unselected );
0037         void moveDependencyDown();
0038         void moveDependencyUp();
0039         void addDep();
0040         void removeDep();
0041         void selectItemDialog();
0042 
0043         Ui::DependenciesWidget* m_ui;
0044 };
0045 
0046 }
0047 
0048 #endif