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/framework.c | |
parent | 334126eb659bc310a72a9f7f9238b7cd205a0770 (diff) |
Rebuild hex views for large contents.
Diffstat (limited to 'src/framework.c')
-rw-r--r-- | src/framework.c | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/src/framework.c b/src/framework.c index b7a1332..96c97c3 100644 --- a/src/framework.c +++ b/src/framework.c @@ -28,6 +28,9 @@ #include "framework.h" #include "glibext/helpers.h" +#include "gui/core/core.h" +#include "analysis/contents/file.h" // REMME +#include "gtkext/hexview.h" // REMME @@ -249,8 +252,63 @@ static void gtk_chrysalide_framework_activate(GApplication *app) gtk_window_set_title(window, "Chrysalide"); gtk_window_present(window); + + do + { + GBinContent *cnt; + + GtkWidget *parent; + GtkHexView *wgt; + + +#if 0 + + cnt = g_file_content_new("tmp.bin"); + + parent = gtk_box_new(GTK_ORIENTATION_VERTICAL, 5); + gtk_box_set_homogeneous(GTK_BOX(parent), FALSE); + gtk_window_set_child(window, parent); + + wgt = gtk_hex_view_new(cnt); + gtk_box_append(GTK_BOX(parent), GTK_WIDGET(wgt)); + + wgt = gtk_hex_view_new(cnt); + gtk_box_append(GTK_BOX(parent), GTK_WIDGET(wgt)); + +#else + + cnt = g_file_content_new("/bin/id"); + //cnt = g_file_content_new("tmp.bin"); + + + parent = gtk_scrolled_window_new(); + gtk_window_set_child(window, parent); + + wgt = gtk_hex_view_new(cnt); + gtk_scrolled_window_set_child(GTK_SCROLLED_WINDOW(parent), GTK_WIDGET(wgt)); + +#endif + + + + + } + while (0); + + /* Chargement des extensions de thème */ + /* + css = gtk_css_provider_new(); + + gtk_css_provider_load_from_resource(css, "/re/chrysalide/framework/glibext/linestyle.css"); + + gtk_style_context_add_provider_for_display(gtk_widget_get_display(GTK_WIDGET(window)), + GTK_STYLE_PROVIDER(css), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); + + unref_object(css); + */ + css = gtk_css_provider_new(); gtk_css_provider_load_from_resource(css, "/re/chrysalide/framework/gtkext/hexview.css"); @@ -287,12 +345,17 @@ int main(int argc, char **argv) int result; /* Bilan de l'exécution */ GtkChrysalideFramework *app; /* Gestion d'application GTK */ + if (!load_gui_components(AGC_BUFFER_FEATURES)) + return EXIT_FAILURE; + app = gtk_chrysalide_framework_new(); result = g_application_run(G_APPLICATION(app), argc, argv); g_object_unref(G_OBJECT(app)); + unload_gui_components(AGC_BUFFER_FEATURES); + return result; } |