diff --git a/Example/RxRealmDataSources_MacExample/TableViewController.swift b/Example/RxRealmDataSources_MacExample/TableViewController.swift index bf93a69..424ce68 100644 --- a/Example/RxRealmDataSources_MacExample/TableViewController.swift +++ b/Example/RxRealmDataSources_MacExample/TableViewController.swift @@ -25,7 +25,7 @@ class TableViewController: NSViewController { super.viewDidLoad() // create data source - let dataSource = RxTableViewRealmDataSource(cellIdentifier: "Cell", cellType: NSTableCellView.self) {cell, row, lap in + let dataSource = RxTableViewRealmDataSource(cellIdentifier: "Cell", cellType: NSTableCellView.self) {cell, row, columnId, lap in cell.textField!.stringValue = "\(lap.text)" } dataSource.delegate = self diff --git a/Pod/Classes/RxTableViewRealmDataSource.swift b/Pod/Classes/RxTableViewRealmDataSource.swift index d2da35c..313a2f4 100644 --- a/Pod/Classes/RxTableViewRealmDataSource.swift +++ b/Pod/Classes/RxTableViewRealmDataSource.swift @@ -121,8 +121,8 @@ import RxRealm import Cocoa - public typealias TableCellFactory = (RxTableViewRealmDataSource, NSTableView, Int, E) -> NSTableCellView - public typealias TableCellConfig = (CellType, Int, E) -> Void + public typealias TableCellFactory = (RxTableViewRealmDataSource, NSTableView, Int, String?, E) -> NSTableCellView + public typealias TableCellConfig = (CellType, Int, String?, E) -> Void open class RxTableViewRealmDataSource: NSObject, NSTableViewDataSource, NSTableViewDelegate { @@ -151,9 +151,9 @@ import RxRealm public init(cellIdentifier: String, cellType: CellType.Type, cellConfig: @escaping TableCellConfig) where CellType: NSTableCellView { self.cellIdentifier = cellIdentifier - self.cellFactory = { ds, tv, row, model in + self.cellFactory = { ds, tv, row, columnId, model in let cell = tv.makeView(withIdentifier: NSUserInterfaceItemIdentifier(rawValue: cellIdentifier), owner: tv) as! CellType - cellConfig(cell, row, model) + cellConfig(cell, row, columnId, model) return cell } } @@ -164,7 +164,8 @@ import RxRealm } public func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn?, row: Int) -> NSView? { - return cellFactory(self, tableView, row, items![row]) + let columnId = tableColumn?.identifier.rawValue + return cellFactory(self, tableView, row, columnId, items![row]) } // MARK: - Proxy unimplemented data source and delegate methods