summaryrefslogtreecommitdiffstats
path: root/Classes/TopicsViewController.m
diff options
context:
space:
mode:
Diffstat (limited to 'Classes/TopicsViewController.m')
-rw-r--r--Classes/TopicsViewController.m308
1 files changed, 104 insertions, 204 deletions
diff --git a/Classes/TopicsViewController.m b/Classes/TopicsViewController.m
index 51edcba..8bd4531 100644
--- a/Classes/TopicsViewController.m
+++ b/Classes/TopicsViewController.m
@@ -17,22 +17,6 @@
#import "HJManagedImageV.h"
#import "SourcesEditViewController.h"
-
-@implementation UINavigationBar (CustomImage)
-- (void)drawRect:(CGRect)rect {
- //NSLog(@"titlebar: %@", self.barStyle);
- if (self.barStyle == UIBarStyleDefault) {
- UIImage *image = [UIImage imageNamed: @"titleBarBackground.png"];
- [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
- }
- else {
- UIImage *image = [UIImage imageNamed: @"titleBarBackgroundBlack.png"];
- [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
- }
- //[super drawRect:rect];
-}
-@end
-
@implementation TopicsViewController
@synthesize topics, parser, tableView;
@@ -65,25 +49,6 @@
[self startParsing];
}
-//- (UINavigationController *)topicsNavigationController {
-// if (topicsNavigationController == nil) {
-// topicsNavigationController = [[UINavigationController alloc] initWithRootViewController:self.picDumpViewController];
-// }
-// return topicsNavigationController;
-//}
-//
-//- (PicDumpViewController *)picDumpViewController {
-// if (picDumpViewController == nil) {
-// picDumpViewController = [[PicDumpViewController alloc] initWithNibName:@"PicDumpViewController" bundle:nil];
-// }
-// return picDumpViewController;
-//}
-
-- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
- // Return the number of rows in the section.
- return [topics count];
-}
-
- (void) sourcesEditViewControllerDidFinish:(SourcesEditViewController *)controller {
[self dismissModalViewControllerAnimated:YES];
@@ -107,6 +72,82 @@
return photoViewController;
}
+#pragma mark -
+#pragma mark View lifecycle
+
+/*
+- (void)viewDidLoad {
+ [super viewDidLoad];
+
+ // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
+ // self.navigationItem.rightBarButtonItem = self.editButtonItem;
+}
+*/
+
+/*
+- (void)viewWillAppear:(BOOL)animated {
+ [super viewWillAppear:animated];
+}
+*/
+/*
+- (void)viewDidAppear:(BOOL)animated {
+ [super viewDidAppear:animated];
+}
+*/
+/*
+- (void)viewWillDisappear:(BOOL)animated {
+ [super viewWillDisappear:animated];
+}
+*/
+/*
+- (void)viewDidDisappear:(BOOL)animated {
+ [super viewDidDisappear:animated];
+}
+*/
+/*
+// Override to allow orientations other than the default portrait orientation.
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
+ // Return YES for supported orientations.
+ return (interfaceOrientation == UIInterfaceOrientationPortrait);
+}
+*/
+
+
+#pragma mark -
+#pragma mark Table view data source
+
+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
+ // Return the number of sections.
+ return 2;
+}
+
+#pragma mark -
+#pragma mark Table view delegate
+
+//- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
+// // Navigation logic may go here. Create and push another view controller.
+// /*
+// <#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil];
+// // ...
+// // Pass the selected object to the new view controller.
+// [self.navigationController pushViewController:detailViewController animated:YES];
+// [detailViewController release];
+// */
+//}
+
+
+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
+ // Return the number of rows in the section.
+ return [topics count];
+}
+
+- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
+ if (section == 0)
+ return @"Today";
+ else
+ return @"Yesterday";
+}
+
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
@@ -121,31 +162,13 @@
}
}
-- (void)startParsing {
- NSLog(@"startParsing");
- //self.navigationItem.rightBarButtonItem.enabled = NO;
- // Reset the title
- //self.title = NSLocalizedString(@"Getting Recent Picdumps...", @"Loading");
- // Allocate the array for song storage, or empty the results of previous parses
- if (topics == nil) {
- self.topics = [NSMutableArray array];
- } else {
- [topics removeAllObjects];
- [self.tableView reloadData];
- }
- // Create the parser, set its delegate, and start it.
- self.parser = [[[AcidCowFeedburnerParser alloc] init] autorelease];
- parser.delegate = self;
- [parser start];
-}
-
//- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
//{
// return 100;
//}
- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath {
-
+
static NSString *kCellIdentifier = @"TopicTableViewCell";
TopicTableViewCell *cell = (TopicTableViewCell *)[self.tableView dequeueReusableCellWithIdentifier:kCellIdentifier];
@@ -168,7 +191,7 @@
mi.tag = 999;
[cell addSubview:micon];
[cell addSubview:mi];
-
+
}
else {
//Get a reference to the managed image view that was already in the recycled cell, and clear it
@@ -177,44 +200,30 @@
[micon clear];
[mi clear];
}
-
+
//cell.useDarkBackground = (indexPath.row % 2 == 0);
cell.title = [[topics objectAtIndex:indexPath.row] title];
cell.picCount = [NSString stringWithFormat:@"%@", [[topics objectAtIndex:indexPath.row] picCount]];
- //cell.iconUrl = [[topics objectAtIndex:indexPath.row] iconUrl];
-
-// CGRect frame;
-// frame.size.width=94; frame.size.height=94;
-// frame.origin.x=3; frame.origin.y=3;
-// AsyncImageView* asyncImage = [[[AsyncImageView alloc]
-// initWithFrame:frame] autorelease];
-// asyncImage.tag = 999;
-// NSURL* url = [imageDownload
-// thumbnailURLAtIndex:indexPath.row];
+
micon.url = [NSURL URLWithString:@"http://www.acidcow.com/favicon.ico"];
mi.url = [NSURL URLWithString:[[topics objectAtIndex:indexPath.row] iconUrl]];
mi.squareCropped = true;
- //tell the object manager to manage the managed image view,
- //this causes the cached image to display, or the image to be loaded, cached, and displayed
[objMan manage:mi];
[objMan manage:micon];
-// [asyncImage loadImageFromURL:url];
-
-// [cell.contentView addSubview:asyncImage];
return cell;
}
- (void)tableView:(UITableView *)table didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
-// self.picDumpViewController.topic = [topics objectAtIndex:indexPath.row];
+ // self.picDumpViewController.topic = [topics objectAtIndex:indexPath.row];
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"back"
- style:UIBarButtonItemStyleBordered
- target:nil
- action:nil];
-// [self.navigationController pushViewController:picDumpViewController animated:YES];
-//
+ style:UIBarButtonItemStyleBordered
+ target:nil
+ action:nil];
+ // [self.navigationController pushViewController:picDumpViewController animated:YES];
+ //
photoViewController = [[[PhotoViewController alloc] init] autorelease];
photoViewController.topic = [topics objectAtIndex:indexPath.row];
[self.navigationController pushViewController:photoViewController animated:YES];
@@ -223,6 +232,24 @@
#pragma mark <iTunesRSSParserDelegate> Implementation
+- (void)startParsing {
+ NSLog(@"startParsing");
+ //self.navigationItem.rightBarButtonItem.enabled = NO;
+ // Reset the title
+ //self.title = NSLocalizedString(@"Getting Recent Picdumps...", @"Loading");
+ // Allocate the array for song storage, or empty the results of previous parses
+ if (topics == nil) {
+ self.topics = [NSMutableArray array];
+ } else {
+ [topics removeAllObjects];
+ [self.tableView reloadData];
+ }
+ // Create the parser, set its delegate, and start it.
+ self.parser = [[[AcidCowFeedburnerParser alloc] init] autorelease];
+ parser.delegate = self;
+ [parser start];
+}
+
- (void)parserDidEndParsingData:(XMLParser *)parser {
//self.title = [NSString stringWithFormat:NSLocalizedString(@"Recent Picdumps (%d)", @"Recent"), [topics count]];
[self.tableView reloadData];
@@ -249,133 +276,6 @@
}
#pragma mark -
-#pragma mark View lifecycle
-
-/*
-- (void)viewDidLoad {
- [super viewDidLoad];
-
- // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
- // self.navigationItem.rightBarButtonItem = self.editButtonItem;
-}
-*/
-
-/*
-- (void)viewWillAppear:(BOOL)animated {
- [super viewWillAppear:animated];
-}
-*/
-/*
-- (void)viewDidAppear:(BOOL)animated {
- [super viewDidAppear:animated];
-}
-*/
-/*
-- (void)viewWillDisappear:(BOOL)animated {
- [super viewWillDisappear:animated];
-}
-*/
-/*
-- (void)viewDidDisappear:(BOOL)animated {
- [super viewDidDisappear:animated];
-}
-*/
-/*
-// Override to allow orientations other than the default portrait orientation.
-- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
- // Return YES for supported orientations.
- return (interfaceOrientation == UIInterfaceOrientationPortrait);
-}
-*/
-
-
-#pragma mark -
-#pragma mark Table view data source
-
-//- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
-// // Return the number of sections.
-// return <#number of sections#>;
-//}
-//
-//
-//- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
-// // Return the number of rows in the section.
-// return <#number of rows in section#>;
-//}
-
-
-// Customize the appearance of table view cells.
-//- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
-//
-// static NSString *CellIdentifier = @"Cell";
-//
-// UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
-// if (cell == nil) {
-// cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
-// }
-//
-// // Configure the cell...
-//
-// return cell;
-//}
-
-
-/*
-// Override to support conditional editing of the table view.
-- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
- // Return NO if you do not want the specified item to be editable.
- return YES;
-}
-*/
-
-
-/*
-// Override to support editing the table view.
-- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
-
- if (editingStyle == UITableViewCellEditingStyleDelete) {
- // Delete the row from the data source.
- [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
- }
- else if (editingStyle == UITableViewCellEditingStyleInsert) {
- // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view.
- }
-}
-*/
-
-
-/*
-// Override to support rearranging the table view.
-- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath {
-}
-*/
-
-
-/*
-// Override to support conditional rearranging of the table view.
-- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath {
- // Return NO if you do not want the item to be re-orderable.
- return YES;
-}
-*/
-
-
-#pragma mark -
-#pragma mark Table view delegate
-
-//- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
-// // Navigation logic may go here. Create and push another view controller.
-// /*
-// <#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil];
-// // ...
-// // Pass the selected object to the new view controller.
-// [self.navigationController pushViewController:detailViewController animated:YES];
-// [detailViewController release];
-// */
-//}
-
-
-#pragma mark -
#pragma mark Memory management
- (void)didReceiveMemoryWarning {