This commit is contained in:
Pfeil, Scott Robert 2020-02-28 13:06:11 -05:00
parent d8845081fe
commit cfd6cb1358
4 changed files with 53 additions and 2 deletions

View File

@ -215,6 +215,7 @@
D28A838F23CCDEDE00DFE4FC /* TwoButtonViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = D28A838E23CCDEDE00DFE4FC /* TwoButtonViewModel.swift */; };
D28A839123CD4FD400DFE4FC /* CornerLabelsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = D28A839023CD4FD400DFE4FC /* CornerLabelsModel.swift */; };
D28A839323CE828900DFE4FC /* HeadlineBodyCaretLinkImageModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = D28A839223CE828900DFE4FC /* HeadlineBodyCaretLinkImageModel.swift */; };
D28D6F71240988720046BD9D /* ListLeftVariableCheckboxAllTextAndLinksCustom.swift in Sources */ = {isa = PBXBuildFile; fileRef = D28D6F70240988720046BD9D /* ListLeftVariableCheckboxAllTextAndLinksCustom.swift */; };
D296E14722A5984C0051EBE7 /* MVMCoreUIViewConstrainingProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = D296E14622A597490051EBE7 /* MVMCoreUIViewConstrainingProtocol.h */; settings = {ATTRIBUTES = (Public, ); }; };
D29770C821F7C4AE00B2F0D0 /* TopLabelsView.m in Sources */ = {isa = PBXBuildFile; fileRef = D29770C621F7C4AE00B2F0D0 /* TopLabelsView.m */; };
D29770C921F7C4AE00B2F0D0 /* TopLabelsView.h in Headers */ = {isa = PBXBuildFile; fileRef = D29770C721F7C4AE00B2F0D0 /* TopLabelsView.h */; settings = {ATTRIBUTES = (Public, ); }; };
@ -559,6 +560,7 @@
D28A838E23CCDEDE00DFE4FC /* TwoButtonViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TwoButtonViewModel.swift; sourceTree = "<group>"; };
D28A839023CD4FD400DFE4FC /* CornerLabelsModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CornerLabelsModel.swift; sourceTree = "<group>"; };
D28A839223CE828900DFE4FC /* HeadlineBodyCaretLinkImageModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HeadlineBodyCaretLinkImageModel.swift; sourceTree = "<group>"; };
D28D6F70240988720046BD9D /* ListLeftVariableCheckboxAllTextAndLinksCustom.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ListLeftVariableCheckboxAllTextAndLinksCustom.swift; sourceTree = "<group>"; };
D296E14622A597490051EBE7 /* MVMCoreUIViewConstrainingProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MVMCoreUIViewConstrainingProtocol.h; sourceTree = "<group>"; };
D29770C621F7C4AE00B2F0D0 /* TopLabelsView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TopLabelsView.m; sourceTree = "<group>"; };
D29770C721F7C4AE00B2F0D0 /* TopLabelsView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TopLabelsView.h; sourceTree = "<group>"; };
@ -1064,6 +1066,7 @@
522679BF23FE886900906CBA /* ListLeftVariableCheckboxAllTextAndLinks.swift */,
8D24041423E7FC0B009E23BE /* ListLeftVariableIconWithRightCaretModel.swift */,
8D24041023E7FB9E009E23BE /* ListLeftVariableIconWithRightCaret.swift */,
D28D6F70240988720046BD9D /* ListLeftVariableCheckboxAllTextAndLinksCustom.swift */,
);
path = LeftVariable;
sourceTree = "<group>";
@ -1072,7 +1075,6 @@
isa = PBXGroup;
children = (
525019E3240684E500EED91C /* FourColumn */,
52267A0523FFE0A900906CBA /* OneColumn */,
D22B38ED23F4E11100490EF6 /* ThreeColumn */,
);
path = SectionDividers;
@ -1727,6 +1729,7 @@
D22D1F1F220343560077CEC0 /* MVMCoreUICheckMarkView.m in Sources */,
D2E2A99423D8CCBC000B42E6 /* HeadlineBodyLinkModel.swift in Sources */,
01004F3022721C3800991ECC /* RadioButton.swift in Sources */,
D28D6F71240988720046BD9D /* ListLeftVariableCheckboxAllTextAndLinksCustom.swift in Sources */,
D268C70E238C22D7007F2C1C /* DropDownFilterTableViewCell.swift in Sources */,
017BEB3C2361EA1D0024EF95 /* MFViewController+Model.swift in Sources */,
D282AAB4223FDDAE00C46919 /* MFLoadImageView.swift in Sources */,

View File

@ -0,0 +1,43 @@
//
// ListLeftVariableCheckboxAllTextAndLinksCustom.swift
// MVMCoreUI
//
// Created by Scott Pfeil on 2/28/20.
// Copyright © 2020 Verizon Wireless. All rights reserved.
//
import Foundation
public class ListLeftVariableCheckboxAllTextAndLinksModelCustom: ListLeftVariableCheckboxAllTextAndLinksModel {
public override class var identifier: String {
return "listLVCBCustom"
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
}
}
@objcMembers open class ListLeftVariableCheckboxAllTextAndLinksCustom: ListLeftVariableCheckboxAllTextAndLinks {
// MARK:- MVMCoreUIMoleculeViewProtocol
open override func set(with model: MoleculeModelProtocol, _ delegateObject: MVMCoreUIDelegateObject?, _ additionalData: [AnyHashable : Any]?) {
super.set(with: model, delegateObject, additionalData)
// Update immediately.
eyebrowHeadlineBodyLink.stack.stackModel?.molecules[0].gone = !checkbox.isSelected
eyebrowHeadlineBodyLink.stack.restack()
// Update on press.
checkbox.actionBlock = { [weak self] in
guard let self = self else { return }
print("hello")
self.eyebrowHeadlineBodyLink.stack.stackModel?.molecules[0].gone = !self.checkbox.isSelected
self.eyebrowHeadlineBodyLink.stack.restack()
delegateObject?.moleculeDelegate?.moleculeLayoutUpdated(self)
}
}
}

View File

@ -9,7 +9,9 @@
import Foundation
public class ListLeftVariableCheckboxAllTextAndLinksModel: ListItemModel, MoleculeModelProtocol {
public static var identifier: String = "listLVCB"
public class var identifier: String {
return "listLVCB"
}
public var checkbox: CheckboxModel
public var eyebrowHeadlineBodyLink: EyebrowHeadlineBodyLinkModel

View File

@ -103,6 +103,9 @@ import Foundation
MVMCoreUIMoleculeMappingObject.shared()?.register(viewClass: ListLeftVariableRadioButtonAndPaymentMethod.self, viewModelClass: ListLeftVariableRadioButtonAndPaymentMethodModel.self)
MVMCoreUIMoleculeMappingObject.shared()?.register(viewClass: ListRVWheel.self, viewModelClass: ListRVWheelModel.self)
MVMCoreUIMoleculeMappingObject.shared()?.register(viewClass: ListOneColumnFullWidthTextAllTextAndLinks.self, viewModelClass: ListOneColumnFullWidthTextAllTextAndLinksModel.self)
MVMCoreUIMoleculeMappingObject.shared()?.register(viewClass: ListLeftVariableCheckboxAllTextAndLinksCustom.self, viewModelClass: ListLeftVariableCheckboxAllTextAndLinksModelCustom.self)
// Designed Section Dividers
MVMCoreUIMoleculeMappingObject.shared()?.register(viewClass: ListFourColumnDataUsageDivider.self, viewModelClass: ListFourColumnDataUsageDividerModel.self)