/* }}} */
/* Source Controller {{{ */
@interface SourceController : FilteredPackageListController {
- Source *source_;
+ _transient Source *source_;
+ NSString *uri_;
}
- (id) initWithDatabase:(Database *)database source:(Source *)source;
- (id) initWithDatabase:(Database *)database source:(Source *)source {
source_ = source;
+ uri_ = [source uri];
if ((self = [super initWithDatabase:database title:[source label] filter:@selector(isVisibleInSource:) with:source]) != nil) {
} return self;
}
+- (void) reloadData {
+ NSArray *sources = [database_ sources];
+ for (Source *source in sources) {
+ if ([[source uri] isEqual:uri_]) {
+ source_ = source;
+ uri_ = [source uri];
+ break;
+ }
+ }
+
+ [self setObject:source_];
+
+ [super reloadData];
+}
+
@end
/* }}} */
/* Sources Controller {{{ */