38 lines
1.2 KiB
Swift
38 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.id): \(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.id): \(selectorModel.selected)")
|
|
}
|
|
|
|
print("\n")
|
|
}
|
|
}
|