Mark,

I was having all kinds of problems with the write to and read from file method, mostly path issues. Don't forget I have to have this work in AS, VB and in RR in order to be of use to me on both Mac and Windows platforms.

And, I was not getting RR to read the file correctly from the hex data returned straight from the AS script.

Nothing else in my library writes to the users disk and I wanted to keep this consistent if I could.

So I looked into the clipboard info and found that AS and VB will convert the raw data into binary on the clipboard. So getting RR to just read the binary clipboard instead of the hex data seemed like the logical step. However paste was not working in RR correctly for me and after a while I thought maybe I was not copying correctly from AS. So, I looked up in the scripting additions library for clipboard where it does state:

set the clipboard to v : Place data on an application’s clipboard. Use inside a ‘tell’ block and activate the application first
set the clipboard to any : the data to place on the clipboard

the clipboard v : Return the contents of an application’s clipboard. Use in a ‘tell’ block after activating the application
the clipboard
[as type class] : the type of data desired
→ any : the data

clipboard info v : Return information about the clipboard
clipboard info
[for type class] : restricts to information about only this data type
→ list of list : a list of {data type, size} for each type of data on the clipboard

ANYWAY, after playing around all day and getting frustrated I decided to go back to my script that just pasted on the clipboard (Finder?) and do it different this time from within RR instead. It now works consistently without a paste in RR, but rather a clipboardData["image"] instead:

Applescript: (This successfully puts the artwork converted to binary on the clipboard every time, <name> and <playlist> are replaced.)
try
        tell application "iTunes"
set myHasArtwork to the artworks of track "<name>" of playlist "<playlist>"
                if myHasArtwork is not "" then
set myTrack to the (data of artwork 1 of track "<name>" of playlist "<playlist>") as picture
                        set the clipboard to myTrack as picture
                        return myTrack
                end if
        end tell
end try

Then in Revolution:
-- set up a correctly sized invisible image to store the data in and then use it's ID for my buttons and or other images

put the clipboardData["image"] into tTemp
put tTemp into img "Template"
put the id of img "Template" into theResult
put "Image ID:" && theResult into field "Sample"
-- Now put the new image into a new sized and locked image or set up for the icon of a btn etc.
put image id theResult into image "Album Artwork"

Well, after a long day, this is now working consistently and if I need to save the file I can now do it from within RR with a simple path instead of having to set up paths in AS and VB and RR.

Thank you for you help and suggestions,

Tom McGrath

On May 6, 2008, at 1:42 PM, Mark Schonewille wrote:

Tom,

Did you see my last reply regarding your problem concerning PNGs?

I don't know where you got the instruction to activate an application before setting the clipboard, but this seems like nonsense to me. The clipboard usually works at system level. It shouldn't be necessary to do this inside a tell block.

Can't you just have AppleScript return the data to Revolution and use a Rev script to read the picture from the result, like you did earlier?

Best,

Mark
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to