Hi pygs users:
I'm trying to use a GnomeEntry, but I'am having trouble ereasing and
keeping the history.
For example if you run the attach gnomeentry.py and you write:
fd 1 <press return>
(delete fd 1)
fd 2 <press return>
(delete fd 2)
fd 3 <press return>
and press the little arrow you see the history and I works ok :-).
But, I want to erase the GtkEntry contents after y press return to be
ready for new input.
so I introduced item.set_text("") in the call back.
But if you run the attach gnomeentry_delete.py and you write:
fd 1 <press return>
fd 2 <press return>
fd 3 <press return>
The history isn't logged any more :-(.
I tried to use a connect_after to bind the callback and the GnomeEntry but
I get weirdier: if you press space the contents of the GtkEntry are logged
???
Check how gnomeentry_delete_after.py history saves "fd" for no "reason"
when you enter:
fd 1 <press return>
fd 2 <press return>
fd 3 <press return>
I would be very greatfull for any help.
Daniel Kornhauser.
#!/usr/bin/env python
from gtk import *
from gnome.ui import *
def cmd_entry_cb(item, event):
if event.keyval == GDK.Return:
print("cmd_entry_cb recived: ",item.get_text())
cmd_entry = GnomeEntry()
cmd_entry.gtk_entry().connect("key_press_event",
cmd_entry_cb)
cmd_entry.show()
app = GnomeApp('GnomeEntry', 'GnomeEntry')
app.set_contents(cmd_entry)
app.connect('delete_event', mainquit)
app.show()
mainloop()
#!/usr/bin/env python
from gtk import *
from gnome.ui import *
def cmd_entry_cb(item, event):
if event.keyval == GDK.Return:
print("cmd_entry_cb recived: ",item.get_text())
item.set_text("")
cmd_entry = GnomeEntry()
cmd_entry.gtk_entry().connect("key_press_event",
cmd_entry_cb)
cmd_entry.show()
app = GnomeApp('GnomeEntry erase', 'GnomeEntry erase')
app.set_contents(cmd_entry)
app.connect('delete_event', mainquit)
app.show()
mainloop()
#!/usr/bin/env python
import GDK
from gtk import *
from gnome.ui import *
def cmd_entry_cb(item, event):
if event.keyval == GDK.Return:
print("cmd_entry_cb recived: ",item.get_text())
item.set_text("")
cmd_entry = GnomeEntry()
cmd_entry.gtk_entry().set_events(GDK.KEY_PRESS_MASK)
cmd_entry.gtk_entry().connect_after("key_press_event",
cmd_entry_cb)
cmd_entry.show()
app = GnomeApp('GnomeEntry erase after', 'GnomeEntry erase after')
app.set_contents(cmd_entry)
app.connect('delete_event', mainquit)
app.show()
mainloop()