summaryrefslogtreecommitdiff
path: root/src/gtkext/graph/cluster-int.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gtkext/graph/cluster-int.h')
-rw-r--r--src/gtkext/graph/cluster-int.h27
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 *);