refactored radiobuttongroup

Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
Matt Bruce 2022-09-08 16:29:57 -05:00
parent dcd8d6ef94
commit e9c5a14ac9

View File

@ -34,13 +34,11 @@ public class RadioButtonGroup: RadioButtonGroupBase<DefaultRadioButtonGroupModel
} }
} }
public class RadioButtonGroupBase<GroupModelType: RadioButtonGroupModel, ModelHandlerType: ModelHandlerable & UIControl>: Control<GroupModelType>, SelectorGroupSelectedModelHandlerable, Changable where GroupModelType.SelectorModelType == ModelHandlerType.ModelType { public class RadioButtonGroupBase<GroupModelType: RadioButtonGroupModel, ModelHandlerType: ModelHandlerable & UIControl>: SelectorGroupSelectedHandlerBase<GroupModelType, ModelHandlerType>, SelectorGroupSelectedModelHandlerable where GroupModelType.SelectorModelType == ModelHandlerType.ModelType {
//-------------------------------------------------- //--------------------------------------------------
// MARK: - Public Properties // MARK: - Public Properties
//-------------------------------------------------- //--------------------------------------------------
public var selectorViews: [ModelHandlerType] = []
public var hasError: Bool { public var hasError: Bool {
get { model.hasError } get { model.hasError }
set { set {
@ -58,9 +56,6 @@ public class RadioButtonGroupBase<GroupModelType: RadioButtonGroupModel, ModelHa
} }
} }
public var onChange: Blocks.ActionBlock?
//-------------------------------------------------- //--------------------------------------------------
// MARK: - Private Properties // MARK: - Private Properties
//-------------------------------------------------- //--------------------------------------------------
@ -77,18 +72,6 @@ public class RadioButtonGroupBase<GroupModelType: RadioButtonGroupModel, ModelHa
//-------------------------------------------------- //--------------------------------------------------
// MARK: - Overrides // MARK: - Overrides
//-------------------------------------------------- //--------------------------------------------------
override public var disabled: Bool {
didSet {
updateSelectors()
}
}
override public var surface: Surface {
didSet {
updateSelectors()
}
}
open override func setup() { open override func setup() {
super.setup() super.setup()
@ -126,8 +109,11 @@ public class RadioButtonGroupBase<GroupModelType: RadioButtonGroupModel, ModelHa
} }
} }
} }
}
public func didSelect(_ selectedControl: ModelHandlerType) {
fatalError("Must override didSelect") public class SelectorGroupSelectedHandlerBase<GroupModelType: SelectorGroupSelectedModelable, ModelHandlerType: ModelHandlerable & UIControl>: SelectorGroupHandlerBase<GroupModelType, ModelHandlerType> where GroupModelType.SelectorModelType == ModelHandlerType.ModelType {
public var selectedModel: ModelHandlerType.ModelType? {
return model.selectedModel
} }
} }