Merge branch 'feature/coding' of https://gitlab.verizon.com/BPHV_MIPS/mvm_core_ui into feature/coding

This commit is contained in:
Pfeil, Scott Robert 2020-01-23 11:01:49 -05:00
commit 6d81705c2e

View File

@ -8,50 +8,50 @@
import UIKit import UIKit
@objcMembers public class LabelSwitch: View { @objcMembers open class LabelSwitch: View {
let label = Label.commonLabelB1(true) public let label = Label.commonLabelB1(true)
let mvmSwitch = Toggle() public let toggle = Toggle()
// MARK: - MVMCoreViewProtocol // MARK: - MVMCoreViewProtocol
open override func updateView(_ size: CGFloat) { open override func updateView(_ size: CGFloat) {
super.updateView(size) super.updateView(size)
label.updateView(size) label.updateView(size)
mvmSwitch.updateView(size) toggle.updateView(size)
} }
public override func setupView() { open override func setupView() {
super.setupView() super.setupView()
guard mvmSwitch.superview == nil else { guard toggle.superview == nil else {
return return
} }
addSubview(label) addSubview(label)
addSubview(mvmSwitch) addSubview(toggle)
label.setContentHuggingPriority(UILayoutPriority.required, for: NSLayoutConstraint.Axis.vertical) label.setContentHuggingPriority(UILayoutPriority.required, for: NSLayoutConstraint.Axis.vertical)
NSLayoutConstraint.pinSubviewsCenter(leftView: label, rightView: mvmSwitch) NSLayoutConstraint.pinSubviewsCenter(leftView: label, rightView: toggle)
} }
// MARK:- ModelMoleculeViewProtocol // MARK:- ModelMoleculeViewProtocol
public override class func estimatedHeight(forRow molecule: MoleculeModelProtocol?, delegateObject: MVMCoreUIDelegateObject?) -> CGFloat? { open override class func estimatedHeight(forRow molecule: MoleculeModelProtocol?, delegateObject: MVMCoreUIDelegateObject?) -> CGFloat? {
guard let model = molecule as? LabelToggleModel, guard let model = molecule as? LabelToggleModel,
let toggleHeight = Toggle.estimatedHeight(forRow: model.toggle, delegateObject: delegateObject), let toggleHeight = Toggle.estimatedHeight(forRow: model.toggle, delegateObject: delegateObject),
let labelHeight = Label.estimatedHeight(forRow: model.label, delegateObject: delegateObject) else { return nil } let labelHeight = Label.estimatedHeight(forRow: model.label, delegateObject: delegateObject) else { return nil }
return max(toggleHeight, labelHeight) return max(toggleHeight, labelHeight)
} }
public override func setWithModel(_ model: MoleculeModelProtocol?, _ delegateObject: MVMCoreUIDelegateObject?, _ additionalData: [AnyHashable: Any]?) { open override func setWithModel(_ model: MoleculeModelProtocol?, _ delegateObject: MVMCoreUIDelegateObject?, _ additionalData: [AnyHashable: Any]?) {
guard let labelToggleModel = model as? LabelToggleModel else { guard let labelToggleModel = model as? LabelToggleModel else {
return return
} }
label.setWithModel(labelToggleModel.label, delegateObject, additionalData) label.setWithModel(labelToggleModel.label, delegateObject, additionalData)
mvmSwitch.setWithModel(labelToggleModel.toggle, delegateObject, additionalData) toggle.setWithModel(labelToggleModel.toggle, delegateObject, additionalData)
} }
// MARK: - MVMCoreUIMoleculeViewProtocol // MARK: - MVMCoreUIMoleculeViewProtocol
public override func reset() { open override func reset() {
super.reset() super.reset()
label.reset() label.reset()
(mvmSwitch as MVMCoreUIMoleculeViewProtocol).reset?() toggle.reset()
label.styleB1(true) label.styleB1(true)
} }
} }