Plugins/VcsPlugins/vcsPySvn/SvnInfoDialog.py

changeset 3009
bf5ae5d7477d
parent 2302
f29e9405c851
child 3037
a417a0670a36
child 3057
10516539f238
equal deleted inserted replaced
3008:7848489bcb92 3009:bf5ae5d7477d
2 2
3 # Copyright (c) 2003 - 2013 Detlev Offenbach <detlev@die-offenbachs.de> 3 # Copyright (c) 2003 - 2013 Detlev Offenbach <detlev@die-offenbachs.de>
4 # 4 #
5 5
6 """ 6 """
7 Module implementing a dialog to show repository related information for a file/directory. 7 Module implementing a dialog to show repository related information for a
8 file/directory.
8 """ 9 """
9 10
10 import os 11 import os
11 12
12 import pysvn 13 import pysvn
61 try: 62 try:
62 entries = self.client.info2(fn, recurse=False) 63 entries = self.client.info2(fn, recurse=False)
63 infoStr = "<table>" 64 infoStr = "<table>"
64 for path, info in entries: 65 for path, info in entries:
65 infoStr += self.trUtf8( 66 infoStr += self.trUtf8(
66 "<tr><td><b>Path (relative to project):</b></td><td>{0}</td></tr>")\ 67 "<tr><td><b>Path (relative to project):</b></td>"
67 .format(path) 68 "<td>{0}</td></tr>").format(path)
68 if info['URL']: 69 if info['URL']:
69 infoStr += self.trUtf8( 70 infoStr += self.trUtf8(
70 "<tr><td><b>Url:</b></td><td>{0}</td></tr>")\ 71 "<tr><td><b>Url:</b></td><td>{0}</td></tr>")\
71 .format(info['URL']) 72 .format(info['URL'])
72 if info['rev']: 73 if info['rev']:
73 infoStr += self.trUtf8( 74 infoStr += self.trUtf8(
74 "<tr><td><b>Revision:</b></td><td>{0}</td></tr>")\ 75 "<tr><td><b>Revision:</b></td><td>{0}</td></tr>")\
75 .format(info['rev'].number) 76 .format(info['rev'].number)
76 if info['repos_root_URL']: 77 if info['repos_root_URL']:
77 infoStr += self.trUtf8( 78 infoStr += self.trUtf8(
78 "<tr><td><b>Repository root URL:</b></td><td>{0}</td></tr>")\ 79 "<tr><td><b>Repository root URL:</b></td>"
79 .format(info['repos_root_URL']) 80 "<td>{0}</td></tr>").format(info['repos_root_URL'])
80 if info['repos_UUID']: 81 if info['repos_UUID']:
81 infoStr += self.trUtf8( 82 infoStr += self.trUtf8(
82 "<tr><td><b>Repository UUID:</b></td><td>{0}</td></tr>")\ 83 "<tr><td><b>Repository UUID:</b></td>"
83 .format(info['repos_UUID']) 84 "<td>{0}</td></tr>").format(info['repos_UUID'])
84 if info['last_changed_author']: 85 if info['last_changed_author']:
85 infoStr += self.trUtf8( 86 infoStr += self.trUtf8(
86 "<tr><td><b>Last changed author:</b></td><td>{0}</td></tr>")\ 87 "<tr><td><b>Last changed author:</b></td>"
88 "<td>{0}</td></tr>")\
87 .format(info['last_changed_author']) 89 .format(info['last_changed_author'])
88 if info['last_changed_date']: 90 if info['last_changed_date']:
89 infoStr += self.trUtf8( 91 infoStr += self.trUtf8(
90 "<tr><td><b>Last Changed Date:</b></td><td>{0}</td></tr>")\ 92 "<tr><td><b>Last Changed Date:</b></td>"
93 "<td>{0}</td></tr>")\
91 .format(formatTime(info['last_changed_date'])) 94 .format(formatTime(info['last_changed_date']))
92 if info['last_changed_rev'] and \ 95 if info['last_changed_rev'] and \
93 info['last_changed_rev'].kind == pysvn.opt_revision_kind.number: 96 info['last_changed_rev'].kind == \
97 pysvn.opt_revision_kind.number:
94 infoStr += self.trUtf8( 98 infoStr += self.trUtf8(
95 "<tr><td><b>Last changed revision:</b></td><td>{0}</td></tr>")\ 99 "<tr><td><b>Last changed revision:</b></td>"
100 "<td>{0}</td></tr>")\
96 .format(info['last_changed_rev'].number) 101 .format(info['last_changed_rev'].number)
97 if info['kind']: 102 if info['kind']:
98 if info['kind'] == pysvn.node_kind.file: 103 if info['kind'] == pysvn.node_kind.file:
99 nodeKind = self.trUtf8("file") 104 nodeKind = self.trUtf8("file")
100 elif info['kind'] == pysvn.node_kind.dir: 105 elif info['kind'] == pysvn.node_kind.dir:
110 lockInfo = info['lock'] 115 lockInfo = info['lock']
111 infoStr += self.trUtf8( 116 infoStr += self.trUtf8(
112 "<tr><td><b>Lock Owner:</b></td><td>{0}</td></tr>")\ 117 "<tr><td><b>Lock Owner:</b></td><td>{0}</td></tr>")\
113 .format(lockInfo['owner']) 118 .format(lockInfo['owner'])
114 infoStr += self.trUtf8( 119 infoStr += self.trUtf8(
115 "<tr><td><b>Lock Creation Date:</b></td><td>{0}</td></tr>")\ 120 "<tr><td><b>Lock Creation Date:</b></td>"
121 "<td>{0}</td></tr>")\
116 .format(formatTime(lockInfo['creation_date'])) 122 .format(formatTime(lockInfo['creation_date']))
117 if lockInfo['expiration_date'] is not None: 123 if lockInfo['expiration_date'] is not None:
118 infoStr += \ 124 infoStr += \
119 self.trUtf8( 125 self.trUtf8(
120 "<tr><td><b>Lock Expiration Date:</b></td><td>{0}</td></tr>")\ 126 "<tr><td><b>Lock Expiration Date:</b></td>"
127 "<td>{0}</td></tr>")\
121 .format(formatTime(lockInfo['expiration_date'])) 128 .format(formatTime(lockInfo['expiration_date']))
122 infoStr += self.trUtf8( 129 infoStr += self.trUtf8(
123 "<tr><td><b>Lock Token:</b></td><td>{0}</td></tr>")\ 130 "<tr><td><b>Lock Token:</b></td><td>{0}</td></tr>")\
124 .format(lockInfo['token']) 131 .format(lockInfo['token'])
125 infoStr += self.trUtf8( 132 infoStr += self.trUtf8(
139 infoStr += self.trUtf8( 146 infoStr += self.trUtf8(
140 "<tr><td><b>Schedule:</b></td><td>{0}</td></tr>")\ 147 "<tr><td><b>Schedule:</b></td><td>{0}</td></tr>")\
141 .format(schedule) 148 .format(schedule)
142 if wcInfo['copyfrom_url']: 149 if wcInfo['copyfrom_url']:
143 infoStr += self.trUtf8( 150 infoStr += self.trUtf8(
144 "<tr><td><b>Copied From URL:</b></td><td>{0}</td></tr>")\ 151 "<tr><td><b>Copied From URL:</b></td>"
152 "<td>{0}</td></tr>")\
145 .format(wcInfo['copyfrom_url']) 153 .format(wcInfo['copyfrom_url'])
146 infoStr += self.trUtf8( 154 infoStr += self.trUtf8(
147 "<tr><td><b>Copied From Rev:</b></td><td>{0}</td></tr>")\ 155 "<tr><td><b>Copied From Rev:</b></td>"
156 "<td>{0}</td></tr>")\
148 .format(wcInfo['copyfrom_rev'].number) 157 .format(wcInfo['copyfrom_rev'].number)
149 if wcInfo['text_time']: 158 if wcInfo['text_time']:
150 infoStr += self.trUtf8( 159 infoStr += self.trUtf8(
151 "<tr><td><b>Text Last Updated:</b></td><td>{0}</td></tr>")\ 160 "<tr><td><b>Text Last Updated:</b></td>"
161 "<td>{0}</td></tr>")\
152 .format(formatTime(wcInfo['text_time'])) 162 .format(formatTime(wcInfo['text_time']))
153 if wcInfo['prop_time']: 163 if wcInfo['prop_time']:
154 infoStr += self.trUtf8( 164 infoStr += self.trUtf8(
155 "<tr><td><b>Properties Last Updated:</b></td><td>{0}</td></tr>")\ 165 "<tr><td><b>Properties Last Updated:</b></td>"
166 "<td>{0}</td></tr>")\
156 .format(formatTime(wcInfo['prop_time'])) 167 .format(formatTime(wcInfo['prop_time']))
157 if wcInfo['checksum']: 168 if wcInfo['checksum']:
158 infoStr += self.trUtf8( 169 infoStr += self.trUtf8(
159 "<tr><td><b>Checksum:</b></td><td>{0}</td></tr>")\ 170 "<tr><td><b>Checksum:</b></td><td>{0}</td></tr>")\
160 .format(wcInfo['checksum']) 171 .format(wcInfo['checksum'])

eric ide

mercurial