// Copyright (c) 2019 Open Whisper Systems. All rights reserved. import UIKit import SessionUIKit public class OWSButton: UIButton { var block: () -> Void = { } // MARK: - public init(block: @escaping () -> Void = { }) { super.init(frame: .zero) self.block = block addTarget(self, action: #selector(didTap), for: .touchUpInside) } public init(title: String, block: @escaping () -> Void = { }) { super.init(frame: .zero) self.block = block addTarget(self, action: #selector(didTap), for: .touchUpInside) setTitle(title, for: .normal) } public init(imageName: String, tintColor: ThemeValue?, block: @escaping () -> Void = { }) { super.init(frame: .zero) self.block = block addTarget(self, action: #selector(didTap), for: .touchUpInside) setImage(imageName: imageName) self.themeTintColor = tintColor } public func setImage(imageName: String) { setImage( UIImage(named: imageName)? .withRenderingMode(.alwaysTemplate), for: .normal ) } public required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } // MARK: - @objc func didTap() { block() } }