1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
void xa_rename_cell_editing_started (GtkCellRenderer *cell,GtkCellEditable *editable,const gchar *path,XArchive *archive)
{
GtkEntry *gtk_entry;
gchar *text;
XEntry *entry;
glong offset;
GtkTreeModel *model;
GtkTreeIter iter;
if (GTK_IS_ENTRY (editable))
{
model = gtk_tree_view_get_model(GTK_TREE_VIEW(archive->treeview));
gtk_tree_model_get_iter_from_string(model,&iter,path);
gtk_tree_model_get(model,&iter,archive->nc+1,&entry,-1);
text = g_utf8_strrchr (entry->filename,-1,'.');
if (G_LIKELY (text != NULL))
{
gtk_entry = GTK_ENTRY (editable);
gtk_widget_grab_focus (GTK_WIDGET(gtk_entry));
offset = g_utf8_pointer_to_offset (entry->filename,text);
if (G_LIKELY (offset > 0))
gtk_editable_select_region (GTK_EDITABLE(editable),0,offset);
}
}
}
offset is > 0 but the cell is selected completely not up to the dot. Where am I wrong?
|