summaryrefslogtreecommitdiff
path: root/src/glibext/linecolumn.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/glibext/linecolumn.h')
-rw-r--r--src/glibext/linecolumn.h58
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 */