diff --git a/A2Mac/Base.lproj/Main.storyboard b/A2Mac/Base.lproj/Main.storyboard
index 98c04e9..dfc9eb0 100644
--- a/A2Mac/Base.lproj/Main.storyboard
+++ b/A2Mac/Base.lproj/Main.storyboard
@@ -1275,7 +1275,7 @@
-
+
diff --git a/A2Mac/ToolBarController.swift b/A2Mac/ToolBarController.swift
index 27fab64..874d660 100644
--- a/A2Mac/ToolBarController.swift
+++ b/A2Mac/ToolBarController.swift
@@ -30,19 +30,26 @@ class ToolBarController: NSWindowController {
ViewController.current?.Reset(sender)
}
+ @IBAction func SelectAll(_ sender: Any) {
+// ViewController.current?.displayField.currentEditor()?.selectAll(nil)
+ ViewController.current?.displayField.selectText(nil)
+ }
+
@IBAction func Copy(_ sender: Any) {
+ ViewController.current?.Copy()
}
@IBAction func Paste(_ sender: Any) {
+ ViewController.current?.Paste()
}
@IBAction func Green(_ sender: Any) {
- // print("NSToolbarItem:", sender.tag)
+// print("NSToolbarItem:", sender.tag)
ViewController.current?.MonoMonitorChange(color: "Green")
}
@IBAction func Amber(_ sender: Any) {
- // print("NSToolbarItem:", sender.tag)
+// print("NSToolbarItem:", sender.tag)
ViewController.current?.MonoMonitorChange(color: "Amber")
}
diff --git a/A2Mac/ViewController.swift b/A2Mac/ViewController.swift
index b1e6a52..37e19de 100644
--- a/A2Mac/ViewController.swift
+++ b/A2Mac/ViewController.swift
@@ -336,6 +336,42 @@ class ViewController: NSViewController {
return true
}
}
+
+
+ func SelectAll() {
+// displayField.currentEditor()?.selectAll(nil)
+ displayField.selectText(nil)
+ }
+
+ func Copy() {
+ let pasteBoard = NSPasteboard.general
+ pasteBoard.clearContents()
+ // TODO: Find a better way to avoid index out of range error when the entire text area is selected
+ let string = display.stringValue + " "
+ if let selectedRange = displayField.currentEditor()?.selectedRange {
+ let startIndex = string.index(string.startIndex, offsetBy: selectedRange.lowerBound)
+ let endIndex = string.index(string.startIndex, offsetBy: selectedRange.upperBound)
+ let selectedString = string[startIndex..