From d199389ff3137d2f0fdb9e90a16a2f2621e9c265 Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Tue, 30 Jul 2024 16:38:30 -0500 Subject: [PATCH] ensured isEnabled Signed-off-by: Matt Bruce --- .../Atomic/Atoms/Selectors/Checkbox.swift | 2 ++ .../Atomic/Atoms/Views/CheckboxLabel.swift | 24 +++++++------------ 2 files changed, 11 insertions(+), 15 deletions(-) diff --git a/MVMCoreUI/Atomic/Atoms/Selectors/Checkbox.swift b/MVMCoreUI/Atomic/Atoms/Selectors/Checkbox.swift index e864caa1..a14aa71e 100644 --- a/MVMCoreUI/Atomic/Atoms/Selectors/Checkbox.swift +++ b/MVMCoreUI/Atomic/Atoms/Selectors/Checkbox.swift @@ -77,6 +77,8 @@ import VDS open override func toggle() { super.toggle() + + guard isEnabled else { return } viewModel.selected = isSelected _ = FormValidator.validate(delegate: delegateObject?.formHolderDelegate) } diff --git a/MVMCoreUI/Atomic/Atoms/Views/CheckboxLabel.swift b/MVMCoreUI/Atomic/Atoms/Views/CheckboxLabel.swift index 9473a324..43a63161 100644 --- a/MVMCoreUI/Atomic/Atoms/Views/CheckboxLabel.swift +++ b/MVMCoreUI/Atomic/Atoms/Views/CheckboxLabel.swift @@ -20,21 +20,19 @@ import VDS var fieldValue: JSONValue? var groupName: String? - private var updateSelectionOnly: Bool = false - override open var isSelected: Bool { - didSet { - if !updateSelectionOnly { - viewModel.checkbox.selected = isSelected - _ = FormValidator.validate(delegate: delegateObject?.formHolderDelegate) - } - } - } - //-------------------------------------------------- // MARK: - Life Cycle //-------------------------------------------------- @objc open func updateView(_ size: CGFloat) {} + open override func toggle() { + super.toggle() + + guard isEnabled else { return } + viewModel.checkbox.selected = isSelected + _ = FormValidator.validate(delegate: delegateObject?.formHolderDelegate) + } + //-------------------------------------------------- // MARK: - Atomic //-------------------------------------------------- @@ -73,11 +71,7 @@ import VDS //properties isAnimated = viewModel.checkbox.animated isEnabled = viewModel.checkbox.enabled && !viewModel.checkbox.readOnly - if viewModel.checkbox.selected { - updateSelectionOnly = false - isSelected = viewModel.checkbox.selected - updateSelectionOnly = true - } + isSelected = viewModel.checkbox.selected //events viewModel.checkbox.updateUI = {