Files
gnatstudio/examples/python/readonly.py
Emmanuel Briot 826c757a9c (highlighter.py): new python plugin to support other plugins. This
provide an easy way to highlight regular expressions in editors
 without duplicating possibly tricky code.
("character_added" hook): also called when a character has been removed
 (it seems that a script using this hook is interesting in both kind
 of changes anyway, and for backward compatibility with we want to keep
 this hook anyway -- the character added is considered to be control-h (8)
 in such a case)
remove obsolete examples as a result

git-svn-id: svn+ssh://svn.eu/Dev/trunk/gps@131361 936e1b1b-40f2-da11-902a-00137254ae57
2008-10-22 22:27:47 +00:00

31 lines
888 B
Python

"""This file makes every other line read-only.
This is an example of using overlays"""
# ??? For a real production script, this script should be based
# on gps_utils.highlighter.py, which provides on-the-fly highlighting
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)