File indexing completed on 2024-05-12 03:55:46
0001 /* vi: ts=8 sts=4 sw=4 0002 0003 This file is part of the KDE project, module kfile. 0004 SPDX-FileCopyrightText: 2000 Geert Jansen <jansen@kde.org> 0005 SPDX-FileCopyrightText: 2000 Kurt Granroth <granroth@kde.org> 0006 SPDX-FileCopyrightText: 1997 Christoph Neerfeld <chris@kde.org> 0007 SPDX-FileCopyrightText: 2002 Carsten Pfeiffer <pfeiffer@kde.org> 0008 SPDX-FileCopyrightText: 2021 Kai Uwe Broulik <kde@broulik.de> 0009 0010 SPDX-License-Identifier: LGPL-2.0-only 0011 */ 0012 0013 #ifndef KICONDIALOG_P_H 0014 #define KICONDIALOG_P_H 0015 0016 #include <QFileDialog> 0017 #include <QPointer> 0018 #include <QSortFilterProxyModel> 0019 0020 #include "kicondialogmodel_p.h" 0021 0022 #include "ui_kicondialog.h" 0023 0024 class QLabel; 0025 class QPushButton; 0026 0027 class KIconDialog; 0028 0029 class KIconDialogPrivate 0030 { 0031 public: 0032 KIconDialogPrivate(KIconDialog *qq); 0033 0034 void init(); 0035 void showIcons(); 0036 bool selectIcon(const QString &iconName); 0037 void setContext(KIconLoader::Context context); 0038 void updatePlaceholderLabel(); 0039 0040 void browse(); 0041 0042 bool isSystemIconsContext() const; 0043 0044 KIconDialog *q; 0045 0046 KIconLoader *mpLoader; 0047 0048 KIconDialogModel *model; 0049 QSortFilterProxyModel *proxyModel; 0050 0051 int mGroupOrSize; 0052 KIconLoader::Context mContext; 0053 0054 QLabel *placeholderLabel; 0055 QPushButton *browseButton; 0056 0057 bool m_bStrictIconSize = true; 0058 bool m_bLockUser = false; 0059 bool m_bLockCustomDir = false; 0060 QString custom; 0061 QString customLocation; 0062 QString pendingSelectedIcon; 0063 QPointer<QFileDialog> browseDialog; 0064 0065 Ui::IconDialog ui; 0066 }; 0067 0068 #endif // KICONDIALOG_P_H