Cocoa text system (original) (raw)
The Cocoa text system (formerly known simply by the primary class name NSText) is the linked network of classes, protocols, interfaces and objects that provide typography and text field editing capabilities and to Cocoa applications on Apple's macOS, where it is the primary text-handling system. Although "extremely complex", the standard text-handling abilities of the Cocoa text system have been widely praised as without peer.It is possible to implement a fully featured rich text editor in only a few lines of code. Cocoa adopts many Emacs keybindings familiar to programmers.
Property | Value |
---|---|
dbo:abstract | The Cocoa text system (formerly known simply by the primary class name NSText) is the linked network of classes, protocols, interfaces and objects that provide typography and text field editing capabilities and to Cocoa applications on Apple's macOS, where it is the primary text-handling system. Although "extremely complex", the standard text-handling abilities of the Cocoa text system have been widely praised as without peer.It is possible to implement a fully featured rich text editor in only a few lines of code. Formerly embodied in developer NeXT Inc.'s OpenStep API specification, and implemented in NeXT's OPENSTEP operating system, and probably also in the earlier NeXTSTEP platform, Cocoa's NSText has additionally been implemented via the OpenStep API specification successfully in third-party implementations such as the free-and-open-source GNUstep. The Cocoa text system uses a Model–View–Controller design pattern. The view layer is handled by NSTextView and NSTextField, NSLayoutManager and NSTextContainer are the controller layer, and NSTextStorage (a mutable attributed string subclass) is the model. The Cocoa text system also interacts with Services to provide standard streams functionality in a GUI environment. Users interact with two classes, NSTextField (providing single-line edit fields) or NSTextView (providing multi-line editing). Each NSTextField uses a shared instance of a NSTextView called the "field editor". This was done to reduce high memory requirements that would arise if every field implemented its own NSTextView object graph when only one field can actually have focus at any time. Cocoa adopts many Emacs keybindings familiar to programmers. (en) |
dbo:wikiPageExternalLink | https://developer.apple.com/library/mac/documentation/TextFonts/Conceptual/CocoaTextArchitecture/Introduction/Introduction.html https://developer.apple.com/library/mac/documentation/TextFonts/Conceptual/CocoaTextArchitecture/TextSystemArchitecture/ArchitectureOverview.html |
dbo:wikiPageID | 46461160 (xsd:integer) |
dbo:wikiPageLength | 5367 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1123683546 (xsd:integer) |
dbo:wikiPageWikiLink | dbr:FOSS dbr:Design_pattern dbr:Object_graph dbr:Cocoa_(API) dbr:Emacs dbr:GNUstep dbr:MacOS dbr:Standard_streams dbr:String_(computer_science) dbr:Typography dbr:Focus_(computing) dbr:Model–view–controller dbr:Protocol_(object-oriented_programming) dbr:API dbc:MacOS_APIs dbr:Apple_Computers dbc:GNUstep dbr:NeXT dbr:NeXTSTEP dbr:OPENSTEP dbr:OpenStep dbr:Services_menu dbr:Singleton_pattern dbr:Text_field dbr:Class_(programming) dbr:Mutable dbr:Rich_text dbr:Interface_(programming) dbr:Object_(programming) dbr:NSText |
dbp:wikiPageUsesTemplate | dbt:Citation_needed dbt:Reflist dbt:Mac-stub |
dct:subject | dbc:MacOS_APIs dbc:GNUstep |
gold:hypernym | dbr:Network |
rdf:type | dbo:Broadcaster |
rdfs:comment | The Cocoa text system (formerly known simply by the primary class name NSText) is the linked network of classes, protocols, interfaces and objects that provide typography and text field editing capabilities and to Cocoa applications on Apple's macOS, where it is the primary text-handling system. Although "extremely complex", the standard text-handling abilities of the Cocoa text system have been widely praised as without peer.It is possible to implement a fully featured rich text editor in only a few lines of code. Cocoa adopts many Emacs keybindings familiar to programmers. (en) |
rdfs:label | Cocoa text system (en) |
owl:sameAs | freebase:Cocoa text system wikidata:Cocoa text system https://global.dbpedia.org/id/tm3j |
prov:wasDerivedFrom | wikipedia-en:Cocoa_text_system?oldid=1123683546&ns=0 |
foaf:isPrimaryTopicOf | wikipedia-en:Cocoa_text_system |
is dbo:wikiPageRedirects of | dbr:NSText |
is dbo:wikiPageWikiLink of | dbr:Camino_(web_browser) dbr:Unicode dbr:Emacs dbr:TextEdit dbr:NeXT dbr:OmniWeb dbr:List_of_text_editors dbr:NSText |
is foaf:primaryTopic of | wikipedia-en:Cocoa_text_system |