AM2 Documentation


Table of Contents

Chapter 1 - Overview
1.1 - Organization of This Document
1.2 - The Structure of an Application
1.3 - Road Map to the ADL
1.4 - AM2 Philosophy
Chapter 2 - Hello, World
Chapter 3 - The Application Description Language
3.1 - Lexical Conventions
3.2 - Identifiers
3.3 - Base Types
3.4 - Base Type Constants
3.5 - Compound Types
3.6 - Variable Definitions
3.7 - Expressions
3.7.1 - Delimiters
3.7.2 - Operators
3.8 - Assignment
3.9 - Complex Data Types
3.10 - Unset Values
3.11 - Type Conversion
3.12 - Built-in Function Calls
3.13 - Messages
3.14 - Stream Operators
3.15 - Control Flow
3.16 - Object Definition
3.17 - Dynamic Objects and Storage Management
3.18 - Object Destruction
3.19 - Object Member Reference
3.20 - Class Definition
3.21 - Method Definition
3.22 - Metaclass Operations
3.23 - Wrapped Classes
3.23.1 - Scope of a Class Name
3.23.2 - Creating an Instance of a Class
3.23.3 - Creating a Subclass
3.23.4 - Member Access
3.23.5 - Method Invocation
3.24 - Inheritance
3.25 - Object Initialization
3.26 - Scope
3.27 - Assets
3.27.1 - Asset File Structure
3.27.2 - Assets and Precedence
3.27.3 - Example of Using Assets
3.28 - Program Structure
Chapter 4 - Using Activities in ADL
4.1 - Using the Pressed Attribute
4.2 - Using Notification Request Objects
4.3 - Using Other Types of System-defined NRO Classes
4.3.1 - Mouse NROs
4.3.2 - Timer NROs
4.4 - NROs Derived from System-defined NROs
4.5 - Creating ADL Classes That Manage Activities
4.5.1 - Inheriting An Existing Activity From a Class That Manages Activities
4.5.2 - Creating a New Activity
4.5.3 - Creating Classes That Inherit From the ActivityManager Class
4.6 - Creating Customized NROs
4.7 - Using Activities for Notification of Subscriptions
Chapter 5 - Example ADL Programs
5.1 - Toggle Button Class
5.1.1 - ADL Implementation of the ToggleButton Class
5.1.2 - An Example of Using the ToggleButton Class
5.1.3 - Implementation Options
5.2 - A Simple Image Viewer Class
5.2.1 - ADL Implementation of the Viewer Class
5.2.2 - Example Use of the Viewer Class
5.3 - A Picture Button Class
5.3.1 - ADL Implementation of the PictureButton Class
5.3.2 - An Example Using the PictureButton Class
5.4 - A Video Viewer Class
5.4.1 - ADL Implementation of the VCR class
Chapter 6 - Wrapped Class Reference
6.1 - Activities and Application Services
Figure 6.1 - Activities and Applications Services Wrapped Classes Inheritance Tree
6.1.1 - MCapplication - Abstract
Superclasses
Methods
Attributes
Activities
Examples
6.1.2 - Activity Manager - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.1.3 - Attribute Manager - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.1.4 - Nro
Superclasses
Methods
Attributes
Activities
Example
6.1.5 - MouseNro
Superclasses
Methods
Attributes
Activities
Example
6.1.6 - TimerNro
Superclasses
Methods
Attributes
Activities
Example
6.2 - User Interface
Figure 6.5: - User Interface Wrapped Classes Inheritance Tree
6.2.1 - XFwidget - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.2.2 - XFcontainable - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.2.3 - XFcontainer - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.2.4 - XFcontainableContainer - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.2.5 - XFtop
Superclasses
Methods
Attributes
Activities
Example
6.2.6 - XFlayout
Superclasses
Methods
Attributes
Activities
Example
6.2.7 - XFvisual
Superclasses
Methods
Attributes
Activities
Example
6.2.8 - XFhtml
Superclasses
Methods
Attributes
Activities
Example
6.2.9 - XFmessageDlg
Superclasses
Methods
Attributes
Activities
Example
6.2.10 - XFsimple - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.2.11 - XFfontable - Abstract
Superclasses
Attributes
Activities
6.2.12 - XFlabel
Superclasses
Methods
Attributes
Activities
Example
6.2.13 - XFbutton
Superclasses
Methods
Attributes
Activities
Example
6.2.14 - XFtoggleButton - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.2.15 - XFcheckBox
Superclasses
Methods
Attributes
Activities
Example
6.2.16 - XFradioButton
Superclasses
Methods
Attributes
Activities
Example
6.2.17 - XFselectList
Superclasses
Methods
Attributes
Activities
Example
6.2.18 - XFtext
Superclasses
Methods
Attributes
Activities
Example
6.2.19 - XFtextField
Superclasses
Methods
Attributes
Activities
Example
6.2.20 - XFscrollBar
Superclasses
Methods
Attributes
Activities
Example
6.2.21 - XFmenuItem - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.2.22 - XFmenuLabeledItem - Abstract
Superclasses
Attributes
6.2.23 - XFmenu
Superclasses
Methods
Attributes
Activities
Example
6.2.24 - XFmenuCommand
Superclasses
Methods
Attributes
Activities
Example
6.2.25 - XFmenuSeparator
Superclasses
Methods
Attributes
Activities
Example
6.2.26 - XFfont
Superclasses
Methods
Attributes
Activities
Example
6.2.27 - XGPainter
Superclasses
Methods
Attributes
Activities
Example
6.3 - Multimedia
Figure 6.31: - Multimedia Wrapped Classes Inheritance Tree
6.3.1 - MMbase - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.3.2 - MMvisual - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.3.3 - MMtemporal - Abstract
Superclasses
Methods
Attributes
Activities
6.3.4 - MMaudioControl - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.3.5 - MMbroker
Superclasses
Methods
Attributes
Activities
Example
6.3.6 - MMcolor
Superclasses
Methods
Attributes
Activities
Example
6.3.7 - MMimage
Superclasses
Methods
Attributes
Activities
Example
6.3.8 - MMdigitalAudio
Superclasses
Methods
Attributes
Activities
Example
6.3.9 - AVwaveForm
Superclasses
Methods
Attributes
Activities
Example
6.3.10 - MMmovie
Superclasses
Methods
Attributes
Activities
Example
6.3.11 - MMvidDiscPlayer (only on UNIX)
Superclasses
Methods
Attributes
Activities
Example
6.3.12 - MMhtml
Superclasses
Methods
Attributes
Activities
Example
6.4 - Input/Output
Figure 6.47: - Input/Output Wrapped Classes Inheritance Tree
6.4.1 - IOactNotify
Superclasses
Methods
Attributes
Activities
Example
6.4.2 - IOnwNotify
Superclasses
Methods
Attributes
Activities
Example
6.4.3 - IOstream - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.4.4 - IOfile
Superclasses
Methods
Attributes
Activities
Example
6.4.5 - IOfileSpec
Superclasses
Methods
Attributes
Activities
Example
6.4.6 - IOpipe
Superclasses
Methods
Attributes
Activities
Example
6.4.7 - IOurl
Superclasses
Methods
Attributes
Activities
Example
6.4.8 - IOweb - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.4.9 - IOftp
Superclasses
Methods
Activities
Example
6.4.10 - IOhttp
Superclasses
Methods
Attributes
Activities
Example
6.4.11 - IOwebRequest - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.4.12 - IOftpRequest
Superclasses
Methods
Attributes
Activities
Example
6.4.13 - IOhttpRequest
Superclasses
Methods
Activities
Example
6.4.14 - IOwebEntity - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.4.15 - IOftpEntity
Superclasses
Methods
Attributes
Activities
Example
6.4.16 - IOhttpEntity
Superclasses
Methods
Attributes
Activities
Example
6.4.17 - IOwebStream - Abstract
Superclasses
Methods
Attributes
Activities
Example
6.4.18 - IOftpStream
Superclasses
Methods
Attributes
Activities
Example
6.4.19 - IOhttpStream
Superclasses
Methods
Attributes
Activities
Example
6.4.20 - XNstream
Superclasses
Methods
Attributes
Activities
Example 1
Example 2
6.5 - External Processes
6.5.1 - XTcommand
Superclasses
Methods
Attributes
Activities
Example
6.5.2 - XTprocFilter (only on UNIX)
Superclasses
Methods
Attributes
Activities
Example
6.5.3 - XTprocSink (only on UNIX)
Superclasses
Methods
Attributes
Activities
Example
6.5.4 - XTprocSource (only on UNIX)
Superclasses
Methods
Attributes
Activities
Example
6.6 - Database
6.6.1 - DBdatabase
Superclasses
Methods
Attributes
Activities
Example
6.6.2 - DBclass
Superclasses
Methods
Attributes
Activities
Example
6.6.3 - DBobject
Superclasses
Methods
Attributes
Activities
Example
6.6.4 - DBset
Superclasses
Methods
Attributes
Activities
Example
6.6.5 - DBcursor
Superclasses
Methods
Attributes
Activities
Example
6.6.6 - DBquery
Superclasses
Methods
Attributes
Activities
Example
6.6.7 - DBbinary
Superclasses
Methods
Attributes
Activities
Example
6.6.8 - DBmedia
Superclasses
Methods
Attributes
Activities
Example
6.6.9 - DBimage
Superclasses
Methods
Attributes
Activities
Example
6.6.10 - DBdate
Superclasses
Methods
Attributes
Activities
Example
6.6.11 - DBtime
Superclasses
Methods
Attributes
Activities
Example
6.6.12 - DBtimestamp
Superclasses
Methods
Attributes
Activities
Example
6.6.13 - DBmonetary
Superclasses
Methods
Attributes
Activities
Example
6.7 - Data Structures
6.7.1 - DSqueue
Superclasses
Methods
Attributes
Activities
Example
6.7.2 - DSstack
Superclasses
Methods
Attributes
Activities
Example
Appendix A - Built-In Functions for ADL
A.1 - Notation
A.2 - Function Descriptions
A.2.1 - Input/Output
A.2.2 - Time and Date
A.2.3 - Conversion
A.2.4 - Type Query
A.2.5 - Sequences (lists and strings)
Lists
Strings
A.2.6 - Mathematical
A.2.7 - Handles
A.2.8 - Classes and Inheritance
A.2.9 - Networking
Appendix B - Creating Wrapped Classes
B.1 - Wrap Script Model
B.2 - How to Wrap a C++ Class
B.2.1 - Lexical Conventions
B.2.2 - The Wrap File: an Example
B.2.3 - An Explanation of the Parts of a Wrap File
Notice
Foundation or FoundationRO Declaration
The Wrapped Class Name
Module Declaration
Abstract Declaration
Can You Create a Subclass in the ADL?
The Header Section
The Source Section
Code Fragments
constructor and preConstructor
constructorFromFoundation
wrappedIsReady
preDestroy and postDestroy
Members
What methods should the wrapped class have?
B.2 - Inheritance Model of the Wrap Script
B.2.1 - Example without Inheritance
B.2.2 - Example with Inheritance
B.2.3 - An Explanation of the Wrap Inheritance Description
Superclasses
Foundation: and FoundationRO:
Header and Source Sections
Members
Methods
Useful Details
B.3 - The Wrap Script and the Macintosh
B.3.1 - Command Line Interface
+depend
-l
-mac
+Wdirectory
Index

AM2 Documentation - 19 NOV 1996

Generated with Harlequin WebMaker