home *** CD-ROM | disk | FTP | other *** search
/ OpenStep (Enterprise) / OpenStepENTCD.toast / OEDEV / DEV.Z / Country.m < prev    next >
Encoding:
Text File  |  1996-07-30  |  3.0 KB  |  157 lines

  1. /*
  2.   You may freely copy, distribute, and reuse the code in this example.
  3.   NeXT disclaims any warranty of any kind, expressed or implied, as to its
  4.   fitness for any particular use.
  5. */
  6.  
  7.  
  8. #import "Country.h"
  9.  
  10. @implementation Country
  11.  
  12. - (id)init
  13. {
  14.     [super init];
  15.     
  16.     name=@"";
  17.     airports=@"";
  18.     airlines=@"";
  19.     transportation=@"";
  20.     hotels=@"";
  21.     languages=@"";
  22.     currencyName=@"";
  23.     comments=@"";
  24.     
  25.     return self;
  26. }
  27.     
  28. - (void)dealloc
  29. {
  30.     [name release];
  31.     [airports release];
  32.     [airlines release];
  33.     [transportation release];
  34.     [hotels release];
  35.     [languages release];
  36.     [currencyName release];
  37.     [comments release];
  38.  
  39.     return [super dealloc];
  40. }
  41.  
  42. - (void)encodeWithCoder:(NSCoder *)coder
  43. {
  44.     [coder encodeObject:name];
  45.     [coder encodeObject:airports];
  46.     [coder encodeObject:airlines];
  47.     [coder encodeObject:transportation];
  48.     [coder encodeObject:hotels];
  49.     [coder encodeObject:languages];
  50.     [coder encodeValueOfObjCType:"s" at:&englishSpoken];
  51.     [coder encodeObject:currencyName];
  52.     [coder encodeValueOfObjCType:"f" at:¤cyRate];
  53.     [coder encodeObject:comments];
  54.         
  55.     return;
  56. }
  57.  
  58. - (id)initWithCoder:(NSCoder *)coder
  59. {
  60.     name = [[coder decodeObject] copy];
  61.     airports = [[coder decodeObject] copy];
  62.     airlines = [[coder decodeObject] copy];
  63.     transportation = [[coder decodeObject] copy];
  64.     hotels = [[coder decodeObject] copy];
  65.     languages = [[coder decodeObject] copy];
  66.     [coder decodeValueOfObjCType:"s" at:&englishSpoken];
  67.     currencyName = [[coder decodeObject] copy];
  68.     [coder decodeValueOfObjCType:"f" at:¤cyRate];
  69.     comments = [[coder decodeObject] copy];
  70.     
  71.     return self;
  72.  }
  73.  
  74. /* accessor methods */
  75. - (NSString *)name
  76. {
  77.     return name;
  78. }
  79.  
  80. - (void)setName:(NSString *)str
  81. {
  82.     [name autorelease];
  83.     name = [str copy];
  84. }
  85.  
  86. - (NSString *)airports { return airports; }
  87.  
  88. - (void)setAirports:(NSString *)str
  89. {
  90.     [airports autorelease];
  91.     airports = [str copy];
  92. }
  93.  
  94. - (NSString *)airlines { return airlines; }
  95.  
  96. - (void)setAirlines:(NSString *)str
  97. {
  98.     [airlines autorelease];
  99.     airlines = [str copy];
  100. }
  101.  
  102. - (NSString *)transportation { return transportation; }
  103.  
  104. - (void)setTransportation:(NSString *)str
  105. {
  106.     [transportation autorelease];
  107.     transportation = [str copy];
  108. }
  109.  
  110. - (NSString *)hotels { return hotels; }
  111.  
  112. - (void)setHotels:(NSString *)str
  113. {
  114.     [hotels autorelease];
  115.     hotels = [str copy];
  116. }
  117.  
  118. - (NSString *)languages { return languages; }
  119.  
  120. - (void)setLanguages:(NSString *)str
  121. {
  122.     [languages autorelease];
  123.     languages = [str copy];
  124. }
  125.  
  126. - (BOOL)englishSpoken { return englishSpoken; }
  127.  
  128. - (void)setEnglishSpoken:(BOOL)flag
  129. {
  130.     englishSpoken = flag;
  131. }
  132.  
  133. - (NSString *)currencyName { return currencyName; }
  134.  
  135. - (void)setCurrencyName:(NSString *)str
  136. {
  137.     [currencyName autorelease];
  138.     currencyName = [str copy];
  139. }
  140.  
  141. - (float)currencyRate {return currencyRate;}
  142.  
  143. - (void)setCurrencyRate:(float)val
  144. {
  145.     currencyRate = val;
  146. }
  147.  
  148. - (NSString *)comments { return comments; }
  149.  
  150. - (void)setComments:(NSString *)str
  151. {
  152.     [comments autorelease];
  153.     comments = [str copy];
  154. }
  155.  
  156. @end
  157.