* Use an array for keeping track of observers. This means that observers which...
[adiumx.git] / Resources / Adium.sdef
blob9952046cbe00c0fe47a6bcce55b7d409a2b2a5df
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE dictionary SYSTEM "file://localhost/System/Library/DTDs/sdef.dtd">
3 <dictionary title="Adium Terminology">
4 <suite name="Adium Suite" code="Adum" description="AppleScript support for Adium">
5 <value-type name="TIFF picture" code="TIFF">
6 <cocoa class="NSData"/>
7 </value-type>
8 <class name="application" code="capp" description="Adium's application class">
9 <cocoa class="AIApplication" />
10 <property name="name" code="pnam" type="text" access="r" description="The name of the application."/>
11 <property name="frontmost" code="pisf" type="boolean" access="r" description="Is this the frontmost (active) application?">
12 <cocoa key="isActive"/>
13 </property>
14 <property name="version" code="vers" type="text" access="r" description="The version of the application."/>
15 <property name="active chat" code="Pcht" type="chat" access="r" description="The frontmost chat."/>
17 <property name="global status" code="Pgst" type="status" access="rw" description="The global status. This is the status that the most online accounts are currently using; it will only be an offline status if no accounts are online. Setting it changes the status for all accounts.">
18 <cocoa key="globalStatus"/>
19 </property>
21 <element type="account" />
22 <element type="contact" />
23 <element type="service" />
24 <element type="window">
25 <cocoa key="orderedWindows" />
26 </element>
27 <element type="chat window" />
28 <element type="chat" />
29 <element type="status" />
31 <responds-to name="go online">
32 <cocoa method="scriptingGoOnline:"/>
33 </responds-to>
34 <responds-to name="go available">
35 <cocoa method="scriptingGoAvailable:"/>
36 </responds-to>
37 <responds-to name="go offline">
38 <cocoa method="scriptingGoOffline:"/>
39 </responds-to>
40 <responds-to name="go away">
41 <cocoa method="scriptingGoAway:"/>
42 </responds-to>
43 <responds-to name="go invisible">
44 <cocoa method="scriptingGoInvisible:"/>
45 </responds-to>
46 </class>
47 <class name="service" code="Csrv" description="An Adium service (a.k.a. chat protocol)">
48 <cocoa class="AIService" />
49 <property name="name" code="pnam" type="text" access="r" description="The name of the service.">
50 <cocoa key="serviceID" />
51 </property>
52 <property name="image" code="Pimg" type="TIFF picture" access="r" description="The image associated with this service." />
53 <element type="account" />
54 </class>
55 <class name="window" code="cwin" description="A window in Adium">
56 <cocoa class="NSWindow" />
57 <property name="name" code="pnam" type="text" access="r" description="The title of this window">
58 <cocoa key="scriptingTitle" />
59 </property>
60 <property name="id" code="ID " type="integer" access="r" description="The unique identifier of the window.">
61 <cocoa key="uniqueID"/>
62 </property>
63 <property name="index" code="pidx" type="integer" description="The index of the window, ordered front to back.">
64 <cocoa key="orderedIndex"/>
65 </property>
66 <property name="bounds" code="pbnd" type="rectangle" description="The bounding rectangle of the window.">
67 <cocoa key="boundsAsQDRect"/>
68 </property>
69 <property name="closeable" code="hclb" type="boolean" access="r" description="Whether the window has a close box.">
70 <cocoa key="hasCloseBox"/>
71 </property>
72 <property name="minimizable" code="ismn" type="boolean" access="r" description="Whether the window can be minimized.">
73 <cocoa key="isMiniaturizable"/>
74 </property>
75 <property name="minimized" code="pmnd" type="boolean" description="Whether the window is currently minimized.">
76 <cocoa key="isMiniaturized"/>
77 </property>
78 <property name="resizable" code="prsz" type="boolean" access="r" description="Whether the window can be resized.">
79 <cocoa key="isResizable"/>
80 </property>
81 <property name="visible" code="pvis" type="boolean" description="Whether the window is currently visible.">
82 <cocoa key="isVisible"/>
83 </property>
84 <property name="zoomable" code="iszm" type="boolean" access="r" description="Whether the window can be zoomed.">
85 <cocoa key="isZoomable"/>
86 </property>
87 <property name="zoomed" code="pzum" type="boolean" description="Whether the window is currently zoomed.">
88 <cocoa key="isZoomed"/>
89 </property>
90 </class>
91 <class name="chat window" code="Ctwn" description="A window that contains chats" inherits="window">
92 <cocoa class="AIMessageWindow" />
93 <element type="chat" />
94 <responds-to name="close">
95 <cocoa method="handleCloseScriptCommand:"/>
96 </responds-to>
97 </class>
98 <class name="chat" code="Chat" description="A chat in Adium">
99 <cocoa class="AIChat" />
100 <property name="name" code="pnam" type="text" access="r" description="The name of the chat" />
101 <property name="ID" code="ID " type="text" access="r" description="The unique identifier of the chat.">
102 <cocoa key="uniqueChatID"/>
103 </property>
104 <property name="account" code="Cact" type="account" access="r" description="The account associated with this chat">
105 <cocoa key="scriptingAccount" />
106 </property>
107 <property name="date opened" code="CDop" type="date" access="r" description="The date ad time at which this chat was opened">
108 <cocoa key="dateOpened" />
109 </property>
111 <property name="index" code="pidx" type="integer" access="r" description="The index of this tab in the chat window" />
112 <property name="window" code="cwin" type="window" access="r" description="The window this chat is in" />
113 <element type="contact">
114 <cocoa key="containedObjects" />
115 </element>
117 <responds-to name="close">
118 <cocoa method="handleCloseScriptCommand:"/>
119 </responds-to>
120 <responds-to name="send">
121 <cocoa method="sendScriptCommand:"/>
122 </responds-to>
123 </class>
124 <enumeration name="status types" code="Esta">
125 <enumerator name="offline" code="Soff" description="Account is offline."/>
126 <enumerator name="available" code="Sonl" description="Account is online."/>
127 <enumerator name="away" code="Sawy" description="Account is away."/>
128 <enumerator name="invisible" code="Sinv" description="Account is invisible."/>
129 </enumeration>
130 <class name="account" code="Cact" description="An account in Adium">
131 <cocoa class="AIAccount" />
132 <property name="id" code="ID " type="integer" access="r" description="The unique ID associated with this account">
133 <cocoa key="scriptingInternalObjectID" />
134 </property>
135 <property name="name" code="pnam" type="text" access="r" description="The name of this account">
136 <cocoa key="scriptingUID" />
137 </property>
138 <property name="display name" code="Pdnm" type="text" access="rw" description="The display name of this account"/>
139 <property name="service" code="Csrv" type="service" access="r" description="The service this account is registered under" />
140 <property name="enabled" code="Penb" type="boolean" access="r" description="Whether or not this account is enabled" />
141 <property name="host" code="Phst" type="text" access="r" description="The host this account is connected to" />
142 <property name="port" code="Pprt" type="integer" access="r" description="The port this account is connected to" />
143 <property name="status" code="Csts" type="status" access="rw" description="The current status on the account.">
144 <cocoa key="statusState" />
145 </property>
146 <property name="status type" code="Psts" type="status types" access="rw" description="The type of the current status. Setting this creates a temporary status.">
147 <cocoa key="scriptingStatusType" />
148 </property>
149 <property name="status message" code="Pasm" type="rich text" access="rw" description="The message associated with the current status. Setting this creates a temporary status.">
150 <cocoa key="scriptingStatusMessage" />
151 </property>
152 <property name="image" code="Pimg" type="TIFF picture" access="rw" description="The image associated with this account.">
153 <cocoa key="userIconData" />
154 </property>
155 <element type="contact" />
157 <responds-to name="go online">
158 <cocoa method="scriptingGoOnline:"/>
159 </responds-to>
160 <responds-to name="go available">
161 <cocoa method="scriptingGoAvailable:"/>
162 </responds-to>
163 <responds-to name="go offline">
164 <cocoa method="scriptingGoOffline:"/>
165 </responds-to>
166 <responds-to name="go away">
167 <cocoa method="scriptingGoAway:"/>
168 </responds-to>
169 <responds-to name="go invisible">
170 <cocoa method="scriptingGoInvisible:"/>
171 </responds-to>
172 </class>
173 <class name="contact" code="Ccnt" description="A contact">
174 <cocoa class="AIListContact" />
175 <property name="account" code="Pacc" type="account" access="r" description="The account associated with this contact" />
176 <property name="name" code="pnam" type="text" access="r" description="The name of this contact">
177 <cocoa key="UID" />
178 </property>
179 <property name="display name" code="Pdnm" type="text" access="rw" description="The display name or alias associated with this contact." />
180 <property name="idle time" code="Pidl" type="integer" access="r" description="The duration this contact has been idle."/>
181 <property name="notes" code="Pnts" type="text" access="rw" description="The user-defined notes for this contact."/>
182 <property name="idle time" code="Pidl" type="integer" access="r" description="The time this contact has been idle." />
183 <property name="status type" code="Psts" type="status types" access="r" description="The current status of this contact">
184 <cocoa key="scriptingStatusType" />
185 </property>
186 <property name="status message" code="Pstm" type="rich text" access="r" description="The custom status message for this contact.">
187 <cocoa key="scriptingStatusMessage" />
188 </property>
189 <property name="image" code="Pimg" type="TIFF picture" access="rw" description="The image associated with this contact.">
190 <cocoa key="userIconData" />
191 </property>
192 </class>
193 <class name="status" plural="statuses" code="Csts" description="A saved status in Adium">
194 <cocoa class="AIStatus" />
195 <property name="title" code="pnam" type="text" access="r" description="The title of the status.">
196 <cocoa key="scriptingTitle" />
197 </property>
198 <property name="status type" code="Psts" type="status types" access="r" description="The type of this status.">
199 <cocoa key="statusTypeApplescript"/>
200 </property>
201 <property name="message" code="Pstm" type="rich text" access="r" description="The custom status message.">
202 <cocoa key="scriptingMessage"/>
203 </property>
204 <property name="autoreply" code="Paut" type="rich text" access="r" description="The message to auto reply">
205 <cocoa key="scriptingAutoreply"/>
206 </property>
207 <property name="id" code="ID " type="integer" access="r" description="The unique ID of the status">
208 <cocoa key="uniqueStatusID"/>
209 </property>
210 </class>
211 <command name="close" code="coreclos" description="Close a document.">
212 <cocoa class="NSCloseCommand"/>
213 <direct-parameter type="specifier" description="the document(s) or window(s) to close."/>
214 </command>
216 <command name="go online" code="Adumgoon" description="Changes the status of an account.">
217 <cocoa class="NSScriptCommand" />
218 <direct-parameter description="The account that should connect" type="account" />
219 <parameter name="with message" code="Pmsg" description="The custom status message." type="text" optional="yes">
220 <cocoa key="WithMessage"/>
221 </parameter>
222 </command>
223 <command name="go available" code="Adumgoav" description="Changes the status of an account.">
224 <cocoa class="NSScriptCommand" />
225 <direct-parameter description="The account that should become available" type="account" />
226 <parameter name="with message" code="Pmsg" description="The custom status message." type="text" optional="yes">
227 <cocoa key="WithMessage"/>
228 </parameter>
229 </command>
230 <command name="go offline" code="Adumgoof" description="Changes the status of an account.">
231 <cocoa class="NSScriptCommand" />
232 <direct-parameter description="The account that should disconnect" type="account" />
233 <parameter name="with message" code="Pmsg" description="The custom status message." type="text" optional="yes">
234 <cocoa key="WithMessage"/>
235 </parameter>
236 </command>
237 <command name="go away" code="Adumgoaw" description="Changes the status of an account.">
238 <cocoa class="NSScriptCommand" />
239 <direct-parameter description="The account that should go away" type="account" />
240 <parameter name="with message" code="Pmsg" description="The custom status message." type="text" optional="yes">
241 <cocoa key="WithMessage"/>
242 </parameter>
243 </command>
244 <command name="go invisible" code="Adumgoin" description="Changes the status of an account.">
245 <cocoa class="NSScriptCommand" />
246 <direct-parameter description="The account that should become invisible" type="account" />
247 </command>
248 <command name="count" code="corecnte" description="Return the number elements of a particular class within an object.">
249 <cocoa class="NSCountCommand"/>
250 <direct-parameter description="the object whose elements are to be counted" type="specifier"/>
251 <parameter name="each" code="kocl" description="The class of objects to be counted." type="type" optional="yes">
252 <cocoa key="ObjectClass"/>
253 </parameter>
254 <result description="the number of elements" type="integer"/>
255 </command>
256 <command name="delete" code="coredelo" description="Delete an object.">
257 <cocoa class="NSDeleteCommand"/>
258 <direct-parameter description="the object to delete" type="specifier"/>
259 </command>
260 <command name="exists" code="coredoex" description="Verify if an object exists.">
261 <cocoa class="NSExistsCommand"/>
262 <direct-parameter description="the object in question" type="specifier"/>
263 <result description="true if it exists, false if not" type="boolean"/>
264 </command>
265 <command name="make" code="corecrel" description="Make a new object.">
266 <cocoa class="AICreateCommand"/>
267 <parameter name="new" code="kocl" description="The class of the new object." type="type">
268 <cocoa key="ObjectClass"/>
269 </parameter>
270 <parameter name="at" code="insh" description="The location at which to insert the object." type="location specifier" optional="yes">
271 <cocoa key="Location"/>
272 </parameter>
273 <parameter name="with data" code="data" description="The initial data for the object." type="any" optional="yes">
274 <cocoa key="ObjectData"/>
275 </parameter>
276 <parameter name="with properties" code="prdt" description="The initial values for properties of the object." type="record" optional="yes">
277 <cocoa key="KeyDictionary"/>
278 </parameter>
279 <parameter name="with contacts" code="Pwct" description="The contacts needed for creating a chat or group." type="list of contact" optional="yes">
280 <cocoa key="withContacts"/>
281 </parameter>
282 <parameter name="new chat window" code="Pncw" description="If this is true, then a new chat window will be created when creating a chat." type="boolean" optional="yes">
283 <cocoa key="newChatWindow"/>
284 </parameter>
285 <result description="to the new object" type="specifier"/>
286 </command>
288 <command name="move" code="coremove" description="Move object(s) to a new location.">
289 <cocoa class="AIMoveCommand"/>
290 <direct-parameter type="specifier" description="the object(s) to move"/>
291 <parameter name="to" code="insh" type="location specifier" description="The new location for the object(s).">
292 <cocoa key="ToLocation"/>
293 </parameter>
294 <result type="specifier" description="the moved object(s)"/>
295 </command>
297 <command name="send" code="Adumsend" description="Send text or a file to some contact.">
298 <cocoa class="NSScriptCommand"/>
299 <direct-parameter type="chat" description="The chat that mimics the entry... yada yada"/>
300 <parameter name="message" code="Smsg" description="The message to send" type="text" optional="yes">
301 <cocoa key="message"/>
302 </parameter>
303 <parameter name="with file" code="Sfil" description="A file to attach" type="file" optional="yes">
304 <cocoa key="withFile"/>
305 </parameter>
306 </command>
307 </suite>
309 <suite name="Text Suite" code="TEXT" description="A set of basic classes for text processing.">
310 <cocoa name="NSTextSuite"/>
312 <value-type name="color" code="cRGB">
313 <cocoa class="NSColor"/>
314 </value-type>
316 <class name="rich text" plural="rich text" code="ctxt" description="Rich (styled) text">
317 <cocoa class="NSTextStorage"/>
318 <!-- this "type" element and the ones that follow, while they
319 contradict the DTD, are NOT errors. Cocoa Scripting in 10.4 uses them to accomplish certain type conversions. -->
320 <type type="text"/>
321 <property name="color" code="colr" type="color" description="The color of the first character.">
322 <cocoa key="foregroundColor"/>
323 </property>
324 <property name="font" code="font" type="text" description="The name of the font of the first character.">
325 <cocoa key="fontName"/>
326 </property>
327 <property name="size" code="ptsz" type="integer" description="The size in points of the first character.">
328 <cocoa key="fontSize"/>
329 </property>
330 <element type="character"/>
331 <element type="paragraph"/>
332 <element type="word"/>
333 <element type="attribute run"/>
334 <element type="attachment"/>
335 </class>
337 <class name="character" code="cha " description="This subdivides the text into characters.">
338 <cocoa class="NSTextStorage"/>
339 <type type="text"/>
340 <property name="color" code="colr" type="color" description="The color of the first character.">
341 <cocoa key="foregroundColor"/>
342 </property>
343 <property name="font" code="font" type="text" description="The name of the font of the first character.">
344 <cocoa key="fontName"/>
345 </property>
346 <property name="size" code="ptsz" type="integer" description="The size in points of the first character.">
347 <cocoa key="fontSize"/>
348 </property>
349 <element type="character"/>
350 <element type="paragraph"/>
351 <element type="word"/>
352 <element type="attribute run"/>
353 <element type="attachment"/>
354 </class>
356 <class name="paragraph" code="cpar" description="This subdivides the text into paragraphs.">
357 <cocoa class="NSTextStorage"/>
358 <type type="text"/>
359 <property name="color" code="colr" type="color" description="The color of the first character.">
360 <cocoa key="foregroundColor"/>
361 </property>
362 <property name="font" code="font" type="text" description="The name of the font of the first character.">
363 <cocoa key="fontName"/>
364 </property>
365 <property name="size" code="ptsz" type="integer" description="The size in points of the first character.">
366 <cocoa key="fontSize"/>
367 </property>
368 <element type="character"/>
369 <element type="paragraph"/>
370 <element type="word"/>
371 <element type="attribute run"/>
372 <element type="attachment"/>
373 </class>
375 <class name="word" code="cwor" description="This subdivides the text into words.">
376 <cocoa class="NSTextStorage"/>
377 <type type="text"/>
378 <property name="color" code="colr" type="color" description="The color of the first character.">
379 <cocoa key="foregroundColor"/>
380 </property>
381 <property name="font" code="font" type="text" description="The name of the font of the first character.">
382 <cocoa key="fontName"/>
383 </property>
384 <property name="size" code="ptsz" type="integer" description="The size in points of the first character.">
385 <cocoa key="fontSize"/>
386 </property>
387 <element type="character"/>
388 <element type="paragraph"/>
389 <element type="word"/>
390 <element type="attribute run"/>
391 <element type="attachment"/>
392 </class>
394 <class name="attribute run" code="catr" description="This subdivides the text into chunks that all have the same attributes.">
395 <cocoa class="NSTextStorage"/>
396 <type type="text"/>
397 <property name="color" code="colr" type="color" description="The color of the first character.">
398 <cocoa key="foregroundColor"/>
399 </property>
400 <property name="font" code="font" type="text" description="The name of the font of the first character.">
401 <cocoa key="fontName"/>
402 </property>
403 <property name="size" code="ptsz" type="integer" description="The size in points of the first character.">
404 <cocoa key="fontSize"/>
405 </property>
406 <element type="character"/>
407 <element type="paragraph"/>
408 <element type="word"/>
409 <element type="attribute run"/>
410 <element type="attachment"/>
411 </class>
413 <class name="attachment" code="atts" inherits="rich text" description="Represents an inline text attachment. This class is used mainly for make commands.">
414 <cocoa class="NSAttachmentTextStorage"/>
415 <property name="file name" code="atfn" type="text" description="The path to the file for the attachment">
416 <cocoa key="filename"/>
417 </property>
418 </class>
420 </suite>
422 </dictionary>