Akonadi Contacts
standardcontactactionmanager.cpp
32 StandardContactActionManagerPrivate(KActionCollection *actionCollection, QWidget *parentWidget, StandardContactActionManager *parent)
38 mParent->connect(mGenericManager, &StandardActionManager::actionStateUpdated, mParent, &StandardContactActionManager::actionStateUpdated);
40 mGenericManager->setMimeTypeFilter(QStringList() << KContacts::Addressee::mimeType() << KContacts::ContactGroup::mimeType());
95 mGenericManager->action(Akonadi::StandardActionManager::CreateCollection)->setText(i18n("Add Address Book Folder..."));
98 ->setWhatsThis(i18n("Add a new address book folder to the currently selected address book folder."));
111 ->setProperty("ContentMimeTypes", QStringList() << QStringLiteral("application/x-vnd.kde.contactgroup") << QStringLiteral("text/directory"));
115 mGenericManager->setActionText(Akonadi::StandardActionManager::CopyCollections, ki18np("Copy Address Book Folder", "Copy %1 Address Book Folders"));
148 mGenericManager->setActionText(Akonadi::StandardActionManager::CutCollections, ki18np("Cut Address Book Folder", "Cut %1 Address Book Folders"));
153 mGenericManager->action(Akonadi::StandardActionManager::CollectionProperties)->setText(i18n("Folder Properties..."));
155 ->setWhatsThis(i18n("Open a dialog to edit the properties of the selected address book folder."));
161 mGenericManager->setActionText(Akonadi::StandardActionManager::CopyItems, ki18np("Copy Contact", "Copy %1 Contacts"));
162 mGenericManager->action(Akonadi::StandardActionManager::CopyItems)->setWhatsThis(i18n("Copy the selected contacts to the clipboard."));
165 mGenericManager->setActionText(Akonadi::StandardActionManager::DeleteItems, ki18np("Delete Contact", "Delete %1 Contacts"));
166 mGenericManager->action(Akonadi::StandardActionManager::DeleteItems)->setWhatsThis(i18n("Delete the selected contacts from the address book."));
169 ki18np("Do you really want to delete the selected contact?", "Do you really want to delete %1 contacts?"));
175 mGenericManager->setContextText(StandardActionManager::DeleteItems, StandardActionManager::ErrorMessageText, ki18n("Could not delete contact: %1"));
177 mGenericManager->setContextText(StandardActionManager::DeleteItems, StandardActionManager::ErrorMessageTitle, i18n("Contact deletion failed"));
180 mGenericManager->setActionText(Akonadi::StandardActionManager::CutItems, ki18np("Cut Contact", "Cut %1 Contacts"));
181 mGenericManager->action(Akonadi::StandardActionManager::CutItems)->setWhatsThis(i18n("Cut the selected contacts from the address book."));
184 mGenericManager->action(Akonadi::StandardActionManager::CreateResource)->setText(i18n("Add &Address Book..."));
203 mGenericManager->setActionText(Akonadi::StandardActionManager::DeleteResources, ki18np("&Delete Address Book", "&Delete %1 Address Books"));
210 ki18np("Do you really want to delete this address book?", "Do you really want to delete %1 address books?"));
219 mGenericManager->action(Akonadi::StandardActionManager::ResourceProperties)->setText(i18n("Address Book Properties..."));
224 mGenericManager->setActionText(Akonadi::StandardActionManager::SynchronizeResources, ki18np("Update Address Book", "Update %1 Address Books"));
231 mGenericManager->setContextText(StandardActionManager::Paste, StandardActionManager::ErrorMessageText, ki18n("Could not paste contact: %1"));
233 mGenericManager->setContextText(StandardActionManager::Paste, StandardActionManager::ErrorMessageTitle, i18n("Paste failed"));
242 const auto collection = index.data(Akonadi::EntityTreeModel::CollectionRole).value<Akonadi::Collection>();
244 if (collection.contentMimeTypes().contains(mimeType) && (collection.rights() & Akonadi::Collection::CanCreateItem)) {
290 mGenericManager->setActionText(Akonadi::StandardActionManager::CopyItems, ki18np("Copy Contact", "Copy %1 Contacts"));
301 mGenericManager->setActionText(Akonadi::StandardActionManager::DeleteItems, ki18np("Delete Contact", "Delete %1 Contacts"));
304 mGenericManager->setActionText(Akonadi::StandardActionManager::CutItems, ki18np("Cut Contact", "Cut %1 Contacts"));
320 mGenericManager->setActionText(Akonadi::StandardActionManager::CopyItems, ki18np("Copy Group", "Copy %1 Groups"));
331 mGenericManager->setActionText(Akonadi::StandardActionManager::DeleteItems, ki18np("Delete Group", "Delete %1 Groups"));
334 mGenericManager->setActionText(Akonadi::StandardActionManager::CutItems, ki18np("Cut Group", "Cut %1 Groups"));
354 mActions[StandardContactActionManager::CreateContact]->setEnabled(hasWritableCollection(KContacts::Addressee::mimeType()));
357 mActions[StandardContactActionManager::CreateContactGroup]->setEnabled(hasWritableCollection(KContacts::ContactGroup::mimeType()));
370 const auto parentCollection = index.data(EntityTreeModel::ParentCollectionRole).value<Collection>();
406 QPointer<Akonadi::ContactEditorDialog> dlg = new Akonadi::ContactEditorDialog(Akonadi::ContactEditorDialog::CreateMode, mParentWidget);
418 QPointer<Akonadi::ContactGroupEditorDialog> dlg = new Akonadi::ContactGroupEditorDialog(Akonadi::ContactGroupEditorDialog::CreateMode, mParentWidget);
449 QPointer<Akonadi::ContactEditorDialog> dlg = new Akonadi::ContactEditorDialog(Akonadi::ContactEditorDialog::EditMode, mParentWidget);
450 QObject::connect(dlg.data(), &ContactEditorDialog::error, mParent, [this](const QString &error) {
457 QPointer<Akonadi::ContactGroupEditorDialog> dlg = new Akonadi::ContactGroupEditorDialog(Akonadi::ContactGroupEditorDialog::EditMode, mParentWidget);
466 KMessageBox::error(mParentWidget, i18n("Contact cannot be stored: %1", error), i18n("Failed to store contact"));
479 StandardContactActionManager::StandardContactActionManager(KActionCollection *actionCollection, QWidget *parent)
487 void StandardContactActionManager::setCollectionSelectionModel(QItemSelectionModel *selectionModel)
530 "Create a new contact<p>You will be presented with a dialog where you can add data about a person, including addresses and phone numbers.</p>"));
542 action->setWhatsThis(i18n("Create a new group<p>You will be presented with a dialog where you can add a new group of contacts.</p>"));
555 i18n("Edit the selected contact<p>You will be presented with a dialog where you can edit the data stored about a person, including addresses and "
609 void StandardContactActionManager::setActionText(StandardActionManager::Type type, const KLocalizedString &text)
623 void StandardContactActionManager::interceptAction(StandardActionManager::Type type, bool intercept)
bool isValid() const
void createAllActions()
Convenience method to create all standard actions.
Definition: standardcontactactionmanager.cpp:583
void setItemSelectionModel(QItemSelectionModel *selectionModel)
Sets the item selection model based on which the item related actions should operate.
Definition: standardcontactactionmanager.cpp:505
@ EditItem
Edits the selected contact resp. contact group.
Definition: standardcontactactionmanager.h:46
void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
virtual int rowCount(const QModelIndex &parent) const const=0
KLocalizedString KI18N_EXPORT ki18nc(const char *context, const char *text)
SynchronizeFavoriteCollections
const QAbstractItemModel * model() const const
CanChangeItem
CanCreateItem
void error(const QString &errMsg)
This signal is emitted whenever a contact is not updated or stored.
ErrorMessageTitle
T value() const const
QIcon fromTheme(const QString &name)
MoveToTrashRestoreCollectionAlternative
KCALUTILS_EXPORT QString mimeType()
StandardContactActionManager(KActionCollection *actionCollection, QWidget *parent=nullptr)
Creates a new standard contact action manager.
Definition: standardcontactactionmanager.cpp:479
ToggleWorkOffline
QAction * action(Type type) const
Returns the action of the given type, 0 if it has not been created (yet).
Definition: standardcontactactionmanager.cpp:595
void setActionText(StandardActionManager::Type type, const KLocalizedString &text)
Sets the label of the action type to text, which is used during updating the action state and substit...
Definition: standardcontactactionmanager.cpp:609
CopyCollectionToDialog
QMetaObject::Connection connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
void actionStateUpdated()
CollectionProperties
RemoveFromFavoriteCollections
ResourceProperties
Akonadi::Item::List selectedItems() const
Returns the list of items that are currently selected.
Definition: standardcontactactionmanager.cpp:633
QVariant data(int role) const const
void setIcon(const QIcon &icon)
RestoreCollectionsFromTrash
QString i18n(const char *text, const TYPE &arg...)
KLocalizedString KI18N_EXPORT ki18ncp(const char *context, const char *singular, const char *plural)
SynchronizeCollectionsRecursive
MimeTypeRole
RestoreItemsFromTrash
void setCollectionSelectionModel(QItemSelectionModel *selectionModel)
Sets the collection selection model based on which the collection related actions should operate.
Definition: standardcontactactionmanager.cpp:487
CollectionRole
Akonadi::Collection::List selectedCollections() const
Returns the list of collections that are currently selected.
Definition: standardcontactactionmanager.cpp:628
AddToFavoriteCollections
void setEnabled(bool enabled)
void setText(const QString &text)
CopyItemToDialog
SynchronizeResources
KLocalizedString KI18N_EXPORT ki18n(const char *text)
static QString mimeType()
Key_N
A dialog for creating or editing a contact group in Akonadi.
Definition: contactgroupeditordialog.h:62
bool isValid() const const
void setWhatsThis(const QString &what)
CopyCollections
DeleteResources
void interceptAction(Type type, bool intercept=true)
Sets whether the default implementation for the given action type shall be executed when the action i...
Definition: standardcontactactionmanager.cpp:614
MessageBoxTitle
void error(QWidget *parent, const QString &text, const QString &title, const KGuiItem &buttonOk, Options options=Notify)
CopyCollectionToMenu
A dialog for creating or editing a contact in Akonadi.
Definition: contacteditordialog.h:67
void triggered(bool checked)
MessageBoxText
void setCollectionPropertiesPageNames(const QStringList &names)
Definition: standardcontactactionmanager.cpp:638
DialogTitle
void rowsInserted(const QModelIndex &parent, int first, int last)
void setEnabled(bool)
CutCollections
void rowsRemoved(const QModelIndex &parent, int first, int last)
CreateResource
ManageLocalSubscriptions
MoveItemToDialog
CTRL
Manages contact specific actions for collection and item views.
Definition: standardcontactactionmanager.h:35
virtual QModelIndex index(int row, int column, const QModelIndex &parent) const const=0
KLocalizedString KI18N_EXPORT ki18np(const char *singular, const char *plural)
QString i18nc(const char *context, const char *text, const TYPE &arg...)
DeleteCollections
MoveToTrashRestoreCollection
CopyItemToMenu
MoveCollectionToMenu
bool isWantedItem(const Item &item) const
void actionStateUpdated()
This signal is emitted whenever the action state has been updated.
DeleteItems
T * data() const const
ErrorMessageText
ParentCollectionRole
MoveToTrashRestoreItemAlternative
MoveToTrashRestoreItem
CreateCollection
RenameFavoriteCollection
MoveCollectionsToTrash
const QAbstractItemModel * model() const const
MoveItemsToTrash
MoveCollectionToDialog
SynchronizeCollections
QAction * createAction(Type type)
Creates the action of the given type and adds it to the action collection specified in the constructo...
Definition: standardcontactactionmanager.cpp:517
MoveItemToMenu
static QString mimeType()
QString toString() const const
~StandardContactActionManager() override
Destroys the standard contact action manager.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Sat Apr 1 2023 04:09:05 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2023 The KDE developers.
Generated on Sat Apr 1 2023 04:09:05 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.