27 lines
938 B
Python
27 lines
938 B
Python
|
#!/usr/bin/python
|
||
|
import gi
|
||
|
gi.require_version('Scintilla', '0.1')
|
||
|
|
||
|
# Scintilla is imported before because it loads Gtk with a specified version
|
||
|
# this avoids a warning when Gtk is imported without version such as below (where
|
||
|
# it is imported without because this script works with gtk2 and gtk3)
|
||
|
from gi.repository import Scintilla
|
||
|
from gi.repository import Gtk
|
||
|
|
||
|
def on_notify(sci, id, scn):
|
||
|
if (scn.nmhdr.code == 2001): # SCN_CHARADDED
|
||
|
print ("sci-notify: id: %d, char added: %d" % (id, scn.ch))
|
||
|
elif (scn.nmhdr.code == 2008): # SCN_MODIFIED
|
||
|
print ("sci-notify: id: %d, pos: %d, mod type: %d" % (id, scn.position, scn.modificationType))
|
||
|
else:
|
||
|
print ("sci-notify: id: %d, scn.nmhdr.code: %d" % (id, scn.nmhdr.code))
|
||
|
|
||
|
win = Gtk.Window()
|
||
|
win.connect("delete-event", Gtk.main_quit)
|
||
|
sci = Scintilla.Object()
|
||
|
sci.connect("sci-notify", on_notify)
|
||
|
win.add(sci)
|
||
|
win.show_all()
|
||
|
win.resize(400,300)
|
||
|
Gtk.main()
|