|
|
|
|
@ -24,10 +24,10 @@ KActionMenuTransport::KActionMenuTransport(QObject *parent) |
|
|
|
|
: KActionMenu(parent), |
|
|
|
|
mInitialized(false) |
|
|
|
|
{ |
|
|
|
|
setDelayed(true); |
|
|
|
|
connect( MailTransport::TransportManager::self(), SIGNAL(transportsChanged()), this, SLOT(updateTransportMenu())); |
|
|
|
|
connect( menu(),SIGNAL(aboutToShow()),SLOT(slotCheckTransportMenu())); |
|
|
|
|
connect( menu(), SIGNAL(triggered(QAction*)), this, SLOT(slotSelectTransport(QAction*)) ); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
KActionMenuTransport::~KActionMenuTransport() |
|
|
|
|
@ -45,13 +45,15 @@ void KActionMenuTransport::slotCheckTransportMenu() |
|
|
|
|
|
|
|
|
|
void KActionMenuTransport::updateTransportMenu() |
|
|
|
|
{ |
|
|
|
|
menu()->clear(); |
|
|
|
|
const QList<MailTransport::Transport*> transports = MailTransport::TransportManager::self()->transports(); |
|
|
|
|
Q_FOREACH (MailTransport::Transport *transport, transports ) { |
|
|
|
|
const QString name = transport->name().replace( QLatin1Char('&'), QLatin1String("&&") ); |
|
|
|
|
QAction *action = new QAction( name, this ); |
|
|
|
|
action->setData( transport->id() ); |
|
|
|
|
menu()->addAction( action ); |
|
|
|
|
if (mInitialized) { |
|
|
|
|
menu()->clear(); |
|
|
|
|
const QList<MailTransport::Transport*> transports = MailTransport::TransportManager::self()->transports(); |
|
|
|
|
Q_FOREACH (MailTransport::Transport *transport, transports ) { |
|
|
|
|
const QString name = transport->name().replace( QLatin1Char('&'), QLatin1String("&&") ); |
|
|
|
|
QAction *action = new QAction( name, this ); |
|
|
|
|
action->setData( transport->id() ); |
|
|
|
|
menu()->addAction( action ); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|