From 586dea6e61c766da49ba6cb55dd71851c0fafad3 Mon Sep 17 00:00:00 2001
From: drw <drw>
Date: Sun, 18 May 2003 23:20:25 +0000
Subject: Updates to ocontact, oevent & otodo's toRichText() implementations

---
(limited to 'libopie2/opiepim')

diff --git a/libopie2/opiepim/ocontact.cpp b/libopie2/opiepim/ocontact.cpp
index a7ca975..a2fb68c 100644
--- a/libopie2/opiepim/ocontact.cpp
+++ b/libopie2/opiepim/ocontact.cpp
@@ -440,7 +440,8 @@ QString OContact::toRichText() const
 
     // name, jobtitle and company
     if ( !(value = fullName()).isEmpty() )
-	text += "<b><h3>" + Qtopia::escapeString(value) + "</h3></b><br>";
+	text += "<b><h3><img src=\"addressbook/AddressBook\">" + Qtopia::escapeString(value) + "</h3></b>";
+    
     if ( !(value = jobTitle()).isEmpty() )
 	text += Qtopia::escapeString(value) + "<br>";
 
@@ -455,17 +456,19 @@ QString OContact::toRichText() const
     if ( !comp.isEmpty() )
 	text += Qtopia::escapeString(comp) + "<br>";
 
+    text += "<hr><br>";
+
+    // defailt email
     QString defEmail = defaultEmail();
     if ( !defEmail.isEmpty() )
-	text += "<b>" + QObject::tr("Default Email: ") + "</b>"
+	text += "<b><img src=\"addressbook/email\">" + QObject::tr("Default Email: ") + "</b>"
 		+ Qtopia::escapeString(defEmail) + "<br>";
 
-    text += "<hr>";
+    text += "<br>";
 
     // business address
     if ( !businessStreet().isEmpty() || !businessCity().isEmpty() ||
 	 !businessZip().isEmpty() || !businessCountry().isEmpty() ) {
-	text += "<br>";
 	text += QObject::tr( "<b>Work Address:</b>" );
 	text +=  "<br>";
 	marker = true;
@@ -496,25 +499,25 @@ QString OContact::toRichText() const
     }
     str = businessWebpage();
     if ( !str.isEmpty() ){
-	text += "<b>" + QObject::tr("Business Web Page: ") + "</b>"
+	text += "<b><img src=\"addressbook/webpagework\">" + QObject::tr("Business Web Page: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 	marker = true;
     }
     str = businessPhone();
     if ( !str.isEmpty() ){
-	text += "<b>" + QObject::tr("Business Phone: ") + "</b>"
+	text += "<b><img src=\"addressbook/phonework\">" + QObject::tr("Business Phone: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 	marker = true;
     }
     str = businessFax();
     if ( !str.isEmpty() ){
-	text += "<b>" + QObject::tr("Business Fax: ") + "</b>"
+	text += "<b><img src=\"addressbook/faxwork\">" + QObject::tr("Business Fax: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 	marker = true;
     }
     str = businessMobile();
     if ( !str.isEmpty() ){
-	text += "<b>" + QObject::tr("Business Mobile: ") + "</b>"
+	text += "<b><img src=\"addressbook/mobilework\">" + QObject::tr("Business Mobile: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 	marker = true;
     }
@@ -525,10 +528,11 @@ QString OContact::toRichText() const
 	marker = true;
     }
 
+    text += "<br>";
+
     // home address
     if ( !homeStreet().isEmpty() || !homeCity().isEmpty() ||
 	 !homeZip().isEmpty() || !homeCountry().isEmpty() ) {
-	text += "<br>";
 	text += QObject::tr( "<b>Home Address:</b>" );
 	text +=  "<br>";
     }
@@ -551,25 +555,25 @@ QString OContact::toRichText() const
     // rest of Home data
     str = homeWebpage();
     if ( !str.isEmpty() ){
-	text += "<b>" + QObject::tr("Home Web Page: ") + "</b>"
+	text += "<b><img src=\"addressbook/webpagehome\">" + QObject::tr("Home Web Page: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 	marker = true;
     }
     str = homePhone();
     if ( !str.isEmpty() ){
-	text += "<b>" + QObject::tr("Home Phone: ") + "</b>"
+	text += "<b><img src=\"addressbook/phonehome\">" + QObject::tr("Home Phone: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 	marker = true;
     }
     str = homeFax();
     if ( !str.isEmpty() ){
-	text += "<b>" + QObject::tr("Home Fax: ") + "</b>"
+	text += "<b><img src=\"addressbook/faxhome\">" + QObject::tr("Home Fax: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 	marker = true;
     }
     str = homeMobile();
     if ( !str.isEmpty() ){
-	text += "<b>" + QObject::tr("Home Mobile: ") + "</b>"
+	text += "<b><img src=\"addressbook/mobilehome\">" + QObject::tr("Home Mobile: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 	marker = true;
     }
@@ -625,6 +629,7 @@ QString OContact::toRichText() const
 	text += "<b>" + QObject::tr("Nickname: ") + "</b>"
 		+ Qtopia::escapeString(str) + "<br>";
 
+    // categories
     if ( categoryNames("Contacts").count() ){
 	    text += "<b>" + QObject::tr( "Category:") + "</b> ";
 	    text += categoryNames("Contacts").join(", ");
diff --git a/libopie2/opiepim/oevent.cpp b/libopie2/opiepim/oevent.cpp
index 83b191f..e4f5d92 100644
--- a/libopie2/opiepim/oevent.cpp
+++ b/libopie2/opiepim/oevent.cpp
@@ -235,22 +235,54 @@ bool OEvent::match( const QRegExp& re )const {
     return false;
 }
 QString OEvent::toRichText()const {
-    QString text;
+    QString text, value;
+    
+    // description
+    text += "<b><h3><img src=\"datebook/DateBook\">";
     if ( !description().isEmpty() ) {
-        text += "<b>" + QObject::tr( "Description:") + "</b><br>";
-        text += Qtopia::escapeString(description() ).
-                replace(QRegExp( "[\n]"),  "<br>" ) + "<br>";
+        text += Qtopia::escapeString(description() ).replace(QRegExp( "[\n]"),  "" );
+    }
+    text += "</h3></b><br><hr><br>";
+    
+    // location
+    if ( !(value = location()).isEmpty() ) {
+        text += "<b>" + QObject::tr( "Location:" ) + "</b> ";
+        text += Qtopia::escapeString(value) + "<br>";
+    }
+
+    // all day event
+    if ( isAllDay() ) {
+        text += "<b><i>" + QObject::tr( "This is an all day event" ) + "</i></b><br>";
     }
-    if ( startDateTime().isValid() ) {
-        text += "<b>" + QObject::tr( "Start:") + "</b> ";
-        text += Qtopia::escapeString(startDateTime().toString() ).
-                replace(QRegExp( "[\n]"),  "<br>" ) + "<br>";
+    // multiple day event
+    else if ( isMultipleDay () ) {
+        text += "<b><i>" + QObject::tr( "This is a multiple day event" ) + "</i></b><br>";
+    }
+    // start & end times
+    else {
+        // start time
+        if ( startDateTime().isValid() ) {
+            text += "<b>" + QObject::tr( "Start:") + "</b> ";
+            text += Qtopia::escapeString(startDateTime().toString() ).
+                    replace(QRegExp( "[\n]"),  "<br>" ) + "<br>";
+        }
+
+        // end time
+        if ( endDateTime().isValid() ) {
+            text += "<b>" + QObject::tr( "End:") + "</b> ";
+            text += Qtopia::escapeString(endDateTime().toString() ).
+                    replace(QRegExp( "[\n]"),  "<br>" ) + "<br>";
+        }
     }
-    if ( endDateTime().isValid() ) {
-        text += "<b>" + QObject::tr( "End:") + "</b> ";
-        text += Qtopia::escapeString(endDateTime().toString() ).
-                replace(QRegExp( "[\n]"),  "<br>" ) + "<br>";
+    
+    // categories
+    if ( categoryNames("Calendar").count() ){
+	    text += "<b>" + QObject::tr( "Category:") + "</b> ";
+	    text += categoryNames("Calendar").join(", ");
+	    text += "<br>";
     }
+    
+    //notes
     if ( !note().isEmpty() ) {
         text += "<b>" + QObject::tr( "Note:") + "</b><br>";
         text += note();
diff --git a/libopie2/opiepim/otodo.cpp b/libopie2/opiepim/otodo.cpp
index e087a00..c84eeeb 100644
--- a/libopie2/opiepim/otodo.cpp
+++ b/libopie2/opiepim/otodo.cpp
@@ -273,27 +273,61 @@ QString OTodo::toRichText() const
   QString text;
   QStringList catlist;
 
-  // Description of the todo
+  // summary
+  text += "<b><h3><img src=\"todo/TodoList\">";
   if ( !summary().isEmpty() ) {
-    text += "<b>" + QObject::tr( "Summary:") + "</b><br>";
-    text += Qtopia::escapeString(summary() ).replace(QRegExp( "[\n]"),  "<br>" ) + "<br>";
+      text += Qtopia::escapeString(summary() ).replace(QRegExp( "[\n]"),  "" );
   }
+  text += "</h3></b><br><hr><br>";
+    
+  // description
   if( !description().isEmpty() ){
     text += "<b>" + QObject::tr( "Description:" ) + "</b><br>";
     text += Qtopia::escapeString(description() ).replace(QRegExp( "[\n]"), "<br>" ) ;
   }
-  text += "<br><br><br>";
 
-  text += "<b>" + QObject::tr( "Priority:") +" </b>"
-    +  QString::number( priority() ) + " <br>";
+  // priority
+  int priorityval = priority();
+  text += "<b>" + QObject::tr( "Priority:") +" </b><img src=\"todo/priority" +
+          QString::number( priorityval ) + "\">";
+//  text += "<b>" + QObject::tr( "Priority:") +"</b><img src=\"todo/priority" +
+//          QString::number( priority() ) + "\"><br>";
+  switch ( priorityval )
+  {
+    case 1 : text += QObject::tr( "Very high" );
+        break;
+    case 2 : text += QObject::tr( "High" );
+        break;
+    case 3 : text += QObject::tr( "Normal" );
+        break;
+    case 4 : text += QObject::tr( "Low" );
+        break;
+    case 5 : text += QObject::tr( "Very low" );
+        break;
+  };
+  text += "<br>";
+    
+  // progress
   text += "<b>" + QObject::tr( "Progress:") + " </b>"
           + QString::number( progress() ) + " %<br>";
+          
+  // due date
   if (hasDueDate() ){
-    text += "<b>" + QObject::tr( "Deadline:") + " </b>";
-    text += dueDate().toString();
-    text += "<br>";
+    QDate dd = dueDate();
+    int off = QDate::currentDate().daysTo( dd );
+    
+    text += "<b>" + QObject::tr( "Deadline:" ) + " </b><font color=\"";
+    if ( off < 0 )
+      text += "#FF0000";
+    else if ( off == 0 )
+      text += "#FFFF00";
+    else if ( off > 0 )
+      text += "#00FF00";
+
+    text += "\">" + dd.toString() + "</font><br>";
   }
-
+  
+  // categories
   text += "<b>" + QObject::tr( "Category:") + "</b> ";
   text += categoryNames( "Todo List" ).join(", ");
   text += "<br>";
--
cgit v0.9.0.2