Added support for unicode strings (utxt).

This commit is contained in:
Jack Jansen 2002-02-05 21:24:47 +00:00
parent 085eb1b372
commit 5bb8f78d97
1 changed files with 7 additions and 0 deletions

View File

@ -88,6 +88,11 @@ def pack(x, forcetype = None):
return AE.AECreateDesc('doub', struct.pack('d', x)) return AE.AECreateDesc('doub', struct.pack('d', x))
if t == StringType: if t == StringType:
return AE.AECreateDesc('TEXT', x) return AE.AECreateDesc('TEXT', x)
if t == UnicodeType:
data = t.encode('utf16')
if data[:2] == '\xfe\xff':
data = data[2:]
return AE.AECreateDesc('utxt', data)
if t == ListType: if t == ListType:
list = AE.AECreateList('', 0) list = AE.AECreateList('', 0)
for item in x: for item in x:
@ -132,6 +137,8 @@ def unpack(desc):
return struct.unpack('b', desc.data)[0] return struct.unpack('b', desc.data)[0]
if t == typeChar: if t == typeChar:
return desc.data return desc.data
if t == typeUnicodeText:
return unicode(desc.data, 'utf16')
# typeColorTable coerced to typeAEList # typeColorTable coerced to typeAEList
# typeComp coerced to extended # typeComp coerced to extended
# typeData returned as unknown # typeData returned as unknown