[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/work/akonadi-ports/kdepim/korganizer
From: Sebastian Sauer <mail () dipe ! org>
Date: 2009-06-30 22:56:45
Message-ID: 1246402605.272753.31468.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 989781 by sebsauer:
impl 'delete calendar'
M +38 -21 akonadicollectionview.cpp
M +2 -1 akonadicollectionview.h
--- branches/work/akonadi-ports/kdepim/korganizer/akonadicollectionview.cpp \
#989780:989781 @@ -66,6 +66,7 @@
#include <akonadi/collectionfilterproxymodel.h>
#include <akonadi/collectionmodel.h>
#include <akonadi/collectionview.h>
+#include <akonadi/collectiondeletejob.h>
#include <akonadi/standardactionmanager.h>
#include <akonadi/agenttypedialog.h>
#include <akonadi/agentinstancewidget.h>
@@ -366,7 +367,7 @@
mActionManager->setCollectionSelectionModel( mCollectionview->selectionModel() \
);
KAction *createAction = new KAction( mCollectionview );
- createAction->setIcon( KIcon( "calendar-new" ) );
+ createAction->setIcon( KIcon( "new" ) );
createAction->setText( i18n( "New Calendar..." ) );
//action->setWhatsThis( i18n( "Create a new contact<p>You will be presented with \
a dialog where you can add all data about a person, including addresses and phone \
numbers.</p>" ) );
xmlclient->actionCollection()->addAction( QString::fromLatin1( \
"akonadi_calendar_create" ), createAction ); @@ -430,18 +431,18 @@
if ( agentType.isValid() ) {
Akonadi::AgentInstanceCreateJob *job = new Akonadi::AgentInstanceCreateJob( \
agentType, this ); job->configure( this );
- connect( job, SIGNAL( result( KJob* ) ), this, SLOT( newCalendarResult( KJob* \
) ) ); + connect( job, SIGNAL( result( KJob* ) ), this, SLOT( newCalendarDone( \
KJob* ) ) ); job->start();
}
}
}
-void AkonadiCollectionView::newCalendarResult( KJob *job )
+void AkonadiCollectionView::newCalendarDone( KJob *job )
{
kDebug();
Akonadi::AgentInstanceCreateJob *createjob = \
static_cast<Akonadi::AgentInstanceCreateJob*>( job );
- if ( job->error() ) {
- kWarning( 5250 ) << "Add calendar failed:" << job->errorString();
+ if ( createjob->error() ) {
+ kWarning( 5250 ) << "Create calendar failed:" << createjob->errorString();
return;
}
//TODO
@@ -450,25 +451,41 @@
void AkonadiCollectionView::deleteCalendar()
{
kDebug();
- //TODO
- /*
- const AgentInstance agent = ui.instanceWidget->currentAgentInstance();
- if ( agent.isValid() ) {
- if ( KMessageBox::questionYesNo( this,
- i18n( "Do you really want to delete agent \
instance %1?", agent.name() ),
- i18n( "Agent Deletion" ),
- KStandardGuiItem::del(),
- KStandardGuiItem::cancel(),
- QString(),
- KMessageBox::Dangerous )
- == KMessageBox::Yes )
- {
- AgentManager::self()->removeInstance( agent );
- }
+
+ QModelIndex index = mCollectionview->selectionModel()->currentIndex(); \
//selectedRows() + Q_ASSERT( index.isValid() );
+ const Akonadi::Collection collection = index.model()->data( index, \
Akonadi::CollectionModel::CollectionRole ).value<Akonadi::Collection>(); + Q_ASSERT( \
collection.isValid() ); + //Q_ASSERT( \
mCollectionview->selectionModel()->isSelected(index) ); +
+ QString displayname = index.model()->data( index, Qt::DisplayRole \
).value<QString>(); + Q_ASSERT( ! displayname.isEmpty() );
+
+ if( KMessageBox::questionYesNo( this,
+ i18n( "Do you really want to delete calendar %1?", \
displayname ), + i18n( "Delete Calendar" ),
+ KStandardGuiItem::del(),
+ KStandardGuiItem::cancel(),
+ QString(),
+ KMessageBox::Dangerous )
+ == KMessageBox::Yes )
+ {
+ Akonadi::CollectionDeleteJob *job = new Akonadi::CollectionDeleteJob( collection \
/* , m_session */ ); + connect( job, SIGNAL( result( KJob* ) ), this, SLOT( \
deleteCalendarDone( KJob* ) ) ); }
- */
}
+void AkonadiCollectionView::deleteCalendarDone( KJob *job )
+{
+ kDebug();
+ Akonadi::CollectionDeleteJob *createjob = \
static_cast<Akonadi::CollectionDeleteJob*>( job ); + if ( createjob->error() ) {
+ kWarning( 5250 ) << "Delete calendar failed:" << createjob->errorString();
+ return;
+ }
+ //TODO
+}
+
#if 0
void AkonadiCollectionView::emitResourcesChanged()
{
--- branches/work/akonadi-ports/kdepim/korganizer/akonadicollectionview.h \
#989780:989781 @@ -161,9 +161,10 @@
void collectionClicked(const QModelIndex&);
void newCalendar();
- void newCalendarResult( KJob* );
+ void newCalendarDone( KJob* );
void deleteCalendar();
+ void deleteCalendarDone( KJob* );
#endif
private:
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic