blob: 1fcd022ff6370de52faa4e56411a2d5b945edfb6 (
plain)
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
39
40
41
42
|
import gtk
from gettext import gettext as _
import locale
def str_to_bool(str):
if str == "0" or str.upper() == "FALSE":
return False
return True
def utf8(str):
return unicode(str, 'latin1').encode('utf-8')
def error(parent, summary, message):
d = gtk.MessageDialog(parent=parent,
flags=gtk.DIALOG_MODAL,
type=gtk.MESSAGE_ERROR,
buttons=gtk.BUTTONS_CLOSE)
d.set_markup("<big><b>%s</b></big>\n\n%s" % (summary, message))
d.realize()
d.window.set_functions(gtk.gdk.FUNC_MOVE)
d.set_title("")
res = d.run()
d.destroy()
return
def humanize_size(bytes):
"""
Convert a given size in bytes to a nicer better readable unit
"""
if bytes == 0:
# TRANSLATORS: download size is 0
return _("None")
elif bytes < 1024:
# TRANSLATORS: download size of very small updates
return _("1 KB")
elif bytes < 1024 * 1024:
# TRANSLATORS: download size of small updates, e.g. "250 KB"
return locale.format(_("%.0f KB"), bytes/1024)
else:
# TRANSLATORS: download size of updates, e.g. "2.3 MB"
return locale.format(_("%.1f MB"), bytes / 1024 / 1024)
|