Previous Book Contents Book Index Next

Inside Macintosh: Programmer's Guide to MacApp /


abstract base class A class that is never used to create objects. Abstract classes are used only to define subclasses that inherit their methods and fields. See also inheritance.

alien event An event that MacApp does not anticipate having to handle, such as a network event.

ancestor See superclass.

AOCE See Apple Open Collaboration Environment.

Apple event A high-level event that conforms to the Apple Event Interprocess Messaging Protocol.

Apple event dispatch table resource
A resource, of type 'aedt', which maps a received Apple event (by class ID and descriptor type) to a MacApp command number.

Apple Event Interprocess Messaging Protocol (AEIMP) A standard defined by Apple Computer, Inc., for communication and data sharing among applications.

Apple Event Manager The collection of routines in the operating system that allows applications to respond to Apple events, send Apple events to request services or information, work with object specifier records, classify Apple event objects, and locate Apple event objects.

Apple event object A distinct item (such as a word, paragraph, shape, window, or style format) in an application or its documents that can be specified by an object specifier record in an Apple event.

Apple event object model Defines a standard way of structuring an application so that it can be controlled from other applications, and so that it is scriptable using standard, human-language terminology.

Apple event terminology extension resource A resource, of type 'aete', which provides information to a scripting component about the Apple events an application supports, and about the human-language terminology associated with those events.

Apple Open Collaboration Environment (AOCE) The Macintosh system software that underlies the PowerTalk and PowerShare software. MacApp uses the Standard Mail Package to support adding PowerTalk mailers to documents.

AppleScript The scripting language component corresponding to the standard user scripting language defined by Apple Computer. By default, MacApp uses the AppleScript scripting component.

application object An object based on the TApplication class or a subclass; it represents the running MacApp application.

application signature A unique four-character identifier that allows the Finder to distinguish a given application from other applications. Sometimes called the creator code. Compare file type.

attachable application Application that includes objects to which scripts can be attached to modify basic behavior.

attached script Script that can be attached to objects in an application without rebuilding the application. Compare embedded script.

autoscrolling The process of scrolling automatically when a user moves the cursor to the boundaries of a view.

background task A task that continues to operate while another task is primary, such as a printing task that operates while you are actively typing in a word processor.

behavior A filter, added to an event-handler object, that can intercept selected method calls and perform actions.

browser A tool that presents organized information, such as the classes in a class library or code files in an application. A browser helps you navigate through the information and understand the relationships in it.

busy cursor A cursor image displayed while the application is busy with a task. The watch cursor is a standard busy cursor. A busy cursor is said to be "animated" when its state changes (as when the watch cursor's hands move around the face).

Buzzwords menu A 'CMNU' resource with ID 128. It is used to supply MacApp with text for undoable commands that are not listed in any menu. For example, a drawing command could supply the text "Drawing", resulting in the Undo menu command text of "Undo Drawing".

cast See down cast, dynamic cast, side cast, up cast.

class A data structure that serves as a template for the creation of objects. A class specifies the fields and methods of the objects that will be created from it.

client An application that sends Apple events to another application. Compare server.

cohandler An event-handler object that has been installed in the cohandler chain.

cohandler chain A list of event-handler objects pointed to by the application object's fHeadCohandler field. Objects in the list receive idle time to perform polling or background processing, and may respond to an alien event.

command-handler object An object instantiated from a command-handling class. Compare event-handler object.

command-handling class A class that descends from the TCommandHandler class (and thus also the TEventHandler class) and inherits the ability to deal with events and commands. Compare event-handling class.

command number In a 'CMNU' resource, the number that corresponds to a menu item, typically defined as a constant. For example, the command constant cOpen defines the command number associated with the Open command from the File menu. Also used to associate an Apple event suite number with a MacApp operation.

command object An object instantiated from the TCommand class or a subclass and used to perform an operation. A simple command performs the command operation; an undoable command can undo and redo the operation.

control A user interface item, such as a radio button or checkbox, that commonly appears in a dialog box. In MacApp, a control is implemented with a subclass of TView.

Core suite Apple event suite consisting of the basic Apple events that nearly all applications use to communicate, including Get Data, Set Data, Move, Delete, and Save. The Core suite includes the Apple events in the Required suite.

creator code See application signature.

current target object The object at the head of the target chain. The current target object gets the first chance to handle many kinds of events.

data member See field.

dead strip To remove unused code from an application. Usually performed by
a linker.

dependency space A mechanism for storing dependency relationships and notifying dependent objects when the object they depend on changes. See also dependent and notifier.

dependent An object that has been registered as depending on another object and is notified of changes in the other object. See also notifier.

descendant A class derived from another class. Also referred to as a subclass.

desk scrap The location in the operating system where data is stored when it is cut (or copied) and pasted between applications. The desk scrap can be in memory or on disk. Also known as the public scrap.

desk scrap data See scrap data.

desk scrap data type A specific type of data that can be stored in the desk scrap. A desk scrap data type is specified by a sequence of four characters, similar to a resource type. The two standard types are 'TEXT', a series of ASCII characters, and 'PICT', a QuickDraw picture. Other types include 'styl', style information for text, and 'moov', movie data for QuickTime. Also known as scrap type.

dialog box A special type of window used in Macintosh applications to display information and receive input from the user. In MacApp, a dialog box is just another type of window, containing its own hierarchy of views. MacApp supplies the TDialogView class for building a dialog box. See also modal dialog box and modeless dialog box.

disable To render a menu item nonfunctional. Also used with view and behavior objects, which are disabled when the fEnabled field has the value FALSE and enabled when it has the value TRUE. Compare enable.

down cast A cast of an object to a class type lower in the object's class hierarchy. Compare dynamic cast, side cast, up cast.

drag The process of dragging selected data with the mouse. Also known as a drag operation.

drag and drop A mechanism for using direct cursor manipulation to drag selected data and drop it into another view, window, or application.

drag copy A drag operation in which the dragged data is copied from the source and added to the destination.

Drag Manager The operating system manager that supports dragging and dropping of data between windows in an application and between applications.

drag move A drag operation in which the dragged data is removed from the source and added to the destination.

drag session object A global MacApp object, based on the TDragDropSession class, that manages communication with the Drag Manager during drag-and-drop operations.

drop The process of releasing dragged data into a destination that accepts the data. Also known as a drop operation.

dynamic cast A cast performed while an application is running. Can be performed safely with the MA_DYNAMIC_CAST macro, which uses current runtime type information. Compare down cast, side cast, up cast.

edition An application's published data. See also publisher.

edition container A separate file to which an application writes its published data.

Edition Manager event An Apple event sent by the Edition Manager to inform an application that an action involving publish and subscribe is required.

embedded script A script that is built into an application at the development stage. Compare attached script.

emulation mode On a Power Macintosh computer, the state of running 68K code using an emulator.

enable To make a menu item functional. The term is also used with view and behavior objects, which are enabled when the fEnabled field has the value TRUE and disabled when it has the value FALSE. Compare disable.

event-handler object An object instantiated from an event-handling class.

event-handling class A class that descends from the TEventHandler class and inherits its ability to deal with events. Compare command-handling class.

factoring The process of separating code that controls the user interface from code that responds to user actions; factoring includes breaking functions into discrete operations that can be implemented as separate tasks.

failure handler Code that uses MacApp's Try macro to bracket a block of code where an error may occur and that follows it with code to clean up if an error does occur.

fat application An application that contains 68K code in its resource fork and Power Macintosh code in its data fork and that can run native on either platform. See also emulation mode.

field Part of a record or class that stores data. Some fields are public and can be accessed by name; others are private and can be accessed only through an accessor method. A record or class can have any number of fields. Also referred to as a data member.

file type In a program or document file, a four-character identifier that allows the Finder to determine what program created the document. An application may use several file types if it creates different kinds of documents. Compare application signature.

flavor One of possibly many representations of the same data involved in a drag or drop operation. For example, PICT and TIFF are flavors for a graphic representation of data.

floating window A window that is drawn above other windows and is used for tear-off palettes and similar operations. In a MacApp application, the TWindow Boolean field fFloats specifies whether or not a window floats. Also referred to as miniwindow or windoid.

focusing The act of translating QuickDraw coordinates or MacApp global coordinates into a view's local coordinate system to prepare for drawing. Also, the act of specifying a current flavor in a TDragItem object by calling the FocusOnFlavor method.

global routine A method, procedure, or function that can be called from any other method, procedure, or function.

global variable A named value that is accessible from any method, procedure, or function and whose value can therefore be changed anywhere in the application.

grow-zone function A routine that attempts to free memory in the application heap. Called by the Memory Manager when free space is needed in the heap. MacApp's grow-zone function is named GrowZoneProc.

horizontal page strip A horizontal row of pages, as when displaying or printing a document. See also vertical page strip.

idle chain A name sometimes used to refer to the cohandler chain because it handles idle events.

idle frequency The amount of time before a cohandler is called when the application is idle (specified by the fIdleFreq field of the TEventHandler class).

implementation file A file that contains the code implementation of methods, procedures, and functions in an application. For an item in the implementation file to be accessed by other parts of the application's code, it must also appear in the interface file. In MacApp, a C++ implementation file ends in the characters .cp. Compare interface file.

inheritance The property of an object-oriented programming language that allows a new type to build on the structure and behavior of a preexisting type.

instance A runtime object created from a class and having fields and methods specified by its class.

instantiate To create an instance.

interface file A file that contains the names of the types, methods, procedures, functions, constants, and variables in a program. In MacApp, an interface file ends in the characters .h. Compare implementation file.

iteration A general-purpose mechanism for traversing the items in a list. Iteration is performed through the use of iterator classes.

iterator class A class, based on MacApp's CIterator class, that can iterate through the items in a list.

linked command One of a pair of commands joined so that if either is done, undone, redone, or committed, the same operation is performed for the other command in the pair. Linked commands are used in drag move operations.

list A data structure that stores a variable number of items of similar types.

main event loop The heart of a Macintosh program, the loop that continually looks for any event that requires a response and, when it finds such an event, that passes control to the part of the application responsible for handling that type of event. In MacApp this service is provided by the MainEventLoop method of the TApplication class.

main routine In a MacApp program, the routine that initializes the Macintosh Toolbox, initializes MacApp, creates an application object, and hands control over to MacApp by calling the Run method of the application object it just created.

managers In the Macintosh ROM, sets of software routines that handle various parts of the computer's operation (for example, the Window Manager). Managers must be initialized in a specific order before an application can run. In MacApp, the InitToolbox routine takes care of this initialization. Also, a MacApp class or group of classes that handles a specific area of program function (for example, the Clipboard manager, which is based on the TClipboardMgr class).

metadata See runtime type information.

method Part of a record or class that represents executable code--a function or routine that can be called by name. The methods of a class operate on the data stored in its fields.

miniwindow See floating window.

mixin class A class that is added to the class hierarchy of another class through multiple inheritance. See also multiple inheritance.

modal dialog box A dialog box that, once opened, allows no other program task to be performed until the dialog box has been dismissed.

modeless dialog box A dialog box that does not interfere with other program operations--for example, it may be open while a user works in a different window.

multiple inheritance The ability of a class to inherit behavior, including fields and methods, from more than one parent class. See also mixin class.

native An adjective describing an application on a computer that uses a specific processor if the application is built with code specific to that processor. See also emulation mode and fat application.

native format A mail format for sending document content as electronic mail, consisting of any of the internal document formats supported by an application.

notifier An object with one or more dependent objects that are notified of any change in the notifier. See also dependent.

object In object-oriented programming, a variable that consists of data and the methods that operate on that data, stored in the memory of a running application. An object may represent a Macintosh entity such as a window or dialog box, or a real-world entity or abstraction such as a chess piece or rectangle. Compare Apple event object.

object specifier record An Apple event descriptor record of descriptor type typeObjectSpecifier that describes the location of one or more Apple event objects.

Object Support Library (OSL) A component of the Apple Event Manager, used by applications to create and resolve object specifier records.

Open Scripting Architecture (OSA) Defined by Apple Computer, an architecture that allows users to control multiple applications with scripts written in a variety of scripting languages.

override (n.) In a subclass, a method that supersedes the version inherited from its superclass. The override version has the same name and can call the inherited version. Override versions typically add functionality to the inherited version. (v.) To create an override method.

palette A floating window that contains a set of tools.

parent class See superclass.

permanent memory request A memory request that can be allowed to fail. See also temporary memory request.

persistent data The data needed to recreate an object in the same state as when it wrote its data. Persistent data need not include constant or default data.

polling The action of continually checking to see if an event has happened.

PowerTalk Macintosh system software that supports features such as mailers that turn documents into electronic mail. See Apple Open Collaboration Environment (AOCE).

private scrap The location in which an application keeps its own scrap data. Compare desk scrap.

public scrap See desk scrap.

publish and subscribe The dynamic exchange of data between applications using the Edition Manager.

publisher A section that makes its data available to other documents or applications.

recordable application One that is capable of sending Apple events to report user actions to the Apple Event Manager for recording into a script.

Required suite The Apple event suite consisting of four events that every application must support: Open Application, Open Documents, Print Documents, and Quit Application. Compare Core suite.

resource definition A text description of a resource that matches the resource format defined by its resource type.

RTTI See runtime type information.

runtime type information (RTTI) Information, available at runtime, about the class types and inheritance relationships of application objects. Also referred to as metadata.

scrap data Data, stored in a public or private scrap, that can be moved between applications through Clipboard operations.

scrap type See desk scrap data type.

script A collection of data that, when executed by the appropriate program, causes a corresponding action or series of actions.

scriptable application One that is capable of responding to Apple events sent by a scripting component.

scripting component A Component Manager component that supports the standard scripting component routines described in Inside Macintosh for a particular scripting language. See AppleScript.

section A portion of a document that shares its contents with other documents (for publishing or subscribing).

section event See also Edition Manager Apple event.

server An application that responds to Apple events sent by another application. Compare client.

side cast The casting of an object to a class type in its class hierarchy that is included by multiple inheritance. Side casting can be performed safely with the MA_DYNAMIC_CAST macro, which uses current runtime type information. Compare down cast, dynamic cast, up cast.

snapshot format A mail format for sending document content as electronic mail, consisting of an image, or snapshot of the document.

standard interchange format A set of data formats for sending document content as electronic mail. It consists of plain text, styled text, sound (AIFF), images ('PICT'), and QuickTime movies ('MooV').

Standard Mail Package A component of AOCE that works together with other components to present a consistent and easy-to-use interface for addressing letters, signing letters, and sending documents as electronic mail.

stream A sequence of bytes that can be used to transfer data between locations. The destination of a stream can be a file, a handle, a resource, and so on.

subclass See descendant.

subscriber A section that obtains its data from other documents or applications.

subview A view that is located within another view.

suite A group of related Apple events usually implemented as a package. See Core suite and Required suite.

superclass The class from which a given class is derived. Also called ancestor class or parent class. Parent class usually implies an immediate ancestor or superclass. See also descendant, inheritance.

superview A view that contains another view.

synchronized scrolling The simultaneous scrolling of more than one view.

target chain The list of event-handler objects, starting with the current target object and continuing with the handler pointed to by the fNextHandler field, until that field is NULL. MacApp dispatches many kinds of events to the target chain.

target change A change in the current target object.

target management Managing the process of changing the current target object during execution of a MacApp application. See also target chain.

target validation The process of allowing the current target object to validate its data before a target change, and to refuse to change if the data is invalid.

temporary memory request A memory request that must not fail, such as the memory required to quit the application. MacApp maintains various memory reserves to ensure the success of temporary memory requests. Compare permanent memory request.

ultimate container The first object queried by the OSL when resolving an object specifier. In MacApp, normally the application object.

up cast A cast of an object to a class type higher in the object's class hierarchy. This is the safest form of object cast. Compare down cast, dynamic cast, side cast.

vertical blanking (VBL) task A task executed during the vertical blanking interrupt.

vertical page strip A vertical column of pages, as when displaying or printing a document. See also horizontal page strip.

view An object instantiated from the TView class or a subclass. Views are most often used to display a visible part of a window, including controls and the content area.

view hierarchy A series of views joined by the superview/subview relationship.

view object See view.

view resource template The definition of a resource format for a MacApp view class. View templates can be used to create resource definitions for complex view hierarchies.

virtual A keyword that indicates that a method, constructor, or destructor can be overridden in a subclass.

watch cursor A system-supplied cursor that resembles a wristwatch.

windoid See floating window.

Previous Book Contents Book Index Next

© Apple Computer, Inc.
25 JUL 1996