1// SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: GPL-3.0-or-later
4
5#ifndef GRADLECONFIGPROPERTYWIDGET_H
6#define GRADLECONFIGPROPERTYWIDGET_H
7
8#include "gradle/project/properties/gradleconfigutil.h"
9#include "services/project/projectinfo.h"
10
11class PageWidget;
12class GradleDetailPropertyWidgetPrivate;
13class GradleDetailPropertyWidget : public QWidget
14{
15 Q_OBJECT
16public:
17 explicit GradleDetailPropertyWidget(QWidget *parent = nullptr);
18 ~GradleDetailPropertyWidget();
19
20 void setValues(const gradleConfig::ConfigureParam *param);
21 void getValues(gradleConfig::ConfigureParam *param);
22
23public slots:
24 void browserFileDialog();
25
26private:
27 void setupUI();
28 void initData();
29
30 GradleDetailPropertyWidgetPrivate *const d;
31};
32
33class GradleConfigPropertyWidgetPrivate;
34class GradleConfigPropertyWidget : public PageWidget
35{
36 Q_OBJECT
37public:
38 explicit GradleConfigPropertyWidget(const dpfservice::ProjectInfo &projectInfo, QStandardItem *item, QWidget *parent = nullptr);
39 virtual ~GradleConfigPropertyWidget() override;
40
41 void saveConfig() override;
42
43private:
44 void setupUI();
45 void initData(const dpfservice::ProjectInfo &projectInfo);
46
47 GradleConfigPropertyWidgetPrivate *const d;
48};
49
50#endif // GRADLECONFIGPROPERTYWIDGET_H
51