Class

SBObject

The SBObject class declares methods that can be invoked on any object in a scriptable application. It defines methods for getting elements and properties of an object, as well as setting a given object to a new value.

Declaration

@interface SBObject : NSObject

Overview

Each SBObject is built around an object specifier, which tells Scripting Bridge how to locate the object. Therefore, you can think of an SBObject as a reference to an object in an target application rather than an object itself. To bypass this reference-based approach and force evaluation, use the get method.

Typically, rather than create SBObject instances explictly, you receive SBObject objects by calling methods of an SBApplication subclass. For example, if you wanted to get an SBObject representing the current iTunes track, you would use code like this (where iTunesTrack is a subclass of SBObject):

iTunesApplication *iTunes = [SBApplication applicationWithBundleIdentifier:@"com.apple.iTunes"];
iTunesTrack *track = [iTunes currentTrack];

You can discover the names of dynamically generated classes such as iTunesApplication and iTunesTrack by examining the header file created by the sdp tool. Alternatively, you give these variables the dynamic Objective-C type id.

Topics

Initializing a Scripting Bridge Object

- init

Initializes and returns an instance of an SBObject subclass.

- initWithData:

Returns an instance of an SBObject subclass initialized with the given data.

- initWithProperties:

Returns an instance of an SBObject subclass initialized with the specified properties.

- initWithElementCode:properties:data:

Returns an instance of an SBObject subclass initialized with the specified properties and data and added to the designated element array.

Getting Referenced Data

- get

Forces evaluation of the receiver, causing the real object to be returned immediately.

Sending Apple Events

- sendEvent:id:parameters:

Sends an Apple event with the given event class, event ID, and format to the target application.

- setTo:

Sets the receiver to a specified value.

Getting Properties and Elements

- propertyWithClass:code:

Returns an object of the designated scripting class representing the specified property of the receiver

- propertyWithCode:

Returns an object representing the specified property of the receiver.

- elementArrayWithCode:

Returns an array containing every child of the receiver with the given class-type code.

Instance Methods

Relationships

Inherits From

Conforms To