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; |