author | drw <drw> | 2004-03-25 23:00:40 (UTC) |
---|---|---|
committer | drw <drw> | 2004-03-25 23:00:40 (UTC) |
commit | 03091cd727701bdb2aa6ac623cd606131546d686 (patch) (side-by-side diff) | |
tree | 76b818f6893fd0030071427d5a1efb0273921195 /core/pim/today/plugins | |
parent | ad160e97db39536ac42acdd3f2f98d1e49ae1f75 (diff) | |
download | opie-03091cd727701bdb2aa6ac623cd606131546d686.zip opie-03091cd727701bdb2aa6ac623cd606131546d686.tar.gz opie-03091cd727701bdb2aa6ac623cd606131546d686.tar.bz2 |
libopie -> libopie2
9 files changed, 39 insertions, 39 deletions
diff --git a/core/pim/today/plugins/addressbook/addressbook.pro b/core/pim/today/plugins/addressbook/addressbook.pro index cf0ff97..e65f31e 100644 --- a/core/pim/today/plugins/addressbook/addressbook.pro +++ b/core/pim/today/plugins/addressbook/addressbook.pro @@ -1,21 +1,21 @@ TEMPLATE = lib CONFIG -= moc CONFIG += qt plugin release # Input HEADERS = addressplugin.h addresspluginimpl.h addresspluginconfig.h \ addresspluginwidget.h SOURCES = addressplugin.cpp addresspluginimpl.cpp addresspluginconfig.cpp \ addresspluginwidget.cpp INCLUDEPATH += $(OPIEDIR)/include \ ../ ../library DEPENDPATH += $(OPIEDIR)/include \ ../ ../library -LIBS+= -lqpe -lopie +LIBS+= -lqpe -lopiecore2 -lopieui2 -lopiepim2 -lopiedb2 -lqtaux2 DESTDIR = $(OPIEDIR)/plugins/today TARGET = todayaddressbookplugin include ( $(OPIEDIR)/include.pro ) diff --git a/core/pim/today/plugins/addressbook/addressplugin.h b/core/pim/today/plugins/addressbook/addressplugin.h index 0b3b065..e664d5f 100644 --- a/core/pim/today/plugins/addressbook/addressplugin.h +++ b/core/pim/today/plugins/addressbook/addressplugin.h @@ -1,51 +1,51 @@ /* * addressplugin.h * * copyright : (c) 2003 by Stefan Eilers * email : eilers.stefan@epost.de * * This implementation was derived from the todolist plugin implementation * */ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef ADDRESSBOOK_PLUGIN_H #define ADDRESSBOOK_PLUGIN_H -#include <qstring.h> -#include <qwidget.h> +#include "addresspluginwidget.h" -#include <opie/oclickablelabel.h> -#include <opie/todayplugininterface.h> +#include <opie2/oclickablelabel.h> +#include <opie2/todayplugininterface.h> -#include "addresspluginwidget.h" +#include <qstring.h> +#include <qwidget.h> class AddressBookPlugin : public TodayPluginObject { public: AddressBookPlugin(); ~AddressBookPlugin(); QString pluginName() const; double versionNumber() const; QString pixmapNameWidget() const; QWidget* widget(QWidget *); QString pixmapNameConfig() const; TodayConfigWidget* configWidget(QWidget *); QString appName() const; bool excludeFromRefresh() const; void refresh(); void reinitialize(); private: AddressBookPluginWidget* m_abWidget; }; #endif diff --git a/core/pim/today/plugins/addressbook/addresspluginconfig.cpp b/core/pim/today/plugins/addressbook/addresspluginconfig.cpp index 8c55937..81bb8fd 100644 --- a/core/pim/today/plugins/addressbook/addresspluginconfig.cpp +++ b/core/pim/today/plugins/addressbook/addresspluginconfig.cpp @@ -41,115 +41,115 @@ AddressBookPluginConfig::AddressBookPluginConfig( QWidget *parent, const char* #endif // Buttongroup to enable/disable shown stuff QVGroupBox* b_group = new QVGroupBox( this, "name" ); b_group -> setTitle( tr("Enable/Disable Views") ); m_showBirthdayButton = new QRadioButton( b_group ); m_showBirthdayButton -> setText( tr( "Show &Birthdays" ) ); m_showAnniversaryButton = new QRadioButton( b_group ); m_showAnniversaryButton -> setText( tr( "Show &Anniveraries" ) ); QWhatsThis::add( m_showBirthdayButton , tr( "The next birthdays will just be shown, if enabled!" ) ); QWhatsThis::add( m_showAnniversaryButton , tr( "The next anniversaries will just be shown, if enabled !" ) ); // Max lines settings QHBox *box1 = new QHBox( this ); QLabel* TextLabel6 = new QLabel( box1, "TextLabel6" ); TextLabel6->setText( tr( "Max Lines: " ) ); SpinBox2 = new QSpinBox( box1, "SpinBox2" ); SpinBox2->setMaxValue( 40 ); QWhatsThis::add( SpinBox2 , tr( "Set the maximum number of lines that should be shown for each anniversaries/birthdays" ) ); #if 0 // Clip settings (currently not used) QHBox *box2 = new QHBox( this ); QLabel* clipLabel = new QLabel( box2, "" ); clipLabel->setText( tr( "Clip line after X chars: " ) ); SpinBoxClip = new QSpinBox( box2, "SpinClip" ); SpinBoxClip->setMaxValue( 200 ); QWhatsThis::add( SpinBoxClip , tr( "After how many chars should be the info about the task be cut off" ) ); #endif // Look ahead settings QHBox *box3 = new QHBox( this ); QLabel* daysLabel = new QLabel( box3, "" ); daysLabel->setText( tr( "Days look ahead: " ) ); SpinDaysClip = new QSpinBox( box3, "SpinDays" ); SpinDaysClip->setMaxValue( 200 ); QWhatsThis::add( SpinDaysClip , tr( "How many days we should search forward" ) ); // QHBox *box4 = new QHBox( this ); // QLabel* colorLabel = new QLabel( box4, "" ); // colorLabel->setText( tr( "To activate settings: Restart application !" ) ); QHBox *box5 = new QHBox( this ); QLabel* colorLabel2 = new QLabel( box5, "" ); colorLabel2->setText( tr( "Set Headline Color: " ) ); - headlineColor = new OColorButton( box5, black , "headlineColor" ); + headlineColor = new Opie::OColorButton( box5, black , "headlineColor" ); QWhatsThis::add( headlineColor , tr( "Colors for the headlines !" ) ); QHBox *box6 = new QHBox( this ); // Entry color settings QLabel* colorLabel3= new QLabel( box6, "" ); colorLabel3->setText( tr( "Set Entry Color: " ) ); - entryColor = new OColorButton( box6, black , "entryColor" ); + entryColor = new Opie::OColorButton( box6, black , "entryColor" ); QWhatsThis::add( entryColor , tr( "This color will be used for shown birthdays/anniversaries !" ) ); // Urgent color settings QHBox *box7 = new QHBox( this ); QLabel* colorLabel5 = new QLabel( box7, "" ); colorLabel5->setText( tr( "Set Urgent\nColor if below " ) ); SpinUrgentClip = new QSpinBox( box7, "SpinDays" ); SpinUrgentClip->setMaxValue( 200 ); QLabel* colorLabel6 = new QLabel( box7, "" ); colorLabel6->setText( tr( " days: " ) ); - urgentColor = new OColorButton( box7, red , "urgentColor" ); + urgentColor = new Opie::OColorButton( box7, red , "urgentColor" ); QWhatsThis::add( urgentColor , tr( "This urgent color will be used if we are close to the event !" ) ); QWhatsThis::add( SpinUrgentClip , tr( "The urgent color will be used if the birthday/anniversary is closer than given days !" ) ); //layout->addWidget( box4 ); layout->addWidget( box1 ); //layout->addWidget( box2 ); layout->addWidget( box3 ); layout->addWidget( box5 ); layout->addWidget( box6 ); layout->addWidget( box7 ); readConfig(); } void AddressBookPluginConfig::readConfig() { Config cfg( "todayaddressplugin" ); cfg.setGroup( "config" ); m_max_lines_task = cfg.readNumEntry( "maxlinestask", 5 ); SpinBox2->setValue( m_max_lines_task ); // m_maxCharClip = cfg.readNumEntry( "maxcharclip", 38 ); // SpinBoxClip->setValue( m_maxCharClip ); m_daysLookAhead = cfg.readNumEntry( "dayslookahead", 14 ); SpinDaysClip->setValue( m_daysLookAhead ); m_urgentDays = cfg.readNumEntry( "urgentdays", 7 ); SpinUrgentClip->setValue( m_urgentDays ); m_entryColor = cfg.readEntry( "entrycolor", Qt::black.name() ); entryColor->setColor( QColor( m_entryColor ) ); m_headlineColor = cfg.readEntry( "headlinecolor", Qt::black.name() ); headlineColor->setColor( QColor( m_headlineColor ) ); m_urgentColor = cfg.readEntry( "urgentcolor", Qt::red.name() ); urgentColor->setColor( QColor( m_urgentColor ) ); m_showBirthdayButton->setChecked( cfg.readBoolEntry( "showBirthdays", true ) ); m_showAnniversaryButton->setChecked( cfg.readBoolEntry( "showAnniversaries", true ) ); } void AddressBookPluginConfig::writeConfig() { Config cfg( "todayaddressplugin" ); cfg.setGroup( "config" ); m_max_lines_task = SpinBox2->value(); cfg.writeEntry( "maxlinestask", m_max_lines_task ); // m_maxCharClip = SpinBoxClip->value(); // cfg.writeEntry( "maxcharclip", m_maxCharClip ); diff --git a/core/pim/today/plugins/addressbook/addresspluginconfig.h b/core/pim/today/plugins/addressbook/addresspluginconfig.h index 5626e5d..e065ca2 100644 --- a/core/pim/today/plugins/addressbook/addresspluginconfig.h +++ b/core/pim/today/plugins/addressbook/addresspluginconfig.h @@ -1,75 +1,75 @@ /* * addresspluginconfig.h * * copyright : (c) 2003 by Stefan Eilers * email : eilers.stefan@epost.de * * This implementation was derived from the todolist plugin implementation * */ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef ADDRESSBOOK_PLUGIN_CONFIG_H #define ADDRESSBOOK_PLUGIN_CONFIG_H +#include <opie2/todayconfigwidget.h> +#include <opie2/ocolorbutton.h> + #include <qwidget.h> #include <qspinbox.h> #include <qradiobutton.h> -#include <opie/todayconfigwidget.h> -#include <opie/ocolorbutton.h> - class AddressBookPluginConfig : public TodayConfigWidget { Q_OBJECT public: AddressBookPluginConfig( QWidget *parent, const char *name ); ~AddressBookPluginConfig(); private: /** * if changed then save */ bool changed(); void readConfig(); void writeConfig(); QSpinBox* SpinBox2; QSpinBox* SpinBoxClip; QSpinBox* SpinDaysClip; QSpinBox* SpinUrgentClip; - OColorButton* entryColor; - OColorButton* headlineColor; - OColorButton* urgentColor; + Opie::OColorButton* entryColor; + Opie::OColorButton* headlineColor; + Opie::OColorButton* urgentColor; QRadioButton* m_showBirthdayButton; QRadioButton* m_showAnniversaryButton; // how many lines should be showed in the AddressBook section int m_max_lines_task; // clip the lines after X chars int m_maxCharClip; // How many days look ahead int m_daysLookAhead; // Days until urgent color is used int m_urgentDays; // Entry Color QString m_entryColor; // Headline Color QString m_headlineColor; // Urgent Color QString m_urgentColor; }; #endif diff --git a/core/pim/today/plugins/addressbook/addresspluginimpl.h b/core/pim/today/plugins/addressbook/addresspluginimpl.h index bf321da..9716787 100644 --- a/core/pim/today/plugins/addressbook/addresspluginimpl.h +++ b/core/pim/today/plugins/addressbook/addresspluginimpl.h @@ -1,41 +1,41 @@ /* * addresspluginimpl.h * * copyright : (c) 2003 by Stefan Eilers * email : eilers.stefan@epost.de * * This implementation was derived from the todolist plugin implementation * */ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef ADDRESSBOOK_PLUGIN_IMPL_H #define ADDRESSBOOK_PLUGIN_IMPL_H -#include <opie/todayplugininterface.h> +#include <opie2/todayplugininterface.h> class AddressBookPlugin; class AddressBookPluginImpl : public TodayPluginInterface{ public: AddressBookPluginImpl(); virtual ~AddressBookPluginImpl(); QRESULT queryInterface( const QUuid &, QUnknownInterface** ); Q_REFCOUNT virtual TodayPluginObject *guiPart(); private: AddressBookPlugin *addressbookPlugin; }; #endif diff --git a/core/pim/today/plugins/addressbook/addresspluginwidget.cpp b/core/pim/today/plugins/addressbook/addresspluginwidget.cpp index b0d456d..ea387d6 100644 --- a/core/pim/today/plugins/addressbook/addresspluginwidget.cpp +++ b/core/pim/today/plugins/addressbook/addresspluginwidget.cpp @@ -1,217 +1,217 @@ /* * addresspluginwidget.cpp * * copyright : (c) 2003 by Stefan Eilers * email : eilers.stefan@epost.de * * This implementation was derived from the todolist plugin implementation * */ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #include "addresspluginwidget.h" -#include <qpe/config.h> +#include <opie2/opimcontact.h> -#include <opie/ocontact.h> +#include <qpe/config.h> AddressBookPluginWidget::AddressBookPluginWidget( QWidget *parent, const char* name ) : QWidget( parent, name ) { addressLabel = 0l; m_contactdb = 0l; layoutTodo = 0l; // Hä ? Nonsense ! (se) if ( m_contactdb ) { delete m_contactdb; } - m_contactdb = new OContactAccess("addressplugin"); + m_contactdb = new Opie::OPimContactAccess("addressplugin"); - connect( m_contactdb, SIGNAL( signalChanged(const OContactAccess*) ), - this, SLOT( refresh(const OContactAccess*) ) ); + connect( m_contactdb, SIGNAL( signalChanged(const Opie::OPimContactAccess*) ), + this, SLOT( refresh(const Opie::OPimContactAccess*) ) ); readConfig(); getAddress(); } AddressBookPluginWidget::~AddressBookPluginWidget() { delete m_contactdb; } -void AddressBookPluginWidget::refresh( const OContactAccess* ) +void AddressBookPluginWidget::refresh( const Opie::OPimContactAccess* ) { qWarning(" AddressBookPluginWidget::Database was changed externally ! "); m_contactdb->reload(); getAddress(); } void AddressBookPluginWidget::reinitialize() { readConfig(); getAddress(); } void AddressBookPluginWidget::readConfig() { Config cfg( "todayaddressplugin" ); cfg.setGroup( "config" ); m_maxLinesTask = cfg.readNumEntry( "maxlinestask", 5 ); m_maxCharClip = cfg.readNumEntry( "maxcharclip", 38 ); m_daysLookAhead = cfg.readNumEntry( "dayslookahead", 14 ); m_urgentDays = cfg.readNumEntry( "urgentdays", 7 ); m_entryColor = cfg.readEntry("entrycolor", Qt::black.name() ); m_headlineColor = cfg.readEntry( "headlinecolor", Qt::black.name() ); m_urgentColor = cfg.readEntry( "urgentcolor", Qt::red.name() ); m_showBirthdays = cfg.readBoolEntry( "showBirthdays", true ); m_showAnniversaries = cfg.readBoolEntry( "showAnniversaries", true ); } /** * Get the addresss */ void AddressBookPluginWidget::getAddress() { if ( ! layoutTodo ){ layoutTodo = new QVBoxLayout( this ); } if ( ! addressLabel ) { - addressLabel = new OClickableLabel( this ); + addressLabel = new Opie::Ui::OClickableLabel( this ); connect( addressLabel, SIGNAL( clicked() ), this, SLOT( startAddressBook() ) ); layoutTodo->addWidget( addressLabel ); } QString output; // Check whether the database provide the search option.. - if ( !m_contactdb->hasQuerySettings( OContactAccess::DateDiff ) ){ + if ( !m_contactdb->hasQuerySettings( Opie::OPimContactAccess::DateDiff ) ){ // Libopie seems to be old.. output = QObject::tr( "Database does not provide this search query ! Please upgrade libOpie !<br>" ); addressLabel->setText( output ); return; } // Define the query for birthdays and start search.. QDate lookAheadDate = QDate::currentDate().addDays( m_daysLookAhead ); int ammount = 0; if ( m_showBirthdays ){ qWarning("Searching from now (%s) until %s ! ", QDate::currentDate().toString().latin1(), lookAheadDate.toString().latin1() ); } - if ( m_contactdb->hasQuerySettings( OContactAccess::DateDiff ) ){ + if ( m_contactdb->hasQuerySettings( Opie::OPimContactAccess::DateDiff ) ){ - OContact querybirthdays; + Opie::OPimContact querybirthdays; querybirthdays.setBirthday( lookAheadDate ); m_list = m_contactdb->queryByExample( querybirthdays, - OContactAccess::DateDiff ); + Opie::OPimContactAccess::DateDiff ); if ( m_list.count() > 0 ){ output = "<font color=" + m_headlineColor + ">" + QObject::tr( "Next birthdays in <b> %1 </b> days:" ) .arg( m_daysLookAhead ) + "</font> <br>"; for ( m_it = m_list.begin(); m_it != m_list.end(); ++m_it ) { if ( ammount++ < m_maxLinesTask ){ // Now we want to calculate how many days //until birthday. We have to set // the correct year to calculate the day diff... QDate destdate = (*m_it).birthday(); destdate.setYMD( QDate::currentDate().year(), destdate.month(), destdate.day() ); if ( QDate::currentDate().daysTo(destdate) < 0 ) destdate.setYMD( QDate::currentDate().year()+1, destdate.month(), destdate.day() ); if ( QDate::currentDate().daysTo(destdate) < m_urgentDays ) output += "<font color=" + m_urgentColor + "><b>-" + (*m_it).fullName() + " (" + QString::number(QDate::currentDate() .daysTo(destdate)) + " Days) </b></font><br>"; else output += "<font color=" + m_entryColor + "><b>-" + (*m_it).fullName() + " (" + QString::number(QDate::currentDate() .daysTo(destdate)) + " Days) </b></font><br>"; } } } else { output = "<font color=" + m_headlineColor + ">" + QObject::tr( "No birthdays in <b> %1 </b> days!" ) .arg( m_daysLookAhead ) + "</font> <br>"; } } if ( m_showAnniversaries ){ // Define the query for anniversaries and start search.. - OContact queryanniversaries; + Opie::OPimContact queryanniversaries; queryanniversaries.setAnniversary( lookAheadDate ); - m_list = m_contactdb->queryByExample( queryanniversaries, OContactAccess::DateDiff ); + m_list = m_contactdb->queryByExample( queryanniversaries, Opie::OPimContactAccess::DateDiff ); ammount = 0; if ( m_list.count() > 0 ){ output += "<font color=" + m_headlineColor + ">" + QObject::tr( "Next anniversaries in <b> %1 </b> days:" ) .arg( m_daysLookAhead ) + "</font> <br>"; for ( m_it = m_list.begin(); m_it != m_list.end(); ++m_it ) { if ( ammount++ < m_maxLinesTask ){ // Now we want to calculate how many days until anniversary. // We have to set the correct year to calculate the day diff... QDate destdate = (*m_it).anniversary(); destdate.setYMD( QDate::currentDate().year(), destdate.month(), destdate.day() ); if ( QDate::currentDate().daysTo(destdate) < 0 ) destdate.setYMD( QDate::currentDate().year()+1, destdate.month(), destdate.day() ); if ( QDate::currentDate().daysTo(destdate) < m_urgentDays ) output += "<font color=" + m_urgentColor + "><b>-" + (*m_it).fullName() + " (" + QString::number(QDate::currentDate() .daysTo( destdate ) ) + " Days) </b></font><br>"; else output += "<font color=" + m_entryColor + "><b>-" + (*m_it).fullName() + " (" + QString::number(QDate::currentDate() .daysTo( destdate ) ) + " Days) </b></font><br>"; } } } else { output += "<font color=" + m_headlineColor + ">" + QObject::tr( "No anniversaries in <b> %1 </b> days!" ) .arg( m_daysLookAhead ) + "</font> <br>"; } } addressLabel->setText( output ); } /** * start the todolist */ diff --git a/core/pim/today/plugins/addressbook/addresspluginwidget.h b/core/pim/today/plugins/addressbook/addresspluginwidget.h index b0e3811..b1c690d 100644 --- a/core/pim/today/plugins/addressbook/addresspluginwidget.h +++ b/core/pim/today/plugins/addressbook/addresspluginwidget.h @@ -1,66 +1,66 @@ /* * addresspluginwidget.h * * copyright : (c) 2003 by Stefan Eilers * email : eilers.stefan@epost.de * * This implementation was derived from the todolist plugin implementation * */ /*************************************************************************** * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * * * ***************************************************************************/ #ifndef ADDRESSBOOK_PLUGIN_WIDGET_H #define ADDRESSBOOK_PLUGIN_WIDGET_H +#include <opie2/ocontactaccess.h> +#include <opie2/oclickablelabel.h> + #include <qstring.h> #include <qwidget.h> #include <qlayout.h> -#include <opie/ocontactaccess.h> -#include <opie/oclickablelabel.h> - class AddressBookPluginWidget : public QWidget { Q_OBJECT public: AddressBookPluginWidget( QWidget *parent, const char *name ); ~AddressBookPluginWidget(); void reinitialize(); public slots: - void refresh( const OContactAccess* db ); + void refresh( const Opie::OPimContactAccess* db ); protected slots: void startAddressBook(); private: - OClickableLabel* addressLabel; + Opie::Ui::OClickableLabel* addressLabel; QVBoxLayout* layoutTodo; - OContactAccess * m_contactdb; + Opie::OPimContactAccess * m_contactdb; - OContactAccess::List m_list; - OContactAccess::List::Iterator m_it; + Opie::OPimContactAccess::List m_list; + Opie::OPimContactAccess::List::Iterator m_it; void readConfig(); void getAddress(); int m_maxLinesTask; int m_maxCharClip; int m_daysLookAhead; int m_urgentDays; QString m_entryColor; QString m_headlineColor; QString m_urgentColor; bool m_showBirthdays; bool m_showAnniversaries; }; #endif diff --git a/core/pim/today/plugins/addressbook/config.in b/core/pim/today/plugins/addressbook/config.in index aad6fc7..cf61a0e 100644 --- a/core/pim/today/plugins/addressbook/config.in +++ b/core/pim/today/plugins/addressbook/config.in @@ -1,4 +1,4 @@ config TODAY_ADDRESSBOOK boolean "opie-today-addressbookplugin (shows Birthdays and Anniversaries)" default "y" - depends ( LIBQPE || LIBQPE-X11 ) && LIBOPIE + depends ( LIBQPE || LIBQPE-X11 ) && LIBOPIE2CORE && LIBOPIE2UI && LIBOPIE2PIM && LIBOPIE2DB && LIBQTAUX diff --git a/core/pim/today/plugins/addressbook/opie-today-addressbookplugin.control b/core/pim/today/plugins/addressbook/opie-today-addressbookplugin.control index d40691a..2fd1435 100644 --- a/core/pim/today/plugins/addressbook/opie-today-addressbookplugin.control +++ b/core/pim/today/plugins/addressbook/opie-today-addressbookplugin.control @@ -1,10 +1,10 @@ Package: opie-today-addressbookplugin Files: plugins/today/libtodayaddressbookplugin.so* Priority: optional Section: opie/plugins Maintainer: Stefan Eilers <eilers.stefan@epost.de> Architecture: arm -Depends: libqte2, opie-today +Depends: libqte2, opie-today, libopiecore2, libopieui2, libopiepim2, libopiedb2, libqtaux2 Description: Addressbook plugin for Today Displays upcoming Birthdays and Anniversaries Version: $QPE_VERSION$EXTRAVERSION |