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
|
"""This file makes every other line read-only.
This is an example of using overlays"""
from GPS import *
parse_xml ("""
<action name="make lines readonly">
<shell lang="python">readonly.make_readonly()</shell>
</action>
<menu action="make lines readonly">
<title>/Tests/Make Lines Readonly</title>
</menu>
""")
def make_readonly():
"""Make every other line readonly in the current file"""
buffer = EditorBuffer.get ()
loc = EditorLocation (buffer, 1, 1)
overlay = buffer.create_overlay ("readonly")
overlay.set_property ("editable", False)
readonly = True
while loc < buffer.end_of_buffer():
eol = loc.end_of_line()
buffer.apply_overlay (overlay, loc, eol - 1)
loc = loc.forward_line (2)
|