summaryrefslogtreecommitdiff
path: root/src/gtkext/gtkviewpanel.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gtkext/gtkviewpanel.c')
-rw-r--r--src/gtkext/gtkviewpanel.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gtkext/gtkviewpanel.c b/src/gtkext/gtkviewpanel.c
index 4241538..091482b 100644
--- a/src/gtkext/gtkviewpanel.c
+++ b/src/gtkext/gtkviewpanel.c
@@ -800,6 +800,7 @@ GLoadedBinary *gtk_view_panel_get_binary(const GtkViewPanel *panel)
* Paramètres : panel = composant GTK à manipuler. *
* addr = adresse à présenter à l'écran. *
* tweak = adaptation finale à effectuer. *
+* move = doit-on déplacer le curseur à l'adresse indiquée ? *
* *
* Description : S'assure qu'une adresse donnée est visible à l'écran. *
* *
@@ -809,7 +810,7 @@ GLoadedBinary *gtk_view_panel_get_binary(const GtkViewPanel *panel)
* *
******************************************************************************/
-void gtk_view_panel_scroll_to_address(GtkViewPanel *panel, const vmpa2t *addr, ScrollPositionTweak tweak)
+void _gtk_view_panel_scroll_to_address(GtkViewPanel *panel, const vmpa2t *addr, ScrollPositionTweak tweak, bool move)
{
GtkWidget *parent; /* Support parent à valider */
gint x; /* Abscisse à garantir */
@@ -874,6 +875,10 @@ void gtk_view_panel_scroll_to_address(GtkViewPanel *panel, const vmpa2t *addr, S
else if ((y + step_inc) > (value + page_size))
gtk_adjustment_set_value(adj, y + step_inc - page_size);
+ /* Déplacement du curseur */
+
+ if (move && GTK_VIEW_PANEL_GET_CLASS(panel)->get_coordinates(panel, addr, &x, &y, SPT_RAW))
+ GTK_VIEW_PANEL_GET_CLASS(panel)->move_caret_to(panel, x, y);
}