diff options
Diffstat (limited to 'src/glibext/gbuffersegment.h')
-rw-r--r-- | src/glibext/gbuffersegment.h | 42 |
1 files changed, 28 insertions, 14 deletions
diff --git a/src/glibext/gbuffersegment.h b/src/glibext/gbuffersegment.h index 51bfb2a..67091fb 100644 --- a/src/glibext/gbuffersegment.h +++ b/src/glibext/gbuffersegment.h @@ -32,6 +32,13 @@ +/* Liste identifiant un ensemble de segments */ +typedef struct _segcnt_list segcnt_list; + + +/* -------------------- NATURE DE BASE POUR UN FRAGMENT DE TEXTE -------------------- */ + + #define G_TYPE_BUFFER_SEGMENT (g_buffer_segment_get_type()) #define G_BUFFER_SEGMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), G_TYPE_BUFFER_SEGMENT, GBufferSegment)) #define G_BUFFER_SEGMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), G_TYPE_BUFFER_SEGMENT, GBufferSegmentClass)) @@ -81,16 +88,6 @@ typedef enum _RenderingTagType } RenderingTagType; -/* Types de rendus */ -typedef enum _SegRenderingStyle -{ - SRS_CLASSIC, /* Comportement par défaut */ - SRS_HIGHLIGHT_SAME, /* Surlignage des identiques */ - - SRS_COUNT - -} SegRenderingStyle; - /* Fragment de caractères aux propriétés communes (instance) */ typedef struct _GBufferSegment GBufferSegment; @@ -127,11 +124,8 @@ gint g_buffer_segment_get_caret_position(const GBufferSegment *, gint); /* Déplace le curseur au sein d'un segment de tampon. */ bool g_buffer_segment_move_caret(const GBufferSegment *, gint *, bool, GdkScrollDirection); -/* Module l'apparence finale du composant. */ -void g_buffer_segment_set_style(GBufferSegment *, SegRenderingStyle); - /* Imprime le fragment de texte représenté. */ -void g_buffer_segment_draw(GBufferSegment *, cairo_t *, gint *, gint); +void g_buffer_segment_draw(GBufferSegment *, cairo_t *, gint *, gint, const segcnt_list *); /* Types d'exportation */ typedef enum _BufferExportType @@ -177,4 +171,24 @@ void g_buffer_segment_export(const GBufferSegment *, buffer_export_context *, Bu +/* -------------------- GESTION OPTIMALE D'UNE LISTE DE CONTENUS -------------------- */ + + +/* Initilise une liste de contenus de segments. */ +segcnt_list *init_segment_content_list(void); + +/* Libère la mémoire occupée par une liste de contenus. */ +void exit_segment_content_list(segcnt_list *); + +/* Vide, si besoin est, une liste de contenus de segments. */ +bool reset_segment_content_list(segcnt_list *); + +/* Marque le contenu d'un segment comme remarquable. */ +bool add_segment_content_to_selection_list(segcnt_list *, const GBufferSegment *); + +/* Indique si le contenu d'un segment est notable ou non. */ +bool selection_list_has_segment_content(const segcnt_list *, const GBufferSegment *); + + + #endif /* _GLIBEXT_GBUFFERSEGMENT_H */ |