annotate getan/config.py @ 148:f0a2beb17f9b

Add config classes to provide keybindings The new Config class to be able to configure getan. Until now it is only possible to configure the Keybinding. The config is read from $HOME/.getan/getanrc and /etc/getanrc of the first file isn't found. If both files aren't available a default is used.
author Björn Ricks <bjoern.ricks@intevation.de>
date Thu, 06 Dec 2012 12:25:58 +0100
parents 13e3ec26dc36
children 90abd423fc0c
rev   line source
23
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
1 #!/usr/bin/env python
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
2 # -*- coding: utf-8 -*-
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
3 #
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
4 # (c) 2010 by Ingo Weinzierl <ingo.weinzierl@intevation.de>
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
5 #
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
6 # This is Free Software licensed under the terms of GPLv3 or later.
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
7 # For details see LICENSE coming with the source of 'getan'.
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
8 #
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
9
36
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
10 import locale
23
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
11 import logging
36
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
12 import os
23
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
13
148
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
14 from ConfigParser import SafeConfigParser, NoSectionError, NoOptionError
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
15
23
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
16 logger = None
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
17
66
13e3ec26dc36 Make the logging configurable for filename and level
Björn Ricks <bjoern.ricks@intevation.de>
parents: 39
diff changeset
18 def initialize(level=logging.INFO, filename="getan.log"):
13e3ec26dc36 Make the logging configurable for filename and level
Björn Ricks <bjoern.ricks@intevation.de>
parents: 39
diff changeset
19 setup_logging(level, filename)
36
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
20 setup_locale()
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
21
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
22
66
13e3ec26dc36 Make the logging configurable for filename and level
Björn Ricks <bjoern.ricks@intevation.de>
parents: 39
diff changeset
23 def setup_logging(level, filename):
39
d4ce02a33acd Minor fixes (logging, states)
Sascha L. Teichmann <teichmann@intevation.de>
parents: 36
diff changeset
24 global logger
66
13e3ec26dc36 Make the logging configurable for filename and level
Björn Ricks <bjoern.ricks@intevation.de>
parents: 39
diff changeset
25 logging.basicConfig(level=level,
23
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
26 format='%(asctime)s %(levelname)s %(message)s',
66
13e3ec26dc36 Make the logging configurable for filename and level
Björn Ricks <bjoern.ricks@intevation.de>
parents: 39
diff changeset
27 filename=filename,
23
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
28 filemode='w')
9c4e8ba3c4fa Added a new implementation of 'getan' based on urwid, a python console user interface library.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents:
diff changeset
29 logger = logging.getLogger()
36
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
30
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
31
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
32 def setup_locale():
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
33 for var in ('LANGUAGE', 'LC_ALL', 'LC_MESSAGES', 'LANG'):
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
34 if var in os.environ:
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
35 break
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
36 else:
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
37 default_locale = locale.getdefaultlocale()
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
38 # The default is normally a tuple of two strings. It may
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
39 # contain None, objects under some circumstances, though.
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
40 if len(default_locale) > 1:
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
41 lang = default_locale[0]
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
42 if isinstance(lang, str):
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
43 os.environ["LANG"] = lang
e6f81aa329b1 Introduced i18n support; german and english translation available.
Ingo Weinzierl <ingo_weinzierl@web.de>
parents: 23
diff changeset
44
148
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
45
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
46 class Config(object):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
47
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
48 def __init__(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
49 self.config = self.load([os.path.expanduser("~/.getan/getanrc"),
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
50 "/etc/getanrc"])
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
51 self.keybinding = Keybinding(self)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
52
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
53 def load(self, filenames):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
54 configparser = SafeConfigParser()
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
55 configparser.read(filenames)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
56 return configparser
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
57
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
58 def get(self, section, key):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
59 return self.config.get(section, key)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
60
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
61 def items(self, section):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
62 return self.config.items(section)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
63
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
64 def get_keybinding(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
65 return self.keybinding
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
66
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
67
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
68 class Keybinding(object):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
69
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
70 KEYBINDINGS = "keybindings"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
71
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
72 KEY_SWITCH_TIME_MODE = "switch_time_mode"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
73 KEY_SWITCH_PROJECT_ORDER = "switch_project_order"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
74 KEY_SWITCH_LISTS = "switch_lists"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
75 KEY_ENTER = "enter"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
76 KEY_INSERT = "insert"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
77 KEY_DELETE = "delete"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
78 KEY_ESCAPE = "escape"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
79 KEY_ENTRY_DELETE = "entry_delete"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
80 KEY_ENTRY_UP = "entry_up"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
81 KEY_ENTRY_DOWN = "entry_down"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
82 KEY_ENTRY_MOVE = "entry_move"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
83 KEY_ENTRY_EDIT = "entry_edit"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
84 KEY_ADD_TIME = "add_time"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
85 KEY_SUBTRACT_TIME = "subtract_time"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
86 KEY_PAUSE_PROJECT = "pause_project"
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
87
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
88 DEFAULT_KEYBINDINGS = {
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
89 KEY_SWITCH_TIME_MODE : "f1",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
90 KEY_SWITCH_PROJECT_ORDER : "f2",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
91 KEY_SWITCH_LISTS : "tab",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
92 KEY_ENTER : "enter",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
93 KEY_INSERT : "insert",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
94 KEY_DELETE : "delete",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
95 KEY_ESCAPE : "esc",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
96 KEY_ENTRY_UP : "up",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
97 KEY_ENTRY_DOWN : "down",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
98 KEY_ENTRY_DELETE : "d",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
99 KEY_ENTRY_MOVE : "m",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
100 KEY_ENTRY_EDIT : "e",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
101 KEY_ADD_TIME : "+",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
102 KEY_SUBTRACT_TIME : "-",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
103 KEY_PAUSE_PROJECT : " ",
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
104 }
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
105
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
106
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
107 def __init__(self, config):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
108 logger.debug("Keybindings are: %r" % config.items(self.KEYBINDINGS))
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
109 self.config = config
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
110
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
111 def get_binding(self, key):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
112 value = None
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
113 try:
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
114 value = self.config.get(self.KEYBINDINGS, key)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
115 except (NoSectionError, NoOptionError):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
116 pass
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
117
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
118 if not value:
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
119 value = self.DEFAULT_KEYBINDINGS[key]
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
120 return value
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
121
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
122 def get_switch_time_mode(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
123 return self.get_binding(self.KEY_SWITCH_TIME_MODE)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
124
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
125 def get_switch_project_order(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
126 return self.get_binding(self.KEY_SWITCH_PROJECT_ORDER)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
127
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
128 def get_switch_lists(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
129 return self.get_binding(self.KEY_SWITCH_LISTS)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
130
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
131 def get_enter(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
132 return self.get_binding(self.KEY_ENTER)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
133
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
134 def get_insert(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
135 return self.get_binding(self.KEY_INSERT)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
136
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
137 def get_delete(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
138 return self.get_binding(self.KEY_DELETE)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
139
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
140 def get_escape(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
141 return self.get_binding(self.KEY_ESCAPE)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
142
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
143 def get_entry_delete(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
144 return self.get_binding(self.KEY_ENTRY_DELETE)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
145
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
146 def get_entry_move(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
147 return self.get_binding(self.KEY_ENTRY_MOVE)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
148
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
149 def get_entry_edit(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
150 return self.get_binding(self.KEY_ENTRY_EDIT)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
151
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
152 def get_entry_up(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
153 return self.get_binding(self.KEY_ENTRY_UP)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
154
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
155 def get_entry_down(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
156 return self.get_binding(self.KEY_ENTRY_DOWN)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
157
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
158 def get_add_time(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
159 return self.get_binding(self.KEY_ADD_TIME)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
160
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
161 def get_subtract_time(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
162 return self.get_binding(self.KEY_SUBTRACT_TIME)
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
163
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
164 def get_pause_project(self):
f0a2beb17f9b Add config classes to provide keybindings
Björn Ricks <bjoern.ricks@intevation.de>
parents: 66
diff changeset
165 return self.get_binding(self.KEY_PAUSE_PROJECT)
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)