summaryrefslogtreecommitdiff
path: root/src/gtkext/gtkblockdisplay.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2017-12-26 23:52:44 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2017-12-26 23:52:44 (GMT)
commit2c28d59fb3671c0fdd1987784076d4968c58b651 (patch)
treea301f6cd9c1fd9f92191fba7fe7b59a7e3a01b5a /src/gtkext/gtkblockdisplay.c
parent67b4887317b7394d63b543aa48cb368406374103 (diff)
Created the GLoadedContent interface to load all kinds of content.
Diffstat (limited to 'src/gtkext/gtkblockdisplay.c')
-rw-r--r--src/gtkext/gtkblockdisplay.c32
1 files changed, 29 insertions, 3 deletions
diff --git a/src/gtkext/gtkblockdisplay.c b/src/gtkext/gtkblockdisplay.c
index b39b561..e4d9d48 100644
--- a/src/gtkext/gtkblockdisplay.c
+++ b/src/gtkext/gtkblockdisplay.c
@@ -26,6 +26,7 @@
#include "gtkbufferdisplay-int.h"
#include "../arch/operand.h"
+#include "../analysis/loaded.h"
@@ -249,7 +250,7 @@ static gboolean gtk_block_display_button_press(GtkWidget *widget, GdkEventButton
view = gtk_buffer_display_get_view(GTK_BUFFER_DISPLAY(display));
- changed = g_buffer_view_highlight_segments(view, real_x, real_y, GTK_DISPLAY_PANEL(display)->display);
+ changed = g_buffer_view_highlight_segments(view, real_x, real_y, GTK_DISPLAY_PANEL(display)->display_options);
g_object_unref(G_OBJECT(view));
@@ -300,7 +301,7 @@ static gboolean gtk_block_display_query_tooltip(GtkWidget *widget, gint x, gint
real_y = y;
gtk_display_panel_compute_real_coord(panel, &real_x, &real_y);
- creator = g_buffer_view_find_creator(GTK_BUFFER_DISPLAY(display)->view, real_x, real_y, panel->display);
+ creator = g_buffer_view_find_creator(GTK_BUFFER_DISPLAY(display)->view, real_x, real_y, panel->display_options);
if (creator != NULL)
{
@@ -400,7 +401,7 @@ static bool gtk_block_display_notify_caret_relocation(GtkBlockDisplay *display,
view = gtk_buffer_display_get_view(GTK_BUFFER_DISPLAY(display));
- result = g_buffer_view_highlight_segments(view, area->x, area->y, GTK_DISPLAY_PANEL(display)->display);
+ result = g_buffer_view_highlight_segments(view, area->x, area->y, GTK_DISPLAY_PANEL(display)->display_options);
g_object_unref(G_OBJECT(view));
@@ -410,3 +411,28 @@ static bool gtk_block_display_notify_caret_relocation(GtkBlockDisplay *display,
return result;
}
+
+
+/******************************************************************************
+* *
+* Paramètres : display = composant GTK d'affichage. *
+* index = indice de type de vue effectif. *
+* *
+* Description : Force un type de vue pour les options de rendu. *
+* *
+* Retour : - *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+void gtk_block_display_override_view_index(GtkBlockDisplay *display, unsigned int index)
+{
+ GtkDisplayPanel *panel; /* Version de plus haut niveau */
+
+ panel = GTK_DISPLAY_PANEL(display);
+
+ panel->view_index = index;
+ panel->display_options = g_loaded_content_get_all_display_options(G_LOADED_CONTENT(panel->binary), index);
+
+}