session-ios/Signal/src/ViewControllers/HomeView/MessageStatusView.swift
2018-08-27 10:21:03 -04:00

53 lines
1.3 KiB
Swift

//
// Copyright (c) 2018 Open Whisper Systems. All rights reserved.
//
import Foundation
@objc
public class MessageStatusView: UIView {
private let imageView: UIImageView
private let lastBaselineView: UIView
// MessageStatusView is aligned 1pt below it's baseline.
private let kBaselineOverhang: CGFloat = 1
@objc
public var image: UIImage? {
get {
return imageView.image
}
set {
imageView.image = newValue
}
}
public override init(frame: CGRect) {
self.imageView = UIImageView()
self.lastBaselineView = UIView()
super.init(frame: frame)
self.addSubview(imageView)
self.addSubview(lastBaselineView)
imageView.setCompressionResistanceHigh()
imageView.setContentHuggingHigh()
imageView.autoPinEdgesToSuperviewEdges()
lastBaselineView.autoSetDimension(.height, toSize: 1)
lastBaselineView.autoPinEdge(toSuperviewEdge: .left)
lastBaselineView.autoPinEdge(toSuperviewEdge: .right)
lastBaselineView.autoPinEdge(toSuperviewEdge: .bottom, withInset: kBaselineOverhang)
}
public override var forLastBaselineLayout: UIView {
return self.lastBaselineView
}
required public init?(coder aDecoder: NSCoder) {
notImplemented()
}
}