akonadi
standardactionmanager.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef AKONADI_STANDARDACTIONMANAGER_H
00021 #define AKONADI_STANDARDACTIONMANAGER_H
00022
00023 #include "akonadi_export.h"
00024
00025 #include <QtCore/QObject>
00026
00027 class KAction;
00028 class KActionCollection;
00029 class KLocalizedString;
00030 class QItemSelectionModel;
00031 class QWidget;
00032
00033 namespace Akonadi {
00034
00089 class AKONADI_EXPORT StandardActionManager : public QObject
00090 {
00091 Q_OBJECT
00092 public:
00096 enum Type {
00097 CreateCollection,
00098 CopyCollections,
00099 DeleteCollections,
00100 SynchronizeCollections,
00101 CollectionProperties,
00102 CopyItems,
00103 Paste,
00104 DeleteItems,
00105 ManageLocalSubscriptions,
00106 LastType
00107 };
00108
00115 explicit StandardActionManager( KActionCollection *actionCollection, QWidget *parent = 0 );
00116
00120 ~StandardActionManager();
00121
00127 void setCollectionSelectionModel( QItemSelectionModel *selectionModel );
00128
00133 void setItemSelectionModel( QItemSelectionModel* selectionModel );
00134
00140 KAction* createAction( Type type );
00141
00146 void createAllActions();
00147
00151 KAction* action( Type type ) const;
00152
00165 void setActionText( Type type, const KLocalizedString &text );
00166
00167 Q_SIGNALS:
00173 void actionStateUpdated();
00174
00175 private:
00176
00177 class Private;
00178 Private* const d;
00179
00180 Q_PRIVATE_SLOT( d, void updateActions() )
00181 Q_PRIVATE_SLOT( d, void clipboardChanged(QClipboard::Mode) )
00182
00183 Q_PRIVATE_SLOT( d, void slotCreateCollection() )
00184 Q_PRIVATE_SLOT( d, void slotCopyCollections() )
00185 Q_PRIVATE_SLOT( d, void slotDeleteCollection() )
00186 Q_PRIVATE_SLOT( d, void slotSynchronizeCollection() )
00187 Q_PRIVATE_SLOT( d, void slotCollectionProperties() )
00188 Q_PRIVATE_SLOT( d, void slotCopyItems() )
00189 Q_PRIVATE_SLOT( d, void slotPaste() )
00190 Q_PRIVATE_SLOT( d, void slotDeleteItems() )
00191 Q_PRIVATE_SLOT( d, void slotLocalSubscription() )
00192
00193 Q_PRIVATE_SLOT( d, void collectionCreationResult(KJob*) )
00194 Q_PRIVATE_SLOT( d, void collectionDeletionResult(KJob*) )
00195 Q_PRIVATE_SLOT( d, void pasteResult(KJob*) )
00196
00197 };
00198
00199 }
00200
00201 #endif