1
0
mirror of https://github.com/nicoverbruggen/phpmon.git synced 2025-08-09 12:43:01 +02:00

👌 Tweak order of menu items (#69)

This commit is contained in:
2021-12-16 22:57:37 +01:00
parent adc31984a8
commit 66a8c17f1f
2 changed files with 34 additions and 31 deletions

View File

@@ -128,6 +128,11 @@ class MainMenu: NSObject, NSWindowDelegate, NSMenuDelegate {
// Add Valet interactions // Add Valet interactions
menu.addValetMenuItems() menu.addValetMenuItems()
menu.addItem(NSMenuItem.separator())
// Add services
menu.addServicesMenuItems()
menu.addItem(NSMenuItem.separator())
// Add information about services & actions // Add information about services & actions
menu.addPhpConfigurationMenuItems() menu.addPhpConfigurationMenuItems()

View File

@@ -36,35 +36,9 @@ class StatusMenu : NSMenu {
self.addSwitchToPhpMenuItems() self.addSwitchToPhpMenuItems()
self.addItem(NSMenuItem.separator()) self.addItem(NSMenuItem.separator())
self.addServicesMenuItems()
} }
private func addSwitchToPhpMenuItems() { func addServicesMenuItems() {
var shortcutKey = 1
for index in (0..<App.shared.availablePhpVersions.count).reversed() {
// Get the short and long version
let shortVersion = App.shared.availablePhpVersions[index]
let longVersion = App.shared.cachedPhpInstallations[shortVersion]!.longVersion
let long = Preferences.preferences[.fullPhpVersionDynamicIcon] as! Bool
let versionString = long ? longVersion : shortVersion
let action = #selector(MainMenu.switchToPhpVersion(sender:))
let brew = (shortVersion == App.shared.brewPhpVersion) ? "php" : "php@\(shortVersion)"
let menuItem = PhpMenuItem(
title: "\("mi_php_switch".localized) \(versionString) (\(brew))",
action: (shortVersion == App.phpInstall?.version.short) ? nil : action, keyEquivalent: "\(shortcutKey)"
)
menuItem.version = shortVersion
shortcutKey = shortcutKey + 1
self.addItem(menuItem)
}
}
private func addServicesMenuItems() {
self.addItem(HeaderView.asMenuItem(text: "mi_active_services".localized)) self.addItem(HeaderView.asMenuItem(text: "mi_active_services".localized))
let services = NSMenuItem(title: "mi_manage_services".localized, action: nil, keyEquivalent: "") let services = NSMenuItem(title: "mi_manage_services".localized, action: nil, keyEquivalent: "")
@@ -74,17 +48,16 @@ class StatusMenu : NSMenu {
servicesMenu.addItem(NSMenuItem(title: "mi_restart_nginx".localized, action: #selector(MainMenu.restartNginx), keyEquivalent: "n")) servicesMenu.addItem(NSMenuItem(title: "mi_restart_nginx".localized, action: #selector(MainMenu.restartNginx), keyEquivalent: "n"))
servicesMenu.addItem( servicesMenu.addItem(
NSMenuItem(title: "mi_stop_all_services".localized, action: #selector(MainMenu.stopAllServices), keyEquivalent: "s"), NSMenuItem(title: "mi_stop_all_services".localized, action: #selector(MainMenu.stopAllServices), keyEquivalent: "s"),
withKeyModifier: [.command, .shift] withKeyModifier: [.command, .shift])
) servicesMenu.addItem(NSMenuItem(title: "mi_restart_all_services".localized, action: #selector(MainMenu.restartAllServices), keyEquivalent: "s"))
for item in servicesMenu.items { for item in servicesMenu.items {
item.target = MainMenu.shared item.target = MainMenu.shared
} }
self.setSubmenu(servicesMenu, for: services) self.setSubmenu(servicesMenu, for: services)
self.addForceLoadLatestVersion() self.addForceLoadLatestVersion()
self.addItem(services) self.addItem(services)
self.addItem(NSMenuItem(title: "mi_restart_all_services".localized, action: #selector(MainMenu.restartAllServices), keyEquivalent: "s"))
} }
func addForceLoadLatestVersion() { func addForceLoadLatestVersion() {
@@ -151,6 +124,31 @@ class StatusMenu : NSMenu {
self.addItem(NSMenuItem(title: "mi_php_refresh".localized, action: #selector(MainMenu.reloadPhpMonitorMenu), keyEquivalent: "r")) self.addItem(NSMenuItem(title: "mi_php_refresh".localized, action: #selector(MainMenu.reloadPhpMonitorMenu), keyEquivalent: "r"))
} }
private func addSwitchToPhpMenuItems() {
var shortcutKey = 1
for index in (0..<App.shared.availablePhpVersions.count).reversed() {
// Get the short and long version
let shortVersion = App.shared.availablePhpVersions[index]
let longVersion = App.shared.cachedPhpInstallations[shortVersion]!.longVersion
let long = Preferences.preferences[.fullPhpVersionDynamicIcon] as! Bool
let versionString = long ? longVersion : shortVersion
let action = #selector(MainMenu.switchToPhpVersion(sender:))
let brew = (shortVersion == App.shared.brewPhpVersion) ? "php" : "php@\(shortVersion)"
let menuItem = PhpMenuItem(
title: "\("mi_php_switch".localized) \(versionString) (\(brew))",
action: (shortVersion == App.phpInstall?.version.short) ? nil : action, keyEquivalent: "\(shortcutKey)"
)
menuItem.version = shortVersion
shortcutKey = shortcutKey + 1
self.addItem(menuItem)
}
}
private func addExtensionItem(_ phpExtension: PhpExtension, _ shortcutKey: Int) { private func addExtensionItem(_ phpExtension: PhpExtension, _ shortcutKey: Int) {
let keyEquivalent = shortcutKey < 9 ? "\(shortcutKey)" : "" let keyEquivalent = shortcutKey < 9 ? "\(shortcutKey)" : ""