Retired Document
Important: This sample code may not represent best practices for current development. The project may use deprecated symbols and illustrate technologies and techniques that are no longer recommended.
Skeleton.sdef
<?xml version="1.0" encoding="UTF-8"?> |
<!DOCTYPE dictionary SYSTEM "file://localhost/System/Library/DTDs/sdef.dtd"> |
<!-- |
File: Skeleton.sdef |
Abstract: Starting sdef for a scriptable application. |
Version: 1.0 |
Disclaimer: IMPORTANT: This Apple software is supplied to you by |
Apple Inc. ("Apple") in consideration of your agreement to the |
following terms, and your use, installation, modification or |
redistribution of this Apple software constitutes acceptance of these |
terms. If you do not agree with these terms, please do not use, |
install, modify or redistribute this Apple software. |
In consideration of your agreement to abide by the following terms, and |
subject to these terms, Apple grants you a personal, non-exclusive |
license, under Apple's copyrights in this original Apple software (the |
"Apple Software"), to use, reproduce, modify and redistribute the Apple |
Software, with or without modifications, in source and/or binary forms; |
provided that if you redistribute the Apple Software in its entirety and |
without modifications, you must retain this notice and the following |
text and disclaimers in all such redistributions of the Apple Software. |
Neither the name, trademarks, service marks or logos of Apple Inc. |
may be used to endorse or promote products derived from the Apple |
Software without specific prior written permission from Apple. Except |
as expressly stated in this notice, no other rights or licenses, express |
or implied, are granted by Apple herein, including but not limited to |
any patent rights that may be infringed by your derivative works or by |
other works in which the Apple Software may be incorporated. |
The Apple Software is provided by Apple on an "AS IS" basis. APPLE |
MAKES NO WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION |
THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS |
FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND |
OPERATION ALONE OR IN COMBINATION WITH YOUR PRODUCTS. |
IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL |
OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, |
MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED |
AND WHETHER UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), |
STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN ADVISED OF THE |
POSSIBILITY OF SUCH DAMAGE. |
Copyright (C) 2008 Apple Inc. All Rights Reserved. |
--> |
<dictionary> |
<!-- |
STANDARD SUITE |
--> |
<suite name="Standard Suite" code="core" |
description="Common classes and commands for all applications."> |
<cocoa name="NSCoreSuite"/> |
<command name="open" code="aevtodoc" |
description="Open a document."> |
<direct-parameter description="The file(s) to be opened."> |
<type type="file"/> |
<type type="file" list="yes"/> |
</direct-parameter> |
<!-- |
According to TN2106, 'open' should return the resulting document |
object. However, the Cocoa implementation does not do this yet. |
<result type="specifier"/> |
--> |
</command> |
<enumeration name="save options" code="savo"> |
<enumerator name="yes" code="yes " description="Save the file."/> |
<enumerator name="no" code="no " description="Do not save the file."/> |
<enumerator name="ask" code="ask " |
description="Ask the user whether or not to save the file."/> |
</enumeration> |
<command name="close" code="coreclos" description="Close a document."> |
<cocoa class="NSCloseCommand"/> |
<direct-parameter type="specifier" |
description="the document(s) or window(s) to close."/> |
<parameter name="saving" code="savo" type="save options" optional="yes" |
description="Whether or not changes should be saved before closing."> |
<cocoa key="SaveOptions"/> |
</parameter> |
<parameter name="saving in" code="kfil" type="file" optional="yes" |
description="The file in which to save the document."> |
<cocoa key="File"/> |
</parameter> |
</command> |
<command name="save" code="coresave" description="Save a document."> |
<direct-parameter type="specifier" |
description="The document(s) or window(s) to save."/> |
<parameter name="in" code="kfil" type="file" optional="yes" |
description="The file in which to save the document."> |
<cocoa key="File"/> |
</parameter> |
<parameter name="as" code="fltp" type="text" optional="yes" |
description="The type of file to save."> |
<cocoa key="FileType"/> |
</parameter> |
</command> |
<enumeration name="printing error handling" code="enum"> |
<enumerator name="standard" code="lwst" |
description="Standard PostScript error handling"/> |
<enumerator name="detailed" code="lwdt" |
description="print a detailed report of PostScript errors"/> |
</enumeration> |
<record-type name="print settings" code="pset"> |
<property name="copies" code="lwcp" type="integer" |
description="the number of copies of a document to be printed"> |
<cocoa key="NSCopies"/> |
</property> |
<property name="collating" code="lwcl" type="boolean" |
description="Should printed copies be collated?"> |
<cocoa key="NSMustCollate"/> |
</property> |
<property name="starting page" code="lwfp" type="integer" |
description="the first page of the document to be printed"> |
<cocoa key="NSFirstPage"/> |
</property> |
<property name="ending page" code="lwlp" type="integer" |
description="the last page of the document to be printed"> |
<cocoa key="NSLastPage"/> |
</property> |
<property name="pages across" code="lwla" type="integer" |
description="number of logical pages laid across a physical page"> |
<cocoa key="NSPagesAcross"/> |
</property> |
<property name="pages down" code="lwld" type="integer" |
description="number of logical pages laid out down a physical page"> |
<cocoa key="NSPagesDown"/> |
</property> |
<property name="error handling" code="lweh" type="printing error handling" |
description="how errors are handled"> |
<cocoa key="NSDetailedErrorReporting"/> |
</property> |
<property name="fax number" code="faxn" type="text" |
description="for fax number"> |
<cocoa key="NSFaxNumber"/> |
</property> |
<property name="target printer" code="trpr" type="text" |
description="for target printer"> |
<cocoa key="NSPrinterName"/> |
</property> |
</record-type> |
<command name="print" code="aevtpdoc" description="Print a document."> |
<direct-parameter |
description="The file(s), document(s), or window(s) to be printed."> |
<type type="file" list="yes"/> |
<type type="specifier"/> |
</direct-parameter> |
<parameter name="with properties" code="prdt" type="print settings" optional="yes" |
description="The print settings to use."> |
<cocoa key="PrintSettings"/> |
</parameter> |
<parameter name="print dialog" code="pdlg" type="boolean" optional="yes" |
description="Should the application show the print dialog?"> |
<cocoa key="ShowPrintDialog"/> |
</parameter> |
</command> |
<command name="quit" code="aevtquit" description="Quit the application."> |
<cocoa class="NSQuitCommand"/> |
<parameter name="saving" code="savo" type="save options" optional="yes" |
description="Whether or not changed documents should be saved before closing."> |
<cocoa key="SaveOptions"/> |
</parameter> |
</command> |
<command name="count" code="corecnte" |
description="Return the number of elements of a particular class within an object."> |
<cocoa class="NSCountCommand"/> |
<direct-parameter type="specifier" |
description="the object whose elements are to be counted"/> |
<parameter name="each" code="kocl" type="type" optional="yes" |
description="The class of objects to be counted."> |
<cocoa key="ObjectClass"/> |
</parameter> |
<result type="integer" description="the number of elements"/> |
</command> |
<command name="delete" code="coredelo" description="Delete an object."> |
<cocoa class="NSDeleteCommand"/> |
<direct-parameter type="specifier" description="the object to delete"/> |
</command> |
<command name="duplicate" code="coreclon" |
description="Copy object(s) and put the copies at a new location."> |
<cocoa class="NSCloneCommand"/> |
<direct-parameter type="specifier" |
description="the object(s) to duplicate"/> |
<parameter name="to" code="insh" type="location specifier" optional="yes" |
description="The location for the new object(s)."> |
<cocoa key="ToLocation"/> |
</parameter> |
<parameter name="with properties" code="prdt" type="record" optional="yes" |
description="Properties to be set in the new duplicated object(s)."> |
<cocoa key="WithProperties"/> |
</parameter> |
<result type="specifier" description="the duplicated object(s)"/> |
</command> |
<command name="exists" code="coredoex" description="Verify if an object exists."> |
<cocoa class="NSExistsCommand"/> |
<direct-parameter type="any" description="the object in question"/> |
<result type="boolean" description="true if it exists, false if not"/> |
</command> |
<command name="make" code="corecrel" description="Make a new object."> |
<cocoa class="NSCreateCommand"/> |
<parameter name="new" code="kocl" type="type" |
description="The class of the new object."> |
<cocoa key="ObjectClass"/> |
</parameter> |
<parameter name="at" code="insh" type="location specifier" optional="yes" |
description="The location at which to insert the object."> |
<cocoa key="Location"/> |
</parameter> |
<parameter name="with data" code="data" type="any" optional="yes" |
description="The initial contents of the object."> |
<cocoa key="ObjectData"/> |
</parameter> |
<parameter name="with properties" code="prdt" type="record" optional="yes" |
description="The initial values for properties of the object."> |
<cocoa key="KeyDictionary"/> |
</parameter> |
<result type="specifier" description="to the new object"/> |
</command> |
<command name="move" code="coremove" description="Move object(s) to a new location."> |
<cocoa class="NSMoveCommand"/> |
<direct-parameter type="specifier" description="the object(s) to move"/> |
<parameter name="to" code="insh" type="location specifier" |
description="The new location for the object(s)."> |
<cocoa key="ToLocation"/> |
</parameter> |
<result type="specifier" description="the moved object(s)"/> |
</command> |
<class name="application" code="capp" |
description="The application's top-level scripting object."> |
<cocoa class="NSApplication"/> |
<property name="name" code="pnam" type="text" access="r" |
description="The name of the application."/> |
<property name="frontmost" code="pisf" type="boolean" access="r" |
description="Is this the frontmost (active) application?"> |
<cocoa key="isActive"/> |
</property> |
<property name="version" code="vers" type="text" access="r" |
description="The version of the application."/> |
<element type="document"> |
<cocoa key="orderedDocuments"/> |
</element> |
<element type="window" access="r"> |
<cocoa key="orderedWindows"/> |
</element> |
<responds-to name="open"> |
<cocoa method="handleOpenScriptCommand:"/> |
</responds-to> |
<responds-to name="print"> |
<cocoa method="handlePrintScriptCommand:"/> |
</responds-to> |
<responds-to name="quit"> |
<cocoa method="handleQuitScriptCommand:"/> |
</responds-to> |
</class> |
<class name="document" code="docu" description="A document."> |
<cocoa class="NSDocument"/> |
<property name="name" code="pnam" type="text" access="r" |
description="The document's name."> |
<cocoa key="displayName"/> |
</property> |
<property name="modified" code="imod" type="boolean" access="r" |
description="Has the document been modified since the last save?"> |
<cocoa key="isDocumentEdited"/> |
</property> |
<property name="file" code="file" type="file" access="r" |
description="The document's location on disk."> |
<cocoa key="fileURL"/> |
</property> |
<responds-to name="close"> |
<cocoa method="handleCloseScriptCommand:"/> |
</responds-to> |
<responds-to name="print"> |
<cocoa method="handlePrintScriptCommand:"/> |
</responds-to> |
<responds-to name="save"> |
<cocoa method="handleSaveScriptCommand:"/> |
</responds-to> |
</class> |
<class name="window" code="cwin" description="A window."> |
<cocoa class="NSWindow"/> |
<property name="name" code="pnam" type="text" access="r" |
description="The full title of the window."> |
<cocoa key="title"/> |
</property> |
<property name="id" code="ID " type="integer" access="r" |
description="The unique identifier of the window."> |
<cocoa key="uniqueID"/> |
</property> |
<property name="index" code="pidx" type="integer" |
description="The index of the window, ordered front to back."> |
<cocoa key="orderedIndex"/> |
</property> |
<property name="bounds" code="pbnd" type="rectangle" |
description="The bounding rectangle of the window."> |
<cocoa key="boundsAsQDRect"/> |
</property> |
<property name="closeable" code="hclb" type="boolean" access="r" |
description="Whether the window has a close box."> |
<cocoa key="hasCloseBox"/> |
</property> |
<property name="minimizable" code="ismn" type="boolean" access="r" |
description="Whether the window can be minimized."> |
<cocoa key="isMiniaturizable"/> |
</property> |
<property name="minimized" code="pmnd" type="boolean" |
description="Whether the window is currently minimized."> |
<cocoa key="isMiniaturized"/> |
</property> |
<property name="resizable" code="prsz" type="boolean" access="r" |
description="Whether the window can be resized."> |
<cocoa key="isResizable"/> |
</property> |
<property name="visible" code="pvis" type="boolean" |
description="Whether the window is currently visible."> |
<cocoa key="isVisible"/> |
</property> |
<property name="zoomable" code="iszm" type="boolean" access="r" |
description="Whether the window can be zoomed."> |
<cocoa key="isZoomable"/> |
</property> |
<property name="zoomed" code="pzum" type="boolean" |
description="Whether the window is currently zoomed."> |
<cocoa key="isZoomed"/> |
</property> |
<property name="document" code="docu" type="document" access="r" |
description="The document whose contents are being displayed in the window."/> |
<responds-to name="close"> |
<cocoa method="handleCloseScriptCommand:"/> |
</responds-to> |
<responds-to name="print"> |
<cocoa method="handlePrintScriptCommand:"/> |
</responds-to> |
<responds-to name="save"> |
<cocoa method="handleSaveScriptCommand:"/> |
</responds-to> |
</class> |
</suite> |
<!-- |
TEXT SUITE |
--> |
<suite name="Text Suite" code="TEXT" |
description="A set of basic classes for text processing."> |
<cocoa name="NSTextSuite"/> |
<value-type name="color" code="cRGB"> |
<cocoa class="NSColor"/> |
</value-type> |
<class name="rich text" plural="rich text" code="ricT" |
description="Rich (styled) text"> |
<cocoa class="NSTextStorage"/> |
<!-- this "type" element and the ones that follow, while they |
contradict the DTD, are NOT errors. Cocoa Scripting in 10.4 |
uses them to accomplish certain type conversions. --> |
<type type="text"/> |
<property name="color" code="colr" type="color" |
description="The color of the first character."> |
<cocoa key="foregroundColor"/> |
</property> |
<property name="font" code="font" type="text" |
description="The name of the font of the first character."> |
<cocoa key="fontName"/> |
</property> |
<property name="size" code="ptsz" type="integer" |
description="The size in points of the first character."> |
<cocoa key="fontSize"/> |
</property> |
<element type="character"/> |
<element type="paragraph"/> |
<element type="word"/> |
<element type="attribute run"/> |
<element type="attachment"/> |
</class> |
<class name="character" code="cha " |
description="This subdivides the text into characters."> |
<cocoa class="NSTextStorage"/> |
<type type="text"/> |
<property name="color" code="colr" type="color" |
description="The color of the first character."> |
<cocoa key="foregroundColor"/> |
</property> |
<property name="font" code="font" type="text" |
description="The name of the font of the first character."> |
<cocoa key="fontName"/> |
</property> |
<property name="size" code="ptsz" type="integer" |
description="The size in points of the first character."> |
<cocoa key="fontSize"/> |
</property> |
<element type="character"/> |
<element type="paragraph"/> |
<element type="word"/> |
<element type="attribute run"/> |
<element type="attachment"/> |
</class> |
<class name="paragraph" code="cpar" |
description="This subdivides the text into paragraphs."> |
<cocoa class="NSTextStorage"/> |
<type type="text"/> |
<property name="color" code="colr" type="color" |
description="The color of the first character."> |
<cocoa key="foregroundColor"/> |
</property> |
<property name="font" code="font" type="text" |
description="The name of the font of the first character."> |
<cocoa key="fontName"/> |
</property> |
<property name="size" code="ptsz" type="integer" |
description="The size in points of the first character."> |
<cocoa key="fontSize"/> |
</property> |
<element type="character"/> |
<element type="paragraph"/> |
<element type="word"/> |
<element type="attribute run"/> |
<element type="attachment"/> |
</class> |
<class name="word" code="cwor" |
description="This subdivides the text into words."> |
<cocoa class="NSTextStorage"/> |
<type type="text"/> |
<property name="color" code="colr" type="color" |
description="The color of the first character."> |
<cocoa key="foregroundColor"/> |
</property> |
<property name="font" code="font" type="text" |
description="The name of the font of the first character."> |
<cocoa key="fontName"/> |
</property> |
<property name="size" code="ptsz" type="integer" |
description="The size in points of the first character."> |
<cocoa key="fontSize"/> |
</property> |
<element type="character"/> |
<element type="paragraph"/> |
<element type="word"/> |
<element type="attribute run"/> |
<element type="attachment"/> |
</class> |
<class name="attribute run" code="catr" |
description="This subdivides the text into chunks that all have the same attributes."> |
<cocoa class="NSTextStorage"/> |
<type type="text"/> |
<property name="color" code="colr" type="color" |
description="The color of the first character."> |
<cocoa key="foregroundColor"/> |
</property> |
<property name="font" code="font" type="text" |
description="The name of the font of the first character."> |
<cocoa key="fontName"/> |
</property> |
<property name="size" code="ptsz" type="integer" |
description="The size in points of the first character."> |
<cocoa key="fontSize"/> |
</property> |
<element type="character"/> |
<element type="paragraph"/> |
<element type="word"/> |
<element type="attribute run"/> |
<element type="attachment"/> |
</class> |
<class name="attachment" code="atts" inherits="rich text" |
description="Represents an inline text attachment. This class is used mainly for make commands."> |
<cocoa class="NSAttachmentTextStorage"/> |
<property name="file name" code="atfn" type="text" |
description="The path to the file for the attachment"> |
<cocoa key="filename"/> |
</property> |
</class> |
</suite> |
</dictionary> |
Copyright © 2008 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2008-05-30