My fourth Getting Things GNOME! Summer of Code week had four work foci (a trend which will hopefully not continue 'til week 10…)
One, I put up some code to the Planet, having been encouraged by good responses to earlier queries. This time I stuck my neck out by proposing something larger, and in short order was told three new things to consider—for example, the mixin concept. With this input, I have improved my
FancyInterface, which lets you access DBus properties as Python attributes of
ProxyObjects. Check out the code (standalone, for the moment) here.
Many of the the fields in the GTG data model will be exported as DBus properties using the above code. These chunks of XML code give an overall picture of the interfaces that will be used in GTG, in the standard DBus introspection format.
Third, I've proposed a new Date class for GTG. Dates in GTG go beyond what's provided by the
datetime module, because we support some 'fuzzy' concepts like now, soon and later. Not only must these be stored and sorted (alongside fixed dates and non-/null dates), but they'll have to go over DBus as strings once my project is complete…hence the new class.
Fourth and last, the divorce proceedings for existing code continue! With OfflineIMAP (highly recommended) as my inspiration, this merge will make the "gtg" executable your one-stop shop for GTK, command-line and other, future UIs. Forcing "gtcli" and "gtg" together helped me see which dependencies were of one UI; which were of all UIs, and which things are needed by both the UIs and core.