summaryrefslogtreecommitdiff
path: root/core/pim/today/plugins/todolist
Unidiff
Diffstat (limited to 'core/pim/today/plugins/todolist') (more/less context) (show whitespace changes)
-rw-r--r--core/pim/today/plugins/todolist/todoplugin.cpp16
-rw-r--r--core/pim/today/plugins/todolist/todoplugin.h6
-rw-r--r--core/pim/today/plugins/todolist/todopluginwidget.cpp32
-rw-r--r--core/pim/today/plugins/todolist/todopluginwidget.h4
4 files changed, 44 insertions, 14 deletions
diff --git a/core/pim/today/plugins/todolist/todoplugin.cpp b/core/pim/today/plugins/todolist/todoplugin.cpp
index b5abbd3..1238f92 100644
--- a/core/pim/today/plugins/todolist/todoplugin.cpp
+++ b/core/pim/today/plugins/todolist/todoplugin.cpp
@@ -18,13 +18,14 @@
18 18
19#include "todoplugin.h" 19#include "todoplugin.h"
20#include "todopluginconfig.h" 20#include "todopluginconfig.h"
21#include "todopluginwidget.h"
22 21
23 22
24TodolistPlugin::TodolistPlugin() { 23TodolistPlugin::TodolistPlugin() {
24 m_widget = 0l;
25} 25}
26 26
27TodolistPlugin::~TodolistPlugin() { 27TodolistPlugin::~TodolistPlugin() {
28 delete m_widget;
28} 29}
29 30
30QString TodolistPlugin::pluginName() const { 31QString TodolistPlugin::pluginName() const {
@@ -32,7 +33,7 @@ QString TodolistPlugin::pluginName() const {
32} 33}
33 34
34double TodolistPlugin::versionNumber() const { 35double TodolistPlugin::versionNumber() const {
35 return 0.8; 36 return 0.9;
36} 37}
37 38
38QString TodolistPlugin::pixmapNameWidget() const { 39QString TodolistPlugin::pixmapNameWidget() const {
@@ -40,7 +41,10 @@ QString TodolistPlugin::pixmapNameWidget() const {
40} 41}
41 42
42QWidget* TodolistPlugin::widget( QWidget *wid ) { 43QWidget* TodolistPlugin::widget( QWidget *wid ) {
43 return new TodolistPluginWidget( wid, "Todolist" ); 44 if(!m_widget) {
45 m_widget = new TodolistPluginWidget( wid, "Todolist" );
46 }
47 return m_widget;
44} 48}
45 49
46QString TodolistPlugin::pixmapNameConfig() const { 50QString TodolistPlugin::pixmapNameConfig() const {
@@ -59,3 +63,9 @@ QString TodolistPlugin::appName() const {
59bool TodolistPlugin::excludeFromRefresh() const { 63bool TodolistPlugin::excludeFromRefresh() const {
60 return false; 64 return false;
61} 65}
66
67void TodolistPlugin::refresh() {
68 if ( m_widget ) {
69 m_widget->refresh();
70 }
71}
diff --git a/core/pim/today/plugins/todolist/todoplugin.h b/core/pim/today/plugins/todolist/todoplugin.h
index f98afdb..6106d0c 100644
--- a/core/pim/today/plugins/todolist/todoplugin.h
+++ b/core/pim/today/plugins/todolist/todoplugin.h
@@ -24,6 +24,8 @@
24#include <opie/oclickablelabel.h> 24#include <opie/oclickablelabel.h>
25#include <opie/todayplugininterface.h> 25#include <opie/todayplugininterface.h>
26 26
27#include "todopluginwidget.h"
28
27class TodolistPlugin : public TodayPluginObject { 29class TodolistPlugin : public TodayPluginObject {
28 30
29public: 31public:
@@ -38,6 +40,10 @@ public:
38 TodayConfigWidget* configWidget(QWidget *); 40 TodayConfigWidget* configWidget(QWidget *);
39 QString appName() const; 41 QString appName() const;
40 bool excludeFromRefresh() const; 42 bool excludeFromRefresh() const;
43 void refresh();
44
45 private:
46 TodolistPluginWidget *m_widget;
41}; 47};
42 48
43#endif 49#endif
diff --git a/core/pim/today/plugins/todolist/todopluginwidget.cpp b/core/pim/today/plugins/todolist/todopluginwidget.cpp
index 773e5cf..3242dac 100644
--- a/core/pim/today/plugins/todolist/todopluginwidget.cpp
+++ b/core/pim/today/plugins/todolist/todopluginwidget.cpp
@@ -30,22 +30,38 @@
30TodolistPluginWidget::TodolistPluginWidget( QWidget *parent, const char* name ) 30TodolistPluginWidget::TodolistPluginWidget( QWidget *parent, const char* name )
31 : QWidget( parent, name ) { 31 : QWidget( parent, name ) {
32 32
33 todoLabel = 0l;
34 todo = 0l; 33 todo = 0l;
34 layoutTodo = 0l;
35 todoLabel = 0l;
35 36
36 if ( todo ) { 37 if ( todo ) {
37 delete todo; 38 delete todo;
38 } 39 }
39
40 todo = new OTodoAccess(); 40 todo = new OTodoAccess();
41 todo->load(); 41 todo->load();
42 42
43 if ( layoutTodo ) {
44 delete layoutTodo;
45 }
46 layoutTodo = new QVBoxLayout( this );
47 layoutTodo->setAutoAdd( true );
48
49
50 if ( todoLabel ) {
51 delete todoLabel;
52 }
53 todoLabel = new OClickableLabel( this );
54
55 connect( todoLabel, SIGNAL( clicked() ), this, SLOT( startTodolist() ) );
56
43 readConfig(); 57 readConfig();
44 getTodo(); 58 getTodo();
45} 59}
46 60
47TodolistPluginWidget::~TodolistPluginWidget() { 61TodolistPluginWidget::~TodolistPluginWidget() {
48 delete todo; 62 delete todo;
63 delete todoLabel;
64 delete layoutTodo;
49} 65}
50 66
51 67
@@ -56,20 +72,15 @@ void TodolistPluginWidget::readConfig() {
56 m_maxCharClip = cfg.readNumEntry( "maxcharclip", 38 ); 72 m_maxCharClip = cfg.readNumEntry( "maxcharclip", 38 );
57} 73}
58 74
75void TodolistPluginWidget:: refresh() {
76 getTodo();
77}
59 78
60/** 79/**
61 * Get the todos 80 * Get the todos
62 */ 81 */
63void TodolistPluginWidget::getTodo() { 82void TodolistPluginWidget::getTodo() {
64 83
65 QVBoxLayout* layoutTodo = new QVBoxLayout( this );
66
67 if ( todoLabel ) {
68 delete todoLabel;
69 }
70
71 todoLabel = new OClickableLabel( this );
72 connect( todoLabel, SIGNAL( clicked() ), this, SLOT( startTodolist() ) );
73 84
74 QString output; 85 QString output;
75 QString tmpout; 86 QString tmpout;
@@ -118,7 +129,6 @@ void TodolistPluginWidget::getTodo() {
118 output = QObject::tr( "No active tasks" ); 129 output = QObject::tr( "No active tasks" );
119 } 130 }
120 todoLabel->setText( output ); 131 todoLabel->setText( output );
121 layoutTodo->addWidget( todoLabel );
122} 132}
123 133
124/** 134/**
diff --git a/core/pim/today/plugins/todolist/todopluginwidget.h b/core/pim/today/plugins/todolist/todopluginwidget.h
index 37b0ee1..0d0deb5 100644
--- a/core/pim/today/plugins/todolist/todopluginwidget.h
+++ b/core/pim/today/plugins/todolist/todopluginwidget.h
@@ -19,6 +19,7 @@
19 19
20#include <qstring.h> 20#include <qstring.h>
21#include <qwidget.h> 21#include <qwidget.h>
22#include <qlayout.h>
22 23
23#include <opie/otodo.h> 24#include <opie/otodo.h>
24#include <opie/otodoaccess.h> 25#include <opie/otodoaccess.h>
@@ -33,11 +34,14 @@ public:
33 TodolistPluginWidget( QWidget *parent, const char *name ); 34 TodolistPluginWidget( QWidget *parent, const char *name );
34 ~TodolistPluginWidget(); 35 ~TodolistPluginWidget();
35 36
37 void refresh();
38
36protected slots: 39protected slots:
37 void startTodolist(); 40 void startTodolist();
38 41
39private: 42private:
40 OClickableLabel *todoLabel; 43 OClickableLabel *todoLabel;
44 QVBoxLayout* layoutTodo;
41 45
42 OTodoAccess *todo; 46 OTodoAccess *todo;
43 OTodoAccess::List m_list; 47 OTodoAccess::List m_list;