2009-08-09 16 views
6

Pracuję nad małym projektem w domu, który dodałby znaczek (np. Nakładkę ikony) do określonego pliku na podstawie jego stanu. W każdym razie, usunąłem go z Google'a i jedyną dokumentacją, którą udało mi się znaleźć, było na stronie programistów Apple'a (Obtaining and Using Icons With Icon Services).Dodawanie znaczków do ikon plików w Finderze

Dokumentacja oczekuje, że programista będzie znał interfejsy API obiektów Objective-C, którymi nie jestem. Zastanawiam się, czy ktoś może podać mi przykłady kodu do dodawania odznak do pliku i katalogu. Z góry dziękuję!!

Odpowiedz

2

Link, do którego wysłano, dotyczy interfejsu API Carbon (pre-MacOSX). Choć może działać w wykrywaczu węgla 10,5, Finder w 10.6 jest czystym kakao, w wyniku czego może nie wspierać koncepcji odznak w tym zakresie.

Możesz dodawać plakietki do aplikacji na stacji dokującej przy użyciu NSDockTile, ale nie będziesz mieć dużo szczęścia w dokumentach dla aplikacji w całości. Musisz albo monitorować dokumenty za pomocą jakiegoś innego mechanizmu, a następnie użyć, powiedzmy, wtyczki QuickLook, aby wygenerować zminiaturyzowany widok niezależnie od tego, jaki jest twój stan.

W przeciwnym razie można napisać własny widok dokumentów (w których można dodać takie informacje) zamiast używać Findera.

2

The Finder w 10.6 można siekać z SIMBL wtyczki, po prostu trzeba użyć metody swizzling do reimplement metodę drawWithFrame w Finderze.

1

To pytanie już od jakiegoś czasu, ale wiem, że ludzie wciąż szukają, więc tutaj jest gotowe rozwiązanie dla znaczków ikon Findera i menu kontekstowych w Lion and Mountain Lion przy użyciu metody swizzling.

Liferay Nativity dostarcza pakiet skryptów, który zamienia odpowiednie metody Findera i klienta Java do ustawiania ikon i menu kontekstowych. Zawiera również równoważne projekty dla systemów Windows i Linux.

Projekt jest open source w ramach LGPL, więc zachęcamy do dodawania poprawek i ulepszeń!

+0

Czy Liferay Narodzenia mają jakieś plany wspierania Pythona? – fatuhoku

+0

Nie tworzymy obecnie klienta Pythona, ale cała komunikacja odbywa się przez gniazda, więc przeniesienie kodu Java nie powinno być strasznie trudne. Jestem w trakcie dyskusji z innym programistą, który pisze jakiś kod klienta Pythona. Możemy skończyć dodając jego kod do repozytorium. – dejuknow

+0

Awesome. Bardzo dobrze wiedzieć. Dzięki, dejuknow. – fatuhoku

Powiązane problemy