File indexing completed on 2021-12-21 13:15:44

0001 /***************************************************************************
0002 *   Copyright 2007 Niko Sams <niko.sams@gmail.com>                        *
0003 *                                                                         *
0004 *   This program is free software; you can redistribute it and/or modify  *
0005 *   it under the terms of the GNU General Public License as published by  *
0006 *   the Free Software Foundation; either version 2 of the License, or     *
0007 *   (at your option) any later version.                                   *
0008 *                                                                         *
0009 ***************************************************************************/
0010 
0011 #ifndef UPLOADPREFERENCES_H
0012 #define UPLOADPREFERENCES_H
0013 
0014 #include <ksharedconfig.h>
0015 #include <QVariant>
0016 
0017 #include <project/projectconfigpage.h>
0018 
0019 #include "uploadconfig.h"
0020 
0021 namespace Ui {
0022     class UploadPreferences;
0023 }
0024 class UploadProfileDlg;
0025 class UploadProfileModel;
0026 class UploadProfileItem;
0027 
0028 /**
0029  * KCModule for upload profiles configuration
0030  */
0031 class UploadPreferences : public ProjectConfigPage<UploadSettings>
0032 {
0033     Q_OBJECT
0034 public:
0035 
0036     UploadPreferences(KDevelop::IPlugin* plugin, const KDevelop::ProjectConfigOptions& options, QWidget* parent);
0037     ~UploadPreferences() override;
0038 
0039     void reset() override;
0040     void apply() override;
0041     void defaults() override;
0042     
0043     QString name() const override;
0044     QString fullName() const override;
0045     QIcon icon() const override;
0046 
0047 private Q_SLOTS:
0048     void addProfile();
0049     void removeProfile();
0050     void modifyProfile();
0051 
0052 private:
0053     Ui::UploadPreferences* m_ui;
0054     UploadProfileDlg* m_dlg;
0055     UploadProfileModel* m_model;
0056 };
0057 
0058 
0059 #endif
0060 // kate: space-indent on; indent-width 4; tab-width 4; replace-tabs on