diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2016-01-23 17:48:50 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2016-01-23 17:48:50 (GMT) |
commit | adb98feb93f09d8de343c504a0c8c72815d62dab (patch) | |
tree | c345bf863252c2384b946b8ebfa315cda88b8ba9 /src/glibext/gbufferline.c | |
parent | 18be9204f2f6b054f254d1fa045039952ddfad41 (diff) |
Created storable items for user comments.
Diffstat (limited to 'src/glibext/gbufferline.c')
-rw-r--r-- | src/glibext/gbufferline.c | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/glibext/gbufferline.c b/src/glibext/gbufferline.c index 2f29ee4..b8838ae 100644 --- a/src/glibext/gbufferline.c +++ b/src/glibext/gbufferline.c @@ -78,6 +78,9 @@ static GBufferSegment *get_segment_at(const buffer_line_column *, gint *, GdkScr static GBufferSegment *find_near_segment(const buffer_line_column *, GBufferSegment *, GdkScrollDirection); /* Fournit le segment créé par un objet particulier. */ +static GObject *find_first_segment_creator(const buffer_line_column *); + +/* Fournit le segment créé par un objet particulier. */ static GBufferSegment *find_segment_from_creator(const buffer_line_column *, GObject *); /* Imprime le contenu d'une colonne de ligne de texte. */ @@ -410,6 +413,33 @@ static GBufferSegment *find_near_segment(const buffer_line_column *column, GBuff /****************************************************************************** * * +* Paramètres : column = colonne de ligne de texte à consulter. * +* * +* Description : Fournit le segment créé par un objet particulier. * +* * +* Retour : Créateur trouvé à déréférencer par la suite ou NULL si échec.* +* * +* Remarques : - * +* * +******************************************************************************/ + +static GObject *find_first_segment_creator(const buffer_line_column *column) +{ + GObject *result; /* Trouvaille à retourner */ + size_t i; /* Boucle de parcours */ + + result = NULL; + + for (i = 0; i < column->count && result == NULL; i++) + result = g_buffer_segment_get_creator(column->segments[i]); + + return result; + +} + + +/****************************************************************************** +* * * Paramètres : column = colonne de ligne de texte à consulter. * * creator = créateur à l'origine du segment recherché. * * * @@ -1165,6 +1195,35 @@ GBufferSegment *g_buffer_line_find_near_segment(const GBufferLine *line, GBuffer /****************************************************************************** * * +* Paramètres : line = ligne à venir consulter. * +* column = indice de la colonne visée par les recherches. * +* * +* Description : Recherche le premier créateur enregistré dans des segments. * +* * +* Retour : Créateur trouvé à déréférencer par la suite ou NULL si échec.* +* * +* Remarques : - * +* * +******************************************************************************/ + +GObject *g_buffer_line_find_first_segment_creator(const GBufferLine *line, BufferLineColumn column) +{ + GObject *result; /* Trouvaille à retourner */ + + assert(column < BLC_COUNT); + + result = find_first_segment_creator(&line->columns[column]); + + if (result != NULL) + g_object_ref(G_OBJECT(result)); + + return result; + +} + + +/****************************************************************************** +* * * Paramètres : line = ligne à venir consulter. * * creator = créateur à l'origine du segment recherché. * * * |