// // SceneModel.swift // NetNewsWire // // Created by Maurice Parker on 6/28/20. // Copyright © 2020 Ranchero Software. All rights reserved. // import Foundation import Account final class SceneModel: ObservableObject { @Published var refreshProgressState = RefreshProgressModel.State.none var sidebarModel: SidebarModel? var timelineModel: TimelineModel? var articleModel: ArticleModel? private var refreshProgressModel: RefreshProgressModel? = nil func startup() { self.refreshProgressModel = RefreshProgressModel() self.refreshProgressModel!.$state.assign(to: self.$refreshProgressState) } } // MARK: SidebarModelDelegate extension SceneModel: SidebarModelDelegate { func unreadCount(for feed: Feed) -> Int { // TODO: Get the count from the timeline if Feed is the current timeline return feed.unreadCount } } // MARK: TimelineModelDelegate extension SceneModel: TimelineModelDelegate { func timelineRequestedWebFeedSelection(_: TimelineModel, webFeed: WebFeed) { } } // MARK: ArticleModelDelegate extension SceneModel: ArticleModelDelegate { }