diff --git a/Sources/XiEditor/EditViewController.swift b/Sources/XiEditor/EditViewController.swift index 63218ab..c0047b6 100644 --- a/Sources/XiEditor/EditViewController.swift +++ b/Sources/XiEditor/EditViewController.swift @@ -82,7 +82,9 @@ class EditViewController: NSViewController, EditViewDataSource, FindDelegate, Sc @IBOutlet weak var editContainerView: EditContainerView! @IBOutlet var editView: EditView! @IBOutlet weak var shadowView: ShadowView! - + @IBOutlet weak var statusBar: StatusBar! + + @IBOutlet weak var statusBarHeight: NSLayoutConstraint! @IBOutlet weak var editViewHeight: NSLayoutConstraint! @IBOutlet weak var editViewWidth: NSLayoutConstraint! @@ -227,8 +229,6 @@ class EditViewController: NSViewController, EditViewDataSource, FindDelegate, Sc var hoverEvent: NSEvent? - let statusBar = StatusBar(frame: .zero) - // Popover that manages hover views. lazy var infoPopover: NSPopover = { let popover = NSPopover() @@ -245,6 +245,7 @@ class EditViewController: NSViewController, EditViewDataSource, FindDelegate, Sc override func viewDidLoad() { super.viewDidLoad() + statusBar.delegate = self shadowView.wantsLayer = true editView.dataSource = self editContainerView.contextMenu = contextMenu @@ -272,14 +273,7 @@ class EditViewController: NSViewController, EditViewDataSource, FindDelegate, Sc func setupStatusBar() { statusBar.hasUnifiedTitlebar = unifiedTitlebar - self.view.addSubview(statusBar) - - NSLayoutConstraint.activate([ - statusBar.heightAnchor.constraint(equalToConstant: statusBar.statusBarHeight), - statusBar.leadingAnchor.constraint(equalTo: editView.leadingAnchor), - statusBar.trailingAnchor.constraint(equalTo: editView.trailingAnchor), - statusBar.bottomAnchor.constraint(equalTo: editView.bottomAnchor) - ]) + hideStatusBar() } func updateGutterWidth() { @@ -494,10 +488,12 @@ class EditViewController: NSViewController, EditViewDataSource, FindDelegate, Sc override func uppercaseWord(_ sender: Any?) { xiView.uppercase() + self.showStatusBar() } override func lowercaseWord(_ sender: Any?) { xiView.lowercase() + self.hideStatusBar() } override func capitalizeWord(_ sender: Any?) { diff --git a/Sources/XiEditor/Main.storyboard b/Sources/XiEditor/Main.storyboard index c810bd0..1dfe620 100644 --- a/Sources/XiEditor/Main.storyboard +++ b/Sources/XiEditor/Main.storyboard @@ -1,8 +1,8 @@ - + - + @@ -61,27 +61,36 @@ + + + + + + + + + - + - + @@ -92,6 +101,8 @@ + + @@ -121,7 +132,7 @@ DQ