summaryrefslogtreecommitdiff
path: root/noncore
authoralwin <alwin>2005-03-12 23:25:49 (UTC)
committer alwin <alwin>2005-03-12 23:25:49 (UTC)
commit69962e7b69ebf91c01a1354d7870f4ca7a81aa06 (patch) (side-by-side diff)
tree584f0f658f16936c1fa5493d2940651ba4170d5f /noncore
parent3cb4c3983ee738f3221ecb4cb154ea1252d69d64 (diff)
downloadopie-69962e7b69ebf91c01a1354d7870f4ca7a81aa06.zip
opie-69962e7b69ebf91c01a1354d7870f4ca7a81aa06.tar.gz
opie-69962e7b69ebf91c01a1354d7870f4ca7a81aa06.tar.bz2
some reworks
Diffstat (limited to 'noncore') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/mail/taskbarapplet/mailapplet.cpp93
-rw-r--r--noncore/net/mail/taskbarapplet/mailapplet.h2
2 files changed, 45 insertions, 50 deletions
diff --git a/noncore/net/mail/taskbarapplet/mailapplet.cpp b/noncore/net/mail/taskbarapplet/mailapplet.cpp
index ce1e7ac..b777ecf 100644
--- a/noncore/net/mail/taskbarapplet/mailapplet.cpp
+++ b/noncore/net/mail/taskbarapplet/mailapplet.cpp
@@ -19,13 +19,10 @@ using namespace Opie::Core;
MailApplet::MailApplet( QWidget *parent )
: QLabel( parent ) {
- m_config = new Config( "mail" );
- m_config->setGroup( "Applet" );
-
- //setFixedWidth( AppLnk::smallIconSize() );
- setFixedHeight( AppLnk::smallIconSize() );
+ setFixedHeight(AppLnk::smallIconSize());
+ setMinimumWidth(AppLnk::smallIconSize());
hide();
m_newMails = 0;
@@ -37,21 +34,15 @@ MailApplet::MailApplet( QWidget *parent )
sigemptyset(&(blocking_action.sa_mask));
blocking_action.sa_flags = 0;
sigaction(SIGPIPE,&blocking_action,&temp_action);
- if ( !m_config->readBoolEntry( "Disabled", false ) ) {
- // delay 5 sec until the whole mail backend gets started .-)
- QTimer::singleShot( 5000, this, SLOT( startup() ) );
- }
- repaint( true );
+ QTimer::singleShot( 5000, this, SLOT( startup() ) );
}
MailApplet::~MailApplet() {
if ( m_statusMail )
delete m_statusMail;
- if ( m_config )
- delete m_config;
}
void MailApplet::paintEvent( QPaintEvent*ev )
{
@@ -71,18 +62,16 @@ void MailApplet::paintEvent( QPaintEvent*ev )
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 );
+void MailApplet::slotClicked()
+{
+ {
+ QCopEnvelope e( "QPE/System", "execute(QString)" );
+ e << QString( "opiemail" );
}
+
+ ledOnOff(false);
if (m_statusMail)
m_statusMail->reset_status();
hide();
}
@@ -100,21 +89,38 @@ void MailApplet::startup()
m_intervalTimer->start( m_intervalMs );
connect( m_intervalTimer, SIGNAL( timeout() ), this, SLOT( slotCheck() ) );
}
+void MailApplet::ledOnOff(bool how)
+{
+ ODevice *device = ODevice::inst();
+ if ( !device->ledList().isEmpty() ) {
+ OLed led = ( device->ledList().contains( Led_Mail ) ) ? Led_Mail : device->ledList()[0];
+ device->setLedState( led, (how?(device->ledStateList( led ).contains( Led_BlinkSlow )?Led_BlinkSlow:Led_On):Led_Off) );
+ }
+}
+
void MailApplet::slotCheck() {
// Check wether the check interval has been changed.
odebug << "MailApplet::slotCheck()" << oendl;
- int newIntervalMs = m_config->readNumEntry( "CheckEvery", 5 ) * 60000;
+ Config m_config( "mail" );
+ m_config.setGroup( "Applet" );
+
+ int newIntervalMs = m_config.readNumEntry( "CheckEvery", 5 ) * 60000;
if ( newIntervalMs != m_intervalMs ) {
m_intervalTimer->changeInterval( newIntervalMs );
m_intervalMs = newIntervalMs;
}
-
+ if ( m_config.readBoolEntry( "Disabled", false ) ) {
+ hide();
+ ledOnOff(false);
+ odebug << "MailApplet::slotCheck() - disabled" << oendl;
+ return;
+ }
if (m_statusMail == 0) {
+ odebug << "MailApplet::slotCheck() - no mailhandle" << oendl;
return;
}
-
folderStat stat;
m_statusMail->check_current_stat( stat );
int newMailsOld = m_newMails;
m_newMails = stat.message_unseen;
@@ -122,40 +128,29 @@ void MailApplet::slotCheck() {
if ( m_newMails > 0) {
if (isHidden())
show();
if (newMailsOld != m_newMails) {
- ODevice *device = ODevice::inst();
- 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( "BlinkLed", true ) ) {
+ ledOnOff(true);
}
- if ( m_config->readBoolEntry( "PlaySound", false ) )
- device->playAlarmSound();
- }
- Config cfg( "mail" );
- cfg.setGroup( "Status" );
- cfg.writeEntry( "newMails", m_newMails );
- {
- QCopEnvelope env( "QPE/Pim", "newMails(int)" );
- env << m_newMails;
+ if ( m_config.readBoolEntry( "PlaySound", false ) )
+ ODevice::inst()->playAlarmSound();
+ m_config.setGroup( "Status" );
+ m_config.writeEntry( "newMails", m_newMails );
+ {
+ QCopEnvelope env( "QPE/Pim", "newMails(int)" );
+ env << m_newMails;
+ }
+ setText(QString::number( m_newMails ));
}
- setText(QString::number( 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 );
- }
-
if ( newMailsOld != m_newMails ) {
- Config cfg( "mail" );
- cfg.setGroup( "Status" );
- cfg.writeEntry( "newMails", m_newMails );
+ ledOnOff(false);
+ m_config.setGroup( "Status" );
+ m_config.writeEntry( "newMails", m_newMails );
QCopEnvelope env( "QPE/Pim", "newMails(int)" );
env << m_newMails;
}
}
diff --git a/noncore/net/mail/taskbarapplet/mailapplet.h b/noncore/net/mail/taskbarapplet/mailapplet.h
index f28f274..f46bf19 100644
--- a/noncore/net/mail/taskbarapplet/mailapplet.h
+++ b/noncore/net/mail/taskbarapplet/mailapplet.h
@@ -20,15 +20,15 @@ public:
protected:
void gotNewMail();
void mouseReleaseEvent( QMouseEvent* );
void paintEvent( QPaintEvent* );
+ static void ledOnOff(bool);
protected slots:
void startup();
void slotCheck();
void slotClicked();
private:
- Config *m_config;
QTimer *m_intervalTimer;
int m_intervalMs;
StatusMail* m_statusMail;
int m_newMails;