[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdepim/mobile
From: Tobias Koenig <tokoe () kde ! org>
Date: 2010-12-02 14:58:49
Message-ID: 20101202145849.5ECA6AC8A4 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1202855 by tokoe:
Overwrite action texts for StandardXYZActionManagers which
set the texts depending on the mime type of the selected item.
M +31 -0 calendar/mainview.cpp
M +1 -0 calendar/mainview.h
M +25 -0 contacts/mainview.cpp
M +1 -0 contacts/mainview.h
M +31 -0 tasks/mainview.cpp
M +1 -0 tasks/mainview.h
--- trunk/KDE/kdepim/mobile/calendar/mainview.cpp #1202854:1202855
@@ -375,6 +375,7 @@
this, SLOT( newTodo() ) );
connect( mActionManager->action( \
Akonadi::StandardCalendarActionManager::EditIncidence ), SIGNAL( triggered( bool ) ), \
this, SLOT( editIncidence() ) ); + connect( mActionManager, SIGNAL( \
actionStateUpdated() ), SLOT( updateActionTexts() ) );
ActionHelper::adaptStandardActionTexts( mActionManager );
@@ -394,6 +395,36 @@
mActionManager->setCollectionPropertiesPageNames( pages );
}
+void MainView::updateActionTexts()
+{
+ const Akonadi::Item::List items = mActionManager->selectedItems();
+ if ( items.count() < 1 )
+ return;
+
+ const int itemCount = items.count();
+ const Akonadi::Item item = items.first();
+ const QString mimeType = item.mimeType();
+ if ( mimeType == KCalCore::Event::eventMimeType() ) {
+ actionCollection()->action( "akonadi_item_copy" )->setText( ki18np( "Copy \
Event", "Copy %1 Events" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_copy_to_dialog" )->setText( i18n( "Copy \
Event To" ) ); + actionCollection()->action( "akonadi_item_delete" )->setText( \
ki18np( "Delete Event", "Delete %1 Events" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_move_to_dialog" )->setText( i18n( "Move \
Event To" ) ); + actionCollection()->action( "akonadi_incidence_edit" )->setText( \
i18n( "Edit Event" ) ); + } else if ( mimeType == KCalCore::Todo::todoMimeType() ) {
+ actionCollection()->action( "akonadi_item_copy" )->setText( ki18np( "Copy Task", \
"Copy %1 Tasks" ).subs( itemCount ).toString() ); + actionCollection()->action( \
"akonadi_item_copy_to_dialog" )->setText( i18n( "Copy Task To" ) ); + \
actionCollection()->action( "akonadi_item_delete" )->setText( ki18np( "Delete Task", \
"Delete %1 Tasks" ).subs( itemCount ).toString() ); + actionCollection()->action( \
"akonadi_item_move_to_dialog" )->setText( i18n( "Move Task To" ) ); + \
actionCollection()->action( "akonadi_incidence_edit" )->setText( i18n( "Edit Task" ) \
); + } else if ( mimeType == KCalCore::Journal::journalMimeType() ) {
+ actionCollection()->action( "akonadi_item_copy" )->setText( ki18np( "Copy \
Journal", "Copy %1 Journals" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_copy_to_dialog" )->setText( i18n( "Copy \
Journal To" ) ); + actionCollection()->action( "akonadi_item_delete" )->setText( \
ki18np( "Delete Journal", "Delete %1 Journals" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_move_to_dialog" )->setText( i18n( "Move \
Journal To" ) ); + actionCollection()->action( "akonadi_incidence_edit" \
)->setText( i18n( "Edit Journal" ) ); + }
+}
+
void MainView::setupAgentActionManager( QItemSelectionModel *selectionModel )
{
Akonadi::AgentActionManager *manager = new Akonadi::AgentActionManager( \
actionCollection(), this );
--- trunk/KDE/kdepim/mobile/calendar/mainview.h #1202854:1202855
@@ -94,6 +94,7 @@
void fetchForPublishItemDone( KJob *job );
void fetchForiTIPMethodDone( KJob *job );
void fetchForSaveAllAttachmentsDone( KJob *job );
+ void updateActionTexts();
protected:
virtual void setupStandardActionManager( QItemSelectionModel \
*collectionSelectionModel,
--- trunk/KDE/kdepim/mobile/contacts/mainview.cpp #1202854:1202855
@@ -267,6 +267,7 @@
this, SLOT( editItem() ) );
connect( mActionManager->action( Akonadi::StandardActionManager::CreateResource ), \
SIGNAL( triggered( bool ) ), this, SLOT( launchAccountWizard() ) );
+ connect( mActionManager, SIGNAL( actionStateUpdated() ), SLOT( updateActionTexts() \
) );
ActionHelper::adaptStandardActionTexts( mActionManager );
@@ -287,6 +288,30 @@
actionCollection()->action( "synchronize_all_items" )->setText( i18n( "Synchronize \
All Accounts" ) ); }
+void MainView::updateActionTexts()
+{
+ const Akonadi::Item::List items = mActionManager->selectedItems();
+ if ( items.count() < 1 )
+ return;
+
+ const int itemCount = items.count();
+ const Akonadi::Item item = items.first();
+ const QString mimeType = item.mimeType();
+ if ( mimeType == KABC::Addressee::mimeType() ) {
+ actionCollection()->action( "akonadi_item_copy" )->setText( ki18np( "Copy \
Contact", "Copy %1 Contacts" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_copy_to_dialog" )->setText( i18n( "Copy \
Contact To" ) ); + actionCollection()->action( "akonadi_item_delete" )->setText( \
ki18np( "Delete Contact", "Delete %1 Contacts" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_move_to_dialog" )->setText( i18n( "Move \
Contact To" ) ); + actionCollection()->action( "akonadi_contact_item_edit" \
)->setText( i18n( "Edit Contact" ) ); + } else if ( mimeType == \
KABC::ContactGroup::mimeType() ) { + actionCollection()->action( \
"akonadi_item_copy" )->setText( ki18np( "Copy Group Of Contacts", "Copy %1 Groups Of \
Contacts" ).subs( itemCount ).toString() ); + actionCollection()->action( \
"akonadi_item_copy_to_dialog" )->setText( i18n( "Copy Group Of Contacts To" ) ); + \
actionCollection()->action( "akonadi_item_delete" )->setText( ki18np( "Delete Group \
Of Contacts", "Delete %1 Groups Of Contacts" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_move_to_dialog" )->setText( i18n( "Move \
Group Of Contacts To" ) ); + actionCollection()->action( \
"akonadi_contact_item_edit" )->setText( i18n( "Edit Group Of Contacts" ) ); + }
+}
+
void MainView::setupAgentActionManager( QItemSelectionModel *selectionModel )
{
Akonadi::AgentActionManager *manager = new Akonadi::AgentActionManager( \
actionCollection(), this );
--- trunk/KDE/kdepim/mobile/contacts/mainview.h #1202854:1202855
@@ -56,6 +56,7 @@
void itemSelectionChanged( const QItemSelection &selected, const QItemSelection& \
); void bulkActionSelectionChanged();
void sendMailTo();
+ void updateActionTexts();
protected:
virtual void setupStandardActionManager( QItemSelectionModel \
*collectionSelectionModel,
--- trunk/KDE/kdepim/mobile/tasks/mainview.cpp #1202854:1202855
@@ -306,6 +306,7 @@
SIGNAL( triggered( bool ) ), SLOT( newSubTask() ) );
connect( mStandardActionManager->action( \
Akonadi::StandardCalendarActionManager::EditIncidence ), SIGNAL( triggered( bool ) \
), SLOT( editIncidence() ) ); + connect( mStandardActionManager, SIGNAL( \
actionStateUpdated() ), SLOT( updateActionTexts() ) );
ActionHelper::adaptStandardActionTexts( mStandardActionManager );
@@ -323,6 +324,36 @@
actionCollection()->action( "synchronize_all_items" )->setText( i18n( "Synchronize \
All Tasks" ) ); }
+void MainView::updateActionTexts()
+{
+ const Akonadi::Item::List items = mStandardActionManager->selectedItems();
+ if ( items.count() < 1 )
+ return;
+
+ const int itemCount = items.count();
+ const Akonadi::Item item = items.first();
+ const QString mimeType = item.mimeType();
+ if ( mimeType == KCalCore::Event::eventMimeType() ) {
+ actionCollection()->action( "akonadi_item_copy" )->setText( ki18np( "Copy \
Event", "Copy %1 Events" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_copy_to_dialog" )->setText( i18n( "Copy \
Event To" ) ); + actionCollection()->action( "akonadi_item_delete" )->setText( \
ki18np( "Delete Event", "Delete %1 Events" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_move_to_dialog" )->setText( i18n( "Move \
Event To" ) ); + actionCollection()->action( "akonadi_incidence_edit" )->setText( \
i18n( "Edit Event" ) ); + } else if ( mimeType == KCalCore::Todo::todoMimeType() ) {
+ actionCollection()->action( "akonadi_item_copy" )->setText( ki18np( "Copy Task", \
"Copy %1 Tasks" ).subs( itemCount ).toString() ); + actionCollection()->action( \
"akonadi_item_copy_to_dialog" )->setText( i18n( "Copy Task To" ) ); + \
actionCollection()->action( "akonadi_item_delete" )->setText( ki18np( "Delete Task", \
"Delete %1 Tasks" ).subs( itemCount ).toString() ); + actionCollection()->action( \
"akonadi_item_move_to_dialog" )->setText( i18n( "Move Task To" ) ); + \
actionCollection()->action( "akonadi_incidence_edit" )->setText( i18n( "Edit Task" ) \
); + } else if ( mimeType == KCalCore::Journal::journalMimeType() ) {
+ actionCollection()->action( "akonadi_item_copy" )->setText( ki18np( "Copy \
Journal", "Copy %1 Journals" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_copy_to_dialog" )->setText( i18n( "Copy \
Journal To" ) ); + actionCollection()->action( "akonadi_item_delete" )->setText( \
ki18np( "Delete Journal", "Delete %1 Journals" ).subs( itemCount ).toString() ); + \
actionCollection()->action( "akonadi_item_move_to_dialog" )->setText( i18n( "Move \
Journal To" ) ); + actionCollection()->action( "akonadi_incidence_edit" \
)->setText( i18n( "Edit Journal" ) ); + }
+}
+
void MainView::setupAgentActionManager( QItemSelectionModel *selectionModel )
{
Akonadi::AgentActionManager *manager = new Akonadi::AgentActionManager( \
actionCollection(), this );
--- trunk/KDE/kdepim/mobile/tasks/mainview.h #1202854:1202855
@@ -72,6 +72,7 @@
void processActionFail( const Akonadi::Item &item, const QString &msg );
void processActionFinish( const Akonadi::Item &item );
void archiveOldEntries();
+ void updateActionTexts();
protected:
virtual QAbstractItemModel* createItemModelContext( QDeclarativeContext \
*context, QAbstractItemModel *model );
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic