From ec80e207cce9ebb55be771603fc47a4e7892fd6c Mon Sep 17 00:00:00 2001 From: zecke Date: Fri, 20 Jun 2003 15:40:07 +0000 Subject: toExtraMap is no more virtual we save custom entries now setExtraMap added as well --- (limited to 'libopie/pim') diff --git a/libopie/pim/ocontact.cpp b/libopie/pim/ocontact.cpp index a2fb68c..be4ce0a 100644 --- a/libopie/pim/ocontact.cpp +++ b/libopie/pim/ocontact.cpp @@ -441,7 +441,7 @@ QString OContact::toRichText() const // name, jobtitle and company if ( !(value = fullName()).isEmpty() ) text += "

" + Qtopia::escapeString(value) + "

"; - + if ( !(value = jobTitle()).isEmpty() ) text += Qtopia::escapeString(value) + "
"; @@ -982,13 +982,7 @@ QString OContact::type() const return QString::fromLatin1( "OContact" ); } -// Definition is missing ! (se) -QMap OContact::toExtraMap() const -{ - qWarning ("Function not implemented: OContact::toExtraMap()"); - QMap useless; - return useless; -} + class QString OContact::recordField( int pos ) const { diff --git a/libopie/pim/oevent.cpp b/libopie/pim/oevent.cpp index e4f5d92..7bcf944 100644 --- a/libopie/pim/oevent.cpp +++ b/libopie/pim/oevent.cpp @@ -236,14 +236,14 @@ bool OEvent::match( const QRegExp& re )const { } QString OEvent::toRichText()const { QString text, value; - + // description text += "

"; if ( !description().isEmpty() ) { text += Qtopia::escapeString(description() ).replace(QRegExp( "[\n]"), "" ); } text += "




"; - + // location if ( !(value = location()).isEmpty() ) { text += "" + QObject::tr( "Location:" ) + " "; @@ -274,14 +274,14 @@ QString OEvent::toRichText()const { replace(QRegExp( "[\n]"), "
" ) + "
"; } } - + // categories if ( categoryNames("Calendar").count() ){ text += "" + QObject::tr( "Category:") + " "; text += categoryNames("Calendar").join(", "); text += "
"; } - + //notes if ( !note().isEmpty() ) { text += "" + QObject::tr( "Note:") + "
"; @@ -360,9 +360,6 @@ void OEvent::deref() { QMap OEvent::toMap()const { return QMap(); } -QMap OEvent::toExtraMap()const { - return QMap(); -} int OEvent::parent()const { return data->parent; } diff --git a/libopie/pim/oevent.h b/libopie/pim/oevent.h index b696d81..30f442e 100644 --- a/libopie/pim/oevent.h +++ b/libopie/pim/oevent.h @@ -132,7 +132,6 @@ public: QString type()const; QMap toMap()const; - QMap toExtraMap()const; QString recordField(int )const; static int rtti(); diff --git a/libopie/pim/opimrecord.cpp b/libopie/pim/opimrecord.cpp index 0c9734d..2365748 100644 --- a/libopie/pim/opimrecord.cpp +++ b/libopie/pim/opimrecord.cpp @@ -174,3 +174,9 @@ void OPimRecord::setLastHitField( int lastHit )const { int OPimRecord::lastHitField()const{ return m_lastHit; } +QMap OPimRecord::toExtraMap()const { + return customMap; +} +void OPimRecord::setExtraMap( const QMap& map) { + customMap = map; +} diff --git a/libopie/pim/opimrecord.h b/libopie/pim/opimrecord.h index 494c78e..563b19c 100644 --- a/libopie/pim/opimrecord.h +++ b/libopie/pim/opimrecord.h @@ -6,7 +6,12 @@ #include #include +/* + * we need to get customMap which is private... + */ +#define private protected #include +#undef private #include @@ -94,7 +99,8 @@ public: /** * key value representation of extra items */ - virtual QMap toExtraMap()const = 0; + QMap toExtraMap()const; + void setExtraMap( const QMap& ); /** * the name for a recordField diff --git a/libopie/pim/otodo.cpp b/libopie/pim/otodo.cpp index c84eeeb..38b93f7 100644 --- a/libopie/pim/otodo.cpp +++ b/libopie/pim/otodo.cpp @@ -279,7 +279,7 @@ QString OTodo::toRichText() const text += Qtopia::escapeString(summary() ).replace(QRegExp( "[\n]"), "" ); } text += "


"; - + // description if( !description().isEmpty() ){ text += "" + QObject::tr( "Description:" ) + "
"; @@ -306,16 +306,16 @@ QString OTodo::toRichText() const break; }; text += "
"; - + // progress text += "" + QObject::tr( "Progress:") + " " + QString::number( progress() ) + " %
"; - + // due date if (hasDueDate() ){ QDate dd = dueDate(); int off = QDate::currentDate().daysTo( dd ); - + text += "" + QObject::tr( "Deadline:" ) + " " + dd.toString() + "
"; } - + // categories text += "" + QObject::tr( "Category:") + " "; text += categoryNames( "Todo List" ).join(", "); @@ -460,9 +460,6 @@ QMap OTodo::toMap() const { return map; } -QMap OTodo::toExtraMap()const { - return data->extra; -} /** * change or modify looks at the ref count and either * creates a new QShared Object or it can modify it diff --git a/libopie/pim/otodo.h b/libopie/pim/otodo.h index 4d5ee36..f9a345a 100644 --- a/libopie/pim/otodo.h +++ b/libopie/pim/otodo.h @@ -193,7 +193,6 @@ public: */ QString type()const; QString toShortText()const; - QMap toExtraMap()const; QString recordField(int id )const; /** diff --git a/libopie/pim/otodoaccessxml.cpp b/libopie/pim/otodoaccessxml.cpp index 2b62f0d..3d15354 100644 --- a/libopie/pim/otodoaccessxml.cpp +++ b/libopie/pim/otodoaccessxml.cpp @@ -497,9 +497,31 @@ void OTodoAccessXML::todo( QAsciiDict* dict, OTodo& ev, break; } default: + ev.setCustomField( attr, val ); break; } } + +// from PalmtopRecord... GPL ### FIXME +namespace { +QString customToXml(const QMap& customMap ) +{ + //qWarning(QString("writing custom %1").arg(customMap.count())); + QString buf(" "); + for ( QMap::ConstIterator cit = customMap.begin(); + cit != customMap.end(); ++cit) { +// qWarning(".ITEM."); + buf += cit.key(); + buf += "=\""; + buf += Qtopia::escapeString(cit.data()); + buf += "\" "; + } + return buf; +} + + +} + QString OTodoAccessXML::toString( const OTodo& ev )const { QString str; @@ -581,6 +603,7 @@ QString OTodoAccessXML::toString( const OTodo& ev )const { str += "Reminders=\""+ records.join(";") +"\" "; } } + str += customToXml( ev.toExtraMap() ); return str; -- cgit v0.9.0.2