diff options
Diffstat (limited to 'src/glibext/gbufferline.c')
-rw-r--r-- | src/glibext/gbufferline.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/glibext/gbufferline.c b/src/glibext/gbufferline.c index 7f88bff..6e3c928 100644 --- a/src/glibext/gbufferline.c +++ b/src/glibext/gbufferline.c @@ -87,6 +87,7 @@ struct _GBufferLine buffer_line_column columns[BLC_COUNT]; /* Répartition du texte */ BufferLineColumn merge_start; /* Début de la zone globale */ + BufferLineColumn last_used; /* Dernière colonne utilisée */ }; @@ -472,6 +473,7 @@ static void g_buffer_line_init(GBufferLine *line) reset_column(&line->columns[i]); line->merge_start = BLC_COUNT; + line->last_used = BLC_COUNT; } @@ -623,6 +625,11 @@ void g_buffer_line_insert_text(GBufferLine *line, BufferLineColumn column, const class = G_BUFFER_LINE_GET_CLASS(line); + if (column == BLC_LAST_USED) + column = line->last_used; + else + line->last_used = column; + segment = g_buffer_segment_new(class->context, class->attribs[type], text, length); g_buffer_line_add_segment(line, column, segment); |