I'm working on an AppleScript-ObjC application that generates an email message in Mail. My UI has three IBOutlets (two text fields and a pop-up menu) where users can enter text that will be filled into the email. I can save the values from those outlets into variables, but when I try to use those variables inside my tell application "Mail" statement, I get this error:
AppleEvents: received mach msg which wasn't complex type as expected in getMemoryReference.
And here's what prints in the log:
(
"<NSAppleEventDescriptor: 'ctxt'>",
": ",
"Status: MyProjectName, Part No.: 12345"
)
It seems like there's a difference between ctxt (which I think is an NSString) and an AppleScript string, but I can't figure out how to convert to an AppleScript string. Please let me know how if you do.
Here's the code for the whole function:
-- IBOutlets
property theWindow : missing value
property statusMenu : missing value
property partNumberField : missing value
property projectNameField : missing value
on generateButtonClicked:sender
set projectName to projectNameField's stringValue() as text
set partNumber to partNumberField's stringValue() as text
set status to statusMenu's objectValueOfSelectedItem as text
set theSubject to (status & ": " & projectName & ", Part No.: " & partNumber) as string
log (class of theSubject) & ": " & theSubject
tell application "Mail"
try
set newMessage to make new outgoing message with properties {subject: theSubject, theContent: "", visible: true}
on error e
log e
end try
activate
end tell
end generateButtonClicked: