kactioncollection.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
#ifndef __kactioncollection_h__
00027
#define __kactioncollection_h__
00028
00029
#include <kaction.h>
00030
00031
#include <qkeysequence.h>
00032
#include <qobject.h>
00033
#include <qvaluelist.h>
00034
#include <qguardedptr.h>
00035
#include <kguiitem.h>
00036
#include <kshortcut.h>
00037
#include <kstdaction.h>
00038
#include <kicontheme.h>
00039
00040
class QMenuBar;
00041
class QPopupMenu;
00042
class QComboBox;
00043
class QPoint;
00044
class QIconSet;
00045
class QString;
00046
class KToolBar;
00047
00048
class KAccel;
00049
class KAccelActions;
00050
class KConfig;
00051
class KConfigBase;
00052
class KURL;
00053
class KInstance;
00054
class KToolBar;
00055
class KActionCollection;
00056
class KPopupMenu;
00057
class KMainWindow;
00058
00059
typedef QValueList<KAction *> KActionPtrList;
00060
00064 class KActionCollection :
public QObject
00065 {
00066
friend class KAction;
00067
friend class KXMLGUIClient;
00068
00069 Q_OBJECT
00070
00071
public:
00072
KActionCollection(
QWidget *parent,
const char *name = 0,
KInstance *
instance = 0 );
00078
KActionCollection(
QWidget *watch,
QObject* parent,
const char *name = 0,
KInstance *instance = 0 );
00079
KActionCollection(
const KActionCollection © );
00080
virtual ~
KActionCollection();
00081
00086
virtual void setWidget(
QWidget *widget );
00087
00095
void setAutoConnectShortcuts(
bool );
00096
00103
bool isAutoConnectShortcuts();
00104
00111
00112
00117
bool addDocCollection(
KActionCollection* pDoc );
00118
00120
00121
00127
00128
00130
virtual KAccel*
accel() KDE_DEPRECATED;
00132
virtual const KAccel*
accel()
const KDE_DEPRECATED;
00133
00135
KAccel*
kaccel();
00137
const KAccel*
kaccel()
const;
00138
00140
KAccel* builderKAccel()
const;
00142
00143
00144
00146
virtual uint
count()
const;
00147
bool isEmpty()
const {
return count() == 0; }
00152
virtual KAction*
action(
int index )
const;
00160
virtual KAction*
action(
const char* name,
const char* classname = 0 )
const;
00161
00166
virtual QStringList groups()
const;
00171
virtual KActionPtrList
actions(
const QString& group )
const;
00173
virtual KActionPtrList
actions()
const;
00174
00178
bool readShortcutSettings(
const QString& sConfigGroup = QString::null,
KConfigBase* pConfig = 0 );
00182
bool writeShortcutSettings(
const QString& sConfigGroup = QString::null,
KConfigBase* pConfig = 0 )
const;
00183
00184
void setInstance(
KInstance *instance );
00186
KInstance *
instance()
const;
00187
00191
void setXMLFile(
const QString& );
00195
const QString&
xmlFile()
const;
00196
00205
void setHighlightingEnabled(
bool enable );
00214
bool highlightingEnabled()
const;
00215
00226
void connectHighlight(
QWidget *container,
KAction *
action );
00237
void disconnectHighlight(
QWidget *container,
KAction *action );
00238
00242
const KXMLGUIClient *
parentGUIClient()
const;
00243
00244 signals:
00245
void inserted(
KAction* );
00246
void removed(
KAction* );
00247
00255
void actionHighlighted(
KAction *action );
00263
void actionHighlighted(
KAction *action,
bool highlight );
00264
00265
void actionStatusText(
const QString &text );
00266
void clearStatusText();
00267
00268
private:
00275
void beginXMLPlug(
QWidget *widget );
00276
void endXMLPlug();
00278
void prepareXMLUnplug();
00279
void unplugShortcuts(
KAccel*
kaccel );
00280
00281
void _clear();
00282
void _insert(
KAction* );
00283
void _remove(
KAction* );
00284
KAction* _take(
KAction* );
00285
00286
private slots:
00287
void slotMenuItemHighlighted(
int id );
00288
void slotToolBarButtonHighlighted(
int id,
bool highlight );
00289
void slotMenuAboutToHide();
00290
void slotDestroyed();
00291
00292
private:
00293
KAction *findAction(
QWidget *container,
int id );
00294
00295
#ifndef KDE_NO_COMPAT
00296
public:
00297
KActionCollection(
QObject *parent,
const char *name = 0,
KInstance *instance = 0 );
00298
#endif
00299
00300
public:
00311
void insert(
KAction* action);
00312
00319
void remove(
KAction* action );
00320
00328
KAction*
take(
KAction* action );
00329
00330
#ifndef KDE_NO_COMPAT
00331
KActionCollection operator+ (
const KActionCollection& )
const;
00332
KActionCollection& operator= (
const KActionCollection& );
00333
KActionCollection& operator+= (
const KActionCollection& );
00334
00335
public slots:
00340
void clear();
00341
#endif // !KDE_NO_COMPAT
00342
protected:
00343
virtual void virtual_hook(
int id,
void* data );
00344
private:
00345
KActionCollection(
const char* name,
const KXMLGUIClient* parent );
00346
class KActionCollectionPrivate;
00347 KActionCollectionPrivate *d;
00348 };
00349
00350
#endif
This file is part of the documentation for kdeui Library Version 3.3.1.