KDEUI
kguiitem.h
Go to the documentation of this file.00001 /* This file is part of the KDE libraries 00002 Copyright (C) 2001 Holger Freyther (freyher@yahoo.com) 00003 based on ideas from Martijn and Simon 00004 00005 This library is free software; you can redistribute it and/or 00006 modify it under the terms of the GNU Library General Public 00007 License version 2 as published by the Free Software Foundation. 00008 00009 This library is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00012 Library General Public License for more details. 00013 00014 You should have received a copy of the GNU Library General Public License 00015 along with this library; see the file COPYING.LIB. If not, write to 00016 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00017 Boston, MA 02110-1301, USA. 00018 00019 Many thanks to Simon tronical Hausmann 00020 */ 00021 00022 #ifndef kguiitem_h 00023 #define kguiitem_h 00024 00025 #include <QtCore/QString> 00026 00027 #include <kicontheme.h> 00028 #include <kicon.h> 00029 00036 class KDEUI_EXPORT KGuiItem 00037 { 00038 public: 00039 KGuiItem(); 00040 00041 // This is explicit because it's easy to get subtle bugs otherwise. The 00042 // icon name, tooltip and whatsthis text get changed behind your back if 00043 // you do 'setButtonFoo( "Bar" );' It gives the wrong impression that you 00044 // just change the text. 00045 explicit KGuiItem( const QString &text, 00046 const QString &iconName = QString(), 00047 const QString &toolTip = QString(), 00048 const QString &whatsThis = QString() ); 00049 00050 KGuiItem( const QString &text, const KIcon &icon, 00051 const QString &toolTip = QString(), 00052 const QString &whatsThis = QString() ); 00053 00054 KGuiItem( const KGuiItem &rhs ); 00055 KGuiItem &operator=( const KGuiItem &rhs ); 00056 00057 ~KGuiItem(); 00058 00059 QString text() const; 00060 QString plainText() const; 00061 00063 KDE_DEPRECATED QIcon iconSet( KIconLoader::Group=KIconLoader::Small, int size = 0) const; 00064 00065 KIcon icon( ) const; 00066 00067 QString iconName() const; 00068 QString toolTip() const; 00069 QString whatsThis() const; 00070 bool isEnabled() const; 00071 bool hasIcon() const; 00072 #ifndef KDE_NO_COMPAT 00073 KDE_DEPRECATED bool hasIconSet() const { return hasIcon(); } 00074 #endif 00075 00076 void setText( const QString &text ); 00077 void setIcon( const KIcon &iconset ); 00078 void setIconName( const QString &iconName ); 00079 void setToolTip( const QString &tooltip ); 00080 void setWhatsThis( const QString &whatsThis ); 00081 void setEnabled( bool enable ); 00082 00083 private: 00084 class KGuiItemPrivate; 00085 KGuiItemPrivate *d; //krazy:exclude=dpointer (implicitly shared) 00086 }; 00087 00088 /* vim: et sw=4 00089 */ 00090 00091 #endif 00092