equal
deleted
inserted
replaced
10 demandload(globals(), "errno getpass os re socket sys tempfile") |
10 demandload(globals(), "errno getpass os re socket sys tempfile") |
11 demandload(globals(), "ConfigParser mdiff templater traceback util") |
11 demandload(globals(), "ConfigParser mdiff templater traceback util") |
12 |
12 |
13 class ui(object): |
13 class ui(object): |
14 def __init__(self, verbose=False, debug=False, quiet=False, |
14 def __init__(self, verbose=False, debug=False, quiet=False, |
15 interactive=True, traceback=False, parentui=None, |
15 interactive=True, traceback=False, parentui=None): |
16 readhooks=[]): |
|
17 self.overlay = {} |
16 self.overlay = {} |
18 if parentui is None: |
17 if parentui is None: |
19 # this is the parent of all ui children |
18 # this is the parent of all ui children |
20 self.parentui = None |
19 self.parentui = None |
21 self.readhooks = list(readhooks) |
20 self.readhooks = [] |
22 self.trusted_users = {} |
21 self.trusted_users = {} |
23 self.trusted_groups = {} |
22 self.trusted_groups = {} |
24 self.cdata = ConfigParser.SafeConfigParser() |
23 self.cdata = ConfigParser.SafeConfigParser() |
25 self.readconfig(util.rcpath()) |
24 self.readconfig(util.rcpath()) |
26 |
25 |
36 self.prev_header = [] |
35 self.prev_header = [] |
37 self.revlogopts = self.configrevlog() |
36 self.revlogopts = self.configrevlog() |
38 else: |
37 else: |
39 # parentui may point to an ui object which is already a child |
38 # parentui may point to an ui object which is already a child |
40 self.parentui = parentui.parentui or parentui |
39 self.parentui = parentui.parentui or parentui |
41 self.readhooks = list(parentui.readhooks or readhooks) |
40 self.readhooks = parentui.readhooks[:] |
42 self.trusted_users = parentui.trusted_users.copy() |
41 self.trusted_users = parentui.trusted_users.copy() |
43 self.trusted_groups = parentui.trusted_groups.copy() |
42 self.trusted_groups = parentui.trusted_groups.copy() |
44 parent_cdata = self.parentui.cdata |
43 parent_cdata = self.parentui.cdata |
45 self.cdata = ConfigParser.SafeConfigParser(parent_cdata.defaults()) |
44 self.cdata = ConfigParser.SafeConfigParser(parent_cdata.defaults()) |
46 # make interpolation work |
45 # make interpolation work |
107 self.trusted_users[user] = 1 |
106 self.trusted_users[user] = 1 |
108 for group in self.configlist('trusted', 'groups'): |
107 for group in self.configlist('trusted', 'groups'): |
109 self.trusted_groups[group] = 1 |
108 self.trusted_groups[group] = 1 |
110 for hook in self.readhooks: |
109 for hook in self.readhooks: |
111 hook(self) |
110 hook(self) |
|
111 |
|
112 def addreadhook(self, hook): |
|
113 self.readhooks.append(hook) |
112 |
114 |
113 def setconfig(self, section, name, val): |
115 def setconfig(self, section, name, val): |
114 self.overlay[(section, name)] = val |
116 self.overlay[(section, name)] = val |
115 |
117 |
116 def config(self, section, name, default=None): |
118 def config(self, section, name, default=None): |