Home
Vampire's Ball Mac OS

Vampire's Ball Mac OS

May 22 2021

Vampire's Ball Mac OS

Spinning Wait Cursor as seen in OS X El Capitan

10 reviews of The Vampire Ball by Shannon McCabe 'Vampires, Steampunkers & Pirates, OH MY! SITREP What a BLOODY good time at the 2013 Vampire-Pirate-Steampunker-(name your favorite costume category) BALL! Hosted at the Placer County Fairgrounds in Roseville, CA, it was an eclectic & eccentric event of magnificent proportions! Even though it IS a 'Vampire Ball' ('per se', as kids in SouthPark. Hauntingly good fun awaits you at the highly requested return of the newly ‘revamped’, Vampire’s Ball, opening on Halloween night! This fan favorite will thrill you with a riotous tale of two vampires, told through exquisite dance as only Orlando Ballet can. The beach ball spins and doesn't stop. I restarted the computer several times and it boots up normal except that it's extra slow. When it gets to the regular screen the beach ball starts spinning and I'm unable to do anything. I recently upgraded to OS 10.2.6 and was previously runing OS X. I restarted it holding down apple F.

Your Mac hijacking your cursor and asking you to wait around is never welcome. People call it different things, including the spinning wheel, beachball, or pinwheel of death. The good news is a spinning wheel means macOS hasn’t crashed completely. You might be able to wrestle back control. Your name: Your email address: Your phone number: What would you like to sell?

The spinning pinwheel is a variation of the mouse pointer arrow, used in Apple's macOS to indicate that an application is busy.[1]

Officially, the macOS Human Interface Guidelines refers to it as the spinning wait cursor,[2] but it is also known by other names, including the spinning beach ball[3], the spinning wheel of death[4], the spinning beach ball of death,[5] or the ferris wheel of death.

History[edit]

A wristwatch was the first wait cursor in early versions of the classic Mac OS. Apple's HyperCard first popularized animated cursors, including a black-and-white spinning quartered circle resembling a beach ball. The beach-ball cursor was also adopted to indicate running script code in the HyperTalk-like AppleScript. The cursors could be advanced by repeated HyperTalk invocations of 'set cursor to busy'.

Wait cursors are activated by applications performing lengthy operations. Some versions of the Apple Installer used an animated 'counting hand' cursor. Other applications provided their own theme-appropriate custom cursors, such as a revolving Yin Yang symbol, Fetch's running dog, Retrospect's spinning tape, and Pro Tools' tapping fingers. Apple provided standard interfaces for animating cursors: originally the Cursor Utilities (SpinCursor, RotateCursor)[6] and, in Mac OS 8 and later, the Appearance Manager (SetAnimatedThemeCursor).[7]

From NeXTStep to Mac OS X[edit]

NeXTStep monochrome (2 bit)
Ball

NeXTStep 1.0 used a monochrome icon resembling a spinning magneto-optical disk.[a] Some NeXT computers included an optical drive which was often slower than a magnetic hard drive and so was a common reason for the wait cursor to appear.

NeXTStep color (12 bit)

Vampire's Ball Mac Os Catalina

When color support was added in NeXTStep 2.0, color versions of all icons were added. The wait cursor was updated to reflect the bright rainbow surface of these removable disks, and that icon remained even when later machines began using hard disk drives as primary storage. Contemporary CD Rom drives were even slower (at 1x, 150 kbit/s).[b]

Mac OS X (24 bit)

With the arrival of Mac OS X the wait cursor was often called the 'spinning beach ball' in the press,[8] presumably by authors not knowing its NeXT history or relating it to the hypercard wait cursor.

The two-dimensional appearance was kept essentially unchanged[c] from NeXT to Rhapsody/Mac OS X Server 1.0 which otherwise had a user interface design resembling Mac OS 8/Platinum theme, and through Mac OS X 10.0/Cheetah and Mac OS X 10.1/Puma, which introduced the Aqua user interface theme.

Vampire's Ball Mac Os Download

Mac OS X 10.2/Jaguar gave the cursor a glossy rounded 'gumdrop' look in keeping with other OS X interface elements.[9]In OS X 10.10, the entire pinwheel rotates (previously only the overlaying translucent layer moved).With OS X 10.11 El Capitan the spinning wait-cursor's design was updated. It now has less shadowing and has brighter, more solid colors to better match the design of the user interface. The colors also turn with the spinning, not just the texture.

System usage[edit]

In single-tasking operating systems like the original Macintosh operating system, the wait cursor might indicate that the computer was completely unresponsive to user input, or just indicate that response may temporarily be slower than usual due to disk access. This changed in multitasking operating systems such as System Software 5, where it is usually possible to switch to another application and continue to work there. Individual applications could also choose to display the wait cursor during long operations (and these were often able to be cancelled with a keyboard command).

After the transition to Mac OS X (macOS), Apple narrowed the wait cursor meaning. The display of the wait cursor is now controlled only by the operating system, not by the application. This could indicate that the application was in an infinite loop, or just performing a lengthy operation and ignoring events. Each application has an event queue that receives events from the operating system (for example, key presses and mouse button clicks); and if an application takes longer than 2 seconds[10] to process the events in its event queue (regardless of the cause), the operating system displays the wait cursor whenever the cursor hovers over that application's windows.

This is meant to indicate that the application is temporarily unresponsive, a state from which the application should recover. It also may indicate that all or part of the application has entered an unrecoverable state or an infinite loop. During this time the user may be prevented from closing, resizing, or even minimizing the windows of the affected application (although moving the window is still possible in OS X, as well as previously hidden parts of the window being usually redrawn, even when the application is otherwise unresponsive). While one application is unresponsive, typically other applications are usable. File system and network delays are another common cause.

Guidelines, tools and methods for developers[edit]

By default, events (and any actions they initiate) are processed sequentially, which works well when each event involves a trivial amount of processing, the spinning wait cursor appearing until the operation is complete. If processing takes long, the application will appear unresponsive. Developers may prevent this by using separate threads for lengthy processing, allowing the application's main thread to continue responding to external events. However, this greatly increases the application complexity. Another approach is to divide the work into smaller packets and use NSRunLoop or Grand Central Dispatch.

  • Bugs in applications can cause them to stop responding to events; for instance, an infinite loop or a deadlock. Applications thus afflicted rarely recover.
  • Problems with the virtual memory system—such as slow paging caused by a spun-down hard disk or disk read-errors—will cause the wait cursor to appear across multiple applications, until the hard disk and virtual memory system recover.

Instruments is an application that comes with the Mac OS X Developer Tools. Along with its other functions, it allows the user to monitor and sample applications that are either not responding or performing a lengthy operation. Each time an application does not respond and the spinning wait cursor is activated, Instruments can sample the process to determine which code is causing the application to stop responding. With this information, the developer can rewrite code to avoid the cursor being activated.

Apple's guidelines suggest that developers try to avoid invoking the spinning wait cursor, and suggest other user interface indicators, such as an asynchronous progress indicator.

Alternate names[edit]

The spinning wait cursor is commonly referred to as the (Spinning) x (of Death/Doom).[d] The most common words or phrases x can be replaced with include:

  • Disk
  • (Beach) Ball[11][12]
  • (Rainbow) wheel
  • Pinwheel
  • Pizza[e]
  • Pie
  • Marble
  • Lollipop

See also[edit]

Notes[edit]

  1. ^NeXT Optical Discs, Photo of the underside, showing the rainbow effect depicted on the icon (a then new type of media that was built into the early NeXT Cubes.)
  2. ^often an external AppleCD drive was used
  3. ^not a single bit was changed
  4. ^named after the Blue Screen of Death
  5. ^frequently encountered across Mac users forums as The SPOD

References[edit]

  1. ^'Mini-Tutorial: The dreaded spinning pinwheel; Avoiding unresponsiveness/slow-downs in Mac OS X'. CNet. 10 March 2005. Retrieved 16 July 2012.CS1 maint: discouraged parameter (link)
  2. ^'macOS Human Interface Guidelines: Pointers'. developer.apple.com. Retrieved 2018-01-24.
  3. ^'Troubleshoot the spinning beach ball'. Macworld. 2010-05-28. Retrieved 2020-03-22.
  4. ^'How to Fix a Spinning Wheel of Death on Mac'. MacPaw. Retrieved 2020-03-22.
  5. ^'Frozen: How to Force Quit an OS X App Showing a Spinning Beachball of Death – The Mac Observer'. www.macobserver.com. Retrieved 2020-03-22.
  6. ^'Using the Cursor Utilities (IM: Im)'. Developer.apple.com. Retrieved 2010-04-30.CS1 maint: discouraged parameter (link)
  7. ^'SetAnimatedThemeCursor'. Developer.apple.com. Retrieved 2010-04-30.CS1 maint: discouraged parameter (link)
  8. ^Macworld 2002-04-01
  9. ^Ars Technica Jaguar review: 'The dreading 'spinning rainbow disc' has an all new look in Jaguar'
  10. ^'WWDC 2012 – Session 709 – What's New in the File System'(PDF). Apple. Retrieved 2018-05-23. Applications SPOD if they don’t service the event loop for two secondsCS1 maint: discouraged parameter (link)
  11. ^Swain, Gregory E. (28 May 2010). 'Troubleshoot the spinning beach ball'. ((MacWorld)). Retrieved 16 July 2012.CS1 maint: discouraged parameter (link)
  12. ^Todd, Charlie (9 March 2012). 'Spinning Beach Ball of Death'. ((Improv Everywhere)). Retrieved 16 July 2012.CS1 maint: discouraged parameter (link)
Ball

External links[edit]

  • Apple Human Interface Guidelines: Standard Cursors from Apple's website.
  • Perceived Responsiveness: Avoid the Spinning Cursor from Apple's website.
  • Troubleshooting the 'Spinning Beach Ball of Death' Excerpt from “Troubleshooting Mac OS X” book where there are some information on how to deal with Spinning Wait Cursor problems.
Retrieved from 'https://en.wikipedia.org/w/index.php?title=Spinning_pinwheel&oldid=1012710173'

Created By: Debasis Das (27-May-2017)
Swift Mac OS Animation
Animation in Mac OSX has a long history and there are more than one option for achieving an animated behavior in a Mac Application.

We can achieve animation in a Mac Application using
1. Simple View Animation
2. Using Animation Proxy or
3. Using Core Animation on CALayer

The above animation techniques can be used in isolation or it can be merged with each other to achieve a certain animation behavior

The decision to use one approach vs the other purely depends on the animation complexity and the degree of control that is desired. Whether user interaction is desired on the screen that has animated layers etc.

If a simple animation such as animating the size of the NSWindow is required, it would be easier to simply use an animator proxy to achieve the functionality, however if we have complex requirement of creating a firework effect, we would need to look beyond View Animation or using an animator proxy.

In this post we will see how Core Animation works in Mac OSX.
CAAnimation is the abstract superclass for all Core Animations.
CAAnimation has the following subclasses
– CABasicAnimation
– CAKeyframeAnimation
– CAAnimationGroup
– CATransition

We can animate the contents of our applications by attaching animations (Stated above) with Core Animation Layers

CABasicAnimation

  • Provides basic single-keyframe animations to the CALayers properties.
  • While initializing a CABasicAnimation we state the keypath of the property that we want to animate.
  • The property can be the backgroundColor, it can be the layer opacity or border color etc.
  • The animation has a from and a to value that need to be stated.
  • for example, we can animate the color change of a CALayer from red to green by creating a CABasicAnimation with backgroundColor keypath and then state the fromValue as red and toValue as green

CAKeyframeAnimation

  • Is similar to CABasicAnimation with a difference that it can accept multiple intermediate values and multiple intermediate keyTimes that controls how the transition happens
  • The timing and pacing of keyframe animations are complex than the basic animations.
  • There is a property of CAkeyframeAnimation called as calculationMode which defines the algorithm of the animation timing.
  • Below are the calculation modes
    • kCAAnimationLinear – provides a linear calculation between keyframe value
    • kCAAnimationDiscrete – each keyframe value is used in turn and no interpolated values are calculated.
    • kCAAnimationPaced – Linear keyframe values are interpolated to produce an even pace throughout the animation.
    • kCAAnimationCubic – Smooth spline calculation between keyframe values
    • kCAAnimationCubicPaced – Cubic keyframe values are interpolated to produce an even pace throughout the animation.
  • The decision of the calculationMode plays a key role based on what type of animation we are trying to achieve. A bouncing ball effect would require the ball to fall at a slow speed initially and gradually the speed should increase and when it hits the ground it should bounce back with initial higher speed and the speed should taper at the top before it reverses direction.

CAAnimationGroup

  • Allows multiple animations to be grouped and run concurrently.
  • We can create multiple animations using CABasicAnimation or CAKeyframeAnimation each having a different animation duration and then we can create a CAAnimationGroup using an array of individual animations.
  • The CAAnimationGroup also has a duration property which if smaller than individual animation durations will clip the individual animation durations.

Using a combination of CABasicAnimation, CAKeyframeAnimation and CAAnimationGroup we can achieve amazing animation effects.

We will progress through to create the below animation effect

In this sample application we will write 3 functions for displaying a simple CABasicAnimation, a simple CAKeyframeAnimation and finally an example of CAAnimationGroup

Below is the function to initialize the circle layer that we will be animating using different function calls

In the below function we will change the x position of the circle layer using CABasicAnimation

The below demo we will move the circle layer in key frames over a path, Then we will stroke the path to show the path the circle layer is following

In the below demo we will group three animations in a CAAnimationGroup.
The first animation will move the circle over a path and the second animation will change the background color of the circle layer and the third will change the border width of the circle layer.

You can download the code from SwiftCoreAnimation-SampleCode
In Part 2 we will work on Animator Proxy

Vampire's Ball Mac Os 11

Posted in Swift, Swift 3.1 Tagged with: CAAnimationGroup, CABasicAnimation, CAKeyframeAnimation, Mac OS Animation, Swift 3.1, Swift 3.1 Mac OS Animation

Vampire's Ball Mac OS

Leave a Reply

Cancel reply