File indexing completed on 2024-06-02 05:24:06
0001 /* 0002 * SPDX-FileCopyrightText: 2019-2024 Laurent Montel <montel@kde.org> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "kldapwidgets_export.h" 0010 0011 #include <QWidget> 0012 0013 class QListWidget; 0014 class QPushButton; 0015 class QToolButton; 0016 class QListWidgetItem; 0017 0018 namespace KLDAPWidgets 0019 { 0020 class LdapClientSearchConfig; 0021 /** 0022 * @brief The LdapConfigureWidget class 0023 * @author Laurent Montel <montel@kde.org> 0024 */ 0025 class KLDAPWIDGETS_EXPORT LdapConfigureWidget : public QWidget 0026 { 0027 Q_OBJECT 0028 public: 0029 explicit LdapConfigureWidget(QWidget *parent = nullptr); 0030 ~LdapConfigureWidget() override; 0031 0032 void load(); 0033 void save(); 0034 0035 private Q_SLOTS: 0036 void slotAddHost(); 0037 void slotEditHost(); 0038 void slotRemoveHost(); 0039 void slotSelectionChanged(QListWidgetItem *); 0040 void slotItemClicked(QListWidgetItem *); 0041 void slotMoveUp(); 0042 void slotMoveDown(); 0043 0044 Q_SIGNALS: 0045 void changed(bool); 0046 0047 private: 0048 KLDAPWIDGETS_NO_EXPORT void initGUI(); 0049 0050 QListWidget *mHostListView = nullptr; 0051 0052 QPushButton *mAddButton = nullptr; 0053 QPushButton *mEditButton = nullptr; 0054 QPushButton *mRemoveButton = nullptr; 0055 0056 QToolButton *mUpButton = nullptr; 0057 QToolButton *mDownButton = nullptr; 0058 KLDAPWidgets::LdapClientSearchConfig *const mClientSearchConfig; 0059 }; 0060 }