diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2024-06-18 06:31:42 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2024-06-18 06:31:58 (GMT) |
commit | 53edb30496d1065019406de16f9f9d96ba61cd3c (patch) | |
tree | 162cad07e27a01990d721f69f3270581417c31e7 /src/glibext/linetoken.h | |
parent | 334126eb659bc310a72a9f7f9238b7cd205a0770 (diff) |
Rebuild hex views for large contents.
Diffstat (limited to 'src/glibext/linetoken.h')
-rw-r--r-- | src/glibext/linetoken.h | 74 |
1 files changed, 62 insertions, 12 deletions
diff --git a/src/glibext/linetoken.h b/src/glibext/linetoken.h index 4e06f8c..25c93ed 100644 --- a/src/glibext/linetoken.h +++ b/src/glibext/linetoken.h @@ -1,6 +1,6 @@ /* Chrysalide - Outil d'analyse de fichiers binaires - * linesegment.h - prototypes pour la concentration d'un fragment de caractères aux propriétés communes + * linetoken.h - prototypes pour la concentration d'un fragment de caractères aux propriétés communes * * Copyright (C) 2016-2019 Cyrille Bagard * @@ -21,12 +21,61 @@ */ -#ifndef _GLIBEXT_LINESEGMENT_H -#define _GLIBEXT_LINESEGMENT_H +#ifndef _GLIBEXT_LINETOKEN_H +#define _GLIBEXT_LINETOKEN_H -#include <glib-object.h> #include <stdbool.h> + + +#include "tokenstyle.h" + + + +/* -------------------- NATURE DE BASE POUR UN FRAGMENT DE TEXTE -------------------- */ + + +/* Fragment de caractères aux propriétés potentiellement partagées */ +typedef struct _line_token_t line_token_t; + + +/* Crée un nouveau fragment de texte avec des propriétés. */ +line_token_t *get_new_line_token(TokenRenderingTag, const char *, size_t); + +/* Augmente le compteur de références d'un fragment de texte. */ +void ref_line_token(line_token_t *); + +/* Retire une utilisation à un fragment de texte. */ +void release_line_token(line_token_t *); + + + + + + + +/* ----------------------- ISOLATION DE CONTENUS PARTAGEABLES ----------------------- */ + + +/* Initialise la table mémorisant les contenus pour segments. */ +bool init_segment_content_hash_table(void); + +/* Organise la sortie de la table des contenus pour segments. */ +void exit_segment_content_hash_table(void); + + + +/* Imprime le fragment de texte représenté. */ +void draw_line_token(const line_token_t *, cairo_t *, int *, int, const GTokenStyle *); + + + + + + +#if 0 + +#include <glib-object.h> #ifdef INCLUDE_GTK_SUPPORT # include <gdk/gdk.h> # include <pango/pango.h> @@ -58,14 +107,14 @@ bool load_segment_rendering_parameters(void); /* Fragment de caractères aux propriétés potentiellement partagées */ -typedef struct _line_segment line_segment; +//typedef struct _line_segment line_segment; /* Initialise la table mémorisant les contenus pour segments. */ -bool init_segment_content_hash_table(void); +//bool init_segment_content_hash_table(void); /* Organise la sortie de la table des contenus pour segments. */ -void exit_segment_content_hash_table(void); +//void exit_segment_content_hash_table(void); @@ -74,13 +123,13 @@ void exit_segment_content_hash_table(void); /* Crée un nouveau fragment de texte avec des propriétés. */ -line_segment *get_new_line_segment(RenderingTagType, const char *, size_t); +//line_segment *get_new_line_segment(RenderingTagType, const char *, size_t); /* Augmente le compteur de références d'un fragment de texte. */ -void ref_line_segment(line_segment *); +//void ref_line_segment(line_segment *); /* Retire une utilisation à un fragment de texte. */ -void release_line_segment(line_segment *); +//void release_line_segment(line_segment *); /* Indique le type de rendu associé à un segment de ligne. */ RenderingTagType get_line_segment_type(const line_segment *); @@ -100,7 +149,7 @@ gint get_caret_position_from_line_segment(const line_segment *, gint); bool move_caret_on_line_segment(const line_segment *, gint *, bool, GdkScrollDirection); /* Imprime le fragment de texte représenté. */ -void draw_line_segment(const line_segment *, cairo_t *, gint *, gint, const segcnt_list *); +//void draw_line_segment(const line_segment *, cairo_t *, gint *, gint, const segcnt_list *); #endif @@ -174,6 +223,7 @@ bool add_segment_content_to_selection_list(segcnt_list *, const line_segment *); #endif +#endif -#endif /* _GLIBEXT_LINESEGMENT_H */ +#endif /* _GLIBEXT_LINETOKEN_H */ |