Hi zusammen,
In meinem aktuellen Projekt halte ich eine Referenz auf einen Ordner im Finder. Über die seit 10.5 verügbaren FSEvents lasse ich mich über Änderungen an meinem Ordner informieren (Verschieben des gesamten Ordners oder Ändern seines Inhalts). Konzeptbedingt sagen einem die FSEvents ja leider nicht, was genau mit einer Datei passiert, sondern nur, dass sich der übergeordnete Verzeichniseintrag geändert hat. Das ist jedoch kein Problem, solange sich Dateien IM Ordner ändern, da ich so einfach den Ordner neu scannen kann. Problematisch wird es erst, wenn der gesamte Ordner verschoben wird: Die FSEvents sagen mir wohl, dass mein Ordner sich verschoben hat (RootChanged), jedoch weiss ich nicht, wohin der Ordner verschoben wurde, wodurch ich die Referenz auf den Ordner verliere ("wo isser hin?").
• Am allerschönsten funktionieren hier natürlich die Bookmarks, die den Pfad zum Ordner sofort wieder auflösen können — leider gibts die erst in 10.6, also keine Option (max. 10.5).
• Am zweitschönsten wäre ein Wrapper um die Carbon Aliase — da Carbon aber nur 32bit ist würde ich darauf lieber verzichten.
Kennt jemand von euch noch eine Alternative? NSDocument kann das ja seit Langem und überprüft jedesmal wenn es aktiviert wird, ob der Dokumentpfad noch existiert, und falls dem nicht so ist löst es den neuen Pfad aus irgendeiner Refernz auf… nur weiss ich nicht woher.
Danke schon im Voraus und eine Gute Nacht
Gruss,
Fabian
In meinem aktuellen Projekt halte ich eine Referenz auf einen Ordner im Finder. Über die seit 10.5 verügbaren FSEvents lasse ich mich über Änderungen an meinem Ordner informieren (Verschieben des gesamten Ordners oder Ändern seines Inhalts). Konzeptbedingt sagen einem die FSEvents ja leider nicht, was genau mit einer Datei passiert, sondern nur, dass sich der übergeordnete Verzeichniseintrag geändert hat. Das ist jedoch kein Problem, solange sich Dateien IM Ordner ändern, da ich so einfach den Ordner neu scannen kann. Problematisch wird es erst, wenn der gesamte Ordner verschoben wird: Die FSEvents sagen mir wohl, dass mein Ordner sich verschoben hat (RootChanged), jedoch weiss ich nicht, wohin der Ordner verschoben wurde, wodurch ich die Referenz auf den Ordner verliere ("wo isser hin?").
• Am allerschönsten funktionieren hier natürlich die Bookmarks, die den Pfad zum Ordner sofort wieder auflösen können — leider gibts die erst in 10.6, also keine Option (max. 10.5).
• Am zweitschönsten wäre ein Wrapper um die Carbon Aliase — da Carbon aber nur 32bit ist würde ich darauf lieber verzichten.
Kennt jemand von euch noch eine Alternative? NSDocument kann das ja seit Langem und überprüft jedesmal wenn es aktiviert wird, ob der Dokumentpfad noch existiert, und falls dem nicht so ist löst es den neuen Pfad aus irgendeiner Refernz auf… nur weiss ich nicht woher.
Danke schon im Voraus und eine Gute Nacht
Gruss,
Fabian
[Blockierte Grafik: http://neu.axamblis.com/images/avatar01.png] axamblis.com | Blog | Twitter