// // Edge.swift // MacBackend // // Created by david-swift on 11.10.2024. // import AppKit /// A view's edges. public enum Edge { /// The leading edge. case leading /// The trailing edge. case trailing /// The top edge. case top /// The bottom edge. case bottom /// Activate layout constraints affecting this edge. /// - Parameters: /// - view: The view. /// - parent: The parent view. /// - padding: The padding value. func activate(in view: NSView, to parent: NSView, padding: CGFloat) { switch self { case .top: NSLayoutConstraint.activate([ view.topAnchor.constraint(equalTo: view.topAnchor, constant: padding) ]) case .bottom: NSLayoutConstraint.activate([ view.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: -padding) ]) case .leading: NSLayoutConstraint.activate([ view.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: padding) ]) case .trailing: NSLayoutConstraint.activate([ view.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -padding) ]) } } }