diff --git a/Free Ruler/AppDelegate.swift b/Free Ruler/AppDelegate.swift
index 5185d81..430c570 100644
--- a/Free Ruler/AppDelegate.swift
+++ b/Free Ruler/AppDelegate.swift
@@ -19,6 +19,7 @@ class AppDelegate: NSObject, NSApplicationDelegate {
@IBOutlet weak var pixelsMenuItem: NSMenuItem!
@IBOutlet weak var millimetersMenuItem: NSMenuItem!
@IBOutlet weak var inchesMenuItem: NSMenuItem!
+ @IBOutlet weak var userDefinedMenuItem: NSMenuItem!
@IBOutlet weak var cycleUnitsMenuItem: NSMenuItem!
@IBOutlet weak var floatRulersMenuItem: NSMenuItem!
@@ -73,6 +74,7 @@ class AppDelegate: NSObject, NSApplicationDelegate {
pixelsMenuItem?.state = prefs.unit == .pixels ? .on : .off
millimetersMenuItem?.state = prefs.unit == .millimeters ? .on : .off
inchesMenuItem?.state = prefs.unit == .inches ? .on : .off
+ userDefinedMenuItem?.state = prefs.unit == .user ? .on: .off
}
func redrawRulers() {
@@ -138,6 +140,9 @@ class AppDelegate: NSObject, NSApplicationDelegate {
@IBAction func setUnitInches(_ sender: Any) {
prefs.unit = .inches
}
+ @IBAction func setUnitUserDefined(_ sender: Any) {
+ prefs.unit = .user
+ }
@IBAction func cycleUnits(_ sender: Any) {
switch prefs.unit {
case .pixels:
@@ -145,6 +150,8 @@ class AppDelegate: NSObject, NSApplicationDelegate {
case .millimeters:
prefs.unit = .inches
case .inches:
+ prefs.unit = .user
+ case .user:
prefs.unit = .pixels
}
}
diff --git a/Free Ruler/Base.lproj/MainMenu.xib b/Free Ruler/Base.lproj/MainMenu.xib
index 432c5fb..94fc721 100644
--- a/Free Ruler/Base.lproj/MainMenu.xib
+++ b/Free Ruler/Base.lproj/MainMenu.xib
@@ -22,6 +22,7 @@
+
@@ -159,6 +160,12 @@
+