| \section{Standard Module \sectcode{MiniAEFrame}} |
| \stmodindex{MiniAEFrame} |
| \label{module-MiniAEFrame} |
| |
| The module \var{MiniAEFrame} provides a framework for an application |
| that can function as an OSA server, i.e. receive and process |
| AppleEvents. It can be used in conjunction with \var{FrameWork} or |
| standalone. |
| |
| This module is temporary, it will eventually be replaced by a module |
| that handles argument names better and possibly automates making your |
| application scriptable. |
| |
| The \var{MiniAEFrame} module defines the following classes: |
| |
| \setindexsubitem{(in module MiniAEFrame)} |
| |
| \begin{funcdesc}{AEServer}{} |
| A class that handles AppleEvent dispatch. Your application should |
| subclass this class together with either |
| \code{MiniAEFrame.MiniApplication} or |
| \code{FrameWork.Application}. Your \code{__init__} method should call |
| the \code{__init__} method for both classes. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{MiniApplication}{} |
| A class that is more or less compatible with |
| \code{FrameWork.Application} but with less functionality. Its |
| eventloop supports the apple menu, command-dot and AppleEvents, other |
| events are passed on to the Python interpreter and/or Sioux. |
| Useful if your application wants to use \code{AEServer} but does not |
| provide its own windows, etc. |
| \end{funcdesc} |
| |
| \subsection{AEServer Objects} |
| |
| \setindexsubitem{(AEServer method)} |
| |
| \begin{funcdesc}{installaehandler}{classe\, type\, callback} |
| Installs an AppleEvent handler. \code{Classe} and \code{type} are the |
| four-char OSA Class and Type designators, \code{'****'} wildcards are |
| allowed. When a matching AppleEvent is received the parameters are |
| decoded and your callback is invoked. |
| \end{funcdesc} |
| |
| \begin{funcdesc}{callback}{_object\, **kwargs} |
| Your callback is called with the OSA Direct Object as first positional |
| parameter. The other parameters are passed as keyword arguments, with |
| the 4-char designator as name. Three extra keyword parameters are |
| passed: \code{_class} and \code{_type} are the Class and Type |
| designators and \code{_attributes} is a dictionary with the AppleEvent |
| attributes. |
| |
| The return value of your method is packed with |
| \code{aetools.packevent} and sent as reply. |
| \end{funcdesc} |
| |
| Note that there are some serious problems with the current |
| design. AppleEvents which have non-identifier 4-char designators for |
| arguments are not implementable, and it is not possible to return an |
| error to the originator. This will be addressed in a future release. |