* Added comparisons with "Invalid" string <- should be fixed in tinymail
[modest] / src / modest-text-utils.h
index d85db84..2a3002b 100644 (file)
 /**
  * modest_text_utils_derived_subject:
  * @subject: a string which contains the original subject
- * @prefix: the prefix for the new subject (such as 'Re:' or 'Fwd:')
+ * @prefix: the prefix for the new subject (such as 'Re:' or 'Fwd:'),
+ *           must not be NULL
  *
  * create a 'derived' subject line for eg. replies and forwards 
  * 
  * Returns: a newly allocated string containing the resulting subject
+ * subject == NULL, then @prefix " " will be returned
  */
 gchar* modest_text_utils_derived_subject (const gchar *subject, 
                                          const gchar* prefix);
@@ -51,8 +53,9 @@ gchar* modest_text_utils_derived_subject (const gchar *subject,
 
 /**
  * modest_text_utils_quote:
- * @buf: a string which contains the message to quote
- * @from: the sender of the original message
+ * @text: a non-NULL string which contains the message to quote
+ * @from: a non-NULL  sender of the original message
+ * @content_type: the non-NULL content type for the quoting, e.g. "text/html"
  * @sent_date: sent date/time of the original message
  * @limit: specifies the maximum characters per line in the quoted text
  * 
@@ -84,11 +87,11 @@ gchar* modest_text_utils_cite (const gchar *text,
 
 /**
  * modest_text_utils_inlined_text
- * @from: the sender of the original message
+ * @from: the non-NULL sender of the original message
  * @sent_date: sent date/time of the original message
- * @to: sent date/time of the original message
- * @subject: sent date/time of the original message
- * @text: sent date/time of the original message
+ * @to: 
+ * @subject: 
+ * @text: 
  *
  * creates a new string with the "Original message" text prepended to
  * the text passed as argument and some data of the header
@@ -104,12 +107,14 @@ gchar*   modest_text_utils_inline (const gchar *text,
 
 /**
  * modest_text_utils_remove_address
- * @address_list: string with a comma-separated list of email addresses
- * @address: an specific e-mail address
+ * @address_list: none-NULL string with a comma-separated list of email addresses
+ * @address: an specific e-mail address 
  *
- * remove a specific address from a list of email addresses
+ * remove a specific address from a list of email addresses; if @address
+ * is NULL, returns an unchanged @address_list
  * 
- * Returns: a newly allocated string containing the new list
+ * Returns: a newly allocated string containing the new list, or NULL
+ * in case of error or the original @address_list was NULL
  */
 gchar*   modest_text_utils_remove_address (const gchar *address_list, 
                                           const gchar *address);
@@ -122,7 +127,7 @@ gchar*   modest_text_utils_remove_address (const gchar *address_list,
  * 
  * Returns: a newly allocated string containing the html
  */
-gchar*  modest_text_utils_convert_to_html (const gchar *data);
+gchar*  modest_text_utils_convert_to_html (const gchar *txt);
 
 
 /**
@@ -130,19 +135,19 @@ gchar*  modest_text_utils_convert_to_html (const gchar *data);
  * @s:
  * @max:
  * @fmt:
- * @tm
+ * @timet:
  *
  * this is just an alias for strftime(3), so we can use that without
  * getting warning from gcc
  * 
  * Returns: a formatted string of max length @max in @s
  */
-size_t modest_text_utils_strftime(char *s, size_t max, const char  *fmt, const  struct tm *tm);
+size_t modest_text_utils_strftime(char *s, size_t max, const char  *fmt, time_t timet);
 
 
 
 /**
- * modest_text_utils_display_addres:
+ * modest_text_utils_get_display_addres:
  * @address: original address (UTF8 string)
  *
  * make a 'display address' from an address:
@@ -153,7 +158,67 @@ size_t modest_text_utils_strftime(char *s, size_t max, const char  *fmt, const
  * Returns: the new address. The string is *not* newly allocated.
  * NULL in case of error
  */
-gchar* modest_text_utils_display_address (gchar *address);
+gchar* modest_text_utils_get_display_address (gchar *address);
 
 
+/**
+ * modest_text_utils_get_subject_prefix_len:
+ * @subject: original subject (UTF8 string)
+ *
+ * determine the length of the "Re:/RE:/Fwd:" prefix in an e-mail address
+ * 
+ * Returns: the length of the  prefix, or 0 if there is none
+ */
+gint modest_text_utils_get_subject_prefix_len (const gchar *subject);
+
+
+/**
+ * modest_text_utils_utf8_strcmp:
+ * @s1: the first string
+ * @s2: the second string
+ * @insensitive: should the comparison be case-insensitive?
+ *
+ * a strcmp that is NULL-safe, can deal with UTF8 and case-insensitive comparison 
+ *
+ * Returns: an integer less than, equal to, or greater than zero if s1 is found,
+ * respectively, to be less than, to match, or be greater than s2.
+ */
+gint modest_text_utils_utf8_strcmp (const gchar* s1, const gchar *s2, gboolean insensitive);
+
+
+
+/**
+ * modest_text_utils_get_display_date:
+ * @date: the date to display
+ *
+ * get a string representation for a date.
+ * 
+ * Returns: the new display date, as a constant string.
+ * must NOT be freed
+ */
+const gchar* modest_text_utils_get_display_date (time_t date);
+
+
+/**
+ * modest_text_utils_get_display_size:
+ * @size: size in bytes
+ *
+ * get a string representation for a size in bytes.
+ * 
+ * Returns: the newly allocated display string for the
+ * size in bytes. must be freed.
+ */
+gchar * modest_text_utils_get_display_size (guint size);
+
+
+/**
+ * modest_text_utils_validate_email_address:
+ * @email_address: a string
+ * 
+ * validates the email address passed as argument
+ * 
+ * Returns: TRUE if the address is valid, FALSE otherwise
+ **/
+gboolean     modest_text_utils_validate_email_address (const gchar *email_address);
+
 #endif /* __MODEST_TEXT_UTILS_H__ */