diff --git a/docs/reference/gtk/tmpl/.gitignore b/docs/reference/gtk/tmpl/.gitignore
index 66a28214a3..40585283d5 100644
--- a/docs/reference/gtk/tmpl/.gitignore
+++ b/docs/reference/gtk/tmpl/.gitignore
@@ -50,6 +50,7 @@ gtktoolbar.sgml
gtktoolitem.sgml
gtktooltip.sgml
gtktreednd.sgml
+gtktreesortable.sgml
gtktreestore.sgml
gtktreeviewcolumn.sgml
gtktypeutils.sgml
diff --git a/docs/reference/gtk/tmpl/gtktreesortable.sgml b/docs/reference/gtk/tmpl/gtktreesortable.sgml
deleted file mode 100644
index f5ebb8f6d8..0000000000
--- a/docs/reference/gtk/tmpl/gtktreesortable.sgml
+++ /dev/null
@@ -1,135 +0,0 @@
-
-GtkTreeSortable
-
-
-The interface for sortable models used by GtkTreeView
-
-
-
-#GtkTreeSortable is an interface to be implemented by tree models which
-support sorting. The #GtkTreeView uses the methods provided by this interface
-to sort the model.
-
-
-
-
-#GtkTreeModel, #GtkTreeView
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-@treesortable: the object which received the signal.
-
-
-
-
-
-
-@g_iface:
-@sort_column_changed:
-@get_sort_column_id:
-@set_sort_column_id:
-@set_sort_func:
-@set_default_sort_func:
-@has_default_sort_func:
-
-
-
-A GtkTreeIterCompareFunc should return a negative integer, zero, or a positive
-integer if @a sorts before @b, @a sorts with @b, or @a sorts after @b
-respectively. If two iters compare as equal, their order in the sorted model
-is undefined. In order to ensure that the #GtkTreeSortable behaves as
-expected, the GtkTreeIterCompareFunc must define a partial order on
-the model, i.e. it must be reflexive, antisymmetric and transitive.
-
-
-For example, if @model is a product catalogue, then a compare function
-for the "price" column could be one which returns
-price_of(@a) - price_of(@b).
-
-
-@model: The #GtkTreeModel the comparison is within
-@a: A #GtkTreeIter in @model
-@b: Another #GtkTreeIter in @model
-@user_data: Data passed when the compare func is assigned e.g. by
-gtk_tree_sortable_set_sort_func()
-@Returns: a negative integer, zero or a positive integer depending on whether
- @a sorts before, with or after @b
-
-
-
-
-
-
-
-@sortable:
-
-
-
-
-
-
-
-@sortable:
-@sort_column_id:
-@order:
-@Returns:
-
-
-
-
-
-
-
-@sortable:
-@sort_column_id:
-@order:
-
-
-
-
-
-
-
-@sortable:
-@sort_column_id:
-@sort_func:
-@user_data:
-@destroy:
-
-
-
-
-
-
-
-@sortable:
-@sort_func:
-@user_data:
-@destroy:
-
-
-
-
-
-
-
-@sortable:
-@Returns:
-
-
diff --git a/gtk/gtktreesortable.c b/gtk/gtktreesortable.c
index b699f1eca3..75f7e3c66e 100644
--- a/gtk/gtktreesortable.c
+++ b/gtk/gtktreesortable.c
@@ -24,6 +24,18 @@
#include "gtkintl.h"
+/**
+ * SECTION:gtktreesortable
+ * @Short_description: The interface for sortable models used by GtkTreeView
+ * @Title: GtkTreeSortable
+ * @See_also:#GtkTreeModel, #GtkTreeView
+ *
+ * #GtkTreeSortable is an interface to be implemented by tree models which
+ * support sorting. The #GtkTreeView uses the methods provided by this interface
+ * to sort the model.
+ */
+
+
static void gtk_tree_sortable_base_init (gpointer g_class);
GType
diff --git a/gtk/gtktreesortable.h b/gtk/gtktreesortable.h
index 4931276d98..c9ce6e787a 100644
--- a/gtk/gtktreesortable.h
+++ b/gtk/gtktreesortable.h
@@ -46,6 +46,28 @@ enum {
typedef struct _GtkTreeSortable GtkTreeSortable; /* Dummy typedef */
typedef struct _GtkTreeSortableIface GtkTreeSortableIface;
+/**
+ * GtkTreeIterCompareFunc:
+ * @model: The #GtkTreeModel the comparison is within
+ * @a: A #GtkTreeIter in @model
+ * @b: Another #GtkTreeIter in @model
+ * @user_data: Data passed when the compare func is assigned e.g. by
+ * gtk_tree_sortable_set_sort_func()
+ *
+ * A GtkTreeIterCompareFunc should return a negative integer, zero, or a positive
+ * integer if @a sorts before @b, @a sorts with @b, or @a sorts after @b
+ * respectively. If two iters compare as equal, their order in the sorted model
+ * is undefined. In order to ensure that the #GtkTreeSortable behaves as
+ * expected, the GtkTreeIterCompareFunc must define a partial order on
+ * the model, i.e. it must be reflexive, antisymmetric and transitive.
+ *
+ * For example, if @model is a product catalogue, then a compare function
+ * for the "price" column could be one which returns
+ * price_of(@a) - price_of(@b).
+ *
+ * Returns: a negative integer, zero or a positive integer depending on whether
+ * @a sorts before, with or after @b
+ */
typedef gint (* GtkTreeIterCompareFunc) (GtkTreeModel *model,
GtkTreeIter *a,
GtkTreeIter *b,