ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



OSA(3)                               User Contributed Perl Documentation                              OSA(3)



NAME
       Mac::OSA - Provide interface to Open Scripting Architecture

SYNOPSIS
           use Mac::OSA;

           use Mac::OSA qw(OSALoad OSAStore OSAExecute);

DESCRIPTION
       Access to Inside Macintosh is essential for proper use of these functions.  Explanations of terms,
       processes and procedures are provided there.  Any attempt to use these functions without guidance can
       cause severe errors in your machine, including corruption of data. You have been warned.

       Constants


       kOSAComponentType
       kOSAGenericScriptingComponentSubtype
       kOSAFileType
       kOSASuite
       kOSARecordedText
       kOSAScriptIsModified
       kOSAScriptIsTypeCompiledScript
       kOSAScriptIsTypeScriptValue
       kOSAScriptIsTypeScriptContext
       kOSAScriptBestType
       kOSACanGetSource
       typeOSADialectInfo
       keyOSADialectName
       keyOSADialectCode
       keyOSADialectLangCode
       keyOSADialectScriptCode
       kOSAScriptResourceType
       typeOSAGenericStorage
           Types and keywords.

       kOSANullScript
       kOSANullMode
       kOSAModeNull
           Default values.

       kOSASupportsCompiling
       kOSASupportsGetSource
       kOSASupportsAECoercion
       kOSASupportsAESending
       kOSASupportsRecording
       kOSASupportsConvenience
       kOSASupportsDialects
       kOSASupportsEventHandling
           Feature flags.

       kOSAModePreventGetSource
       kOSAModeNeverInteract
       kOSAModeCanInteract
       kOSAModeAlwaysInteract
       kOSAModeDontReconnect
       kOSAModeCantSwitchLayer
       kOSAModeDoRecord
       kOSAModeCompileIntoContext
       kOSAModeAugmentContext
       kOSAModeDisplayForHumans
       kOSAModeDontStoreParent
       kOSAModeDispatchToDirectObject
       kOSAModeDontGetDataForArguments
       kOSAModeDontDefine
           Mode flags.

       kOSAErrorNumber
       kOSAErrorMessage
       kOSAErrorBriefMessage
       kOSAErrorApp
       kOSAErrorPartialResult
       kOSAErrorOffendingObject
       kOSAErrorExpectedType
       kOSAErrorRange
       typeOSAErrorRange
       keyOSASourceStart
       keyOSASourceEnd
           Error handling.

       kOSAUseStandardDispatch
       kOSANoDispatch
       kOSADontUsePhac
       kGenericComponentVersion
           Dispatching flags

       Functions


       OSALoad SCRIPTINGCOMPONENT, SCRIPTDATA, MODEFLAGS
           The OSALoad function loads script data and returns a script ID. The generic scripting component
           uses the descriptor record in the SCRIPTDATA parameter to determine which scripting component
           should load the script. If the descriptor record is of type typeOSAGenericStorage, the generic
           scripting component uses the trailer at the end of the SCRIPTDATA to identify the scripting
           component. If the descriptor record's type is the subtype value for another scripting component,
           the generic scripting component uses the descriptor type to identify the scripting component.
           Return "undef" if an error was detected.

       OSAStore SCRIPTINGCOMPONENT, SCRIPTID, DESIREDTYPE, MODEFLAGS
           The OSAStore function returns script data in a descriptor record so that the data can later be
           saved in a resource or written to the data fork of a document. You can then reload the data for
           the descriptor record as a compiled script (although possibly with a different script ID) by
           passing the descriptor record to OSALoad().  Return "undef" if an error was detected.

       OSAExecute SCRIPTINGCOMPONENT, COMPILEDSCRIPTID, CONTEXTID, MODEFLAGS
           The OSAExecute function executes the compiled script identified by the COMPILEDSCRIPTID
           parameter, using the script context identified by the CONTEXTID parameter to maintain state
           information, such as the binding of variables, for the compiled script. After successfully
           executing a script, OSAExecute returns the script ID for a resulting script value, or, if
           execution does not result in a value, "undef".

       OSADisplay SCRIPTINGCOMPONENT, SCRIPTVALUEID, DESIREDTYPE, MODEFLAGS
           The OSADisplay function coerces the script value identified by SCRIPTVALUEID to a descriptor
           record of the text type specified by the DESIREDTYPE parameter, if possible. Valid types include
           all the standard text descriptor types defined in the Apple Event Registry: Standard Suites, plus
           any special types supported by the scripting component.  Return "undef" if an error was detected.

       OSAScriptError SCRIPTINGCOMPONENT, SELECTOR, DESIREDTYPE
           Whenever the OSAExecute() function returns the error errOSAScriptError, you can use the
           OSAScriptError function to get more specific information about the error from the scripting
           component that encountered it. (This information remains available only until the next call to
           the same scripting component.) The information returned by OSAScriptError depends on the value
           passed in the SELECTOR parameter, which also determines the descriptor type you should specify in
           the DESIREDTYPE parameter.

           Return "undef" if an error was detected.

       OSADispose SCRIPTINGCOMPONENT, SCRIPTID
           The OSADispose function releases the memory assigned to the script data identified by the
           SCRIPTID parameter. The SCRIPTID passed to the OSADispose function is no longer valid if the
           function returns successfully. A scripting component can then reuse that SCRIPTID for other
           script data.  Return zero if no error was detected.

       OSASetScriptInfo SCRIPTINGCOMPONENT, SCRIPTID, SELECTOR, VALUE
           The OSASetScriptInfo function sets script information according to the value you pass in the
           selector parameter. If you use the kOSAScriptIsModified constant, OSASetScriptInfo sets a value
           that indicates how many times the script data has been modified since it was created or passed to
           OSALoad. Some scripting components may provide additional constants.  Return zero if no error was
           detected.

       OSAGetScriptInfo SCRIPTINGCOMPONENT, SCRIPTID, SELECTOR
           The OSAGetScriptInfo function returns various results according to the value you pass in the
           SELECTOR parameter.  Returns an integer value which may need to be recast as the desired type.

       OSASetProperty SCRIPTINGCOMPONENT, MODEFLAGS, SCRIPTID, VARIABLENAME, SCRIPTVALUEID
           The OSASetProperty function sets the value of a script property in a specified script.
           VARIABLENAME is an AEDesc.

       OSAGetProperty SCRIPTINGCOMPONENT, MODEFLAGS, SCRIPTID, VARIABLENAME
           The OSAGetProperty function gets the value of a script property in a specified script.
           VARIABLENAME is an AEDesc.  Returns an AEDesc.

       OSAGetAppTerminology SCRIPTINGCOMPONENT, MODEFLAGS, FILE, TERMINOLOGYID
           OSAGetAppTerminology gets one or more scripting terminology resources from the specified file.
           Returns an AEDesc.

       OSAScriptingComponentName SCRIPTINGCOMPONENT
           The OSAScriptingComponentName function returns a descriptor record that you can coerce to a text
           descriptor type such as typeChar. This can be useful if you want to display the name of the
           scripting language in which the user should write a new script.  Return "undef" if an error was
           detected.

       OSACompile SCRIPTINGCOMPONENT, SOURCEDATA, MODEFLAGS, [PREVIOUSSCRIPTID]
           You can pass a descriptor record containing source data suitable for a specific scripting
           component (usually text) to the OSACompile function to obtain a script ID for the equivalent
           compiled script or script context. To compile the source data as a script context for use with
           OSAExecuteEvent() or OSADoEvent(), you must set the kOSACompileIntoContext flag, and the source
           data should include appropriate handlers.  Return zero if no error was detected.

       OSACopyID SCRIPTINGCOMPONENT, FROMID, [TOID]
           The OSACopyID function replaces the script data identified by the script ID in the TOID parameter
           with the script data identified by the script ID in the FROMID parameter.  Return "undef" if an
           error was detected.

       OSAGetSource SCRIPTINGCOMPONENT, SCRIPTID, [DESIREDTYPE]
           The OSAGetSource function decompiles the script data identified by the specified script ID and
           returns a descriptor record containing the equivalent source data.  Return "undef" if an error
           was detected.

       OSACoerceFromDesc SCRIPTINGCOMPONENT, SCRIPTDATA, MODEFLAGS
           The OSACoerceFromDesc function coerces the descriptor record in the SCRIPTDATA parameter to the
           equivalent script value and returns a script ID for that value.  Return "undef" if an error was
           detected.

       OSACoerceToDesc SCRIPTINGCOMPONENT, SCRIPTID, DESIREDTYPE, MODEFLAGS
           The OSACoerceToDesc function coerces the script value identified by SCRIPTID to a descriptor
           record of the type specified by the DESIREDTYPE parameter, if possible.  Return "undef" if an
           error was detected.

       OSASetDefaultTarget SCRIPTINGCOMPONENT, TARGET
           The OSASetDefaultTarget function establishes the default target application for Apple event
           sending and the default application from which the scripting component should obtain terminology
           information. For example, AppleScript statements that refer to the default application do not
           need to be enclosed in "tell/end tell" statements.  Return zero if no error was detected.

       OSAStartRecording SCRIPTINGCOMPONENT, [COMPILEDSCRIPTTOMODIFYID]
           The OSAStartRecording routine turns on Apple event recording. Subsequent Apple events are
           recorded (that is, appended to any existing statements) in the compiled script specified by the
           COMPILEDSCRIPTTOMODIFYID parameter.  Return "undef" if an error was detected.

       OSAStopRecording SCRIPTINGCOMPONENT, COMPILEDSCRIPTID
           The OSAStopRecording function turns off recording. If the script is not currently open in a
           script editor window, the COMPILEDSCRIPTTOMODIFYID parameter supplied to OSAStartRecording() is
           then augmented to contain the newly recorded statements.  If the script is currently open in a
           script editor window, the script data that corresponds to the compiledScriptToModifyID parameter
           supplied to OSAStartRecording() is updated continuously until the client application calls
           OSAStopRecording.  Return zero if no error was detected.

       OSALoadExecute SCRIPTINGCOMPONENT, SCRIPTDATA, CONTEXTID, MODEFLAGS
           The OSALoadExecute function loads script data and executes the resulting compiled script, using
           the script context identified by the CONTEXTID parameter to maintain state information such as
           the binding of variables. After successfully executing the script, OSALoadExecute disposes of the
           compiled script and returns either the script ID for the resulting script value or, if execution
           does not result in a value, the constant kOSANullScript.  Return "undef" if an error was
           detected.

       OSACompileExecute SCRIPTINGCOMPONENT, SOURCEDATA, CONTEXTID, MODEFLAGS
           The OSACompileExecute function compiles source data and executes the resulting compiled script,
           using the script context identified by the CONTEXTID parameter to maintain state information such
           as the binding of variables. After successfully executing the script, OSACompileExecute disposes
           of the compiled script and returns either the script ID for the resulting script value or, if
           execution does not result in a value, the constant kOSANullScript.  Return "undef" if an error
           was detected.

       OSADoScript SCRIPTINGCOMPONENT, SOURCEDATA, CONTEXTID, DESIREDTYPE, MODEFLAGS
           Calling the OSADoScript function is equivalent to calling OSACompile() followed by OSAExecute()
           and OSADisplay(). After compiling the source data, executing the compiled script using the script
           context identified by the CONTEXTID parameter, and returning the text equivalent of the resulting
           script value, OSADoScript disposes of both the compiled script and the resulting script value.
           Return "undef" if an error was detected.

       OSASetCurrentDialect SCRIPTINGCOMPONENT, DIALECTCODE
           Set the current dialect for a scripting component.  Return zero if no error was detected.

       OSAGetCurrentDialect SCRIPTINGCOMPONENT
           Get the dialect code for the dialect currently being used by a scripting component.  Returns the
           code for the current dialect of the specified scripting component.

       OSAAvailableDialects SCRIPTINGCOMPONENT
           Obtain a descriptor list containing information about each of the currently available dialects
           for a scripting component.  Return "undef" if an error was detected.

       OSAGetDialectInfo SCRIPTINGCOMPONENT, DIALECTCODE, SELECTOR
           After you obtain a list of dialect codes by calling OSAAvailableDialectCodeList(), you can pass
           any of those codes to OSAGetDialectInfo to get information about the corresponding dialect. The
           descriptor type of the descriptor record returned by OSAGetDialectInfo depends on the constant
           specified in the SELECTOR parameter.  Return "undef" if an error was detected.

       OSAAvailableDialectCodeList SCRIPTINGCOMPONENT
           Obtain a descriptor list containing dialect codes for each of a scripting component's currently
           available dialects.  Return "undef" if an error was detected.

       OSAExecuteEvent SCRIPTINGCOMPONENT, THEAPPLEEVENT, CONTEXTID, MODEFLAGS
           The OSAExecuteEvent function attempts to use the script context specified by the contextID
           parameter to handle the Apple event specified by the THEAPPLEEVENT parameter.  Return "undef" if
           an error was detected.

       OSADoEvent SCRIPTINGCOMPONENT, THEAPPLEEVENT, CONTEXTID, MODEFLAGS
           The OSADoEvent function resembles both OSADoScript() and OSAExecuteEvent().  However, unlike
           OSADoScript(), the script OSADoEvent executes must be in the form of a script context, and
           execution is initiated by an Apple event. Unlike OSAExecuteEvent(), OSADoEvent returns a reply
           Apple event rather than the script ID of the resulting script value.  Return "undef" if an error
           was detected.

       OSAMakeContext SCRIPTINGCOMPONENT, CONTEXTNAME, [PARENTCONTEXT]
           The OSAMakeContext function creates a new script context that you may pass to OSAExecute() or
           OSAExecuteEvent(). The new script context inherits the bindings of the script context specified
           in the PARENTCONTEXT parameter.  Return "undef" if an error was detected.

       OSAGetDefaultScriptingComponent GENERICSCRIPTINGCOMPONENT
           The OSAGetDefaultScriptingComponent function returns the subtype code for the default scripting
           component. This is the scripting component that will be used by OSAStartRecording(),
           OSACompile(), or OSACompileExecute() if no existing script ID is specified. From the user's point
           of view, the default scripting component corresponds to the scripting language selected in the
           Script Editor application when the user first creates a new script.  Return "undef" if an error
           was detected.

       OSASetDefaultScriptingComponent GENERICSCRIPTINGCOMPONENT, SCRIPTINGSUBTYPE
           The OSASetDefaultScriptingComponent function sets the default scripting component for the
           specified instance of the generic scripting component to the scripting component identified by
           the SCRIPTINGSUBTYPE parameter.  Return zero if no error was detected.

       OSAGetScriptingComponent GENERICSCRIPTINGCOMPONENT, SCRIPTINGSUBTYPE
           The OSAGetScriptingComponent function returns an instance of the scripting component identified
           by the SCRIPTINGSUBTYPE parameter. Each instance of the generic scripting component keeps track
           of a single instance of each component subtype, so OSAGetScriptingComponent always returns the
           same instance of a specified scripting component that the generic scripting component uses for
           standard scripting component routines.  Return "undef" if an error was detected.

       OSAGetScriptingComponentFromStored GENERICSCRIPTINGCOMPONENT, SCRIPTDATA
           The OSAGetScriptingComponentFromStored function returns the subtype code for the scripting
           component that created the script data specified by the SCRIPTDATA parameter.  Return "undef" if
           an error was detected.

       OSAGenericToRealID GENERICSCRIPTINGCOMPONENT, GENERICSCRIPTID
           Given a GENERICSCRIPTID (that is, a script ID returned by a call to a standard component routine
           via the generic scripting component), the OSAGenericToRealID function returns the equivalent
           component-specific script ID and the component instance that created that script ID as an array.

       OSARealToGenericID GENERICSCRIPTINGCOMPONENT, THESCRIPTID, THEEXACTCOMPONENT
           The OSARealToGenericID function performs the reverse of the task performed by
           OSAGenericToRealID(). Given a component-specific SCRIPTID and an exact scripting component
           instance (that is, the component instance that created the component-specific script ID), the
           OSARealToGenericID function returns the corresponding generic script ID.  Return "undef" if an
           error was detected.

AUTHOR
       Written by Matthias Ulrich Neeracher <neeracher@mac.com>, documentation by Bob Dalgleish
       <bob.dalgleish@sasknet.sk.ca>.  Currently maintained by Chris Nandor <pudge@pobox.com>.



perl v5.8.8                                      2007-09-23                                           OSA(3)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.