Helpviewer/Download/DownloadUtilities.py

Mon, 25 Mar 2013 03:11:06 +0100

author
T.Rzepka <Tobias.Rzepka@gmail.com>
date
Mon, 25 Mar 2013 03:11:06 +0100
branch
Py2 comp.
changeset 2525
8b507a9a2d40
parent 2302
f29e9405c851
child 3057
10516539f238
permissions
-rw-r--r--

Script changes: Future import added, super calls modified and unicode behavior for str.

# -*- coding: utf-8 -*-

# Copyright (c) 2010 - 2013 Detlev Offenbach <detlev@die-offenbachs.de>
#

from __future__ import unicode_literals    # __IGNORE_WARNING__

from PyQt4.QtCore import QCoreApplication


def timeString(timeRemaining):
    """
    Module function to format the given time.
    
    @param timeRemaining time to be formatted (float)
    @return time string (string)
    """
    if timeRemaining > 60:
        minutes = int(timeRemaining / 60)
        seconds = int(timeRemaining % 60)
        remaining = QCoreApplication.translate("DownloadUtilities",
            "%n:{0:02} minutes remaining""", "", QCoreApplication.UnicodeUTF8, minutes)\
            .format(seconds)
    else:
        seconds = int(timeRemaining)
        remaining = QCoreApplication.translate("DownloadUtilities",
            "%n seconds remaining", "", QCoreApplication.UnicodeUTF8, seconds)
    
    return remaining


def dataString(size):
    """
    Module function to generate a formatted size string.
    
    @param size size to be formatted (integer)
    @return formatted data string (string)
    """
    unit = ""
    if size < 1024:
        unit = QCoreApplication.translate("DownloadUtilities", "Bytes")
    elif size < 1024 * 1024:
        size /= 1024
        unit = QCoreApplication.translate("DownloadUtilities", "KiB")
    elif size < 1024 * 1024 * 1024:
        size /= 1024 * 1024
        unit = QCoreApplication.translate("DownloadUtilities", "MiB")
    else:
        size /= 1024 * 1024 * 1024
        unit = QCoreApplication.translate("DownloadUtilities", "GiB")
    return "{0:.1f} {1}".format(size, unit)

eric ide

mercurial