• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdelibs API Reference
  • KDE Home
  • Contact Us
 

KDEUI

  • sources
  • kde-4.14
  • kdelibs
  • kdeui
  • icons
kiconloader.h
Go to the documentation of this file.
1 /* vi: ts=8 sts=4 sw=4
2  *
3  * This file is part of the KDE project, module kdecore.
4  * Copyright (C) 2000 Geert Jansen <jansen@kde.org>
5  * Antonio Larrosa <larrosa@kde.org>
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Library General Public
9  * License version 2 as published by the Free Software Foundation.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Library General Public License for more details.
15  *
16  * You should have received a copy of the GNU Library General Public License
17  * along with this library; see the file COPYING.LIB. If not, write to
18  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19  * Boston, MA 02110-1301, USA.
20  */
21 
22 #ifndef KICONLOADER_H
23 #define KICONLOADER_H
24 
25 #include <QtCore/QString>
26 #include <QtCore/QStringList>
27 #include <QtCore/QObject>
28 
29 #include <kglobal.h>
30 #include <kdeui_export.h>
31 
32 class QIcon;
33 class QMovie;
34 class QPixmap;
35 
36 class KComponentData;
37 class KIconLoaderPrivate;
38 class KStandardDirs;
39 class KIconEffect;
40 class KIconTheme;
41 
77 class KDEUI_EXPORT KIconLoader : public QObject
78 {
79  Q_OBJECT
80  Q_ENUMS(Context)
81  Q_ENUMS(Type)
82  Q_ENUMS(MatchType)
83  Q_ENUMS(Group)
84  Q_ENUMS(StdSizes)
85  Q_ENUMS(States)
86 
87 public:
91  enum Context {
92  Any,
93  Action,
94  Application,
95  Device,
96  FileSystem,
97  MimeType,
98  Animation,
99  Category,
100  Emblem,
101  Emote,
102  International,
103  Place,
104  StatusIcon
105  };
106 
110  enum Type {
111  Fixed,
112  Scalable,
113  Threshold
114  };
115 
119  enum MatchType {
120  MatchExact,
121  MatchBest
122  };
123 
127  enum Group {
129  NoGroup=-1,
131  Desktop=0,
133  FirstGroup=0,
135  Toolbar,
137  MainToolbar,
139  Small,
141  Panel,
143  Dialog,
145  LastGroup,
147  User
148  };
149 
153  enum StdSizes {
155  SizeSmall=16,
157  SizeSmallMedium=22,
159  SizeMedium=32,
161  SizeLarge=48,
163  SizeHuge=64,
165  SizeEnormous=128
166  };
167 
171  enum States {
172  DefaultState,
173  ActiveState,
174  DisabledState,
175  LastState
176  };
177 
190  explicit KIconLoader(const QString& appname=QString(), KStandardDirs *dirs = 0, QObject* parent = 0);
191 
201  explicit KIconLoader(const KComponentData &componentData, QObject* parent = 0);
202 
206  ~KIconLoader();
207 
212  static KIconLoader* global();
213 
218  void addAppDir(const QString& appname);
219 
249  QPixmap loadIcon(const QString& name, KIconLoader::Group group, int size=0,
250  int state=KIconLoader::DefaultState, const QStringList &overlays = QStringList(),
251  QString *path_store=0L,
252  bool canReturnNull=false) const;
253 
273  QPixmap loadMimeTypeIcon( const QString& iconName, KIconLoader::Group group, int size=0,
274  int state=KIconLoader::DefaultState, const QStringList &overlays = QStringList(),
275  QString *path_store=0 ) const;
276 
294 #ifndef KDE_NO_DEPRECATED
295  KDE_DEPRECATED QIcon loadIconSet(const QString& name, KIconLoader::Group group, int size = 0,
296  bool canReturnNull = false);
297 #endif
298 
313  QString iconPath(const QString& name, int group_or_size,
314  bool canReturnNull=false) const;
315 
326  QMovie *loadMovie(const QString& name, KIconLoader::Group group, int size=0, QObject *parent=0) const;
327 
337  QString moviePath(const QString& name, KIconLoader::Group group, int size=0) const;
338 
349  QStringList loadAnimated(const QString& name, KIconLoader::Group group, int size=0) const;
350 
361  QStringList queryIcons(int group_or_size, KIconLoader::Context context=KIconLoader::Any) const;
362 
374  QStringList queryIconsByContext(int group_or_size,
375  KIconLoader::Context context=KIconLoader::Any) const;
376 
380  bool hasContext( KIconLoader::Context context ) const;
381 
388  QStringList queryIconsByDir( const QString& iconsDir ) const;
389 
399  int currentSize(KIconLoader::Group group) const;
400 
408  KIconTheme *theme() const;
409 
414  KIconEffect *iconEffect() const;
415 
422  void reconfigure( const QString& _appname, KStandardDirs *_dirs );
423 
429  static QPixmap unknown();
430 
438  bool alphaBlending( KIconLoader::Group group ) const;
439 
444  void addExtraDesktopThemes();
445 
450  bool extraDesktopThemesAdded() const;
451 
459  void drawOverlays(const QStringList &overlays, QPixmap &pixmap, KIconLoader::Group group, int state = KIconLoader::DefaultState) const;
460 
461  public Q_SLOTS:
465  void newIconLoader();
466 
467 Q_SIGNALS:
471  void iconLoaderSettingsChanged();
472 
473  private:
474  // @internal the data object
475  KIconLoaderPrivate *d;
476 };
477 
482 KDEUI_EXPORT QPixmap DesktopIcon(const QString& name, int size=0,
483  int state=KIconLoader::DefaultState, const QStringList& overlays = QStringList());
484 
490 #ifndef KDE_NO_DEPRECATED
491 KDEUI_EXPORT_DEPRECATED QIcon DesktopIconSet(const QString& name, int size=0);
492 #endif
493 
498 KDEUI_EXPORT QPixmap BarIcon(const QString& name, int size=0, int state=KIconLoader::DefaultState,
499  const QStringList& overlays = QStringList());
500 
506 #ifndef KDE_NO_DEPRECATED
507 KDEUI_EXPORT_DEPRECATED QIcon BarIconSet(const QString& name, int size=0);
508 #endif
509 
514 KDEUI_EXPORT QPixmap SmallIcon(const QString& name, int size=0,
515  int state=KIconLoader::DefaultState, const QStringList &overlays = QStringList());
516 
522 #ifndef KDE_NO_DEPRECATED
523 KDEUI_EXPORT_DEPRECATED QIcon SmallIconSet(const QString& name, int size=0);
524 #endif
525 
530 KDEUI_EXPORT QPixmap MainBarIcon(const QString& name, int size=0,
531  int state=KIconLoader::DefaultState, const QStringList &overlays = QStringList());
532 
538 #ifndef KDE_NO_DEPRECATED
539 KDEUI_EXPORT_DEPRECATED QIcon MainBarIconSet(const QString& name, int size=0);
540 #endif
541 
546 KDEUI_EXPORT QPixmap UserIcon(const QString& name, int state=KIconLoader::DefaultState, const QStringList &overlays = QStringList());
547 
553 #ifndef KDE_NO_DEPRECATED
554 KDEUI_EXPORT_DEPRECATED QIcon UserIconSet(const QString& name);
555 #endif
556 
561 KDEUI_EXPORT int IconSize(KIconLoader::Group group);
562 
563 inline KIconLoader::Group& operator++(KIconLoader::Group& group) { group = static_cast<KIconLoader::Group>(group+1); return group; }
564 inline KIconLoader::Group operator++(KIconLoader::Group& group,int) { KIconLoader::Group ret = group; ++group; return ret; }
565 
566 #endif // KICONLOADER_H
KIconLoader::DefaultState
The default state.
Definition: kiconloader.h:172
KIconLoader::MimeType
An icon that represents a mime type (or file type).
Definition: kiconloader.h:97
KIconLoader::IconSize
int IconSize(KIconLoader::Group group)
Definition: kiconloader.cpp:1598
KIconLoader::MainBarIcon
QPixmap MainBarIcon(const QString &name, int size=0, int state=KIconLoader::DefaultState, const QStringList &overlays=QStringList())
Definition: kiconloader.cpp:1568
KIconLoader::Emote
An icon that expresses an emotion.
Definition: kiconloader.h:101
KIconLoader::Scalable
Scalable-size icon.
Definition: kiconloader.h:112
QMovie
KStandardAction::name
const char * name(StandardAction id)
This will return the internal name of a given standard action.
Definition: kstandardaction.cpp:223
KIconLoader::Place
An icon that represents a location (e.g. 'home', 'trash').
Definition: kiconloader.h:103
KIconLoader::Animation
An icon that is animated.
Definition: kiconloader.h:98
KIconLoader::UserIconSet
QIcon UserIconSet(const QString &name)
Definition: kiconloader.cpp:1591
KIconLoader::SmallIcon
QPixmap SmallIcon(const QString &name, int size=0, int state=KIconLoader::DefaultState, const QStringList &overlays=QStringList())
Definition: kiconloader.cpp:1553
operator++
KIconLoader::Group & operator++(KIconLoader::Group &group)
Definition: kiconloader.h:563
KIconLoader::International
An icon that represents a country's flag.
Definition: kiconloader.h:102
KIconLoader::Any
Some icon with unknown purpose.
Definition: kiconloader.h:92
KIconLoader::DisabledState
Icon is disabled.
Definition: kiconloader.h:174
kglobal.h
KIconLoader::Panel
Panel (Plasma Taskbar) icons.
Definition: kiconloader.h:141
KIconLoader::Small
Small icons, e.g. for buttons.
Definition: kiconloader.h:139
KIconLoader::Category
An icon that represents a category.
Definition: kiconloader.h:99
KIconLoader::ActiveState
Icon is active.
Definition: kiconloader.h:173
QObject
KIconLoader::LastGroup
Last group.
Definition: kiconloader.h:145
KStandardDirs
KIconLoader::FileSystem
An icon that represents a file system.
Definition: kiconloader.h:96
KIconLoader::Dialog
Icons for use in dialog titles, page lists, etc.
Definition: kiconloader.h:143
KIconLoader::SmallIconSet
QIcon SmallIconSet(const QString &name, int size=0)
Definition: kiconloader.cpp:1561
QString
KIconLoader::Action
An action icon (e.g. 'save', 'print').
Definition: kiconloader.h:93
QStringList
KIconLoader::Type
Type
The type of the icon.
Definition: kiconloader.h:110
QPixmap
KIconLoader::DesktopIcon
QPixmap DesktopIcon(const QString &name, int size=0, int state=KIconLoader::DefaultState, const QStringList &overlays=QStringList())
Definition: kiconloader.cpp:1523
KIconLoader::MainToolbar
Main toolbar icons.
Definition: kiconloader.h:137
KIconLoader::UserIcon
QPixmap UserIcon(const QString &name, int state=KIconLoader::DefaultState, const QStringList &overlays=QStringList())
Definition: kiconloader.cpp:1583
KIconLoader::BarIconSet
QIcon BarIconSet(const QString &name, int size=0)
Definition: kiconloader.cpp:1546
KIconLoader::MatchType
MatchType
The type of a match.
Definition: kiconloader.h:119
KIconLoader::MainBarIconSet
QIcon MainBarIconSet(const QString &name, int size=0)
Definition: kiconloader.cpp:1576
KIconLoader::StdSizes
StdSizes
These are the standard sizes for icons.
Definition: kiconloader.h:153
KIconLoader::Application
An icon that represents an application.
Definition: kiconloader.h:94
KIconLoader::Toolbar
Toolbar icons.
Definition: kiconloader.h:135
KIconLoader::Device
An icon that represents a device.
Definition: kiconloader.h:95
KIconLoader::States
States
Defines the possible states of an icon.
Definition: kiconloader.h:171
KIconLoader::Context
Context
Defines the context of the icon.
Definition: kiconloader.h:91
KIconLoader::MatchExact
Only try to find an exact match.
Definition: kiconloader.h:120
KIconLoader::Group
Group
The group of the icon.
Definition: kiconloader.h:127
kdeui_export.h
KIconLoader::Fixed
Fixed-size icon.
Definition: kiconloader.h:111
KIconEffect
Applies effects to icons.
Definition: kiconeffect.h:47
KIconTheme
Definition: kicontheme.h:46
KComponentData
KIconLoader::DesktopIconSet
QIcon DesktopIconSet(const QString &name, int size=0)
Definition: kiconloader.cpp:1531
QIcon
KIconLoader
Iconloader for KDE.
Definition: kiconloader.h:77
KIconLoader::Emblem
An icon that adds information to an existing icon.
Definition: kiconloader.h:100
KIconLoader::BarIcon
QPixmap BarIcon(const QString &name, int size=0, int state=KIconLoader::DefaultState, const QStringList &overlays=QStringList())
Definition: kiconloader.cpp:1538
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:23:59 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KDEUI

Skip menu "KDEUI"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules
  • Related Pages

kdelibs API Reference

Skip menu "kdelibs API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal