Eventscript för InD körs 2 ggr before close

Tråden skapades och har fått 5 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • 2012-06-21 16:08

Denna körs som startskript:

tell application "Adobe InDesign CS5"
	make event listener with properties {event type:"beforeClose", handler:"HD:Applications:Adobe InDesign CS5:Scripts:event scripts:metadatacheck_before_close.scpt"}
end tell
[B]

[/B]Det skript som sedan körs (i mitt testscenario bestå det bara av "beep 1") körs alltid två gånger. Varför då? Extra irriterande är att det körs "afterClose" andra gången, så att eventuella andra dokument man har i bakgrunden då påverkas eller styr vad som kommer att hända.

Stockholmskonsultens midsommarjour rycker ut: Eventet close triggas två gånger, ett för fönstret och ett för dokumentet, så det du måste göra är att kontrollera vilket utav dem som triggat det och så utföra det du vill endast den ena av gångerna

  • Medlem
  • 2012-06-22 15:03

Hur tar man reda på det? Det jag vill trigga på är när dokumentet stängs. Kan man kanske tala om det redan när man skapar "listenern"?

  • Medlem
  • 2012-10-15 23:07

Jag hittar inget i dokumentation om att det ska vara skillnad på dokument och fönster, så jag fuskar:

property myBoolean : false
if myBoolean is true then
	set myBoolean to false
	-- my code here
else
	set myBoolean to true
end [B]if

[/B]

eller enklare:

property myBoolean : false
set myBoolean to (not myBoolean)
  • Medlem
  • 2012-10-16 11:51

Tack!
Men det fortfarande en nödlösning…

1
Bevaka tråden