Los componentes

El nuevo modo de trabajo para listas y árboles ha sido diseñado separando el trabajo de los datos y su forma de representación visual, utilizando el patrón MVC (Modelo/Vista/Controlador) y en este caso, las principales partes son:

El modelo es la interfaz entre los datos y el widget que los mostrará (GtkTreeView). Para almacenar los datos, existen los objetos GtkTreeStore y GtkListStore, los cuales se describen más adelante.

El GtkTreeView es la representación general y visual de los datos. Un GtkTreeView está compuesto por una o más columnas, donde cada columna es un widget GtkTreeViewColumn. Cada columna está compuesta por celdas, la unidad mímina visual, representados por GtkCellRenderer o sus derivados. Es importante tener presente que GtkCellRenderer no es un widget.

GtkCellRenderer es la interfaz que permite manipular cada celda y como se llevará a cabo su edición. Actualmente existen tres objetos derivados:

GtkCellRenderer

A través de GtkCellRenderer es posible personalizar cada celda, así como GtkCellRendererText permite manipular texto, GtkCellRendererToggle permite añadir un checkbox en una celda, que puede trabajar de forma bivalente o trivalente, GtkCellRendererPixbuf, que permite insertar imágenes en las celdas.