2019-05-09 15:29:54 -07:00
|
|
|
//
|
|
|
|
|
// Button.swift
|
|
|
|
|
// AltStore
|
|
|
|
|
//
|
|
|
|
|
// Created by Riley Testut on 5/9/19.
|
|
|
|
|
// Copyright © 2019 Riley Testut. All rights reserved.
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
import UIKit
|
|
|
|
|
|
2023-03-01 00:48:36 -05:00
|
|
|
final class Button: UIButton {
|
2019-05-09 15:29:54 -07:00
|
|
|
override var intrinsicContentSize: CGSize {
|
|
|
|
|
var size = super.intrinsicContentSize
|
|
|
|
|
size.width += 20
|
2019-05-09 17:21:55 -07:00
|
|
|
size.height += 10
|
2019-05-09 15:29:54 -07:00
|
|
|
return size
|
|
|
|
|
}
|
2023-03-01 00:48:36 -05:00
|
|
|
|
|
|
|
|
override func awakeFromNib() {
|
2019-05-09 15:29:54 -07:00
|
|
|
super.awakeFromNib()
|
2023-03-01 00:48:36 -05:00
|
|
|
|
|
|
|
|
setTitleColor(.white, for: .normal)
|
|
|
|
|
|
|
|
|
|
layer.masksToBounds = true
|
|
|
|
|
layer.cornerRadius = 8
|
|
|
|
|
|
|
|
|
|
update()
|
2019-05-09 15:29:54 -07:00
|
|
|
}
|
2023-03-01 00:48:36 -05:00
|
|
|
|
|
|
|
|
override func tintColorDidChange() {
|
2019-05-09 15:29:54 -07:00
|
|
|
super.tintColorDidChange()
|
2023-03-01 00:48:36 -05:00
|
|
|
|
|
|
|
|
update()
|
2019-05-09 15:29:54 -07:00
|
|
|
}
|
2023-03-01 00:48:36 -05:00
|
|
|
|
2019-05-09 15:29:54 -07:00
|
|
|
override var isHighlighted: Bool {
|
|
|
|
|
didSet {
|
|
|
|
|
self.update()
|
|
|
|
|
}
|
|
|
|
|
}
|
2023-03-01 00:48:36 -05:00
|
|
|
|
2019-05-20 21:26:01 +02:00
|
|
|
override var isEnabled: Bool {
|
|
|
|
|
didSet {
|
2023-03-01 00:48:36 -05:00
|
|
|
update()
|
2019-05-20 21:26:01 +02:00
|
|
|
}
|
|
|
|
|
}
|
2019-05-09 15:29:54 -07:00
|
|
|
}
|
|
|
|
|
|
2023-03-01 00:48:36 -05:00
|
|
|
private extension Button {
|
|
|
|
|
func update() {
|
|
|
|
|
if isEnabled {
|
|
|
|
|
backgroundColor = tintColor
|
|
|
|
|
} else {
|
|
|
|
|
backgroundColor = .lightGray
|
2019-05-20 21:26:01 +02:00
|
|
|
}
|
2019-05-09 15:29:54 -07:00
|
|
|
}
|
|
|
|
|
}
|