// // MenuServerModuleView.swift // Privado // // Created by Viktor on 10.08.2020. // Copyright © 2020 Privado LLC. All rights reserved. // import Foundation import UIKit class MenuServerModuleView: UIButton { private enum Constants { enum ImageName { static let leftMenu = "leftMenu" } enum Geometry { static let imageSize = CGSize(width: 22, height: 16) } } var output: MenuServerModuleOutput init(output: MenuServerModuleOutput) { self.output = output super.init(frame: .zero) let menuImage = UIImage(imageLiteralResourceName: Constants.ImageName.leftMenu) let menuImageView = UIImageView(image: menuImage) menuImageView.translatesAutoresizingMaskIntoConstraints = false self.addSubview(menuImageView) NSLayoutConstraint.activate([ menuImageView.heightAnchor.constraint(equalToConstant: Constants.Geometry.imageSize.height), menuImageView.widthAnchor.constraint(equalToConstant: Constants.Geometry.imageSize.width), menuImageView.centerXAnchor.constraint(equalTo: self.centerXAnchor), menuImageView.centerYAnchor.constraint(equalTo: self.centerYAnchor) ]) self.addTarget(self, action: #selector(menuClick), for: .touchUpInside) } required init?(coder: NSCoder) { nil } @objc private func menuClick() { self.output.openMenu() } }