mirror of
https://github.com/Ranchero-Software/NetNewsWire
synced 2025-08-12 06:26:36 +00:00
Move the timeline table’s data source a separate file/class.
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
//
|
||||
// TimelineTableViewDataSource.swift
|
||||
// Evergreen
|
||||
//
|
||||
// Created by Brent Simmons on 10/29/17.
|
||||
// Copyright © 2017 Ranchero Software. All rights reserved.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
|
||||
final class TimelineTableViewDataSource {
|
||||
|
||||
private weak var timelineViewController: TimelineViewController?
|
||||
|
||||
init(timelineViewController: TimelineViewController) {
|
||||
|
||||
self.timelineViewController = timelineViewController
|
||||
}
|
||||
|
||||
// MARK: NSTableViewDataSource
|
||||
|
||||
func numberOfRows(in tableView: NSTableView) -> Int {
|
||||
|
||||
return timelineViewController?.articles.count ? 0
|
||||
}
|
||||
|
||||
func tableView(_ tableView: NSTableView, objectValueFor tableColumn: NSTableColumn?, row: Int) -> Any? {
|
||||
|
||||
return timelineViewController?.articleAtRow(row) ? nil
|
||||
}
|
||||
|
||||
}
|
||||
@@ -17,6 +17,7 @@ class TimelineViewController: NSViewController, NSTableViewDelegate, NSTableView
|
||||
|
||||
@IBOutlet var tableView: TimelineTableView!
|
||||
private var undoableCommands = [UndoableCommand]()
|
||||
private var dataSource: TimelineTableViewDataSource!
|
||||
var didRegisterForNotifications = false
|
||||
var fontSize: FontSize = AppDefaults.shared.timelineFontSize {
|
||||
didSet {
|
||||
@@ -69,6 +70,9 @@ class TimelineViewController: NSViewController, NSTableViewDelegate, NSTableView
|
||||
|
||||
override func viewDidLoad() {
|
||||
|
||||
dataSource = TimelineTableViewDataSource(timelineViewController: self)
|
||||
tableView.dataSource = dataSource
|
||||
|
||||
cellAppearance = TimelineCellAppearance(theme: currentTheme, fontSize: fontSize)
|
||||
tableView.rowHeight = calculateRowHeight()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user