public class CellRendererContact : Gtk.CellRendererText { private Contact _contact; public Contact contact { get { return _contact; } set { _contact = value; string str = escape_markup(contact.display_string); Gee.Map.Entry res = contact.get_resource_with_highest_priority(); if(res != null && res.value.status != null) { str += "\n" + escape_markup(res.value.status) + ""; } markup = str; } } public CellRendererContact() { ellipsize = Pango.EllipsizeMode.END; } private static string escape_markup(string str) { return str.replace("&", "&").replace("\"", """).replace("<", "<").replace(">", ">"); } }