summaryrefslogtreecommitdiff
path: root/src/analysis/line.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2009-06-16 22:46:35 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2009-06-16 22:46:35 (GMT)
commit23c7cd436e2ec980a68e6d12a6d8a750e357763c (patch)
tree0c27434a3ab3946e9b4766ae8ebe28ab399d9d84 /src/analysis/line.c
parentdf1f4c4e1a5bb929f4345b1273d16558c0ba77de (diff)
Made links between lines of code (x86 only).
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@79 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/analysis/line.c')
-rw-r--r--src/analysis/line.c49
1 files changed, 49 insertions, 0 deletions
diff --git a/src/analysis/line.c b/src/analysis/line.c
index 08ef3c1..31a8a36 100644
--- a/src/analysis/line.c
+++ b/src/analysis/line.c
@@ -48,6 +48,9 @@ static void g_rendering_line_class_init(GRenderingLineClass *);
/* Initialise une instance de ligne de représentation. */
static void g_rendering_line_init(GRenderingLine *);
+/* Etablit un lien entre deux lignes de représentation. */
+static void g_rendering_line_add_link_reference(GRenderingLine *, GRenderingLine *);
+
/* Charge une image destinée à être rendue avec la ligne. */
static GdkPixbuf *g_rendering_line_render_icon(const GRenderingLine *, const char *, GtkIconSize);
@@ -247,6 +250,52 @@ RenderingLineFlag g_rendering_line_get_flags(const GRenderingLine *line)
/******************************************************************************
* *
+* Paramètres : line = ligne dont les informations sont à consulter. *
+* src = ligne visée par la liaison (côté origine). *
+* *
+* Description : Etablit un lien entre deux lignes de représentation. *
+* *
+* Retour : - *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+void g_rendering_line_add_link_reference(GRenderingLine *line, GRenderingLine *src)
+{
+ line->from = (GRenderingLine **)realloc(line->from, ++line->from_count * sizeof(GRenderingLine *));
+
+ line->from[line->from_count - 1] = src;
+
+}
+
+
+/******************************************************************************
+* *
+* Paramètres : line = ligne dont les informations sont à consulter. *
+* dest = ligne visée par la liaison (côté destination). *
+* type = type de lien à construire. *
+* *
+* Description : Etablit un lien entre deux lignes de représentation. *
+* *
+* Retour : - *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+void g_rendering_line_link_with(GRenderingLine *line, GRenderingLine *dest, InstructionLinkType type)
+{
+ g_rendering_line_add_link_reference(dest, line);
+
+ line->to = dest;
+ line->link_type = type;
+
+}
+
+
+/******************************************************************************
+* *
* Paramètres : line = ligne dont les informations sont à consulter. *
* stock_id = identifiant GTK de l'image à charger. *
* size = taille de l'image souhaitée. *