On 11/3/00 1:41 PM, I wrote:
> At Allen Watson's request, I am copying the entire content of my previous
> email (Re: Curious AppleScript omissions) here so it's more easily
> findable in the archives. I am now prefacing all that with a report on the
> bugs and omissions in OE scripting which were fixed in Entourage.
Here's an addendum to the list I sent on Friday:
The term 'note' is now taken by the new note class in Entourage. So there's
a conflict with the parameter 'with icon note' from the display dialog osax.
The icon won't show up, although nothing errors. The way around this is to
always use the alternative 'with icon 1'. Then the icon displays.
As in OE, although 'whose' clauses with POP account and IMAP account classes
_are_ implemented, it appears as if they aren't: it errors. Instead, you
must use the 'where its' syntax:
get every POP account where its email address is "[EMAIL PROTECTED]"
To have all this in one place (well, two, including this addendum)
searchable in the archives, the following 'curiosities' are as noted by Bill
Cheeseman:
There is no 'remind date and time' of event, although there is of task.
You can't set 'due date' of task, which makes it somewhat pointless to have
task.
There is an AppleScript confusion between the class 'category' (the
application element) and the property 'category' which means you have to use
'its' or 'of [some object]' explicitly, and can't tell an object to get
'category'.
Finally, something that is not improper AppleScript, but can be confusing:
Almost all of us say
if "My Account" is in {"My Account", "My Other Account"}
and it works, so we think that this is proper syntax, but it isn't really.
'is in', and its obverse 'contains' are meant to have the same class on both
sides of the operator:
if {"My Account"} is in {"My Account", "My Other Account"} -- lists
if {"My Account", "My Other Account"} contains {"My Account"} -- lists
or
if "My" is in "My Account" --strings
if "My Account" contains "My" --strings
but AppleScript coerces string to list in the first example to make it work,
when it can.
However, if you write
set the contacts to {contact "Me", contact "You", contact "Him"}
if contact "Me" is in theContacts then display dialog "Yes"
you will get an error "Can't make contact id 23 into a vector."
(A vector is a sort of precursor of list, a type of list.)
You need to write:
if {contact "Me"} is in theContacts then display dialog "Yes"
There's no 'single contact to list' coercion, nor 'single message or folder
or custom view, etc. to list' coercion. Just thought you'd like to know.
--
Paul Berkowitz
--
To unsubscribe: <mailto:[EMAIL PROTECTED]>
To search the archives:
<http://www.mail-archive.com/entourage-talk%40lists.boingo.com/>