+ list_ = [[UITable alloc] initWithFrame:[self bounds]];
+ [self addSubview:list_];
+
+ UITableColumn *column = [[[UITableColumn alloc]
+ initWithTitle:@"Name"
+ identifier:@"name"
+ width:[self frame].size.width
+ ] autorelease];
+
+ [list_ setDataSource:self];
+ [list_ setSeparatorStyle:1];
+ [list_ addTableColumn:column];
+ [list_ setDelegate:self];
+ [list_ setReusesTableCells:YES];
+ } return self;
+}
+
+- (void) setPackage:(Package *)package {
+ if (package_ != nil) {
+ [package_ autorelease];
+ package_ = nil;
+ }
+
+ if (name_ != nil) {
+ [name_ release];
+ name_ = nil;
+ }
+
+ [files_ removeAllObjects];
+
+ if (package != nil) {
+ package_ = [package retain];
+ name_ = [[package id] retain];
+
+ NSString *list = [NSString
+ stringWithContentsOfFile:[NSString stringWithFormat:@"/var/lib/dpkg/info/%@.list", name_]
+ encoding:kCFStringEncodingUTF8
+ error:NULL
+ ];
+
+ if (list != nil) {
+ [files_ addObjectsFromArray:[list componentsSeparatedByString:@"\n"]];
+ [files_ removeLastObject];
+ }
+ }
+
+ [list_ reloadData];
+}
+
+- (void) resetViewAnimated:(BOOL)animated {
+ [list_ resetViewAnimated:animated];
+}
+
+- (void) reloadData {
+ [self setPackage:[database_ packageWithName:name_]];
+ [self reloadButtons];
+}
+
+- (NSString *) title {
+ return @"File Contents";
+}