From 5684104913d6e2da8fb4df36e450d78d830c4f19 Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Fri, 18 Nov 2022 11:16:19 -0600 Subject: [PATCH] updated to use extension Signed-off-by: Matt Bruce --- VDS/Components/Checkbox/Checkbox.swift | 5 +--- VDS/Components/Checkbox/CheckboxGroup.swift | 5 +--- VDS/Components/RadioBox/RadioBox.swift | 11 ++------ VDS/Components/RadioBox/RadioBoxGroup.swift | 5 +--- VDS/Components/RadioButton/RadioButton.swift | 5 +--- .../RadioButton/RadioButtonGroup.swift | 5 +--- VDS/Components/RadioSwatch/RadioSwatch.swift | 13 ++++----- .../RadioSwatch/RadioSwatchGroup.swift | 28 +++++++++---------- .../TextFields/EntryField/EntryField.swift | 5 +--- 9 files changed, 27 insertions(+), 55 deletions(-) diff --git a/VDS/Components/Checkbox/Checkbox.swift b/VDS/Components/Checkbox/Checkbox.swift index 3a515eb4..22ff909b 100644 --- a/VDS/Components/Checkbox/Checkbox.swift +++ b/VDS/Components/Checkbox/Checkbox.swift @@ -190,10 +190,7 @@ open class CheckboxBase: Control, Accessable, DataTrackable, BinaryColorable, Er updateSelector() - mainStackView.topAnchor.constraint(equalTo: topAnchor).isActive = true - mainStackView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - mainStackView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true - mainStackView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + mainStackView.pinToSuperView() } diff --git a/VDS/Components/Checkbox/CheckboxGroup.swift b/VDS/Components/Checkbox/CheckboxGroup.swift index 7501d11f..e2e3b248 100644 --- a/VDS/Components/Checkbox/CheckboxGroup.swift +++ b/VDS/Components/Checkbox/CheckboxGroup.swift @@ -79,10 +79,7 @@ public class CheckboxGroupBase: SelectorGroupHandlerB accessibilityTraits = .button addSubview(mainStackView) - mainStackView.topAnchor.constraint(equalTo: topAnchor).isActive = true - mainStackView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - mainStackView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true - mainStackView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + mainStackView.pinToSuperView() } public var selectedHandlers: [HandlerType]? { diff --git a/VDS/Components/RadioBox/RadioBox.swift b/VDS/Components/RadioBox/RadioBox.swift index d9245790..ee53b936 100644 --- a/VDS/Components/RadioBox/RadioBox.swift +++ b/VDS/Components/RadioBox/RadioBox.swift @@ -180,15 +180,8 @@ open class RadioBoxBase: Control, BinaryColorable, Accessable, DataTrackable{ updateSelector() - selectorView.topAnchor.constraint(equalTo: topAnchor).isActive = true - selectorView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - selectorView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true - selectorView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true - - mainStackView.topAnchor.constraint(equalTo: selectorView.topAnchor, constant: 16).isActive = true - mainStackView.leadingAnchor.constraint(equalTo: selectorView.leadingAnchor, constant: 16).isActive = true - mainStackView.trailingAnchor.constraint(equalTo: selectorView.trailingAnchor, constant: -16).isActive = true - mainStackView.bottomAnchor.constraint(equalTo: selectorView.bottomAnchor, constant: -16).isActive = true + selectorView.pinToSuperView() + mainStackView.pinToSuperView(.init(top: 16, left: 16, bottom: 16, right: 16)) } func updateLabels() { diff --git a/VDS/Components/RadioBox/RadioBoxGroup.swift b/VDS/Components/RadioBox/RadioBoxGroup.swift index f2c4022f..98cad475 100644 --- a/VDS/Components/RadioBox/RadioBoxGroup.swift +++ b/VDS/Components/RadioBox/RadioBoxGroup.swift @@ -74,10 +74,7 @@ public class RadioBoxGroupBase: SelectorGroupSelected accessibilityTraits = .button addSubview(mainStackView) ensureDevice() - mainStackView.topAnchor.constraint(equalTo: topAnchor).isActive = true - mainStackView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - mainStackView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true - mainStackView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + mainStackView.pinToSuperView() NotificationCenter.default .publisher(for: UIDevice.orientationDidChangeNotification) diff --git a/VDS/Components/RadioButton/RadioButton.swift b/VDS/Components/RadioButton/RadioButton.swift index f52f2a09..6a1c28c7 100644 --- a/VDS/Components/RadioButton/RadioButton.swift +++ b/VDS/Components/RadioButton/RadioButton.swift @@ -195,10 +195,7 @@ open class RadioButtonBase: Control, Accessable, DataTrackable, BinaryColorable, updateSelector() - mainStackView.topAnchor.constraint(equalTo: topAnchor).isActive = true - mainStackView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - mainStackView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true - mainStackView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + mainStackView.pinToSuperView() } diff --git a/VDS/Components/RadioButton/RadioButtonGroup.swift b/VDS/Components/RadioButton/RadioButtonGroup.swift index 1b357102..487a8413 100644 --- a/VDS/Components/RadioButton/RadioButtonGroup.swift +++ b/VDS/Components/RadioButton/RadioButtonGroup.swift @@ -79,9 +79,6 @@ public class RadioButtonGroupBase: SelectorGroupSe accessibilityTraits = .button addSubview(mainStackView) - mainStackView.topAnchor.constraint(equalTo: topAnchor).isActive = true - mainStackView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - mainStackView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true - mainStackView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + mainStackView.pinToSuperView() } } diff --git a/VDS/Components/RadioSwatch/RadioSwatch.swift b/VDS/Components/RadioSwatch/RadioSwatch.swift index 520262d1..3e987d5a 100644 --- a/VDS/Components/RadioSwatch/RadioSwatch.swift +++ b/VDS/Components/RadioSwatch/RadioSwatch.swift @@ -103,20 +103,17 @@ open class RadioSwatchBase: Control, Accessable, DataTrackable, BinaryColorable selectorView.addSubview(fillView) - selectorView.topAnchor.constraint(equalTo: topAnchor).isActive = true - selectorView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - selectorView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true - selectorView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + selectorView.pinToSuperView() let selectorSize = getSelectorSize() - selectorView.heightAnchor.constraint(equalToConstant: selectorSize.height).isActive = true - selectorView.widthAnchor.constraint(equalToConstant: selectorSize.width).isActive = true + selectorView.height(selectorSize.height) + selectorView.width(selectorSize.width) fillView.centerXAnchor.constraint(equalTo: selectorView.centerXAnchor).isActive = true fillView.centerYAnchor.constraint(equalTo: selectorView.centerYAnchor).isActive = true - fillView.heightAnchor.constraint(equalToConstant: fillSize.height).isActive = true - fillView.widthAnchor.constraint(equalToConstant: fillSize.width).isActive = true + fillView.height(fillSize.height) + fillView.width(fillSize.width) } diff --git a/VDS/Components/RadioSwatch/RadioSwatchGroup.swift b/VDS/Components/RadioSwatch/RadioSwatchGroup.swift index 5132ba7a..c5703197 100644 --- a/VDS/Components/RadioSwatch/RadioSwatchGroup.swift +++ b/VDS/Components/RadioSwatch/RadioSwatchGroup.swift @@ -87,16 +87,19 @@ public class RadioSwatchGroupBase: SelectorGroupSe accessibilityTraits = .button addSubview(label) addSubview(collectionView) - NSLayoutConstraint.activate([ - label.topAnchor.constraint(equalTo: topAnchor), - label.leadingAnchor.constraint(equalTo: leadingAnchor), - label.trailingAnchor.constraint(equalTo: trailingAnchor), - label.heightAnchor.constraint(equalToConstant: labelHeight), - collectionView.topAnchor.constraint(equalTo: label.bottomAnchor, constant: labelSpacing), - collectionView.leadingAnchor.constraint(equalTo: leadingAnchor), - collectionView.trailingAnchor.constraint(equalTo: trailingAnchor), - collectionView.bottomAnchor.constraint(equalTo: bottomAnchor), - ]) + + label + .pinTop() + .pinLeading() + .pinTrailing() + .height(labelHeight) + + collectionView + .pinTop(label.bottomAnchor, labelSpacing) + .pinLeading() + .pinTrailing() + .pinBottom() + //TODO: Look at this width stuff, we should NOT need it! collectionViewWidth = collectionView.widthAnchor.constraint(equalToConstant: cellSize * 20) collectionViewWidth?.isActive = true @@ -180,10 +183,7 @@ public class RadioSwatchGroupBase: SelectorGroupSe handler.isUserInteractionEnabled = false cell.subviews.forEach { $0.removeFromSuperview() } cell.addSubview(handler) - handler.topAnchor.constraint(equalTo: cell.topAnchor).isActive = true - handler.leadingAnchor.constraint(equalTo: cell.leadingAnchor).isActive = true - handler.trailingAnchor.constraint(equalTo: cell.trailingAnchor).isActive = true - handler.bottomAnchor.constraint(equalTo: cell.bottomAnchor).isActive = true + handler.pinToSuperView() return cell } diff --git a/VDS/Components/TextFields/EntryField/EntryField.swift b/VDS/Components/TextFields/EntryField/EntryField.swift index 3d8cfce0..150ad842 100644 --- a/VDS/Components/TextFields/EntryField/EntryField.swift +++ b/VDS/Components/TextFields/EntryField/EntryField.swift @@ -178,10 +178,7 @@ open class EntryField: Control, Accessable { stackView.setCustomSpacing(8, after: container) stackView.setCustomSpacing(8, after: errorLabel) - stackView.topAnchor.constraint(equalTo: topAnchor).isActive = true - stackView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - stackView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true - stackView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true + stackView.pinToSuperView() titleLabel.textColorConfiguration = primaryColorConfig.eraseToAnyColorable() errorLabel.textColorConfiguration = primaryColorConfig.eraseToAnyColorable()