project_files/HedgewarsMobile/Classes/TeamConfigViewController.m
author koda
Sat, 25 Sep 2010 03:04:22 +0200
changeset 3902 3aac7ca07b0e
parent 3829 81db3c85784b
child 3917 4c243b1eac97
permissions -rw-r--r--
have Saves restart net when loaded, also resumes music fix saving on hwmobile
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3829
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     1
/*
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     2
 * Hedgewars-iOS, a Hedgewars port for iOS devices
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     3
 * Copyright (c) 2009-2010 Vittorio Giovara <vittorio.giovara@gmail.com>
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     4
 *
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     5
 * This program is free software; you can redistribute it and/or modify
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     7
 * the Free Software Foundation; version 2 of the License
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     8
 *
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    12
 * GNU General Public License for more details.
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    13
 *
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    14
 * You should have received a copy of the GNU General Public License
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    15
 * along with this program; if not, write to the Free Software
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    16
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    17
 *
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    18
 * File created on 20/04/2010.
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    19
 */
81db3c85784b headers ftw, also right project file
koda
parents: 3814
diff changeset
    20
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    21
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    22
#import "TeamConfigViewController.h"
3780
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
    23
#import <QuartzCore/QuartzCore.h>
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    24
#import "CommodityFunctions.h"
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    25
#import "HogButtonView.h"
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    26
#import "SquareButtonView.h"
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    27
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    28
@implementation TeamConfigViewController
3739
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
    29
@synthesize listOfTeams, listOfSelectedTeams, cachedContentsOfDir;
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    30
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    31
#define NUMBERBUTTON_TAG 123456
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    32
#define SQUAREBUTTON_TAG 654321
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    33
#define LABEL_TAG        456123
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    34
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    35
#pragma mark -
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    36
#pragma mark View lifecycle
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    37
-(void) viewDidLoad {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    38
    [super viewDidLoad];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
    39
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    40
    CGSize screenSize = [[UIScreen mainScreen] bounds].size;
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    41
    self.view.frame = CGRectMake(0, 0, screenSize.height, screenSize.width - 44);
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
    42
    
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
    43
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
    44
        [self.tableView setBackgroundView:nil];
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
    45
        self.view.backgroundColor = [UIColor clearColor];
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
    46
        self.tableView.separatorColor = UICOLOR_HW_YELLOW_BODER;
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
    47
    }
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
    48
    self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    49
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    50
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    51
-(void) viewWillAppear:(BOOL)animated {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    52
    [super viewWillAppear:animated];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    53
3739
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
    54
    NSArray *contentsOfDir = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:TEAMS_DIRECTORY() error:NULL];
3551
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    55
    // avoid overwriting selected teams when returning on this view
3739
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
    56
    if ([cachedContentsOfDir isEqualToArray:contentsOfDir] == NO) {
3551
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    57
        // integer representation of various color (defined in SquareButtonView)
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    58
        NSUInteger colors[6] = { 4421353, 4100897, 10632635, 16749353, 14483456, 7566195 };
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    59
        NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:[contentsOfDir count]];
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    60
        for (int i = 0; i < [contentsOfDir count]; i++) {
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    61
            NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    62
                                         [contentsOfDir objectAtIndex:i],@"team",
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    63
                                         [NSNumber numberWithInt:4],@"number",
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    64
                                         [NSNumber numberWithInt:colors[i%6]],@"color",nil];
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    65
            [array addObject:dict];
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    66
            [dict release];
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    67
        }
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    68
        self.listOfTeams = array;
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    69
        [array release];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
    70
3551
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    71
        NSMutableArray *emptyArray = [[NSMutableArray alloc] initWithObjects:nil];
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    72
        self.listOfSelectedTeams = emptyArray;
d4de36b3801a moar zoom, fixed fort mode, other glitches
koda
parents: 3547
diff changeset
    73
        [emptyArray release];
3739
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
    74
        
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
    75
        cachedContentsOfDir = [[NSArray alloc] initWithArray:contentsOfDir copyItems:YES];
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    76
    }
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    77
    [self.tableView reloadData];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    78
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    79
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    80
-(BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    81
    return rotationManager(interfaceOrientation);
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    82
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    83
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    84
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    85
#pragma mark -
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    86
#pragma mark Table view data source
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    87
-(NSInteger) numberOfSectionsInTableView:(UITableView *)tableView {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    88
    return 2;
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    89
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    90
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    91
-(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    92
    if (section == 0)
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    93
        return [listOfSelectedTeams count] ;
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    94
    else
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    95
        return [listOfTeams count];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    96
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    97
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    98
// Customize the appearance of table view cells.
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
    99
-(UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   100
    static NSString *CellIdentifier0 = @"Cell0";
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   101
    static NSString *CellIdentifier1 = @"Cell1";
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   102
    NSInteger section = [indexPath section];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   103
    UITableViewCell *cell;
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   104
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   105
    if (section == 0) {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   106
        cell = [aTableView dequeueReusableCellWithIdentifier:CellIdentifier0];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   107
        if (cell == nil) {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   108
            cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier0] autorelease];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   109
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   110
            UIButton *numberButton = [[HogButtonView alloc] initWithFrame:CGRectMake(12, 5, 88, 32)];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   111
            numberButton.tag = NUMBERBUTTON_TAG;
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   112
            [cell addSubview:numberButton];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   113
            [numberButton release];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   114
3814
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   115
            SquareButtonView *squareButton = [[SquareButtonView alloc] initWithFrame:CGRectMake(12+88+6, 5, 36, 36)];
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   116
            squareButton.tag = SQUAREBUTTON_TAG;
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   117
            [cell addSubview:squareButton];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   118
            [squareButton release];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   119
3814
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   120
            UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(12+88+6+36, 10, 103, 25)];
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   121
            label.textAlignment = UITextAlignmentLeft;
3814
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   122
            label.minimumFontSize = 11;
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   123
            label.adjustsFontSizeToFitWidth = YES;
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   124
            label.baselineAdjustment = UIBaselineAdjustmentAlignCenters;
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   125
            label.backgroundColor = [UIColor clearColor];
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   126
            label.font = [UIFont boldSystemFontOfSize:[UIFont labelFontSize]];
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   127
            label.textColor = UICOLOR_HW_YELLOW_TEXT;
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   128
            label.tag = LABEL_TAG;
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   129
            [cell.contentView addSubview:label];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   130
            [label release];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   131
        }
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   132
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   133
        NSMutableDictionary *selectedRow = [listOfSelectedTeams objectAtIndex:[indexPath row]];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   134
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   135
        UILabel *cellLabel = (UILabel *)[cell viewWithTag:LABEL_TAG];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   136
        cellLabel.text = [[selectedRow objectForKey:@"team"] stringByDeletingPathExtension];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   137
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   138
        HogButtonView *numberButton = (HogButtonView *)[cell viewWithTag:NUMBERBUTTON_TAG];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   139
        [numberButton drawManyHogs:[[selectedRow objectForKey:@"number"] intValue]];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   140
        numberButton.ownerDictionary = selectedRow;
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   141
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   142
        SquareButtonView *squareButton = (SquareButtonView *)[cell viewWithTag:SQUAREBUTTON_TAG];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   143
        [squareButton selectColor:[[selectedRow objectForKey:@"color"] intValue]];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   144
        squareButton.ownerDictionary = selectedRow;
3814
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   145
        
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   146
        NSString *teamPath = [NSString stringWithFormat:@"%@/%@",TEAMS_DIRECTORY(),[selectedRow objectForKey:@"team"]];
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   147
        NSDictionary *firstHog = [[[NSDictionary dictionaryWithContentsOfFile:teamPath] objectForKey:@"hedgehogs"] objectAtIndex:0];
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   148
        if ([[firstHog objectForKey:@"level"] intValue]> 0) {
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   149
            NSString *filePath = [NSString stringWithFormat:@"%@/cyborg.png",HATS_DIRECTORY()];
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   150
            UIImage *sprite = [[UIImage alloc] initWithContentsOfFile:filePath andCutAt:CGRectMake(0, 2, 32, 32)];
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   151
            UIImageView *spriteView = [[UIImageView alloc] initWithImage:sprite];
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   152
            [sprite release];
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   153
            
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   154
            cell.accessoryView = spriteView;
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   155
            [spriteView release];
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   156
        } else
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   157
            cell.accessoryView = nil;
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   158
    } else {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   159
        cell = [aTableView dequeueReusableCellWithIdentifier:CellIdentifier1];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   160
        if (cell == nil)
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   161
            cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier1] autorelease];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   162
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   163
        cell.textLabel.text = [[[listOfTeams objectAtIndex:[indexPath row]] objectForKey:@"team"] stringByDeletingPathExtension];
3814
7af568bc0710 discrimination between ai and humans
koda
parents: 3780
diff changeset
   164
        cell.accessoryView = nil;
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   165
    }
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   166
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   167
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   168
        cell.textLabel.textColor = UICOLOR_HW_YELLOW_TEXT;
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   169
        cell.backgroundColor = [UIColor blackColor];
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   170
    }
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   171
    
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   172
    return cell;
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   173
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   174
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   175
-(CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   176
    return 40.0;
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   177
}
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   178
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   179
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
3780
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   180
    UILabel *theLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width * 80/100, 30)];
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   181
    theLabel.backgroundColor = [UIColor blueColor];
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   182
    if (section == 0) 
3780
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   183
        theLabel.text = NSLocalizedString(@"Playing Teams",@"");
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   184
    else
3780
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   185
        theLabel.text = NSLocalizedString(@"Available Teams",@"");
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   186
    theLabel.center = CGPointMake(self.view.frame.size.width/2, 20);
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   187
    theLabel.textColor = UICOLOR_HW_YELLOW_TEXT;
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   188
    theLabel.textAlignment = UITextAlignmentCenter;
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   189
    theLabel.font = [UIFont boldSystemFontOfSize:[UIFont labelFontSize]*80/100];
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   190
    theLabel.backgroundColor = UICOLOR_HW_DARKBLUE;
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   191
    
3780
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   192
    [theLabel.layer setBorderWidth:1.5f];
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   193
    [theLabel.layer setBorderColor:[UICOLOR_HW_YELLOW_BODER CGColor]];
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   194
    [theLabel.layer setCornerRadius:8.0f];
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   195
    [theLabel.layer setMasksToBounds:YES];
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   196
3780
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   197
    UIView *theView = [[[UIView alloc] init] autorelease];
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   198
    [theView addSubview:theLabel];
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   199
    [theLabel release];
7c704e69242e fade in when returning from game, labels rewritten so that they are drawn at runtime (more flexibility with i18n and iphone support)
koda
parents: 3739
diff changeset
   200
    return theView;
3703
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   201
}
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   202
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   203
/*
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   204
-(NSString *)tableView:(UITableView *)aTableView titleForHeaderInSection:(NSInteger)section {
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   205
    if (section == 0)
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   206
        return NSLocalizedString(@"Playing Teams",@"");
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   207
    else
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   208
        return NSLocalizedString(@"Available Teams",@"");
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   209
}
12d17c6e8855 halfway-through finishing the frontend with new graphics by Tiy + initial 'About' page set up
koda
parents: 3697
diff changeset
   210
*/
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   211
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   212
#pragma mark -
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   213
#pragma mark Table view delegate
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   214
-(void) tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   215
    NSInteger row = [indexPath row];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   216
    NSInteger section = [indexPath section];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   217
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   218
    if (section == 0) {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   219
        [self.listOfTeams addObject:[self.listOfSelectedTeams objectAtIndex:row]];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   220
        [self.listOfSelectedTeams removeObjectAtIndex:row];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   221
    } else {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   222
        [self.listOfSelectedTeams addObject:[self.listOfTeams objectAtIndex:row]];
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3662
diff changeset
   223
        [self.listOfTeams removeObjectAtIndex:row];
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   224
    }
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   225
    [aTableView reloadData];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   226
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   227
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   228
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   229
#pragma mark -
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   230
#pragma mark Memory management
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   231
-(void) didReceiveMemoryWarning {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   232
    // Releases the view if it doesn't have a superview.
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   233
    [super didReceiveMemoryWarning];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   234
    // Relinquish ownership any cached data, images, etc that aren't in use.
3739
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
   235
    self.cachedContentsOfDir = nil;
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   236
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   237
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   238
-(void) viewDidUnload {
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   239
    self.listOfTeams = nil;
3739
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
   240
    self.listOfSelectedTeams = nil;
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
   241
    self.cachedContentsOfDir = nil;
3662
a44406f4369b polish polish polish polish (also: panning horizontal fix, panning momentum, settings page reworked yet again, memory leaks, crashes, segfaults)
koda
parents: 3659
diff changeset
   242
    MSG_DIDUNLOAD();
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   243
    [super viewDidUnload];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   244
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   245
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   246
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   247
-(void) dealloc {
3739
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
   248
    [listOfTeams release];
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
   249
    [listOfSelectedTeams release];
97cf933e5bd2 disable AI teleport
koda
parents: 3703
diff changeset
   250
    [cachedContentsOfDir release];
3547
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   251
    [super dealloc];
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   252
}
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   253
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   254
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   255
@end
02875b1145b7 i <3 mercurial
koda
parents: 3546
diff changeset
   256