<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:admin="http://webns.net/mvcb/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:html="http://www.w3.org/1999/html" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>Ross Burton</title><link>http://www.burtonini.com/blog</link><description>A potted account of Ross' life</description><language>en</language><ttl>60</ttl><dc:creator>Ross Burton</dc:creator><admin:generatorAgent rdf:resource="http://pyblosxom.sourceforge.net/"/><admin:errorReportsTo rdf:resource="mailto:ross@burtonini.com"/><item><title>Hito Lives!</title><guid isPermaLink="false">computers/hito-2007-06-18-19-50</guid><link>http://www.burtonini.com/blog/computers/hito-2007-06-18-19-50</link><description>Hito is alive! I admit that the contact preview needs some work, there is some tasty code in Contacts I ...</description><content:encoded><![CDATA[    <p>
      Hito is alive!
    </p>
    <p>
      <img src="http://burtonini.com/computing/screenshots/hito-2.png" alt="Hito"/>
    </p>
    <p>
      I admit that the contact preview needs some work, there is some tasty code
      in Contacts I need to refactor.
    </p>
    <p>
      So, what is happening here?  The tree view is a <tt>HitoContactView</tt>,
      which subclasses <tt>GtkTreeView</tt>.  This displays the contents of a
      <tt>HitoContactStore</tt>, a subclass of <tt>GtkListStore</tt> which holds
      the <tt>EContacts</tt> from an <tt>EBookView</tt>.  In between the store
      and the view is a <tt>HitoContactFilterModel</tt>, which can filter both
      on groups (currently the most useful implementation is
      <tt>HitoCategoryGroup</tt>, which groups on the <tt>CATEGORY</tt> vCard
      field) and text, which does decomposed matches against the contact's name.
    </p>
    <p>
      The combo box is a <tt>HitoGroupCombo</tt>, which controls the group being
      filtered.  The entry is the only widget which isn't a subclass (yet), and
      controls the text being filtered.  The final bit of magic is
      <tt>HitoGroupStore</tt>, which collects categories from contacts and
      creates <tt>HitoCategoryGroups</tt> as required (this is used as the model
      for the combo).
    </p>
    <p>
      Now for the hard work of writing a usable preview widget, and the
      nightmare of a decent contact editor...
    </p>
    <p>
      <small>NP: <cite>Live At the Union Chapel</cite>, Damien Rice</small>
    </p>
]]></content:encoded><category domain="http://www.burtonini.com">/computers</category><dc:date>2007-06-18T18:50:00Z</dc:date></item><item><title>Sound Juicer &quot;Little Bit Of Your Song In My Ear&quot; 2.19.2</title><guid isPermaLink="false">computers/sound-juicer/sj-2.19.2</guid><link>http://www.burtonini.com/blog/computers/sound-juicer/sj-2.19.2</link><description>Sound Juicer &quot;Little Bit Of Your Song In My Ear&quot; 2.19.2is out. Tarballs are available on burtonini.com , or from ...</description><content:encoded><![CDATA[    <p>
      Sound Juicer "Little Bit Of Your Song In My Ear" 2.19.2is out.
      Tarballs are available <a
      href="http://www.burtonini.com/computing/sound-juicer-2.19.2.tar.gz">on
      <tt>burtonini.com</tt></a>, or from the <a
        href="ftp://ftp.gnome.org/pub/gnome/sources/sound-juicer/2.19/">GNOME
        FTP servers</a>.
    </p>
    <ul>
      <li>Correctly read the album artist (#393707)</li>
      <li>Don't set empty track titles (#435964)</li>
      <li>Fix a11y on the play/pause button (#364371, Patrick Wade)</li>
    </ul>
]]></content:encoded><category domain="http://www.burtonini.com">/computers/sound-juicer</category><dc:date>2007-06-18T09:50:32Z</dc:date></item></channel></rss>