|
From: Geisschaes <gei...@us...> - 2005-05-08 20:18:31
|
Update of /cvsroot/macattrick/macattrick In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8356 Modified Files: Position.h Position.m PositionHeap.h PositionHeap.m Log Message: export and import positionsheap added. import is not yet tested approprietly Index: Position.m =================================================================== RCS file: /cvsroot/macattrick/macattrick/Position.m,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** Position.m 25 Apr 2005 20:22:37 -0000 1.9 --- Position.m 8 May 2005 20:17:47 -0000 1.10 *************** *** 80,83 **** --- 80,106 ---- } + + -(Position*) initFromSaveString: (NSString*) saveString { + self = [super init]; + if (self) { + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + NSArray* array = [saveString componentsSeparatedByString:@"|"]; + identifier = [array objectAtIndex:0]; + [self setPlayerFormRate:[[array objectAtIndex:1]doubleValue]]; + [self setExperienceRate:[[array objectAtIndex:2]doubleValue]]; + [self setStaminaRate:[[array objectAtIndex:3]doubleValue]]; + [self setKeeperRate:[[array objectAtIndex:4]doubleValue]]; + [self setPlaymakingRate:[[array objectAtIndex:5]doubleValue]]; + [self setPassingRate:[[array objectAtIndex:6]doubleValue]]; + [self setWingerRate:[[array objectAtIndex:7]doubleValue]]; + [self setDefenderRate:[[array objectAtIndex:8]doubleValue]]; + [self setScorerRate:[[array objectAtIndex:9]doubleValue]]; + [self setSetPiecesRate:[[array objectAtIndex:10]doubleValue]]; + [self updateTotal]; + [pool release]; + } + return self; + } + - (Position*) initWithIdentifier: (NSString*) newIdentifier playerFormRate: (double) newPlayerFormRate experienceRate: (double) newExperienceRate *************** *** 219,222 **** --- 242,252 ---- } + + -(NSString*) saveString { + return [NSString stringWithFormat: + @"%@|%f|%f|%f|%f|%f|%f|%f|%f|%f|%f", + identifier, playerFormRate, experienceRate, staminaRate, keeperRate, playmakingRate, passingRate, wingerRate, defenderRate, scorerRate, setPiecesRate]; + } + -(void) saveToUserDefaults { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; Index: PositionHeap.m =================================================================== RCS file: /cvsroot/macattrick/macattrick/PositionHeap.m,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PositionHeap.m 7 Feb 2005 21:15:40 -0000 1.1 --- PositionHeap.m 8 May 2005 20:17:48 -0000 1.2 *************** *** 55,58 **** --- 55,71 ---- } + - (void) loadPositionHeapFromFileName: (NSString*) filename { + NSDictionary *dic = [[NSDictionary alloc] initWithContentsOfFile:filename]; + NSEnumerator *en = [dic keyEnumerator]; + NSString *currentKey = nil; + while(currentKey = [en nextObject]) { + Position *newPosition = [[Position alloc] initFromSaveString:[dic valueForKey:currentKey]]; + [positionsDictionary setValue: newPosition forKey: currentKey]; + [newPosition release]; + } + [dic release]; + } + + -(Position*) positionWithIdentifier: (NSString*) positionsIdentifier { Position *pos = [positionsDictionary objectForKey:positionsIdentifier]; *************** *** 117,120 **** --- 130,134 ---- [pos release]; } + [self savePositionsToUserDefaults]; } *************** *** 169,173 **** - (void) saveToFile: (NSString *) filename { ! [positionsDictionary writeToFile:filename atomically:NO]; } --- 183,196 ---- - (void) saveToFile: (NSString *) filename { ! [self loadPositions]; ! NSMutableDictionary *saveDic = [[NSMutableDictionary alloc] initWithCapacity:[positionsDictionary count]]; ! NSEnumerator *en = [positionsDictionary objectEnumerator]; ! Position *current = nil; ! while(current = [en nextObject]) { ! [saveDic setValue:[current saveString] forKey:[current identifier]]; ! } ! [saveDic writeToFile:filename atomically:NO]; ! [saveDic release]; ! } Index: Position.h =================================================================== RCS file: /cvsroot/macattrick/macattrick/Position.h,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** Position.h 25 Apr 2005 20:22:37 -0000 1.8 --- Position.h 8 May 2005 20:17:47 -0000 1.9 *************** *** 51,54 **** --- 51,56 ---- -(Position*) initFromUserDefaults: (NSString*) newIdentifier; + -(Position*) initFromSaveString: (NSString*) saveString; + - (Position*) initWithIdentifier: (NSString*) newIdentifier staminaRate: (double) newStaminaRate keeperRate: (double) newKeeperRate *************** *** 88,91 **** --- 90,95 ---- -(void) saveToUserDefaults; + -(NSString*) saveString; + // class methods Index: PositionHeap.h =================================================================== RCS file: /cvsroot/macattrick/macattrick/PositionHeap.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PositionHeap.h 7 Feb 2005 21:15:40 -0000 1.1 --- PositionHeap.h 8 May 2005 20:17:47 -0000 1.2 *************** *** 39,42 **** --- 39,44 ---- + (PositionHeap*) uniqueInstance; + - (void) loadPositionHeapFromFileName: (NSString*) filename; + - (Position*) positionWithIdentifier: (NSString*) positionsIdentifier; |