diff options
Diffstat (limited to 'src/gtkext/graph/cluster-int.h')
-rw-r--r-- | src/gtkext/graph/cluster-int.h | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/src/gtkext/graph/cluster-int.h b/src/gtkext/graph/cluster-int.h index 9da1af2..7ffdb61 100644 --- a/src/gtkext/graph/cluster-int.h +++ b/src/gtkext/graph/cluster-int.h @@ -40,23 +40,38 @@ /* Assigne à un bloc et son ensemble un emplacement initial. */ void g_graph_cluster_reset_allocation(GGraphCluster *); +/* Réinitialise les décalages pour les lignes verticales. */ +void g_graph_cluster_reset_extra_offsets(GGraphCluster *); + /* Met en place les embryons de liens nécessaires. */ void g_graph_cluster_define_links(GGraphCluster *, GHashTable *); /* Repère les liens marquants à destination d'autres blocs. */ void g_graph_cluster_setup_links(GGraphCluster *); +/* Détermine un éventuel lien entrant réellement vertical. */ +incoming_link_t *g_graph_cluster_find_real_straight_incoming(GGraphCluster *, size_t *); + /* Organise la disposition d'un ensemble de blocs basiques. */ void g_graph_cluster_dispatch_x(GGraphCluster *); +/* Calcule les abscisses extrèmes atteintes via liens de sortie. */ +bool g_graph_cluster_compute_min_max_x_exit(const GGraphCluster *, const GGraphCluster *, gint [2]); + +/* Calcule les abscisses extrèmes atteintes horizontalement. */ +void g_graph_cluster_compute_min_max_horizontal(const GGraphCluster *, gint, gint [2]); + +/* Définit d'éventuels décalages pour les lignes verticales. */ +bool g_graph_cluster_dispatch_define_extra_offset(GGraphCluster *); + /* Détermine une direction préférée pour la suite du bloc. */ -bool g_graph_cluster_get_exit_direction(const GGraphCluster *, const GGraphCluster *, LeavingLinkDir *); +LeavingLinkDir g_graph_cluster_get_link_direction(const GGraphCluster *, gint, gint); /* Réorganise au besoin les liens sortants d'un bloc. */ void g_graph_cluster_sort_leaving_links(GGraphCluster *); -/* Calcule les ordonnées extrèmes atteintes via liens sortants. */ -bool g_graph_cluster_compute_min_max_bottom(const GGraphCluster *cluster, gint [2]); +/* Calcule l'ordonnée la plus profonde via liens sortants. */ +bool g_graph_cluster_compute_min_y_target(const GGraphCluster *, const GGraphCluster *, gint *); /* Retrouve s'il existe un lien entrant vers un bloc d'origine. */ const leaving_link_t *g_graph_cluster_has_origin(const GGraphCluster *, const GGraphCluster *); @@ -64,12 +79,6 @@ const leaving_link_t *g_graph_cluster_has_origin(const GGraphCluster *, const GG /* Compare deux clusters selon un de leurs liens d'origine. */ int g_graph_cluster_compare_by_origin(const GGraphCluster **, const GGraphCluster **, const GGraphCluster *); -/* Calcule les abscisses extrèmes atteintes horizontalement. */ -void g_graph_cluster_compute_min_max_horizontal(const GGraphCluster *, const GGraphCluster *, gint [2]); - -/* S'assure que les liens verticaux ne traversent pas de bloc. */ -void g_graph_cluster_ensure_space_for_straight(GGraphCluster *); - /* Réorganise au besoin les liens entrants d'un bloc. */ void g_graph_cluster_sort_incoming_links(GGraphCluster *); |