File indexing completed on 2024-04-28 04:37:23

0001 /*
0002     SPDX-FileCopyrightText: 2008 Andreas Pakulat <apaku@gmx.de>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef KDEVPLATFORM_PROJECTINFOPAGE_H
0008 #define KDEVPLATFORM_PROJECTINFOPAGE_H
0009 
0010 #include <QWidget>
0011 
0012 struct ProjectFileChoice {
0013     QString text;
0014     QString pluginId;
0015     QString iconName;
0016     QString fileName;
0017 };
0018 
0019 namespace Ui
0020 {
0021     class ProjectInfoPage;
0022 }
0023 
0024 namespace KDevelop
0025 {
0026 
0027 class ProjectInfoPage : public QWidget
0028 {
0029 Q_OBJECT
0030 public:
0031     explicit ProjectInfoPage( QWidget* parent = nullptr );
0032     ~ProjectInfoPage() override;
0033     void setProjectName( const QString& );
0034     void populateProjectFileCombo( const QVector<ProjectFileChoice>& choices );
0035 Q_SIGNALS:
0036     void projectNameChanged( const QString& );
0037     void projectManagerChanged( const QString& pluginId, const QString & fileName);
0038 private Q_SLOTS:
0039     void changeProjectManager( int );
0040 private:
0041     Ui::ProjectInfoPage* page_ui;
0042 };
0043 
0044 }
0045 
0046 Q_DECLARE_TYPEINFO(ProjectFileChoice, Q_MOVABLE_TYPE);
0047 
0048 #endif