Remove TimelineDataSource, which was overkill.

This commit is contained in:
Brent Simmons
2018-12-27 22:16:38 -08:00
parent b9aab9a695
commit 7cb218b37f
4 changed files with 21 additions and 43 deletions

View File

@@ -1,32 +0,0 @@
//
// TimelineDataSource.swift
// NetNewsWire
//
// Created by Brent Simmons on 2/17/18.
// Copyright © 2018 Ranchero Software. All rights reserved.
//
import AppKit
@objc final class TimelineDataSource: NSObject, NSTableViewDataSource {
var articles = ArticleArray()
func numberOfRows(in tableView: NSTableView) -> Int {
return articles.count
}
func tableView(_ tableView: NSTableView, objectValueFor tableColumn: NSTableColumn?, row: Int) -> Any? {
return articles.articleAtRow(row) ?? nil
}
func tableView(_ tableView: NSTableView, pasteboardWriterForRow row: Int) -> NSPasteboardWriting? {
guard let article = articles.articleAtRow(row) else {
return nil
}
return ArticlePasteboardWriter(article: article)
}
}

View File

@@ -15,7 +15,6 @@ class TimelineViewController: NSViewController, UndoableCommandRunner {
@IBOutlet var tableView: TimelineTableView!
@IBOutlet var contextualMenuDelegate: TimelineContextualMenuDelegate?
@IBOutlet var dataSource: TimelineDataSource!
var sharingServiceDelegate: NSSharingServiceDelegate?
@@ -30,7 +29,6 @@ class TimelineViewController: NSViewController, UndoableCommandRunner {
var articles = ArticleArray() {
didSet {
if articles != oldValue {
dataSource.articles = articles
updateShowAvatars()
articleRowMap = [String: Int]()
tableView.reloadData()
@@ -532,6 +530,26 @@ extension TimelineViewController: NSUserInterfaceValidations {
}
}
// MARK: - NSTableViewDataSource
extension TimelineViewController: NSTableViewDataSource {
func numberOfRows(in tableView: NSTableView) -> Int {
return articles.count
}
func tableView(_ tableView: NSTableView, objectValueFor tableColumn: NSTableColumn?, row: Int) -> Any? {
return articles.articleAtRow(row) ?? nil
}
func tableView(_ tableView: NSTableView, pasteboardWriterForRow row: Int) -> NSPasteboardWriting? {
guard let article = articles.articleAtRow(row) else {
return nil
}
return ArticlePasteboardWriter(article: article)
}
}
// MARK: - NSTableViewDelegate
extension TimelineViewController: NSTableViewDelegate {