/* Chrysalide - Outil d'analyse de fichiers binaires * hexview-int.h - définitions internes pour l'affichage de contenus de binaire * * Copyright (C) 2016-2024 Cyrille Bagard * * This file is part of Chrysalide. * * Chrysalide is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * Chrysalide is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Chrysalide. If not, see . */ #ifndef _GTKEXT_HEXVIEW_INT_H #define _GTKEXT_HEXVIEW_INT_H #include "bufferview-int.h" #include "hexview.h" #include "../glibext/generators/hex.h" /* Composant d'affichage d'octets bruts et imprimables (instance) */ struct _GtkHexView { GtkBufferView parent; /* A laisser en premier */ union { #define _CHILDREN_COUNT 3 GtkWidget *children[_CHILDREN_COUNT];/* Sous-composants d'affichage*/ struct { GtkWidget *offsets; /* Affichage des positions */ GtkWidget *hex; /* Affichage des octets brut */ GtkWidget *ascii; /* Affichage des imprimables */ }; }; GHexGenerator *generator; /* Générateur unique dédié */ }; /* Composant d'affichage d'octets bruts et imprimables (classe) */ struct _GtkHexViewClass { GtkBufferViewClass parent; /* A laisser en premier */ }; /* Met en place un nouveau composant d'affichage d'octets bruts. */ bool gtk_hex_view_create(GtkHexView *, GBinContent *); #endif /* _GTKEXT_HEXVIEW_INT_H */