Cocoa’s text system contains a rich set of features such as text input, layout, display, editing, copying and pasting, and font management. It also includes support for advanced typesetting features such as kerning and ligature, multilingual support with Unicode, and sophisticated layout capabilities.
This chapter discusses the primary classes of Cocoa’s text handling system and how they relate to one another. Figure 5-1 shows the hierarchy of classes related to the text system.
Figure 5-1. Hierarchy of text system class
The following four classes make up the core architecture of Cocoa’s text handling system:
is the backbone data model responsible
for storing text.
is responsible for presentation in the
act as controllers between the model and
The relationship between these core classes is based on the same Model-View-Controller (MVC) pattern used throughout the Application Kit (and discussed in Chapter 3). Figure 5-2 shows the division of responsibilities in these four classes using the MVC pattern.
Figure 5-2. How the four core text system classes relate to one another in the MVC pattern
Figure 5-2 shows the relationship between the four classes, but doesn’t ...