diff options
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 */ |