position du curseur dans GtkTextBuffer
Bonjour,
je voudrais trouver la position de mon curseur dans le GtkTextBuffer. J'ai écrit cette fonction, et lorsque je l'exécute la valeur pour x et y reste à 0. Il n'y a pas de warning à la compilation
voici la fonction en question réduite au minimum:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
void statusBarPosition(guint nb, gpointer data){
gint line = 0;
gint coln = 0;
GtkTextMark *markPos = NULL;
GtkTextIter *iterPos = NULL;
....
/* repérage de la position du curseur */
markPos = gtk_text_buffer_get_insert(GTK_TEXT_BUFFER(pTextBuffer));
/* on crée un TextIter à l'emplacement désigné par markPos */
gtk_text_buffer_get_iter_at_mark(GTK_TEXT_BUFFER(pTextBuffer), iterPos, GTK_TEXT_MARK(markPos));
/* renvoie le numéro de la ligne où est positionné le TextIter */
line = gtk_text_iter_get_line(iterPos);
/* renvoie le numéro du caractère sur la ligne du TextIter*/
coln = gtk_text_iter_get_line_offset(iterPos);
printf("\ncursor position = line %d,column %d\n", line, coln); |
on considère que le pTextBuffer est créé, et qu'un texte est affiché dedans ;)
je ne comprends pas pourquoi cette simple fonction ne fonctionne pas.. Pourriez-vous m'aider ?