// // MoleculeStackView.swift // MVMCoreUI // // Created by Scott Pfeil on 2/11/19. // Copyright © 2019 Verizon Wireless. All rights reserved. // import UIKit open class MoleculeStackView: Stack { override var stackModel: MoleculeStackModel? { get { return model as? MoleculeStackModel } } /// Convenience function, adds a molecule to a MoleculeStackItem to the MoleculeStack func addMolecule(_ view: View, lastItem: Bool) { guard let model = view.model else { return } let stackItemModel = MoleculeStackItemModel(with: model) let stackItem = MoleculeStackItem(andContain: view) addView(stackItem, stackItemModel, lastItem: lastItem) } // MARK: - Adding to stack /// Creates all of the stackItems for the stackItemModels override func createStackItemsFromModel(with delegate: MVMCoreUIDelegateObject?) { guard let stackItemModels = stackModel?.molecules else { return } for model in stackItemModels { if let stackItem = MVMCoreUIMoleculeMappingObject.shared()?.createMolecule(model, delegate) as? StackItem { stackItems.append(stackItem) } } } }