KDEUI
kicontheme.h
Go to the documentation of this file.00001 /* vi: ts=8 sts=4 sw=4 00002 * 00003 * This file is part of the KDE project, module kdecore. 00004 * Copyright (C) 2000 Geert Jansen <jansen@kde.org> 00005 * Antonio Larrosa <larrosa@kde.org> 00006 * 00007 * This library is free software; you can redistribute it and/or 00008 * modify it under the terms of the GNU Library General Public 00009 * License version 2 as published by the Free Software Foundation. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Library General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Library General Public License 00017 * along with this library; see the file COPYING.LIB. If not, write to 00018 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00019 * Boston, MA 02110-1301, USA. 00020 * 00021 */ 00022 00023 #ifndef KICONTHEME_H 00024 #define KICONTHEME_H 00025 00026 #include <kdeui_export.h> 00027 00028 #include <QtCore/QString> 00029 #include <QtCore/QStringList> 00030 #include <QtCore/QList> 00031 00032 #include "kiconloader.h" 00033 00034 class QAction; 00035 class KIconThemeDir; 00036 class K3Icon; 00037 00046 class KDEUI_EXPORT KIconTheme 00047 { 00048 public: 00055 explicit KIconTheme(const QString& name, const QString& appName=QString()); 00056 ~KIconTheme(); 00057 00062 QString name() const; 00063 00069 QString internalName() const; 00070 00076 QString description() const; 00077 00083 QString example() const; 00084 00089 QString screenshot() const; 00090 00095 QString dir() const; 00096 00101 QStringList inherits() const; 00102 00107 bool isValid() const; 00108 00113 bool isHidden() const; 00114 00120 int depth() const; 00121 00127 int defaultSize(KIconLoader::Group group) const; 00128 00134 QList<int> querySizes(KIconLoader::Group group) const; 00135 00142 QStringList queryIcons(int size, KIconLoader::Context context = KIconLoader::Any) const; 00143 00150 QStringList queryIconsByContext(int size, KIconLoader::Context context = KIconLoader::Any) const; 00151 00163 K3Icon iconPath(const QString& name, int size, KIconLoader::MatchType match) const; 00164 00168 bool hasContext( KIconLoader::Context context ) const; 00169 00174 static QStringList list(); 00175 00180 static QString current(); 00181 00185 static void reconfigure(); 00186 00191 static QString defaultThemeName(); 00192 00202 enum ContextMenus { TextEditor, 00203 ReadOnlyText }; 00204 00208 static void assignIconsToContextMenu(ContextMenus type, QList<QAction*> actions); 00209 00210 private: 00211 class KIconThemePrivate; 00212 KIconThemePrivate * const d; 00213 }; 00214 00215 #endif