summaryrefslogtreecommitdiff
path: root/core/pim/today/plugins/mail
Side-by-side diff
Diffstat (limited to 'core/pim/today/plugins/mail') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/today/plugins/mail/mailplugin.cpp17
-rw-r--r--core/pim/today/plugins/mail/mailplugin.h6
-rw-r--r--core/pim/today/plugins/mail/mailpluginwidget.cpp33
-rw-r--r--core/pim/today/plugins/mail/mailpluginwidget.h6
4 files changed, 48 insertions, 14 deletions
diff --git a/core/pim/today/plugins/mail/mailplugin.cpp b/core/pim/today/plugins/mail/mailplugin.cpp
index d497970..a37d506 100644
--- a/core/pim/today/plugins/mail/mailplugin.cpp
+++ b/core/pim/today/plugins/mail/mailplugin.cpp
@@ -13,19 +13,19 @@
* (at your option) any later version. *
* *
***************************************************************************/
#include "mailplugin.h"
-#include "mailpluginwidget.h"
-
MailPlugin::MailPlugin() {
+ m_widget = 0l;
}
MailPlugin::~MailPlugin() {
+ delete m_widget;
}
QString MailPlugin::pluginName() const {
return QObject::tr( "Mail plugin" );
}
@@ -35,26 +35,35 @@ double MailPlugin::versionNumber() const {
QString MailPlugin::pixmapNameWidget() const {
return "mail/desktopicon";
}
QWidget* MailPlugin::widget( QWidget * wid ) {
- return new MailPluginWidget( wid, "Mail" );
+ if(!m_widget) {
+ m_widget = new MailPluginWidget( wid, "Datebook" );
+ }
+ return m_widget;
}
+
QString MailPlugin::pixmapNameConfig() const {
return 0l;
}
-TodayConfigWidget* MailPlugin::configWidget( QWidget* wid ) {
+TodayConfigWidget* MailPlugin::configWidget( QWidget* ) {
return 0l;
}
QString MailPlugin::appName() const {
return "mail";
}
bool MailPlugin::excludeFromRefresh() const {
return false;
}
+void MailPlugin::refresh() {
+ if ( m_widget ) {
+ m_widget->refresh();
+ }
+}
diff --git a/core/pim/today/plugins/mail/mailplugin.h b/core/pim/today/plugins/mail/mailplugin.h
index c937b9e..67fac0c 100644
--- a/core/pim/today/plugins/mail/mailplugin.h
+++ b/core/pim/today/plugins/mail/mailplugin.h
@@ -24,12 +24,14 @@
#include <opie/tododb.h>
#include <opie/oclickablelabel.h>
#include <opie/todayplugininterface.h>
#include <opie/todayconfigwidget.h>
+#include "mailpluginwidget.h"
+
class MailPlugin : public TodayPluginObject {
public:
MailPlugin();
~MailPlugin();
@@ -38,9 +40,13 @@ public:
QString pixmapNameWidget() const;
QWidget* widget(QWidget *);
QString pixmapNameConfig() const;
TodayConfigWidget* configWidget(QWidget *);
QString appName() const;
bool excludeFromRefresh() const;
+ void refresh();
+
+ private:
+ MailPluginWidget *m_widget;
};
#endif
diff --git a/core/pim/today/plugins/mail/mailpluginwidget.cpp b/core/pim/today/plugins/mail/mailpluginwidget.cpp
index a6f3562..aad1d07 100644
--- a/core/pim/today/plugins/mail/mailpluginwidget.cpp
+++ b/core/pim/today/plugins/mail/mailpluginwidget.cpp
@@ -27,44 +27,59 @@
#include "mailpluginwidget.h"
MailPluginWidget::MailPluginWidget( QWidget *parent, const char* name)
: QWidget(parent, name ) {
+ m_mailLabel = 0l;
+ m_layout = 0l;
+
+ if ( m_mailLabel ) {
+ delete m_mailLabel;
+ }
+ m_mailLabel = new OClickableLabel( this );
+ m_mailLabel->setMaximumHeight( 15 );
+ connect( m_mailLabel, SIGNAL( clicked() ), this, SLOT( startMail() ) );
+
+ if ( m_layout ) {
+ delete m_layout;
+ }
+ m_layout = new QHBoxLayout( this );
+ m_layout->setAutoAdd( true );
+
readConfig();
getInfo();
}
MailPluginWidget::~MailPluginWidget() {
+ delete m_mailLabel;
+ delete m_layout;
}
void MailPluginWidget::readConfig() {
Config cfg( "todaymailplugin" );
cfg.setGroup( "config" );
}
-void MailPluginWidget::getInfo() {
-
- QHBoxLayout* layout = new QHBoxLayout( this );
+void MailPluginWidget::refresh() {
+ getInfo();
+}
- mailLabel = new OClickableLabel( this );
- mailLabel->setMaximumHeight( 15 );
- connect( mailLabel, SIGNAL( clicked() ), this, SLOT( startMail() ) );
+void MailPluginWidget::getInfo() {
Config cfg( "opiemail" );
cfg.setGroup( "today" );
int NEW_MAILS = cfg.readNumEntry( "newmails", 0 );
int OUTGOING = cfg.readNumEntry( "outgoing", 0 );
- QString output = QObject::tr( "<b>%1</b> new mail(s), <b>%2</b> outgoing" ).arg( NEW_MAILS ).arg( OUTGOING );
+ //QString output = QObject::tr( "<b>%1</b> new mail(s), <b>%2</b> outgoing" ).arg( NEW_MAILS ).arg( OUTGOING );
- mailLabel->setText( output );
- layout->addWidget( mailLabel );
+ m_mailLabel->setText( QObject::tr( "<b>%1</b> new mail(s), <b>%2</b> outgoing" ).arg( NEW_MAILS ).arg( OUTGOING ) );
}
/**
* launches datebook
*/
void MailPluginWidget::startMail() {
diff --git a/core/pim/today/plugins/mail/mailpluginwidget.h b/core/pim/today/plugins/mail/mailpluginwidget.h
index 2feef80..c678833 100644
--- a/core/pim/today/plugins/mail/mailpluginwidget.h
+++ b/core/pim/today/plugins/mail/mailpluginwidget.h
@@ -17,29 +17,33 @@
#ifndef MAIL_PLUGIN_WIDGET_H
#define MAIL_PLUGIN_WIDGET_H
#include <qstring.h>
#include <qwidget.h>
+#include <qlayout.h>
#include <opie/tododb.h>
#include <opie/oclickablelabel.h>
class MailPluginWidget : public QWidget {
Q_OBJECT
public:
MailPluginWidget( QWidget *parent, const char *name );
~MailPluginWidget();
+
+ void refresh();
protected slots:
void startMail();
private:
- OClickableLabel *mailLabel;
+ OClickableLabel* m_mailLabel;
+ QHBoxLayout* m_layout;
void readConfig();
void getInfo();
};
#endif