views:

206

answers:

1

I have a treeview with an editable CellRendererText:

self.renderer = gtk.CellRendererText()
self.renderer.set_property('editable', True)

But now I need to launch the edition from code instead from user, this is to focus the user attention in the fact he just created a new row and needs to be named. I tried this but does not work:

self.renderer.start_editing(
    gtk.gdk.Event(gtk.gdk.NOTHING),
    self.treeview,
    str(index),
    gtk.gdk.Rectangle(),
    gtk.gdk.Rectangle(),
    0)

Neither does not throw errors, but the documentation about for what is each argument is not clear, in fact I really don't know if start_editing method is for this.

All suggestions are welcome, thanks.

+1  A: 
def set_cursor(path, focus_column=None, start_editing=False)

... If column is specified, and start_editing is True, then editing should be started in the specified cell. This method is often followed by the gtk.Widget.grab_focus() method to give keyboard focus to the treeview.

Source

Johannes Sasongko
This works like a charm, in addition start_editing does not need to be enabled. Thanks a lot.
mkotechno