[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdepim/akonadi/tray
From: Tom Albers <tomalbers () kde ! nl>
Date: 2008-04-11 22:52:57
Message-ID: 1207954377.562396.21815.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 795931 by toma:
Listen to the errors and warning coming from the akonadiserver and provide a \
messagebox/passive popup for them.
M +29 -4 dock.cpp
M +6 -2 dock.h
--- trunk/KDE/kdepim/akonadi/tray/dock.cpp #795930:795931
@@ -39,7 +39,11 @@
#include <KSystemTrayIcon>
#include <akonadi/control.h>
+#include <akonadi/agentinstance.h>
+#include <akonadi/agentmanager.h>
+using namespace Akonadi;
+
Tray::Tray() : QWidget()
{
hide();
@@ -78,6 +82,15 @@
connect( QDBusConnection::sessionBus().interface(),
SIGNAL( serviceOwnerChanged( const QString&, const QString&, const \
QString& ) ),
SLOT( slotServiceChanged( const QString&, const QString&, const \
QString& ) ) ); +
+
+ AgentManager *manager = AgentManager::self();
+ connect( manager,
+ SIGNAL( instanceWarning( const Akonadi::AgentInstance&, const QString& \
) ), + SLOT( slotInstanceWarning( const Akonadi::AgentInstance&, const \
QString& ) ) ); + connect( manager,
+ SIGNAL( instanceError( const Akonadi::AgentInstance&, const QString& ) \
), + SLOT( slotInstanceError( const Akonadi::AgentInstance&, const \
QString& ) ) ); }
Dock::~Dock()
@@ -151,16 +164,28 @@
m_startAction->setVisible( !registered );
}
-void Dock::infoMessage( const QString &message )
+void Dock::slotInstanceWarning( const Akonadi::AgentInstance& agent, const QString& \
message ) {
- KPassivePopup::message( i18n( "Akonadi message" ), message, this );
+ infoMessage( message, agent.name() );
}
-void Dock::errorMessage( const QString &message )
+void Dock::infoMessage( const QString &message, const QString &title )
{
- KMessageBox::error( parentWidget(), message, i18n( "Akonadi error" ) );
+ KPassivePopup::message( title.isEmpty() ? i18n( "Akonadi message" ) : title,
+ message, this );
}
+void Dock::slotInstanceError( const Akonadi::AgentInstance& agent, const QString& \
message ) +{
+ errorMessage( message, agent.name() );
+}
+
+void Dock::errorMessage( const QString &message, const QString &title )
+{
+ KMessageBox::error( parentWidget(), message,
+ title.isEmpty() ?i18n( "Akonadi error" ) : title );
+}
+
qlonglong Dock::getWinId()
{
return ( qlonglong )parentWidget()->winId();
--- trunk/KDE/kdepim/akonadi/tray/dock.h #795930:795931
@@ -24,6 +24,8 @@
#include <KSystemTrayIcon>
#include <QWidget>
+#include <akonadi/agentinstance.h>
+
class QLabel;
class QAction;
@@ -54,11 +56,13 @@
~Dock();
public Q_SLOTS:
- void infoMessage( const QString& );
- void errorMessage( const QString& );
+ void infoMessage( const QString&, const QString& = QString() );
+ void errorMessage( const QString&, const QString& = QString() );
qlonglong getWinId();
private Q_SLOTS:
+ void slotInstanceWarning( const Akonadi::AgentInstance&, const QString& );
+ void slotInstanceError( const Akonadi::AgentInstance&, const QString& );
void slotServiceChanged( const QString&, const QString&, const QString& );
void slotActivated();
void slotStopAkonadi();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic