Errata

Learning Cocoa

Errata for Learning Cocoa

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".

The following errata were submitted by our customers and approved as valid errors by the author or editor.

Color key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted By Date submitted Date corrected
Printed
Page 23
The block of code


"newString = [stringOne stringByAppendingString:
[substringFromRange:[stringTwo
rangeOfString:@"Cocoa" options:NSAnchoredSearch]]];"

now reads:

"newString = [stringOne stringByAppendingString:[NSString
substringFromRange:[stringTwo rangeOfString:@"Cocoa"
options:NSAnchoredSearch]]];"

Anonymous    Jul 01, 2001
Printed
Page 34
Paragraph 3

"Within a class, names can assigned freely"

now reads:

"Within a class, names can be assigned freely"

Anonymous    Jul 01, 2001
Printed
Page 37
Top of the page:

"[super init]"

now reads:

"self = [super init]".

Anonymous    Jul 01, 2001
Printed
Page 39
Middle of the page

"- init"

now reads

"- (id)init"


Anonymous    Jul 01, 2001
Printed
Page 52
Choose the New Project Command, Paragraph 1

"...refers to Figure 5-1)"

now reads:

"...refers to Figure 5-1"

Anonymous    Jul 01, 2001
Printed
Page 205
The second paragraph

The setState: message affects the appearance of two-state toggled
controls, such as a switch button. With an argument of YES, the check
mark appears; with an argument of NO, the check mark is removed.

However, when you look at example 10-5 you will see the following:

[[englishSpokenSwitch setState:NSOffState];

When you look at the description of NSButton, the type of
englishSpokenSwitch, you will find the following:

setState:

- - (void)setState:(int)value

Sets the cell's state to value, which can be NSOnState, NSOffState, or
NSMixedState. If necessary, this method also redraws the receiver.

The cell can have two or three states. If it has two, value can be
NSOffState (the normal or unpressed state) and NSOnState (the alternate
or pressed state). If it has three, value can be NSOnState (the feature
is in effect everywhere), NSOffState (the feature is in effect nowhere),
or NSMixedState (the feature is in effect somewhere). Note that if the
cell has only two states and value is NSMixedState, this method sets the
cell's state to NSOnState.

Although using the enumerated constants is preferred, value can also be
an integer. If the cell has two states, zero is treated as NSOffState,
and a non-zero value is treated as NSOnState. If the cell has three
states, zero is treated as NSOffState; a negative value, as
NSMixedState; and a positive value, as NSOnState.

To check whether the button uses the mixed state, use the method
allowsMixedState.

This means that example 10-5 is right and the explanation on page 205 is
wrong.

Anonymous   
Printed
Page 207
In the bottom paragraph

[aRecname]

Has been changed to:

[aRec name]

Anonymous    Aug 01, 2001
Printed
Page 245
In the bottom paragraph

"iniWithName:"

Has been changed to:

"initWithName:"

Anonymous    Aug 01, 2001
Printed
Page 285
On this page, add a new section called "Implement

mainWindowResigned:". The description can be almost exactly the same as
the section for "Implement mainWindowChanged:".

The method implementation is:

- (void)mainWindowResigned:(NSNotification *)notification
{[self setMainWindow:nil];}

These two changes cause the Info window to update when there is no Main window.

Anonymous   
Printed
Page 332
first line of list item 7

"instance varibles"

should be:

"instance variables"

Anonymous