summaryrefslogtreecommitdiff
authorharlekin <harlekin>2004-01-05 22:06:54 (UTC)
committer harlekin <harlekin>2004-01-05 22:06:54 (UTC)
commit07278dd6ba68e3ff55d22acc76a28956b06d5d9c (patch) (side-by-side diff)
treea294a54380ea95af3eb71c391a824672688b67a5
parent96c8b9f1a3aa80049d6995f311635ff20b472fe2 (diff)
downloadopie-07278dd6ba68e3ff55d22acc76a28956b06d5d9c.zip
opie-07278dd6ba68e3ff55d22acc76a28956b06d5d9c.tar.gz
opie-07278dd6ba68e3ff55d22acc76a28956b06d5d9c.tar.bz2
fixes
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/taskbarapplet/mailapplet.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/noncore/net/mail/taskbarapplet/mailapplet.cpp b/noncore/net/mail/taskbarapplet/mailapplet.cpp
index 35198d1..25fd400 100644
--- a/noncore/net/mail/taskbarapplet/mailapplet.cpp
+++ b/noncore/net/mail/taskbarapplet/mailapplet.cpp
@@ -54,75 +54,79 @@ void MailApplet::paintEvent( QPaintEvent* ) {
}
void MailApplet::mouseReleaseEvent( QMouseEvent* e ) {
slotClicked();
}
void MailApplet::slotClicked() {
QCopEnvelope e( "QPE/System", "execute(QString)" );
e << QString( "opiemail" );
ODevice *device = ODevice::inst();
if ( !device-> ledList().isEmpty() ) {
OLed led = ( device->ledList().contains( Led_Mail ) ) ? Led_Mail : device->ledList()[0];
device->setLedState( led, Led_Off );
}
// m_statusMails->reset_status();
}
void MailApplet::startup() {
Settings *settings = new Settings();
QList<Account> ma = settings->getAccounts();
- StatusMail m_statusMail = StatusMail( ma );
+ m_statusMail = new StatusMail( ma );
delete settings;
m_intervalMs = m_config->readNumEntry( "CheckEvery", 5 ) * 60000;
m_intervalTimer = new QTimer();
m_intervalTimer->start( m_intervalMs );
connect( m_intervalTimer, SIGNAL( timeout() ), this, SLOT( slotCheck() ) );
}
void MailApplet::slotCheck() {
// Check wether the check interval has been changed.
int newIntervalMs = m_config->readNumEntry( "CheckEvery", 5 ) * 60000;
if ( newIntervalMs != m_intervalMs ) {
m_intervalTimer->changeInterval( newIntervalMs );
m_intervalMs = newIntervalMs;
}
+ if (m_statusMail == 0) {
+ return;
+ }
+
folderStat stat;
m_statusMail->check_current_stat( stat );
m_newMails = stat.message_unseen;
qDebug( QString( "test %1" ).arg( m_newMails ) );
if ( m_newMails > 0 ) {
ODevice *device = ODevice::inst();
if ( isHidden() )
show();
if ( m_config->readBoolEntry( "BlinkLed", true ) ) {
if ( !device->ledList().isEmpty() ) {
OLed led = ( device->ledList().contains( Led_Mail ) ) ? Led_Mail : device->ledList()[0];
device->setLedState( led, device->ledStateList( led ).contains( Led_BlinkSlow ) ? Led_BlinkSlow : Led_On );
}
}
if ( m_config->readBoolEntry( "PlaySound", false ) )
device->alarmSound();
Config cfg( "mail" );
cfg.setGroup( "Status" );
cfg.writeEntry( "NewMails", m_newMails );
QCopEnvelope env( "QPE/Pim", "newMails(int)" );
- env << stat.message_unseen;
+ env << m_newMails;
repaint( true );
} else {
ODevice *device = ODevice::inst();
if ( !isHidden() )
hide();
if ( !device->ledList().isEmpty() ) {
OLed led = ( device->ledList().contains( Led_Mail ) ) ? Led_Mail : device->ledList()[0];
device->setLedState( led, Led_Off );
}
}
}