2021-06-11 16:09:08 +04:00
/*
* ADMC - AD Management Center
*
2025-01-09 15:46:38 +04:00
* Copyright ( C ) 2020 - 2025 BaseALT Ltd .
* Copyright ( C ) 2020 - 2025 Dmitry Degtyarev
2021-06-11 16:09:08 +04:00
*
* This program is free software : you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation , either version 3 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program . If not , see < http : //www.gnu.org/licenses/>.
*/
# ifndef ADMC_TEST_ATTRIBUTES_TAB_H
# define ADMC_TEST_ATTRIBUTES_TAB_H
# include "admc_test.h"
2021-11-02 15:54:13 +04:00
# include "settings.h"
2021-06-11 16:09:08 +04:00
# include "tabs/attributes_tab.h"
2021-11-02 14:16:22 +04:00
# include "tabs/attributes_tab_filter_menu.h"
2021-06-11 16:09:08 +04:00
class QStandardItemModel ;
class QSortFilterProxyModel ;
class QPushButton ;
2021-06-23 11:59:20 +04:00
class QTreeView ;
2021-07-14 16:38:52 +04:00
class AttributesFilterMenu ;
2021-06-11 16:09:08 +04:00
class ADMCTestAttributesTab : public ADMCTest {
2021-06-30 14:24:51 +04:00
Q_OBJECT
2021-06-11 16:09:08 +04:00
private slots :
void init ( ) override ;
2021-12-17 12:54:38 +04:00
void cleanup ( ) override ;
2021-06-11 16:09:08 +04:00
2021-06-23 11:59:20 +04:00
void apply ( ) ;
2021-06-11 16:09:08 +04:00
void load ( ) ;
2021-07-26 12:29:25 +04:00
void filter_data ( ) ;
2021-06-11 16:09:08 +04:00
void filter ( ) ;
private :
2021-12-22 16:26:03 +04:00
AttributeEdit * edit ;
2021-11-02 14:16:22 +04:00
AttributesTabFilterMenu * filter_menu ;
2021-06-23 11:59:20 +04:00
QTreeView * view ;
2021-06-11 16:09:08 +04:00
QStandardItemModel * model ;
QSortFilterProxyModel * proxy ;
QPushButton * filter_button ;
2021-06-23 11:59:20 +04:00
QPushButton * edit_button ;
2021-06-11 16:09:08 +04:00
QString dn ;
2021-12-17 12:54:38 +04:00
QList < AttributeEdit * > edit_list ;
2024-02-19 03:54:30 +04:00
QPushButton * load_optional_attrs_button ;
2021-06-11 16:09:08 +04:00
2021-07-26 12:29:25 +04:00
void set_filter ( const QList < AttributeFilter > & filter_list , const bool state ) ;
2021-06-11 16:09:08 +04:00
} ;
# endif /* ADMC_TEST_ATTRIBUTES_TAB_H */