Thread Druckdialog in MacOs X (8 answers)
Opened by Spieler at 2007-10-24 17:54

murphy
 2007-10-25 16:52
#101327 #101327
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
ptk+2007-10-24 21:37:49--
[...]
Blockiert dieser Befehl oder wird "open" im Hintergrund ausgeführt.


Das Programm open sorgt lediglich dafür, dass die Application Launch Services die nötige Anwendung starten, falls sie noch nicht läuft, und dass die Anwendung ein Apple Event bekommt, welches ihr mitteilt, sie möge doch mal die Angegebene Datei (oder URL) öffnen. Danach beendet sich open wieder.

Es ist also etwas problematisch festzustellen, wann man eine temporäre Datei wieder löschen sollte. Daher ist es wahrscheinlich besser (und ich bin doof, weil ich nicht sofort daran gedacht habe) diese Aufgabe einfach open selbst zu überlassen -- denn das kann feststellen, wann die Anwendung ihr Open Event fertig bearbeitet hat -- und so etwas zu machen:
Code: (dl )
1
2
3
4
5
{
open my $pipe, '|-', '/usr/bin/open', '-a', 'Preview', '-f' or die "Unable to connecto to Preview: $!\n";
print $pipe '... some PDF, PS or other image data ...';
close $pipe or die "Error sending data to Preview: $!\n";
}


Man könnte, anstatt open zu starten wohl auch noch direkt mit dem CPAN:Mac::Carbon-Modul arbeiten und die Funktionalität nachbauen -- ob das allerdings eine bessere Lösung ist, sei dahingestellt.

Quote
Und würde es dir ausmachen, die Druckfunktion von Tk::Pod auf MacOSX zu testen, sobald ich es implemtentiert habe?


Ich habe auf meinem Rechner kein Perl/Tk installiert, weil es riesengroß ist, ich es noch nie gebraucht habe und es sich außerdem nicht in die native Mac-Oberfläche einfügt, sondern nur unter X11 läuft. Wenn Du mir aber alleinstehenden Druckcode gibst, kann ich den gerne testen.
When C++ is your hammer, every problem looks like your thumb.

View full thread Druckdialog in MacOs X