diff options
Diffstat (limited to 'src/glibext/linecolumn.h')
-rw-r--r-- | src/glibext/linecolumn.h | 58 |
1 files changed, 40 insertions, 18 deletions
diff --git a/src/glibext/linecolumn.h b/src/glibext/linecolumn.h index 6dd50f6..a1757f9 100644 --- a/src/glibext/linecolumn.h +++ b/src/glibext/linecolumn.h @@ -25,39 +25,58 @@ #define _GLIBEXT_LINECOLUMN_H -#include <stdbool.h> -#include <glib-object.h> -#ifdef INCLUDE_GTK_SUPPORT -# include <gdk/gdk.h> -#endif +#include <sys/types.h> -#include "linesegment.h" +#include "linetoken.h" /* Informations sur le contenu d'une colonne */ -typedef struct _line_column line_column; - - -/* Informations sur le contenu d'une colonne */ -struct _line_column +typedef struct _line_column_t { - line_segment **segments; /* Liste des segments contenus */ + line_token_t **tokens; /* Liste des segments contenus */ size_t count; /* Taille de cette liste */ -#ifdef INCLUDE_GTK_SUPPORT int max_width; /* Largeur max. de l'espace */ -#endif -}; +} line_column_t; + /* Initialise une colonne de ligne. */ -void init_line_column(line_column *); +void init_line_column(line_column_t *); /* Réinitialise une colonne de ligne. */ -void reset_line_column(line_column *); +void reset_line_column(line_column_t *); + +/* Ajoute un fragment de texte à une colonne de ligne. */ +size_t append_text_to_line_column(line_column_t *, TokenRenderingTag, const char *, size_t, const GTokenStyle *); + + + + +/* Imprime le contenu d'une colonne de ligne de texte. */ +void draw_line_column(const line_column_t *, cairo_t *, int *, int, const GTokenStyle *); + + + + +#if 0 + +#include <stdbool.h> +#include <glib-object.h> +#ifdef INCLUDE_GTK_SUPPORT +# include <gdk/gdk.h> +#endif + + +#include "linesegment.h" + + + +/* Réinitialise une colonne de ligne. */ +//void reset_line_column(line_column *); #ifdef INCLUDE_GTK_SUPPORT @@ -70,7 +89,7 @@ gint get_column_width(const line_column *); #endif /* Ajoute un fragment de texte à une colonne de ligne. */ -size_t append_text_to_line_column(line_column *, const char *, size_t, RenderingTagType); +//size_t append_text_to_line_column(line_column *, const char *, size_t, RenderingTagType); /* Remplace un fragment de texte dans une colonne de ligne. */ void replace_text_in_line_column(line_column *, size_t, const char *, size_t); @@ -104,5 +123,8 @@ char *get_line_column_text(const line_column *, bool); void export_line_column_segments(const line_column *, buffer_export_context *, BufferExportType, int); +#endif + + #endif /* _GLIBEXT_LINECOLUMN_H */ |