summaryrefslogtreecommitdiff
path: root/src/gtkext/contentview.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gtkext/contentview.c')
-rw-r--r--src/gtkext/contentview.c82
1 files changed, 61 insertions, 21 deletions
diff --git a/src/gtkext/contentview.c b/src/gtkext/contentview.c
index 0f93178..e79d13c 100644
--- a/src/gtkext/contentview.c
+++ b/src/gtkext/contentview.c
@@ -1,8 +1,8 @@
/* Chrysalide - Outil d'analyse de fichiers binaires
- * gtkdisplaypanel.c - affichage de contenus de binaire
+ * contentview.c - base d'affichage pour contenus divers
*
- * Copyright (C) 2016-2019 Cyrille Bagard
+ * Copyright (C) 2016-2024 Cyrille Bagard
*
* This file is part of Chrysalide.
*
@@ -21,9 +21,15 @@
*/
-#include "gtkdisplaypanel.h"
+#include "contentview.h"
+#include "contentview-int.h"
+
+
+
+#if 0
+
#include <math.h>
@@ -33,21 +39,27 @@
#include "../glibext/gloadedpanel-int.h"
+#endif
+
/* Procède à l'initialisation de l'afficheur générique. */
-static void gtk_display_panel_class_init(GtkDisplayPanelClass *);
+static void gtk_content_view_class_init(GtkContentViewClass *);
/* Procède à l'initialisation de l'afficheur générique. */
-static void gtk_display_panel_init(GtkDisplayPanel *);
+static void gtk_content_view_init(GtkContentView *);
/* Procède à l'initialisation de l'interface d'affichage. */
+#if 0
static void gtk_display_panel_loaded_interface_init(GLoadedPanelInterface *);
+#endif
/* Supprime toutes les références externes. */
-static void gtk_display_panel_dispose(GtkDisplayPanel *);
+static void gtk_content_view_dispose(GtkContentView *);
/* Procède à la libération totale de la mémoire. */
-static void gtk_display_panel_finalize(GtkDisplayPanel *);
+static void gtk_content_view_finalize(GtkContentView *);
+
+#if 0
/* Définit une propriété du composant d'affichage. */
static void gtk_display_panel_set_property(GObject *, guint, const GValue *, GParamSpec *);
@@ -118,6 +130,15 @@ G_DEFINE_TYPE_WITH_CODE(GtkDisplayPanel, gtk_display_panel, GTK_TYPE_FIXED,
G_IMPLEMENT_INTERFACE(GTK_TYPE_SCROLLABLE, NULL)
G_IMPLEMENT_INTERFACE(G_TYPE_LOADED_PANEL, gtk_display_panel_loaded_interface_init));
+#endif
+
+
+
+
+/* Détermine le type du composant d'affichage générique. */
+G_DEFINE_TYPE(GtkContentView, gtk_content_view, GTK_TYPE_WIDGET);
+
+
/******************************************************************************
* *
@@ -131,16 +152,18 @@ G_DEFINE_TYPE_WITH_CODE(GtkDisplayPanel, gtk_display_panel, GTK_TYPE_FIXED,
* *
******************************************************************************/
-static void gtk_display_panel_class_init(GtkDisplayPanelClass *class)
+static void gtk_content_view_class_init(GtkContentViewClass *class)
{
GObjectClass *object; /* Plus haut niveau équivalent */
- GtkWidgetClass *widget; /* Classe de haut niveau */
- GtkDisplayPanelClass *panel; /* Classe de lus bas niveau */
+ //GtkWidgetClass *widget; /* Classe de haut niveau */
+ //GtkContentViewClass *panel; /* Classe de lus bas niveau */
object = G_OBJECT_CLASS(class);
- object->dispose = (GObjectFinalizeFunc/* ! */)gtk_display_panel_dispose;
- object->finalize = (GObjectFinalizeFunc)gtk_display_panel_finalize;
+ object->dispose = (GObjectFinalizeFunc/* ! */)gtk_content_view_dispose;
+ object->finalize = (GObjectFinalizeFunc)gtk_content_view_finalize;
+
+#if 0
object->set_property = gtk_display_panel_set_property;
object->get_property = gtk_display_panel_get_property;
@@ -167,17 +190,19 @@ static void gtk_display_panel_class_init(GtkDisplayPanelClass *class)
g_signal_new("scaled",
GTK_TYPE_DISPLAY_PANEL,
G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(GtkDisplayPanelClass, scaled),
+ G_STRUCT_OFFSET(GtkContentViewClass, scaled),
NULL, NULL,
g_cclosure_user_marshal_VOID__DOUBLE_DOUBLE,
G_TYPE_NONE, 2, G_TYPE_DOUBLE, G_TYPE_DOUBLE);
+#endif
+
}
/******************************************************************************
* *
-* Paramètres : panel = composant GTK à initialiser. *
+* Paramètres : view = composant GTK à initialiser. *
* *
* Description : Procède à l'initialisation de l'afficheur générique. *
* *
@@ -187,18 +212,25 @@ static void gtk_display_panel_class_init(GtkDisplayPanelClass *class)
* *
******************************************************************************/
-static void gtk_display_panel_init(GtkDisplayPanel *panel)
+static void gtk_content_view_init(GtkContentView *view)
{
+ view->style = g_token_style_new(GTK_WIDGET(view));
+
+
+
+#if 0
gtk_widget_set_has_window(GTK_WIDGET(panel), TRUE);
gtk_widget_set_can_focus(GTK_WIDGET(panel), TRUE);
panel->scale = 1.0;
panel->export = false;
+#endif
}
+#if 0
/******************************************************************************
* *
* Paramètres : iface = interface GLib à initialiser. *
@@ -222,11 +254,12 @@ static void gtk_display_panel_loaded_interface_init(GLoadedPanelInterface *iface
iface->cache_glance = (cache_loaded_glance_fc)gtk_display_panel_cache_glance;
}
+#endif
/******************************************************************************
* *
-* Paramètres : panel = instance d'objet GLib à traiter. *
+* Paramètres : view = instance d'objet GLib à traiter. *
* *
* Description : Supprime toutes les références externes. *
* *
@@ -236,23 +269,28 @@ static void gtk_display_panel_loaded_interface_init(GLoadedPanelInterface *iface
* *
******************************************************************************/
-static void gtk_display_panel_dispose(GtkDisplayPanel *panel)
+static void gtk_content_view_dispose(GtkContentView *view)
{
+ g_clear_object(&view->style);
+
+
+ /*
g_clear_object(&panel->hadjustment);
g_clear_object(&panel->vadjustment);
g_clear_object(&panel->options);
g_clear_object(&panel->binary);
+ */
- G_OBJECT_CLASS(gtk_display_panel_parent_class)->dispose(G_OBJECT(panel));
+ G_OBJECT_CLASS(gtk_content_view_parent_class)->dispose(G_OBJECT(view));
}
/******************************************************************************
* *
-* Paramètres : panel = instance d'objet GLib à traiter. *
+* Paramètres : view = instance d'objet GLib à traiter. *
* *
* Description : Procède à la libération totale de la mémoire. *
* *
@@ -262,13 +300,14 @@ static void gtk_display_panel_dispose(GtkDisplayPanel *panel)
* *
******************************************************************************/
-static void gtk_display_panel_finalize(GtkDisplayPanel *panel)
+static void gtk_content_view_finalize(GtkContentView *view)
{
- G_OBJECT_CLASS(gtk_display_panel_parent_class)->finalize(G_OBJECT(panel));
+ G_OBJECT_CLASS(gtk_content_view_parent_class)->finalize(G_OBJECT(view));
}
+#if 0
/******************************************************************************
* *
* Paramètres : object = instance de composant GTK à manipuler. *
@@ -1346,3 +1385,4 @@ static void gtk_display_panel_cache_glance(GtkDisplayPanel *panel, cairo_t *cair
GTK_DISPLAY_PANEL_GET_CLASS(panel)->cache_glance(panel, cairo, area, scale);
}
+#endif