project_files/HedgewarsMobile/Classes/TeamConfigViewController.m
changeset 6209 074ab6ebcb3e
parent 6115 485cfecadc9a
child 6219 c193881389c1
equal deleted inserted replaced
6208:b831679e9467 6209:074ab6ebcb3e
   106             numberOfHogs = HW_getMaxNumberOfHogs();
   106             numberOfHogs = HW_getMaxNumberOfHogs();
   107     }
   107     }
   108     return numberOfHogs;
   108     return numberOfHogs;
   109 }
   109 }
   110 
   110 
   111 -(UIImage *)drawHogsRepeated:(NSInteger) manyTimes {
       
   112     NSString *imgString = [[NSString alloc] initWithFormat:@"%@/hedgehog.png",[[NSBundle mainBundle] resourcePath]];
       
   113     UIImage *hogSprite = [[UIImage alloc] initWithContentsOfFile:imgString];
       
   114     [imgString release];
       
   115     CGFloat screenScale = [[UIScreen mainScreen] scale];
       
   116     int w = hogSprite.size.width * screenScale;
       
   117     int h = hogSprite.size.height * screenScale;
       
   118     CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
       
   119     CGContextRef context = CGBitmapContextCreate(NULL, w * 3, h, 8, 4 * w * 3, colorSpace, kCGImageAlphaPremultipliedFirst);
       
   120     
       
   121     // draw the two images in the current context
       
   122     for (int i = 0; i < manyTimes; i++)
       
   123         CGContextDrawImage(context, CGRectMake(i*8*screenScale, 0, w, h), [hogSprite CGImage]);
       
   124     [hogSprite release];
       
   125     
       
   126     // Create bitmap image info from pixel data in current context
       
   127     CGImageRef imageRef = CGBitmapContextCreateImage(context);
       
   128     
       
   129     // Create a new UIImage object
       
   130     UIImage *resultImage = [UIImage imageWithCGImage:imageRef scale:screenScale orientation:UIImageOrientationUp];
       
   131     
       
   132     // Release colorspace, context and bitmap information
       
   133     CGColorSpaceRelease(colorSpace);
       
   134     CGContextRelease(context);
       
   135     CFRelease(imageRef);
       
   136 
       
   137     return resultImage;
       
   138 }
       
   139 
       
   140 #pragma mark -
   111 #pragma mark -
   141 #pragma mark Table view data source
   112 #pragma mark Table view data source
   142 -(NSInteger) numberOfSectionsInTableView:(UITableView *)tableView {
   113 -(NSInteger) numberOfSectionsInTableView:(UITableView *)tableView {
   143     return 2;
   114     return 2;
   144 }
   115 }
   172         [squareButton selectColor:[[selectedRow objectForKey:@"color"] intValue]];
   143         [squareButton selectColor:[[selectedRow objectForKey:@"color"] intValue]];
   173         NSNumber *hogNumber = [selectedRow objectForKey:@"number"];
   144         NSNumber *hogNumber = [selectedRow objectForKey:@"number"];
   174         [squareButton setTitle:[hogNumber stringValue] forState:UIControlStateNormal];
   145         [squareButton setTitle:[hogNumber stringValue] forState:UIControlStateNormal];
   175         squareButton.ownerDictionary = selectedRow;
   146         squareButton.ownerDictionary = selectedRow;
   176 
   147 
   177         cell.imageView.image = [self drawHogsRepeated:[hogNumber intValue]];
   148         cell.imageView.image = [UIImage drawHogsRepeated:[hogNumber intValue]];
   178         ((HoldTableViewCell *)cell).delegate = self;
   149         ((HoldTableViewCell *)cell).delegate = self;
   179     } else {
   150     } else {
   180         cell = [aTableView dequeueReusableCellWithIdentifier:CellIdentifier1];
   151         cell = [aTableView dequeueReusableCellWithIdentifier:CellIdentifier1];
   181         if (cell == nil)
   152         if (cell == nil)
   182             cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier1] autorelease];
   153             cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier1] autorelease];
   275         NSInteger increaseNumber = [[selectedRow objectForKey:@"number"] intValue] + 1;
   246         NSInteger increaseNumber = [[selectedRow objectForKey:@"number"] intValue] + 1;
   276         NSNumber *newNumber = [NSNumber numberWithInt:[self filterNumberOfHogs:increaseNumber]];
   247         NSNumber *newNumber = [NSNumber numberWithInt:[self filterNumberOfHogs:increaseNumber]];
   277         [squareButton setTitle:[newNumber stringValue] forState:UIControlStateNormal];
   248         [squareButton setTitle:[newNumber stringValue] forState:UIControlStateNormal];
   278         [selectedRow setObject:newNumber forKey:@"number"];
   249         [selectedRow setObject:newNumber forKey:@"number"];
   279 
   250 
   280         cell.imageView.image = [self drawHogsRepeated:[newNumber intValue]];
   251         cell.imageView.image = [UIImage drawHogsRepeated:[newNumber intValue]];
   281     }
   252     }
   282 }
   253 }
   283 
   254 
   284 -(void) holdAction:(NSString *)content onTable:(UITableView *)aTableView {
   255 -(void) holdAction:(NSString *)content onTable:(UITableView *)aTableView {
   285     NSInteger row;
   256     NSInteger row;