%QEQC #RRNKECVKQP 6WVQTKCN )GPGTCN
Converter.hconvertCurrency Converter.m
nextKeyViewinitialFirstResponder
ConverterController
ConverterController rateField
convert: ConverterController.m
c_conv512.png
!
!
!
!
!
!
!
!
!
!
!
!
ObjCTutorial_companion.zip
!
!
!
!
convertCurrency
/Developer/Applications
!
! main.m mainCurrency Converter_Prefix.pch
!
!
!
!
!
!
Currency Converter.xcodeproj
main.mmain
English.lproj
Dutch.lproj
Converter
Converter.h Converter.m
!
! float sourceCurrencyAmount rate
! (float)convertCurrency
Converter.h Converter.h
Converter.h
Converter.h
#import <Cocoa/Cocoa.h>@interface Converter : NSObject { float sourceCurrencyAmount, rate;
}
@property(attributes) Type variableNameList;
readwrite copy
@property(copy) NSString *name;
Converter.h@end
@property(readwrite) float sourceCurrencyAmount, rate;
- (float)sourceCurrencyAmount;- (void)setSourceCurrencyAmount:(float)newSourceCurrencyAmount;- (float)rate;- (void)setRate:(float)newRate;
Converter.h
- (float)convertCurrency;
Converter.h
Converter.m
sourceCurrencyAmount rate
@propertyConverter.h @synthesize @implementation
Converter.m @implementation Converter
@synthesize sourceCurrencyAmount, rate;
sourceCurrencyAmountrate Converter.h
Converter.m
convertCurrency Converter.m
#import "Converter.h"
@implementation Converter@synthesize sourceCurrencyAmount, rate;
- (float)convertCurrency {
return self.sourceCurrencyAmount * self.rate;
}
@end
convertCurrencyself.sourceCurrencyAmount
sourceCurrencyAmount self
!
!
!
!
NSWindowNSWindow
NSWindow NSWindowNSWindow
NSWindowNSApplication
NSApplicationNSWindow
NSWindow
MainMenu.xib
MainMenu.xib
Exchange Rate per $1:
!
!
!
!
!
nextKeyView
nextKeyView
nextKeyView
nextKeyView
nextKeyView
initialFirstResponder
initialFirstResponder
MainMenu.nib
initialFirstResponder
initialFirstResponder
IBOutlet id variableName;
IBOutlet
idid
IBOutlet NSButton* myButton;
null
null
NSControlNSActionCell
convertConverterController
ConverterController
- (IBAction)myAction:(id)sender;
IBAction IBOutlet
NSObject
!
!
delegate
ConverterController
ConverterController.m
ConverterControllerConverter
Converter
IBOutlet NSTextField *amountField;
IBOutlet NSTextField *dollarField;
IBOutlet NSTextField *rateField;
NSTextFieldid
ConverterController convert:convert: ConverterController
ConverterController convert:convert:
#import <Cocoa/Cocoa.h>
@interface ConverterController : NSObject { IBOutlet NSTextField *amountField; IBOutlet NSTextField *dollarField; IBOutlet NSTextField *rateField;}- (IBAction)convert:(id)sender;
@end
convert:
ConverterController
ConverterController
ConverterController.h
MainMenu.xib
ConverterControllerConverterController.h
ConverterController
ConverterControllerConverterController
ConverterController
rateField
ConverterController rateField
ConverterController dollarField amountField
ConverterController
ConverterController
convert:
ConverterController
ConverterController.h
Converter *converter;
convert: ConverterControllerconvert: ConverterController
convertCurrency Converter
Converter.h ConverterController ConverterConverterController.h
#import "Converter.h"
ConverterController.m
convert: ConverterController.m
convert: ConverterController.m
#import "ConverterController.h"@implementation ConverterController- (IBAction)convert:(id)sender {
float amount;
converter = [[Converter alloc]init];
[converter setSourceCurrencyAmount:[dollarField floatValue]];
[converter setRate:[rateField floatValue]];
amount = [converter convertCurrency];
[amountField setFloatValue:amount];
[rateField selectText:self];
}
@end
convert:
Converter rateField dollarField
convertCurrency converter
setFloatValue:amountField
selectText:
convert:
amount
convert:
converter = [[Converter alloc]init];
Converter
Supported
ConverterController.m
setFloatValue
[NSCell setFloatValue] NSCell.hsetFloatValue
!
!
!
!
!
!
Info.plist
Info.plist
!
CFBundleIdentifier Info.plist
.
com org
com.apple
AddressBook
!
CFBundleVersion Info.plist
55 1.2 1.2.0.55
!
CFBundleShortVersionStringInfo.plist
! © 2007,My Company
NSHumanReadableCopyright Info.plist
!
CFBundleName Info.plist
!
CFBundleIconFile Info.plist
ObjCTutorial_companion.zip
Currency Converter
InfoPlist.strings
com.mycompany.CurrencyConverter
100
1.0.0
© 2009, My Company
Info.plist
info.plist
NSHumanReadableCopyright Info.plistInfoPlist.strings (English)
Info.plist
InfoPlist.strings (English) Info.plist
> open -b com.mycompany.CurrencyConverter
open.app
CFBundleShortVersionString
CFBundleName CFBundleVersionNSHumanReadableCopyright
ObjCTutorial_companion.zip
/Developer/Applications/Utilities
ObjCTutorial_companion/application_icon_images
c_conv512.png
c_conv512.png
APPL.icns
APPL.icns
APPL.icns
nextKeyView
!
! NSText
!
!
!
!
NSBezierPath
[anObject doSomethingWithArg:this];
int result = [anObj calcTotal];
NSWindow
[[form window] makeKeyAndOrderFront:self];
nil nilnil
self superself
super
[super init];
init
id
id myObject;
NSString* mystring;
-
- (NSString*)countryName;
void
- (id)initWithName:(NSString*)name andType:(int)type;
@private
#import"Converter.h" ConverterController.h
converter
#import "Converter.h"