summaryrefslogtreecommitdiff
path: root/apt/progress
diff options
context:
space:
mode:
authorJulian Andres Klode <jak@debian.org>2009-07-19 15:46:46 +0200
committerJulian Andres Klode <jak@debian.org>2009-07-19 15:46:46 +0200
commit7debfcbb984fe059ff08b7edba40f14bff2c28a6 (patch)
tree94fc4cacb7a127c5706ef2da1ba8ed5541f84002 /apt/progress
parent48cc0bcaabe824f49987ed3236b9421c583226dd (diff)
downloadpython-apt-7debfcbb984fe059ff08b7edba40f14bff2c28a6.tar.gz
apt/progress/text.py: Introduce CdromProgress.
Diffstat (limited to 'apt/progress')
-rw-r--r--apt/progress/text.py31
1 files changed, 27 insertions, 4 deletions
diff --git a/apt/progress/text.py b/apt/progress/text.py
index b93a8e81..49707a23 100644
--- a/apt/progress/text.py
+++ b/apt/progress/text.py
@@ -26,9 +26,8 @@ def _(msg):
"""Translate the message, also try apt if translation is missing."""
res = apt_pkg.gettext(msg)
if res == msg:
- return apt_pkg.gettext(msg, "apt")
- else:
- return res
+ res = apt_pkg.gettext(msg, "apt")
+ return res
class TextProgress(object):
"""Internal Base class for text progress classes."""
@@ -40,7 +39,8 @@ class TextProgress(object):
def _write(self, msg, newline=True, maximize=False):
"""Write the message on the terminal, fill remaining space."""
self._file.write("\r")
- self._file.write(msg)
+ print >> self._file, msg,
+
# Fill remaining stuff with whitespace
if self._width > len(msg):
self._file.write((self._width - len(msg)) * ' ')
@@ -221,3 +221,26 @@ class AcquireProgress(apt_pkg.AcquireProgress, TextProgress):
# Delete the signal again.
import signal
signal.signal(signal.SIGWINCH, self._signal)
+
+class CdromProgress(apt_pkg.CdromProgress, TextProgress):
+ """Text CD-ROM progress."""
+
+ def ask_cdrom_name(self):
+ self._write(_("Please provide a name for this Disc, such as "
+ "'Debian 2.1r1 Disk 1'"), False)
+ try:
+ return raw_input(":")
+ except KeyboardInterrupt:
+ return
+
+ def update(self, text, current):
+ if text:
+ self._write(text, False)
+
+ def change_cdrom(self):
+ self._write(_("Please insert a Disc in the drive and press enter"),
+ False)
+ try:
+ return (raw_input() == '')
+ except KeyboardInterrupt:
+ return False