Cocoa Programming for Mac OS X - Aaron Hillegass [144]
drawInRect: method, NSAttributedString, 309
drawLayer:inContext:, CALayer, 425
drawRect: method
adding highlighting, 316–317
adding printing, 355
compositing of image, 265
coordinate system of views, 268
drawing text with attributes, 291
getting view to draw itself, 246–248
getting view to generate PDF data, 291–293
rollovers, 283
using keyboard events, 280
E
encodeWithCoder: method, NSCoder, 160–161
encoding data
NSCoder, 160–161
preventing infinite loops, 172–173
endSheet: method, 329
en.lproj directory, localizing app in English, 233, 237
entities
Core Data model, 180, 407
editing model, 407–408
in NSManagedObjectModel, 177–179
equality, in NSObject, 44
events
images and mouse. See images and mouse events
keyboard. See keyboard events
nextResponder and, 414–415
role of window server, 33
timer. See NSTimer
exceptions
adding breakpoints, 60–61
debugging hints, 98
key-value coding and nil, 139–140
exported UTIs
configuring, 170–171
customized, 303
storing in UTExportedTypeDeclarations, 175
Extended Detail pane, Instruments, 433
extensions
Objective-C, 40–41
setting for file types, 170–172
F
file formats
copying data onto pasteboard, 295
File Inspector, 234, 237–238
file system, NSUserDefaults and, 210–211
file wrappers, 165–167
File’s Owner
dock icon, 20
NIB files and NSWindowController, 198
First Responder, dock icon, 20
flagsChanged event, NSResponder, 273
floats, nil value and, 139
fonts
NSFont. See NSFont
NSFontManager, 293
typographical conventions in this book, 7–8
format strings, explicit ordering of tokens in, 240
formatters. See also number formatters
creating. See NSFormatters
NSTextField, 88
overview of, 339–340
forwardInvocation: method, 145
Foundation framework
creating command-line tool, 38–41
defined, 6
.framework extension, 6
fr.lproj directory, localizing app in French, 233–238, 237–238
fromValue property, CABasicAnimation, 424
focus ring, fuzzy blue box, 284
G
garbage collector, 67–68
gcc (GNU C compiler), 35, 58–59
GCD (See Grand Central Dispatch)
and blocks, 376
faster performance and, 439
gdb. See debugger (gdb)
general pasteboard, 296
generalPasteboard method, NSPasteboard, 296
genstrings tool, 239
global variables
creating keys for names of defaults, 212
NSAtrributedString, 287–288
NSPasteboard, 297
notifications, 225
GNU C compiler (gcc), 35, 58–59
gradients, CAGradientLayer, 425
Grand Central Dispatch (GCD)
and blocks, 376
faster performance and, 439
graphics. See Core Animation
H
header file
creating classes, 20
creating new class, 50
in Objective-C, 26–27
helper objects
classes with delegate outlets, 112
delegates, 100–104
errors implementing delegates, 112
how delegates work, 113–114
making connections, 109
NSTableView and its dataSource, 104–107
overview of, 99
hidesOnDeactivate variable, windows, 194
hierarchy, views, 241–243
highlights
for color well, 204
for erroneous line of code, 28
drag destination, 316–317
for rollovers, 283
HTTP, Web services, 359
I
IBAction
adding cut, copy and paste, 300
defined, 26
making connections, 92
IBOutlet, 26
ibtool command, 239–240
.icns file, 170–172
icons
copying into project directory, 170
dock, 20
setting for file types, 170–172
id, 26
identifier
interface layout for Web service, 367
setting document type in archiving, 170
setting for defaults, 212
Identity Inspector
instance of view subclass, 244
labeling objects, 180
image view
binding, 186–187
view-based table views, 181–184
images and mouse events
autoscrolling, 268–269
composite images, 264–265
getting mouse events, 259
NSEvent, 257–258
NSImage, 269
NSOpenPanel, 259–264
NSResponder, 257
view’s coordinate system, 266–268
immutable, NSArray as, 45
implementation file
creating classes, 20
editing, 27–28
#import
creating keys for names of defaults, 212
header