summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJack Jansen <jack.jansen@cwi.nl>2003-04-01 22:27:18 (GMT)
committerJack Jansen <jack.jansen@cwi.nl>2003-04-01 22:27:18 (GMT)
commit9dd78101d77ca3ff3de2f273b321aeddfa929238 (patch)
treec4b282f219e3acb795a538bf9453a884c20e5380
parent842273bcd7ad6814a0ce7c1b097cea98615900c4 (diff)
downloadcpython-9dd78101d77ca3ff3de2f273b321aeddfa929238.zip
cpython-9dd78101d77ca3ff3de2f273b321aeddfa929238.tar.gz
cpython-9dd78101d77ca3ff3de2f273b321aeddfa929238.tar.bz2
Sigh... The get() and set() commands are not declared in the aete for
the Standard_Suite, but various other suites do expect it (the Finder implements get() without declaring it itself). It is probably another case of OSA magic. Adding them to the global base class.
-rw-r--r--Lib/plat-mac/aetools.py27
1 files changed, 18 insertions, 9 deletions
diff --git a/Lib/plat-mac/aetools.py b/Lib/plat-mac/aetools.py
index 9111d50..ac264ee 100644
--- a/Lib/plat-mac/aetools.py
+++ b/Lib/plat-mac/aetools.py
@@ -254,26 +254,35 @@ class TalkTo:
if as:
item.__class__ = as
return item
-
- def _set(self, _object, _arguments = {}, _attributes = {}):
- """ _set: set data for an object
- Required argument: the object
- Keyword argument _parameters: Parameter dictionary for the set operation
+
+ get = _get
+
+ _argmap_set = {
+ 'to' : 'data',
+ }
+
+ def _set(self, _object, _attributes={}, **_arguments):
+ """set: Set an object's data.
+ Required argument: the object for the command
+ Keyword argument to: The new value.
Keyword argument _attributes: AppleEvent attribute dictionary
- Returns: the data
"""
_code = 'core'
_subcode = 'setd'
-
+
+ keysubst(_arguments, self._argmap_set)
_arguments['----'] = _object
+
_reply, _arguments, _attributes = self.send(_code, _subcode,
_arguments, _attributes)
- if _arguments.has_key('errn'):
+ if _arguments.get('errn', 0):
raise Error, decodeerror(_arguments)
-
+ # XXXX Optionally decode result
if _arguments.has_key('----'):
return _arguments['----']
+
+ set = _set
# Tiny Finder class, for local use only