vds_ios/VDS/Components/RadioButton/RadioButtonGroup.swift
Matt Bruce 8e4d4d6ded refactored radio button
Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
2022-08-11 11:56:11 -05:00

37 lines
1.2 KiB
Swift

//
// RadioButtonGroup.swift
// VDS
//
// Created by Matt Bruce on 8/11/22.
//
import Foundation
public class RadioButtonGroup: RadioButtonGroupBase<DefaultRadioButtonGroupModel, RadioButton> {}
public class RadioButtonGroupBase<RadioButtonGroupModelType: SelectorGroupModel, RadioButtonType: RadioButtonBase<RadioButtonGroupModelType.SelectorType>>: SelectorGroupBase<RadioButtonGroupModelType.SelectorType, RadioButtonGroupModelType, RadioButtonType> {
public override func didSelect(selected: RadioButtonGroupModelType.SelectorType) {
for selectorModel in model.selectors {
print("Pre Cached Selector: \(selectorModel.inputId): \(selectorModel.selected)")
}
if var oldSelectedModel = selectedModel {
oldSelectedModel.selected = false
replace(viewModel: oldSelectedModel)
}
var newSelectedModel = selected
newSelectedModel.selected = true
replace(viewModel: newSelectedModel)
selectedModel = newSelectedModel
for selectorModel in model.selectors {
print("Post Cached Selector: \(selectorModel.inputId): \(selectorModel.selected)")
}
print("\n")
}
}