Akonadi::StandardActionManager
#include <standardactionmanager.h>
Signals | |
void | actionStateUpdated () |
void | selectionsChanged (const Collection::List &selectedCollectionsList, const Collection::List &selectedFavoriteCollectionsList, const Item::List &selectedItems) |
Public Member Functions | |
StandardActionManager (KActionCollection *actionCollection, QWidget *parent=nullptr) | |
~StandardActionManager () override | |
QAction * | action (Type type) const |
void | addRecentCollection (Akonadi::Collection::Id id) const |
QAction * | createAction (Type type) |
void | createActionFolderMenu (QMenu *menu, Type type) |
void | createAllActions () |
void | interceptAction (Type type, bool intercept=true) |
Akonadi::Collection::List | selectedCollections () const |
Akonadi::Item::List | selectedItems () const |
void | setActionText (Type type, const KLocalizedString &text) |
void | setCapabilityFilter (const QStringList &capabilities) |
void | setCollectionPropertiesPageNames (const QStringList &names) |
void | setCollectionSelectionModel (QItemSelectionModel *selectionModel) |
void | setContextText (Type type, TextContext context, const KLocalizedString &text) |
void | setContextText (Type type, TextContext context, const QString &text) |
void | setFavoriteCollectionsModel (FavoriteCollectionsModel *favoritesModel) |
void | setFavoriteSelectionModel (QItemSelectionModel *selectionModel) |
void | setItemSelectionModel (QItemSelectionModel *selectionModel) |
void | setMimeTypeFilter (const QStringList &mimeTypes) |
Public Member Functions inherited from QObject | |
QObject (QObject *parent) | |
QBindable< QString > | bindableObjectName () |
bool | blockSignals (bool block) |
const QObjectList & | children () const const |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
void | dumpObjectInfo () const const |
void | dumpObjectTree () const const |
QList< QByteArray > | dynamicPropertyNames () const const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (Qt::FindChildOptions options) const const |
bool | inherits (const char *className) const const |
void | installEventFilter (QObject *filterObj) |
bool | isQuickItemType () const const |
bool | isWidgetType () const const |
bool | isWindowType () const const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const const |
void | moveToThread (QThread *targetThread) |
QString | objectName () const const |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const const |
QVariant | property (const char *name) const const |
Q_CLASSINFO (Name, Value) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUM_NS (...) | |
Q_ENUMS (...) | |
Q_FLAG (...) | |
Q_FLAG_NS (...) | |
Q_FLAGS (...) | |
Q_GADGET Q_GADGET | |
Q_GADGET_EXPORT (EXPORT_MACRO) | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
Q_MOC_INCLUDE Q_MOC_INCLUDE | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_OBJECT Q_OBJECT | |
Q_PROPERTY (...) | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
Q_SIGNAL Q_SIGNAL | |
Q_SIGNALS Q_SIGNALS | |
Q_SLOT Q_SLOT | |
Q_SLOTS Q_SLOTS | |
T | qobject_cast (const QObject *object) |
T | qobject_cast (QObject *object) |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
void | removeEventFilter (QObject *obj) |
void | setObjectName (const QString &name) |
void | setObjectName (QAnyStringView name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | setProperty (const char *name, QVariant &&value) |
bool | signalsBlocked () const const |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds interval, Qt::TimerType timerType) |
QThread * | thread () const const |
Additional Inherited Members | |
Properties inherited from QObject | |
objectName | |
Static Public Member Functions inherited from QObject | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
Protected Member Functions inherited from QObject | |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
bool | isSignalConnected (const QMetaMethod &signal) const const |
int | receivers (const char *signal) const const |
QObject * | sender () const const |
int | senderSignalIndex () const const |
virtual void | timerEvent (QTimerEvent *event) |
Detailed Description
Manages generic actions for collection and item views.
Manages generic Akonadi actions common for all types. This covers creating of the actions with appropriate labels, icons, shortcuts etc., updating the action state depending on the current selection as well as default implementations for the actual operations.
If the default implementation is not appropriate for your application you can still use the state tracking by disconnecting the triggered() signal and re-connecting it to your implementation. The actual KAction objects can be retrieved by calling createAction() or action() for that.
If the default look and feel (labels, icons, shortcuts) of the actions is not appropriate for your application, you can access them as noted above and customize them to your needs. Additionally, you can set a KLocalizedString which should be used as a action label with correct plural handling for actions operating on multiple objects with setActionText().
Finally, if you have special needs for the action states, connect to the actionStateUpdated() signal and adjust the state accordingly.
The following actions are provided (KAction name in parenthesis):
- Creation of a new collection (
akonadi_collection_create
) - Copying of selected collections (
akonadi_collection_copy
) - Deletion of selected collections (
akonadi_collection_delete
) - Synchronization of selected collections (
akonadi_collection_sync
) - Showing the collection properties dialog for the current collection (
akonadi_collection_properties
) - Copying of selected items (
akonadi_itemcopy
) - Pasting collections, items or raw data (
akonadi_paste
) - Deleting of selected items (
akonadi_item_delete
) - Managing local subscriptions (
akonadi_manage_local_subscriptions
)
The following example shows how to use standard actions in your application:
Additionally you have to add the actions to the KXMLGUI file of your application, using the names listed above.
If you only need a subset of the actions provided, you can call createAction() instead of createAllActions() for the action types you want.
If you want to use your own implementation of the actual action operation and not the default implementation, you can call interceptAction() on the action type you want to handle yourself and connect the slot with your own implementation to the triggered() signal of the action:
- Todo
- collection deleting and sync do not support multi-selection yet
Definition at line 116 of file standardactionmanager.h.
Member Enumeration Documentation
◆ TextContext
Describes the text context that can be customized.
Definition at line 170 of file standardactionmanager.h.
◆ Type
Describes the supported actions.
Enumerator | |
---|---|
CreateCollection | Creates an collection. |
CopyCollections | Copies the selected collections. |
DeleteCollections | Deletes the selected collections. |
SynchronizeCollections | Synchronizes collections. |
CollectionProperties | Provides collection properties. |
CopyItems | Copies the selected items. |
Paste | Paste collections or items. |
DeleteItems | Deletes the selected items. |
ManageLocalSubscriptions | Manages local subscriptions. |
AddToFavoriteCollections | Add the collection to the favorite collections model.
|
RemoveFromFavoriteCollections | Remove the collection from the favorite collections model.
|
RenameFavoriteCollection | Rename the collection of the favorite collections model.
|
CopyCollectionToMenu | Menu allowing to quickly copy a collection into another collection.
|
CopyItemToMenu | Menu allowing to quickly copy an item into a collection.
|
MoveItemToMenu | Menu allowing to move item into a collection.
|
MoveCollectionToMenu | Menu allowing to move a collection into another collection.
|
CutItems | Cuts the selected items.
|
CutCollections | Cuts the selected collections.
|
CreateResource | Creates a new resource.
|
DeleteResources | Deletes the selected resources.
|
ResourceProperties | Provides the resource properties.
|
SynchronizeResources | Synchronizes the selected resources.
|
ToggleWorkOffline | Toggles the work offline state of all resources.
|
CopyCollectionToDialog | Copy a collection into another collection, select the target in a dialog.
|
MoveCollectionToDialog | Move a collection into another collection, select the target in a dialog.
|
CopyItemToDialog | Copy an item into a collection, select the target in a dialog.
|
MoveItemToDialog | Move an item into a collection, select the target in a dialog.
|
SynchronizeCollectionsRecursive | Synchronizes collections in a recursive way.
|
MoveCollectionsToTrash | Moves the selected collection to trash and marks it as deleted, needs EntityDeletedAttribute.
|
MoveItemsToTrash | Moves the selected items to trash and marks them as deleted, needs EntityDeletedAttribute.
|
RestoreCollectionsFromTrash | Restores the selected collection from trash, needs EntityDeletedAttribute.
|
RestoreItemsFromTrash | Restores the selected items from trash, needs EntityDeletedAttribute.
|
MoveToTrashRestoreCollection | Move Collection to Trash or Restore it from Trash, needs EntityDeletedAttribute.
|
MoveToTrashRestoreCollectionAlternative | Helper type for MoveToTrashRestoreCollection, do not create directly. Use this to override texts of the restore action.
|
MoveToTrashRestoreItem | Move Item to Trash or Restore it from Trash, needs EntityDeletedAttribute.
|
MoveToTrashRestoreItemAlternative | Helper type for MoveToTrashRestoreItem, do not create directly. Use this to override texts of the restore action.
|
SynchronizeFavoriteCollections | Synchronize favorite collections.
|
SynchronizeCollectionTree | Synchronize collection tree.
|
LastType | Marks last action. |
Definition at line 123 of file standardactionmanager.h.
Constructor & Destructor Documentation
◆ StandardActionManager()
|
explicit |
Creates a new standard action manager.
- Parameters
-
actionCollection The action collection to operate on. parent The parent widget.
Definition at line 1804 of file standardactionmanager.cpp.
◆ ~StandardActionManager()
|
overridedefault |
Destroys the standard action manager.
Member Function Documentation
◆ action()
Returns the action of the given type, 0 if it has not been created (yet).
- Parameters
-
type action type
Definition at line 1947 of file standardactionmanager.cpp.
◆ actionStateUpdated
|
signal |
This signal is emitted whenever the action state has been updated.
In case you have special needs for changing the state of some actions, connect to this signal and adjust the action state.
◆ addRecentCollection()
void StandardActionManager::addRecentCollection | ( | Akonadi::Collection::Id | id | ) | const |
Add a collection to the global recent collection list.
- Parameters
-
id the collection ID
- Since
- 5.18
Definition at line 2044 of file standardactionmanager.cpp.
◆ createAction()
Creates the action of the given type and adds it to the action collection specified in the constructor if it does not exist yet.
The action is connected to its default implementation provided by this class.
- Parameters
-
type action to be created
Definition at line 1853 of file standardactionmanager.cpp.
◆ createActionFolderMenu()
Create a popup menu.
- Parameters
-
menu parent menu for a popup type action type
- Since
- 4.8
Definition at line 2039 of file standardactionmanager.cpp.
◆ createAllActions()
void StandardActionManager::createAllActions | ( | ) |
Convenience method to create all standard actions.
- See also
- createAction()
Definition at line 1940 of file standardactionmanager.cpp.
◆ interceptAction()
void StandardActionManager::interceptAction | ( | Type | type, |
bool | intercept = true ) |
Sets whether the default implementation for the given action type
shall be executed when the action is triggered.
- Parameters
-
type action type intercept If false
, the default implementation will be executed, iftrue
no action is taken.
- Since
- 4.6
Definition at line 1960 of file standardactionmanager.cpp.
◆ selectedCollections()
Akonadi::Collection::List StandardActionManager::selectedCollections | ( | ) | const |
Returns the list of collections that are currently selected.
The list is empty if no collection is currently selected.
- Since
- 4.6
Definition at line 1977 of file standardactionmanager.cpp.
◆ selectedItems()
Item::List StandardActionManager::selectedItems | ( | ) | const |
Returns the list of items that are currently selected.
The list is empty if no item is currently selected.
- Since
- 4.6
Definition at line 1996 of file standardactionmanager.cpp.
◆ selectionsChanged
|
signal |
This signal is emitted whenever one of the selections has changed (selected collections, selected favorites collections, selected items) This allows other action managers to update their actions accordingly (see e.g.
◆ setActionText()
void StandardActionManager::setActionText | ( | Type | type, |
const KLocalizedString & | text ) |
Sets the label of the action type
to text
, which is used during updating the action state and substituted according to the number of selected objects.
This is mainly useful to customize the label of actions that can operate on multiple objects.
- Parameters
-
type the action to set a text for text the text to display for the given action Example: acctMgr->setActionText( Akonadi::StandardActionManager::CopyItems,KLocalizedString KI18N_EXPORT ki18np(const char *singular, const char *plural)
Definition at line 1953 of file standardactionmanager.cpp.
◆ setCapabilityFilter()
void StandardActionManager::setCapabilityFilter | ( | const QStringList & | capabilities | ) |
Sets the capability filter that will be used when creating new resources.
- Parameters
-
capabilities filter for creating new resources
- Since
- 4.6
Definition at line 2029 of file standardactionmanager.cpp.
◆ setCollectionPropertiesPageNames()
void StandardActionManager::setCollectionPropertiesPageNames | ( | const QStringList & | names | ) |
Sets the page names
of the config pages that will be used by the built-in collection properties dialog.
- Parameters
-
names list of names which will be used
- Since
- 4.6
Definition at line 2034 of file standardactionmanager.cpp.
◆ setCollectionSelectionModel()
void StandardActionManager::setCollectionSelectionModel | ( | QItemSelectionModel * | selectionModel | ) |
Sets the collection selection model based on which the collection related actions should operate.
If none is set, all collection actions will be disabled.
- Parameters
-
selectionModel model to be set for collection
Definition at line 1820 of file standardactionmanager.cpp.
◆ setContextText() [1/2]
void StandardActionManager::setContextText | ( | Type | type, |
TextContext | context, | ||
const KLocalizedString & | text ) |
Sets the text
of the action type
for the given context
.
- Parameters
-
type action type context context for action text content to set for the action
- Since
- 4.6
Definition at line 2019 of file standardactionmanager.cpp.
◆ setContextText() [2/2]
void StandardActionManager::setContextText | ( | Type | type, |
TextContext | context, | ||
const QString & | text ) |
Sets the text
of the action type
for the given context
.
- Parameters
-
type action type context context for action text content to set for the action
- Since
- 4.6
Definition at line 2014 of file standardactionmanager.cpp.
◆ setFavoriteCollectionsModel()
void StandardActionManager::setFavoriteCollectionsModel | ( | FavoriteCollectionsModel * | favoritesModel | ) |
Sets the favorite collections model based on which the collection relatedactions should operate.
If none is set, the "Add to Favorite Folders" action will be disabled.
- Parameters
-
favoritesModel model for the user's favorite collections
- Since
- 4.4
Definition at line 1838 of file standardactionmanager.cpp.
◆ setFavoriteSelectionModel()
void StandardActionManager::setFavoriteSelectionModel | ( | QItemSelectionModel * | selectionModel | ) |
Sets the favorite collection selection model based on which the favorite collection related actions should operate.
If none is set, all favorite modifications actions will be disabled.
- Parameters
-
selectionModel selection model for favorite collections
- Since
- 4.4
Definition at line 1844 of file standardactionmanager.cpp.
◆ setItemSelectionModel()
void StandardActionManager::setItemSelectionModel | ( | QItemSelectionModel * | selectionModel | ) |
Sets the item selection model based on which the item related actions should operate.
If none is set, all item actions will be disabled.
- Parameters
-
selectionModel selection model for items
Definition at line 1830 of file standardactionmanager.cpp.
◆ setMimeTypeFilter()
void StandardActionManager::setMimeTypeFilter | ( | const QStringList & | mimeTypes | ) |
Sets the mime type filter that will be used when creating new resources.
- Parameters
-
mimeTypes filter for creating new resources
- Since
- 4.6
Definition at line 2024 of file standardactionmanager.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:08:30 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.