clean up Thread.__str__
authorPatrick Totzke <patricktotzke@googlemail.com>
Mon, 5 Dec 2011 21:19:27 +0000 (21:19 +0000)
committerSebastian Spaeth <Sebastian@SSpaeth.de>
Tue, 6 Dec 2011 12:21:42 +0000 (13:21 +0100)
bindings/python/notmuch/thread.py

index c575c88dc185c0e55264656ad78c658d7f3730ed..435cbe24a62e38ef8ef92880cbeffc01505dd217 100644 (file)
@@ -392,30 +392,19 @@ class Thread(object):
         return Tags(tags_p, self)
 
     def __str__(self):
-        """A str(Thread()) is represented by a 1-line summary"""
-        thread = {}
-        thread['id'] = self.get_thread_id()
-
-        ###TODO: How do we find out the current sort order of Threads?
-        ###Add a "sort" attribute to the Threads() object?
-        #if (sort == NOTMUCH_SORT_OLDEST_FIRST)
-        #         date = notmuch_thread_get_oldest_date (thread);
-        #else
-        #         date = notmuch_thread_get_newest_date (thread);
-        thread['date'] = date.fromtimestamp(self.get_newest_date())
-        thread['matched'] = self.get_matched_messages()
-        thread['total'] = self.get_total_messages()
-        thread['authors'] = self.get_authors()
-        thread['subject'] = self.get_subject()
-        thread['tags'] = self.get_tags()
-
-        return "thread:%s %12s [%d/%d] %s; %s (%s)" % (thread['id'],
-                                                       thread['date'],
-                                                       thread['matched'],
-                                                       thread['total'],
-                                                       thread['authors'],
-                                                       thread['subject'],
-                                                       thread['tags'])
+        return unicode(self).encode('utf-8')
+
+    def __unicode__(self):
+        frm = "thread:%s %12s [%d/%d] %s; %s (%s)"
+
+        return frm % (self.get_thread_id(),
+                      date.fromtimestamp(self.get_newest_date()),
+                      self.get_matched_messages(),
+                      self.get_total_messages(),
+                      self.get_authors(),
+                      self.get_subject(),
+                      self.get_tags(),
+                     )
 
     _destroy = nmlib.notmuch_thread_destroy
     _destroy.argtypes = [NotmuchThreadP]