round in Snow Leopard (Icons anordnen, ...)

mynamenixname

Neues Mitglied
Thread Starter
Mitglied seit
05.06.2010
Beiträge
39
Hallo,
ich schreibe momentan einen AppleScript, der meine Desktop Icons an einem Gitter anordnet. Mac OS X beinhaltet zwar bereits solch eine Funktion, nur lässt sich dort das Gitter nicht entsprechend meinen Wünschen verschieben.

Meine Idee:
  1. . Icon-Position ermitteln
  2. . Position am Raster ausrichten
  3. . Icon in Position verschieben

Code:
tell application "Finder"
	
	set icon_list to document files of desktop
	repeat with an_icon in icon_list
	
	try
		set {xpos, ypos} to desktop position of an_icon
		
		set xpos to (xpos - 90.7) / 100
		set ypos to (ypos - 52) / 100
		
		set xpos to round xpos
		set xpos to round ypos
		
		set xpos to (xpos * 100) + 90.7
		set ypos to (ypos * 100) + 52
		
		
		set desktop position of an_icon to {xpos, ypos}
	end try
	
	end repeat
end tell
Beim ausführen erhalte ich nun diesen Fehler:
Code:
tell application "Finder"
	get desktop position of alias "LaCie:"
		--> {91, 52}
	round 0.003
		--> error number -10004
end tell
tell current application
	round 0.003
		--> 0
end tell
tell application "Finder"
	set desktop position of alias "LaCie:" to {90.7, 52}
		--> {90.7, 52}
end tell
Ergebnis:
{90.7, 52}
--> error number -10004 hat meinen Nachforschungen nach etwas mit geänderten Rechten in Snow Leopard zu tun und taucht oft bei beep auf.

Hat jemand eine Ahnung, wie ich die nötigen Rechte erhalte, ob mein Fehler wo anders liegt oder wie ich ihn löse?

Schon einmal vielen Dank :D
 

varuna

Mitglied
Mitglied seit
21.10.2009
Beiträge
473
Hallo!
Der Fehler wird ja erklärt und "gelöst":

tell application "Finder"
round 0.003
--> error number -10004
end tell


statt dessen

tell current application
round 0.003
--> 0
end tell


Du könntest round in einen tell me Block setzen oder weitere Lösungswege überlegen.

Gruß
 
Oben