refactor item adding move refresh and quit out of the loop

This commit is contained in:
Felix Förtsch
2018-10-15 09:29:35 +02:00
committed by Felix Förtsch
parent e72b0f3aba
commit c5fcd5f4e2
2 changed files with 11 additions and 16 deletions

View File

@@ -24,26 +24,21 @@ class StatusBarController: NSObject, NSMenuItemValidation {
icon?.isTemplate = true
statusItem.image = icon
statusItem.menu = statusBar
statusBar.addItem(NSMenuItem.init(title: "Refresh", action: #selector(generateMenu), keyEquivalent: ""))
statusBar.addItem(NSMenuItem.init(title: "Quit", action: #selector(quitClicked), keyEquivalent: ""))
for item in statusBar.items {
item.target = self
}
statusBar.addItem(NSMenuItem.separator())
generateMenu()
}
@objc func generateMenu() {
statusBar.removeAllItems()
var menu = [NSMenuItem]()
menu.append(NSMenuItem.init(title: "Refresh", action: #selector(generateMenu), keyEquivalent: ""))
menu.append(NSMenuItem.separator())
if let matches = matchesAPI.fetchMatches(for: "dota2") {
for match in matches {
menu.append(NSMenuItem(title: match.league + match.team1name + match.team1score + ":" + match.team2score + match.team2name, action: nil, keyEquivalent: ""))
}
}
menu.append(NSMenuItem.separator())
menu.append(NSMenuItem.init(title: "Quit", action: #selector(quitClicked), keyEquivalent: ""))
for item in menu {
item.target = self
statusBar.addItem(item)
}
// if let matches = matchesAPI.fetchMatches(for: "dota2") {
// for match in matches {
// menu.append(NSMenuItem(title: match.league + match.team1name + match.team1score + ":" + match.team2score + match.team2name, action: nil, keyEquivalent: ""))
// }
// }
}
@objc func quitClicked(_ sender: NSMenuItem) {