File: editors.py

package info (click to toggle)
gnat-gps 18-5
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 45,716 kB
  • sloc: ada: 362,679; python: 31,031; xml: 9,597; makefile: 1,030; ansic: 917; sh: 264; java: 17
file content (38 lines) | stat: -rw-r--r-- 1,148 bytes parent folder | download
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
28
29
30
31
32
33
34
35
36
37
38
"""Add a menu to close all editors

This script adds a new menu /File/Close All Editors that close all open editors
(and only editors) upon activation.
"""

############################################################################
# No user customization below this line
############################################################################

import GPS
import gps_utils


@gps_utils.interactive(name='close all editors',
                       category="MDI",
                       for_learning=True)
def close_editors():
    """
    Save and close all source editors.
    """
    GPS.execute_action("save files and projects")
    for ed in GPS.EditorBuffer.list():
        ed.close(True)


@gps_utils.interactive(name='close all editors except current',
                       category="MDI",
                       for_learning=True)
def close_editors_except_current():
    """
    Save and close all source editors, except the curret one.
    """
    buffer = GPS.EditorBuffer.get(open=False)
    GPS.execute_action("save files and projects")
    for ed in GPS.EditorBuffer.list():
        if ed != buffer:
            ed.close(True)