diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2013-05-05 13:18:46 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2013-05-05 13:18:46 (GMT) |
commit | 114e769bc9c3dc48f0293f080d687451e32220e3 (patch) | |
tree | 3d79e9a4783adb52f6a14d00102ad6940c04acf6 /src/gtkext/graph/ranks.h | |
parent | cf97db0ea4d1ea983db38df85984034b49fa4f77 (diff) |
Implemented first basic steps towards nice graph rendering.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@346 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/gtkext/graph/ranks.h')
-rw-r--r-- | src/gtkext/graph/ranks.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gtkext/graph/ranks.h b/src/gtkext/graph/ranks.h index 627269f..618db79 100644 --- a/src/gtkext/graph/ranks.h +++ b/src/gtkext/graph/ranks.h @@ -26,8 +26,15 @@ #include <glib-object.h> +#include <stdbool.h> +/* Indice d'une hauteur au sein des rangs */ +typedef size_t hspan_slot_t; + +/* Indice non initilisé */ +#define UNINITIALIZED_HSPAN_SLOT (~((hspan_slot_t)0)) + #define G_TYPE_GRAPH_RANKS g_graph_ranks_get_type() #define G_GRAPH_RANKS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), g_graph_ranks_get_type(), GGraphRanks)) @@ -52,12 +59,24 @@ GGraphRanks *g_graph_ranks_new(unsigned int); /* Note une hauteur minimale requise pour un rang du classement. */ void g_graph_ranks_set_min_height(GGraphRanks *, unsigned int, gint); +/* Fournit la hauteur requise pour l'affichage des rangs. */ +gint g_graph_ranks_get_height(const GGraphRanks *); + +/* Supprime toutes les réservations faites pour les liens. */ +void g_graph_ranks_reset_reservations(GGraphRanks *); + +/* Réserve une portion de hauteur pour un lien. */ +hspan_slot_t g_graph_ranks_reserve_span(GGraphRanks *, unsigned int, gint, gint, bool); + /* Calcule l'ordonnée finale de chaque rang du classement. */ void g_graph_ranks_compute_y_line(GGraphRanks *); /* Fournit la position verticale correspondant à un rang donné. */ gint g_graph_ranks_get_y_for_rank(const GGraphRanks *, unsigned int); +/* Fournit la position verticale obtenue par réservation. */ +gint g_graph_ranks_get_y_for_hspan_slot(const GGraphRanks *, unsigned int, hspan_slot_t, bool); + #endif /* _GTKEXT_GRAPH_RANKS_H */ |