diff -r c11abf387a7d -r d5b30d6373fc project_files/HedgewarsMobile/Classes/EditableCellView.m --- a/project_files/HedgewarsMobile/Classes/EditableCellView.m Sat Jul 31 10:52:43 2010 +0200 +++ b/project_files/HedgewarsMobile/Classes/EditableCellView.m Sat Jul 31 11:24:53 2010 +0200 @@ -15,7 +15,7 @@ -(id) initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier { if ((self = [super initWithStyle:style reuseIdentifier:reuseIdentifier])) { delegate = nil; - + textField = [[UITextField alloc] initWithFrame:CGRectZero]; textField.backgroundColor = [UIColor clearColor]; textField.font = [UIFont boldSystemFontOfSize:[UIFont labelFontSize]]; @@ -25,17 +25,17 @@ textField.returnKeyType = UIReturnKeyDone; textField.adjustsFontSizeToFitWidth = YES; [textField addTarget:self action:@selector(save:) forControlEvents:UIControlEventEditingDidEndOnExit]; - + [self.contentView addSubview:textField]; //[textField release]; - + titleLabel = [[UILabel alloc] init]; titleLabel.textAlignment = UITextAlignmentLeft; titleLabel.backgroundColor = [UIColor clearColor]; titleLabel.font = [UIFont boldSystemFontOfSize:[UIFont labelFontSize]]; [self.contentView addSubview:titleLabel]; //[titleLabel release]; - + minimumCharacters = 1; maximumCharacters = 64; oldValue = nil; @@ -48,12 +48,12 @@ CGRect contentRect = self.contentView.bounds; CGFloat boundsX = contentRect.origin.x; - + int offset = 0; int skew = 0; if (self.imageView != nil) offset += self.imageView.frame.size.width; - + if ([self.titleLabel.text length] == 0) titleLabel.frame = CGRectZero; else { @@ -94,16 +94,16 @@ -(void) textFieldDidBeginEditing:(UITextField *)aTextField{ // don't interact with table below ((UITableView*)[self superview]).scrollEnabled = NO; - + self.oldValue = self.textField.text; - + UIBarButtonItem *cancelButton = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"Cancel",@"") style:UIBarButtonItemStylePlain target:self action:@selector(cancel:)]; [(UITableViewController *)delegate navigationItem].leftBarButtonItem = cancelButton; [cancelButton release]; - + UIBarButtonItem *saveButton = [[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"Save",@"") style:UIBarButtonItemStyleDone target:self @@ -116,18 +116,18 @@ use method below instead that allows some more interaction // don't accept 0-length strings -(BOOL) textFieldShouldEndEditing:(UITextField *)aTextField { - return ([aTextField.text length] > 0); + return ([aTextField.text length] > 0); } */ -(BOOL) textFieldShouldReturn:(UITextField *)aTextField { - return ([aTextField.text length] >= self.minimumCharacters); + return ([aTextField.text length] >= self.minimumCharacters); } // the textfield has been modified, tell the delegate to do something -(void) textFieldDidEndEditing:(UITextField *)aTextField{ ((UITableView*)[self superview]).scrollEnabled = YES; - + [(UITableViewController *)delegate navigationItem].rightBarButtonItem = [(UITableViewController *)delegate navigationItem].backBarButtonItem; [(UITableViewController *)delegate navigationItem].leftBarButtonItem = nil; } @@ -149,11 +149,11 @@ -(void) save:(id) sender { if (delegate == nil || ![delegate respondsToSelector:@selector(saveTextFieldValue:withTag:)]) return; - + // don't save if the textfield is invalid if (![self textFieldShouldReturn:textField]) return; - + [delegate saveTextFieldValue:self.textField.text withTag:self.tag]; [self.textField resignFirstResponder]; self.oldValue = nil;