 import RealmSwift
 import ConfCore
 
-class SessionsTableViewController: NSViewController {
     
     fileprivate struct Metrics {
         static let headerRowHeight: CGFloat = 20
         static let sessionRowHeight: CGFloat = 64
+    }
+    
+    private enum SessionsTableViewControllerMenuItemTags: Int {
+        
+        case Watched = 1000
+        case Unwatched = 1001
+        case Favorite = 1002
+        case RemoveFavorite = 1003
+        case Download = 1004
+        case CancelDownload = 1005
     }
     
     private let disposeBag = DisposeBag()

        
        let contextMenu = NSMenu.init(title: "Context Menu")
        
        contextMenu.addItem(NSMenuItem.init(title: "Mark as Watched", action: nil, keyEquivalent: ""))
        contextMenu.addItem(NSMenuItem.init(title: "Mark as Unwatched", action: nil, keyEquivalent: ""))
        contextMenu.addItem(NSMenuItem.separator())
        
        contextMenu.addItem(NSMenuItem.init(title: "Add to Favorites", action: nil, keyEquivalent: ""))
        contextMenu.addItem(NSMenuItem.init(title: "Remove From Favorites", action: nil, keyEquivalent: ""))
        contextMenu.addItem(NSMenuItem.separator())
        
        contextMenu.addItem(NSMenuItem.init(title: "Download", action: nil, keyEquivalent: ""))
        contextMenu.addItem(NSMenuItem.init(title: "Cancel Download", action: nil, keyEquivalent: ""))
        contextMenu.addItem(NSMenuItem.separator())
        
        tableView.menu = contextMenu
        

        }.bind(to: selectedSession).addDisposableTo(self.disposeBag)
    }
    
    func tableViewMenuItemClicked(_ menuItem: NSMenuItem) {
        

    }
    
    override func validateMenuItem(_ menuItem: NSMenuItem) -> Bool {
        
        return true
    }
}

extension SessionsTableViewController: NSTableViewDataSource, NSTableViewDelegate {
