KLdap

ldapconfigurewidgetng.h
1/*
2 * SPDX-FileCopyrightText: 2024 Laurent Montel <montel@kde.org>
3 *
4 * SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6
7#pragma once
8
9#include "kldapwidgets_export.h"
10
11#include <QWidget>
12
13class QTreeView;
14class QPushButton;
15class QToolButton;
16class QCheckBox;
17
18namespace KLDAPCore
19{
20class LdapClientSearchConfig;
21class LdapModel;
22class LdapSortProxyModel;
23class LdapActivitiesAbstract;
24}
25
26namespace KLDAPWidgets
27{
28/**
29 * @brief The LdapConfigureWidgetNg class
30 * @author Laurent Montel <montel@kde.org>
31 */
32class KLDAPWIDGETS_EXPORT LdapConfigureWidgetNg : public QWidget
33{
34 Q_OBJECT
35public:
36 explicit LdapConfigureWidgetNg(QWidget *parent = nullptr);
37 ~LdapConfigureWidgetNg() override;
38
39 void save();
40 void load();
41
42 [[nodiscard]] bool enablePlasmaActivities() const;
43 void setEnablePlasmaActivities(bool newEnablePlasmaActivities);
44
45 [[nodiscard]] KLDAPCore::LdapActivitiesAbstract *ldapActivitiesAbstract() const;
46 void setLdapActivitiesAbstract(KLDAPCore::LdapActivitiesAbstract *newldapActivitiesAbstract);
47
48Q_SIGNALS:
49 void changed(bool);
50
51private:
52 KLDAPWIDGETS_NO_EXPORT void slotAddHost();
53 KLDAPWIDGETS_NO_EXPORT void slotEditHost();
54 KLDAPWIDGETS_NO_EXPORT void slotRemoveHost();
55 KLDAPWIDGETS_NO_EXPORT void updateButtons();
56 KLDAPWIDGETS_NO_EXPORT void slotMoveUp();
57 KLDAPWIDGETS_NO_EXPORT void slotMoveDown();
58 KLDAPWIDGETS_NO_EXPORT void initGUI();
59 QTreeView *mHostListView = nullptr;
60
61 QPushButton *mAddButton = nullptr;
62 QPushButton *mEditButton = nullptr;
63 QPushButton *mRemoveButton = nullptr;
64
65 QToolButton *mUpButton = nullptr;
66 QToolButton *mDownButton = nullptr;
67 KLDAPCore::LdapClientSearchConfig *const mClientSearchConfig;
68 KLDAPCore::LdapModel *const mLdapModel;
69 KLDAPCore::LdapSortProxyModel *const mLdapSortProxyModel;
70 QCheckBox *const mLdapOnCurrentActivity;
71};
72}
The LdapActivitiesAbstract class.
The LdapConfigureWidgetNg class.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:16:07 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.