diff options
Diffstat (limited to 'src/gtkext/gtkbufferdisplay.c')
-rw-r--r-- | src/gtkext/gtkbufferdisplay.c | 32 |
1 files changed, 8 insertions, 24 deletions
diff --git a/src/gtkext/gtkbufferdisplay.c b/src/gtkext/gtkbufferdisplay.c index c09a1fe..ff651c8 100644 --- a/src/gtkext/gtkbufferdisplay.c +++ b/src/gtkext/gtkbufferdisplay.c @@ -74,8 +74,8 @@ static void gtk_buffer_display_adjust_scroll_value(GtkBufferDisplay *, GtkAdjust /* Indique la position courante du curseur. */ static const vmpa2t *gtk_buffer_display_get_caret_location(const GtkBufferDisplay *); -/* Indique la position d'affichage d'une adresse donnée. */ -static bool gtk_buffer_display_get_address_coordinates(const GtkBufferDisplay *, const vmpa2t *, gint *, gint *, ScrollPositionTweak); +/* Indique la position d'affichage d'un emplacement donné. */ +static bool gtk_buffer_display_get_cursor_coordinates(const GtkBufferDisplay *, const GLineCursor *, gint *, gint *, ScrollPositionTweak); /* Fournit l'élément actif lié à la position courante. */ GObject *gtk_buffer_display_get_active_object(const GtkBufferDisplay *); @@ -154,7 +154,7 @@ static void gtk_buffer_display_class_init(GtkBufferDisplayClass *class) panel_class->compute_inc = (compute_scroll_inc_fc)gtk_buffer_display_compute_scroll_inc; panel_class->adjust = (adjust_scroll_value_fc)gtk_buffer_display_adjust_scroll_value; panel_class->get_caret_loc = (get_caret_location_fc)gtk_buffer_display_get_caret_location; - panel_class->get_coordinates = (get_addr_coordinates_fc)gtk_buffer_display_get_address_coordinates; + panel_class->get_coordinates = (get_coordinates_fc)gtk_buffer_display_get_cursor_coordinates; panel_class->get_active = (get_active_object_fc)gtk_buffer_display_get_active_object; panel_class->move_caret_to = (move_caret_to_fc)_gtk_buffer_display_move_caret_to; panel_class->cache_glance = (cache_glance_fc)gtk_buffer_display_cache_glance; @@ -478,7 +478,6 @@ static gboolean gtk_buffer_display_key_press(GtkWidget *widget, GdkEventKey *eve bool ctrl; /* Statut de la touche Contrôle*/ cairo_rectangle_int_t area; /* Emplacement de curseur #1 */ GLineCursor *cursor; /* Emplacement de curseur #2 */ - vmpa2t addr; /* Adresse du nouveau curseur */ bool status; /* Validité d'un déplacement */ switch (event->keyval) @@ -521,13 +520,8 @@ static gboolean gtk_buffer_display_key_press(GtkWidget *widget, GdkEventKey *eve if (status) { - //////////////////////// - g_binary_cursor_get_info(G_BINARY_CURSOR(cursor), &addr); - //g_object_unref(G_OBJECT(cursor)); - //////////////////////// - gtk_buffer_display_relocate_caret(display, &area, cursor); - _gtk_display_panel_scroll_to_address(panel, &addr, SPT_RAW, false); + _gtk_display_panel_scroll_to_cursor(panel, cursor, SPT_RAW, false); } else g_signal_emit_by_name(display, "reach-limit", dir); @@ -660,12 +654,12 @@ static const vmpa2t *gtk_buffer_display_get_caret_location(const GtkBufferDispla /****************************************************************************** * * * Paramètres : display = composant GTK à consulter. * -* addr = adresse à présenter à l'écran. * +* cursor = emplacement à présenter à l'écran. * * x = position horizontale au sein du composant. [OUT] * * y = position verticale au sein du composant. [OUT] * * tweak = adaptation finale à effectuer. * * * -* Description : Indique la position d'affichage d'une adresse donnée. * +* Description : Indique la position d'affichage d'un emplacement donné. * * * * Retour : true si l'adresse fait partie du composant, false sinon. * * * @@ -673,28 +667,18 @@ static const vmpa2t *gtk_buffer_display_get_caret_location(const GtkBufferDispla * * ******************************************************************************/ -static bool gtk_buffer_display_get_address_coordinates(const GtkBufferDisplay *display, const vmpa2t *addr, gint *x, gint *y, ScrollPositionTweak tweak) +static bool gtk_buffer_display_get_cursor_coordinates(const GtkBufferDisplay *display, const GLineCursor *cursor, gint *x, gint *y, ScrollPositionTweak tweak) { bool result; /* Bilan à remonter */ bool need_code; /* Recherche plus raffinée */ GBufferCache *cache; /* Gestionnaire de lignes */ - GLineCursor *___tmp; int height; /* Hauteur allouée */ need_code = (tweak == SPT_BOTTOM); cache = g_buffer_view_get_cache(display->view); - - ___tmp = g_binary_cursor_new(); - g_binary_cursor_update(G_BINARY_CURSOR(___tmp), addr); - - - result = g_buffer_view_get_cursor_coordinates(display->view, ___tmp, need_code, x, y); - - - g_object_unref(G_OBJECT(___tmp)); - + result = g_buffer_view_get_cursor_coordinates(display->view, cursor, need_code, x, y); if (result) { |