Possible things to do in Devhelp
================================

Normally all the codebase is in a good state, except DhAssistant because I
don't use it (and I think it's sometimes broken).

Some stuff that can be done:

Improve DhBookList API
----------------------

Make it easier to create a custom DhBookList. Maybe expose publicly
DhBookListSimple and be able to subclass it.

Have man-pages for the lib C
----------------------------

https://bugzilla.gnome.org/show_bug.cgi?id=616509#c6

Create a software product line
------------------------------

By moving almost all the code to the libdevhelp (so the software product line
is implemented by developing a library, using classic OOP design patterns).

Same idea as Tepl, but applied to a smaller codebase. See:
https://developer.gnome.org/tepl/unstable/intro.html
https://www.amazon.com/Feature-Oriented-Software-Product-Lines-Implementation/dp/3642375200/

In Devhelp it's almost done. What remains is DhApplicationWindow, DhApplication
(see how it is done in Tepl) and a toolkit to build a preferences dialog (my
plan was to at least factor out a DhBookChooser widget from DhPreferences).

Then with the software product line, different API browser products can be
created: a generic one (same as current Devhelp), one specific for GNOME, etc.
See also the roadmap on the wiki.

Improve DhSettings
------------------

See the comment in dh-settings.c.
