kshortcutlist.h
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #ifndef __KSHORTCUTLIST_H
00021 #define __KSHORTCUTLIST_H
00022 
00023 #include <qglobal.h>    
00024 #include <qstring.h>
00025 
00026 class QVariant;
00027 class KConfigBase;
00028 class KInstance;
00029 class KKeySequence;
00030 class KShortcut;
00031 
00032 
00033 
00034 
00035 
00036 
00047 class KShortcutList
00048 {
00049  public:
00053     KShortcutList();
00054     virtual ~KShortcutList();
00055 
00060     virtual uint count() const = 0;
00061 
00067     virtual QString name( uint index ) const = 0;
00068 
00074     virtual QString label( uint index ) const = 0;
00075 
00081     virtual QString whatsThis( uint index ) const = 0;
00082 
00089     virtual const KShortcut& shortcut( uint index ) const = 0;
00090 
00097     virtual const KShortcut& shortcutDefault( uint index ) const = 0;
00098 
00104     virtual bool isConfigurable( uint index ) const = 0;
00105 
00111     virtual bool setShortcut( uint index, const KShortcut &shortcut ) = 0;
00112 
00119     virtual bool isGlobal( uint index ) const;
00120 
00126     virtual int index( const QString& sName ) const;
00127 
00133     virtual int index( const KKeySequence& keySeq ) const;
00134 
00139     virtual const KInstance* instance() const;
00140 
00141     
00142     enum Other { };
00144     virtual QVariant getOther( Other, uint index ) const = 0;
00146     virtual bool setOther( Other, uint index, QVariant ) = 0;
00147 
00152     virtual bool save() const = 0;
00153 
00161     virtual bool readSettings( const QString& sConfigGroup = QString::null, KConfigBase* pConfig = 0 );
00162 
00172     virtual bool writeSettings( const QString& sConfigGroup = QString::null, KConfigBase* pConfig = 0,
00173             bool bWriteAll = false, bool bGlobal = false ) const;
00174 
00175  protected:
00177         virtual void virtual_hook( int id, void* data );
00178  private:
00179     class KShortcutListPrivate* d;
00180 };
00181 
00182 
00183 
00184 
00185 
00186 class KAccel;
00187 class KAccelActions;
00188 class KGlobalAccel;
00189 
00194 class KAccelShortcutList : public KShortcutList
00195 {
00196  public:
00201     KAccelShortcutList( KAccel* accel );
00202 
00208     KAccelShortcutList( KGlobalAccel* accel );
00209 
00218     KAccelShortcutList( KAccelActions &actions, bool bGlobal );
00219     virtual ~KAccelShortcutList();
00220 
00221     virtual uint count() const;
00222     virtual QString name( uint index ) const;
00223     virtual QString label( uint index ) const;
00224     virtual QString whatsThis( uint index ) const;
00225     virtual const KShortcut& shortcut( uint index ) const;
00226     virtual const KShortcut& shortcutDefault( uint index ) const;
00227     virtual bool isConfigurable( uint index ) const;
00228     virtual bool setShortcut( uint index , const KShortcut& shortcut );
00229     virtual bool isGlobal( uint index ) const;
00230 
00232     virtual QVariant getOther( Other, uint index ) const;
00234     virtual bool setOther( Other, uint index, QVariant );
00235 
00236     virtual bool save() const;
00237 
00238  protected:
00239     KAccelActions& m_actions;
00240     bool m_bGlobal;
00241 
00242  protected:
00243     virtual void virtual_hook( int id, void* data );
00244  private:
00245     class KAccelShortcutListPrivate* d;
00246 };
00247 
00248 namespace KStdAccel {
00249 
00250 
00251 
00252 
00257 class ShortcutList : public KShortcutList
00258 {
00259  public:
00263     ShortcutList();
00264     virtual ~ShortcutList();
00265 
00266     virtual uint count() const;
00267     virtual QString name( uint index ) const;
00268     virtual QString label( uint index ) const;
00269     virtual QString whatsThis( uint index ) const;
00270     virtual const KShortcut& shortcut( uint index ) const;
00271     virtual const KShortcut& shortcutDefault( uint index ) const;
00272     virtual bool isConfigurable( uint index ) const;
00273     virtual bool setShortcut( uint index , const KShortcut& shortcut );
00274 
00276     virtual QVariant getOther( Other, uint index ) const;
00278     virtual bool setOther( Other, uint index, QVariant );
00279 
00280     virtual bool save() const;
00281 
00282  protected:
00283     virtual void virtual_hook( int id, void* data );
00284  private:
00285     class ShortcutListPrivate* d;
00286 };
00287 }
00288 
00289 #endif // __KSHORTCUTLIST_H
 
This file is part of the documentation for kdecore Library Version 3.2.0.