Package: python-newt
Version: 0.51.6-31
Severity: normal
Tags: patch
Hi,
Function EntryWindow does not work with preset values:
screen = SnackScreen()
foo = EntryWindow(screen, 'Grml2hd options dialog', 'Please give me the
configuriation for grml2hd',
[('Target Partition: ','/dev/hda1'),
('Filesystem type: ', 'ext3'),
('Location of mbr: ', '/dev/hda'),
('System user: ', 'grml')])
screen.finish()
Traceback (most recent call last):
File "./grml2hd.py", line 10, in ?
[('Target Partition: ','/dev/hda1'),
File "/usr/lib/python2.3/site-packages/snack.py", line 796, in EntryWindow
sg.setField(e, 1, count, anchorLeft = 1)
File "/usr/lib/python2.3/site-packages/snack.py", line 388, in setField
if (what.__dict__.has_key('g')):
AttributeError: 'str' object has no attribute '__dict__'
The problem is, that if prompt is of type Tuple, no Entry will be
created and the plain string is used in setField call.
Patch (also as attachment):
--- /usr/lib/python2.3/site-packages/snack.py»··2005-09-09 08:03:55.000000000
+0200
+++ snack.py»···2005-11-23 01:30:25.205584500 +0100
@@ -789,6 +789,7 @@ def EntryWindow(screen, title, text, pro
for n in prompts:
if (type(n) == types.TupleType):
(n, e) = n
+ e = Entry(entryWidth, e)
else:
e = Entry(entryWidth)
greetings,
Michael Gebetsroither
-- System Information:
Debian Release: testing/unstable
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.12
Locale: LANG=en_US.ISO-8859-15, LC_CTYPE=en_US.ISO-8859-15 (charmap=ISO-8859-15)
--
/*The only secure computer is one that's unplugged, locked in a
safe, and buried 20 feet under the ground in a secret location...
and i'm not even too sure about that one.*/
--- /usr/lib/python2.3/site-packages/snack.py 2005-09-09 08:03:55.000000000
+0200
+++ snack.py 2005-11-23 01:30:25.205584500 +0100
@@ -789,6 +789,7 @@ def EntryWindow(screen, title, text, pro
for n in prompts:
if (type(n) == types.TupleType):
(n, e) = n
+ e = Entry(entryWidth, e)
else:
e = Entry(entryWidth)