File indexing completed on 2024-12-08 10:59:23

0001 /*
0002     SPDX-FileCopyrightText: 2016 Jan Grulich <jgrulich@redhat.com>
0003 
0004     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0005 */
0006 
0007 #ifndef PLASMA_NM_CONNECTION_EDITOR_TAB_WIDGET_H
0008 #define PLASMA_NM_CONNECTION_EDITOR_TAB_WIDGET_H
0009 
0010 #include "connectioneditorbase.h"
0011 
0012 #include <QDBusPendingCallWatcher>
0013 #include <QDialog>
0014 
0015 namespace Ui
0016 {
0017 class ConnectionEditorTabWidget;
0018 }
0019 
0020 class Q_DECL_EXPORT ConnectionEditorTabWidget : public ConnectionEditorBase
0021 {
0022     Q_OBJECT
0023 public:
0024     explicit ConnectionEditorTabWidget(const NetworkManager::ConnectionSettings::Ptr &connection,
0025                                        QWidget *parent = nullptr,
0026                                        Qt::WindowFlags f = Qt::WindowFlags());
0027     ~ConnectionEditorTabWidget() override;
0028 
0029     void setConnection(const NetworkManager::ConnectionSettings::Ptr &connection) override;
0030 
0031 protected:
0032     void addWidget(QWidget *widget, const QString &text) override;
0033     QString connectionName() const override;
0034 
0035 private:
0036     Ui::ConnectionEditorTabWidget *const m_ui;
0037 
0038     void initializeTabWidget(const NetworkManager::ConnectionSettings::Ptr &connection);
0039 };
0040 
0041 #endif // PLASMA_NM_CONNECTION_EDITOR_TAB_WIDGET_H