Obracający się wiatraczek

Obracający się kursor oczekiwania, jak widać w systemie OS X El Capitan

Obracający się wiatraczek to odmiana wskaźnika myszy używanego w systemie macOS firmy Apple do wskazywania, że ​​aplikacja jest zajęta.

Oficjalnie wytyczne macOS Human Interface Guidelines określają go jako obracający się kursor oczekiwania , ale jest on również znany pod innymi nazwami. Obejmują one między innymi wirującą piłkę plażową , wirujące koło śmierci , wirującą piłkę plażową śmierci lub diabelski młyn śmierci .

Historia

Zegarek na rękę był pierwszym kursorem oczekiwania we wczesnych wersjach klasycznego systemu Mac OS . HyperCard firmy Apple jako pierwszy spopularyzował animowane kursory, w tym czarno-biały wirujący ćwiartkowy okrąg przypominający piłkę plażową . Kursor piłki plażowej został również przyjęty do wskazywania uruchomionego kodu skryptu w AppleScript podobnym do HyperTalk . Kursory można przesuwać, powtarzając wywołania HyperTalk „ustaw kursor na zajęty”.

Kursory oczekiwania są aktywowane przez aplikacje wykonujące długie operacje. Niektóre wersje Instalatora Apple używały animowanego kursora „ręki liczącej”. Inne aplikacje zapewniały własne, dostosowane do motywu kursory, takie jak obracający się symbol Yin Yang , biegnący pies Fetch , obracająca się taśma Retrospect i stukające palce Pro Tools . Firma Apple dostarczyła standardowe interfejsy do animowania kursorów: pierwotnie Cursor Utilities (SpinCursor, RotateCursor) oraz w systemie Mac OS 8 i nowszych, Appearance Manager (Ustaw animowany kursor motywu).

Od NeXT Step do MacOS X

Monochromatyczny NeXTStep (2 bity)

NeXTStep 1.0 wykorzystywał monochromatyczną ikonę przypominającą wirujący dysk magnetooptyczny . Niektóre komputery NeXT zawierały napęd optyczny, który był często wolniejszy niż magnetyczny dysk twardy, co było częstym powodem pojawienia się kursora oczekiwania.

Kolor NeXTStep (12 bitów)

Gdy w NeXTStep 2.0 dodano obsługę kolorów, dodano kolorowe wersje wszystkich ikon. Kursor oczekiwania został zaktualizowany, aby odzwierciedlał jasną tęczową powierzchnię tych dysków wymiennych, a ikona ta pozostała nawet wtedy, gdy późniejsze maszyny zaczęły używać dysków twardych jako podstawowej pamięci masowej. Współczesne CD-ROM były jeszcze wolniejsze (1x, 150 kbit/s).

Mac OS X (24-bitowy)

Wraz z pojawieniem się systemu Mac OS X kursor oczekiwania był często nazywany w prasie „wirującą piłką plażową”, prawdopodobnie przez autorów, którzy nie znali jego historii NeXT ani nie odnosili go do kursora oczekiwania na hiperkartę.

Dwuwymiarowy wygląd pozostał zasadniczo niezmieniony od NeXT do Rhapsody / Mac OS X Server 1.0, który poza tym miał projekt interfejsu użytkownika przypominający motyw Mac OS 8 / Platinum , a poprzez Mac OS X 10.0 / Cheetah i Mac OS X 10.1 / Puma , który wprowadził motyw interfejsu użytkownika Aqua .

Mac OS X 10.2/Jaguar nadał kursorowi błyszczący, zaokrąglony wygląd „gumdrop”, zgodny z innymi elementami interfejsu OS X. W systemie OS X 10.10 obraca się cały wiatraczek (wcześniej poruszała się tylko nałożona na niego półprzezroczysta warstwa). W systemie OS X 10.11 El Capitan zaktualizowano projekt obracającego się kursora oczekiwania. Ma teraz mniej cieni i ma jaśniejsze, bardziej jednolite kolory, aby lepiej pasowały do ​​projektu interfejsu użytkownika. Kolory również zmieniają się wraz z wirowaniem, a nie tylko tekstura.

Użycie systemu

W jednozadaniowych systemach operacyjnych, takich jak oryginalny system operacyjny Macintosh, kursor oczekiwania może wskazywać, że komputer całkowicie nie reagował na dane wprowadzane przez użytkownika lub po prostu wskazywać, że odpowiedź może być chwilowo wolniejsza niż zwykle z powodu dostępu do dysku. Zmieniło się to w wielozadaniowych systemach operacyjnych, takich jak System Software 5 , gdzie można przełączyć się do innej aplikacji i kontynuować tam pracę. Poszczególne aplikacje mogły również wyświetlać kursor oczekiwania podczas długich operacji (i często były w stanie anulować ten ekran za pomocą polecenia klawiaturowego).

Po przejściu na Mac OS X ( macOS ) Apple zawęziło znaczenie kursora oczekiwania. Wyświetlaniem kursora oczekiwania mógł sterować tylko system operacyjny, a nie aplikacja. Może to oznaczać, że aplikacja znajdowała się w nieskończonej pętli lub po prostu wykonywała długotrwałą operację i ignorowała zdarzenia. Każda aplikacja ma kolejkę zdarzeń które odbiera zdarzenia z systemu operacyjnego (na przykład naciśnięcia klawiszy i kliknięcia przycisków myszy); a jeśli aplikacja zajmuje więcej niż 2 sekundy, aby przetworzyć zdarzenia w swojej kolejce zdarzeń (niezależnie od przyczyny), system operacyjny wyświetla kursor oczekiwania za każdym razem, gdy kursor znajdzie się nad oknami tej aplikacji.

Ma to na celu wskazanie, że aplikacja chwilowo nie odpowiada, czyli stan, z którego aplikacja powinna zostać przywrócona. Może to również oznaczać, że całość lub część aplikacji weszła w stan nieodwracalny lub w nieskończoną pętlę . W tym czasie użytkownik może nie mieć możliwości zamykania, zmiany rozmiaru, a nawet minimalizowania okien aplikacji, której dotyczy problem (chociaż przesuwanie okna jest nadal możliwe w systemie OS X, a wcześniej ukryte części okna są zwykle przerysowywane, nawet jeśli aplikacja nie odpowiada). Podczas gdy jedna aplikacja nie odpowiada, zwykle można używać innych aplikacji. Opóźnienia w systemie plików i sieci to kolejna częsta przyczyna.

Wytyczne, narzędzia i metody dla programistów

Domyślnie zdarzenia (i wszelkie akcje, które inicjują) są przetwarzane sekwencyjnie, co sprawdza się, gdy każde zdarzenie wymaga niewielkiej ilości przetwarzania. Obracający się kursor oczekiwania będzie wyświetlany do momentu zakończenia operacji. Jeśli operacja trwa długo, aplikacja nie będzie odpowiadać. Deweloperzy mogą temu zapobiec, używając osobnych wątków do długiego przetwarzania, umożliwiając dalsze reagowanie głównego wątku aplikacji na zdarzenia zewnętrzne. To jednak znacznie zwiększa złożoność aplikacji. Innym podejściem jest podzielenie pracy na mniejsze pakiety i użycie NSRunLoop lub Grand Central Dispatch .

Instruments to aplikacja dostarczana z narzędziami programistycznymi systemu Mac OS X. Wraz z innymi funkcjami umożliwia użytkownikowi monitorowanie i próbkowanie aplikacji, które albo nie odpowiadają, albo wykonują długotrwałe operacje. Za każdym razem, gdy aplikacja nie odpowiada, a obracający się kursor oczekiwania jest aktywowany, Instruments może próbkować proces, aby określić, który kod powoduje, że aplikacja przestaje odpowiadać. Dzięki tym informacjom programista może przepisać kod, aby uniknąć aktywacji kursora.

Wytyczne Apple sugerują, aby programiści starali się unikać wywoływania obracającego się kursora oczekiwania i zamiast tego sugerowali użycie innych wskaźników interfejsu użytkownika , takich jak asynchroniczny wskaźnik postępu .

Alternatywne nazwy

Obracający się kursor oczekiwania jest powszechnie określany jako The (Spinning) x (of Death/Doom) . Najczęstsze słowa lub wyrażenia x , które można zastąpić to:

  • Dysk
  • (Piłka plażowa
  • (Tęczowe) koło
  • (Tęcza) Wiatraczek
  • Pizza
  • Ciasto
  • Marmur
  • Lizak

Zobacz też

Notatki

Linki zewnętrzne