Menus, Cursors, and the Dock

Implement menus and cursors to facilitate interactions with your app, and use your app's Dock tile to convey updated information.



class NSMenu

An object that manages an app’s menus.

class NSMenuItem

A command item in an app menu.

protocol NSMenuDelegate

The optional methods implemented by delegates of NSMenu objects to manage menu display and handle some events.

Menu Bar Items

class NSStatusBar

An object that manages a collection of status items displayed within the system-wide menu bar.

class NSStatusItem

An individual element displayed in the system menu bar.

class NSStatusBarButton

The appearance and behavior of an item in the systemwide menu bar.


class NSCursor

A pointer (also called a cursor).

class NSTrackingArea

A region of a view that generates mouse-tracking and cursor-update events when the pointer is over that region.

The Dock

class NSDockTile

The visual representation of your app’s miniaturized windows and app icon as they appear in the Dock.

protocol NSDockTilePlugIn

A set of methods implemented by plug-ins that allow an app’s Dock tile to be customized while the app is not running.

See Also

User Interface

Supporting Dark Mode in Your Interface

Update colors, images, and behaviors so that your app adapts automatically when Dark Mode is active.

Supporting Continuity Camera in Your Mac App

Incorporate scanned documents and pictures taken with a user's iPhone, iPad, or iPod touch into your Mac app using Continuity Camera.

Views and Controls

Present and define the interactions for your content onscreen.

View Management

Manage your user interface, including the size and position of views in a window.

Windows, Panels, and Screens

Organize your view hierarchies and facilitate their display onscreen.

Touch Bar

Display interactive content and controls in the Touch Bar.


Animate your views and other content to create a more engaging experience for users.

Sound, Speech, and Haptics

Play sounds and haptic feedback, and incorporate speech recognition and synthesis into your interface.