From 5e8a1d349bcc2674e79d93d4f85ade316b636c9f Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Fri, 21 Oct 2022 15:28:06 -0500 Subject: [PATCH] removed code Signed-off-by: Matt Bruce --- VDS/Components/Toggle/Toggle.swift | 75 +++++++++++++----------------- 1 file changed, 33 insertions(+), 42 deletions(-) diff --git a/VDS/Components/Toggle/Toggle.swift b/VDS/Components/Toggle/Toggle.swift index 636f7545..5e43393d 100644 --- a/VDS/Components/Toggle/Toggle.swift +++ b/VDS/Components/Toggle/Toggle.swift @@ -67,6 +67,7 @@ open class ToggleBase: Control, Accessable, DataTrackable, BinaryColorable { $0.translatesAutoresizingMaskIntoConstraints = false $0.axis = .horizontal $0.distribution = .fill + $0.alignment = .leading } }() @@ -175,10 +176,6 @@ open class ToggleBase: Control, Accessable, DataTrackable, BinaryColorable { //-------------------------------------------------- private var knobLeadingConstraint: NSLayoutConstraint? private var knobTrailingConstraint: NSLayoutConstraint? - private var knobHeightConstraint: NSLayoutConstraint? - private var knobWidthConstraint: NSLayoutConstraint? - private var toggleHeightConstraint: NSLayoutConstraint? - private var toggleWidthConstraint: NSLayoutConstraint? //functions //-------------------------------------------------- @@ -188,15 +185,14 @@ open class ToggleBase: Control, Accessable, DataTrackable, BinaryColorable { self.knobLeadingConstraint?.isActive = false self.knobTrailingConstraint?.isActive = false if isOn { - self.knobTrailingConstraint = self.toggleView.trailingAnchor.constraint(equalTo: self.knobView.trailingAnchor, constant: 2) - self.knobLeadingConstraint = self.knobView.leadingAnchor.constraint(greaterThanOrEqualTo: self.toggleView.leadingAnchor) + knobTrailingConstraint = toggleView.trailingAnchor.constraint(equalTo: knobView.trailingAnchor, constant: 2) + knobLeadingConstraint = knobView.leadingAnchor.constraint(greaterThanOrEqualTo: toggleView.leadingAnchor) } else { - self.knobTrailingConstraint = self.toggleView.trailingAnchor.constraint(greaterThanOrEqualTo: self.knobView.trailingAnchor) - self.knobLeadingConstraint = self.knobView.leadingAnchor.constraint(equalTo: self.toggleView.leadingAnchor, constant: 2) + knobTrailingConstraint = toggleView.trailingAnchor.constraint(greaterThanOrEqualTo: knobView.trailingAnchor) + knobLeadingConstraint = knobView.leadingAnchor.constraint(equalTo: toggleView.leadingAnchor, constant: 2) } - self.knobTrailingConstraint?.isActive = true - self.knobLeadingConstraint?.isActive = true - self.knobWidthConstraint?.constant = self.knobSize.width + knobTrailingConstraint?.isActive = true + knobLeadingConstraint?.isActive = true self.layoutIfNeeded() } @@ -260,48 +256,43 @@ open class ToggleBase: Control, Accessable, DataTrackable, BinaryColorable { isAccessibilityElement = true accessibilityTraits = .button addSubview(stackView) - - //create the wrapping view + + //set the h/w to container size, since the width "can" grow if text is there + //allow this to be greaterThanEqualTo + heightAnchor.constraint(equalToConstant: toggleContainerSize.height).isActive = true + widthAnchor.constraint(greaterThanOrEqualToConstant: toggleContainerSize.width).isActive = true + + //create the container for the toggle/knob let toggleContainerView = UIView() toggleContainerView.translatesAutoresizingMaskIntoConstraints = false toggleContainerView.backgroundColor = .clear toggleContainerView.widthAnchor.constraint(equalToConstant: toggleContainerSize.width).isActive = true toggleContainerView.heightAnchor.constraint(equalToConstant: toggleContainerSize.height).isActive = true - toggleHeightConstraint = toggleView.heightAnchor.constraint(equalToConstant: toggleSize.height) - toggleHeightConstraint?.isActive = true - - toggleWidthConstraint = toggleView.widthAnchor.constraint(equalToConstant: toggleSize.width) - toggleWidthConstraint?.isActive = true - - toggleView.layer.cornerRadius = toggleSize.height / 2.0 - knobView.layer.cornerRadius = knobSize.height / 2.0 - - toggleView.backgroundColor = toggleColorConfiguration.getColor(self) - + //adding views toggleContainerView.addSubview(toggleView) toggleView.addSubview(knobView) - - - knobHeightConstraint = knobView.heightAnchor.constraint(equalToConstant: knobSize.height) - knobHeightConstraint?.isActive = true - knobWidthConstraint = knobView.widthAnchor.constraint(equalToConstant: knobSize.width) - knobWidthConstraint?.isActive = true - knobView.centerYAnchor.constraint(equalTo: toggleView.centerYAnchor).isActive = true - knobView.topAnchor.constraint(greaterThanOrEqualTo: toggleView.topAnchor).isActive = true - - toggleView.bottomAnchor.constraint(greaterThanOrEqualTo: knobView.bottomAnchor).isActive = true - - updateLabel() stackView.addArrangedSubview(toggleContainerView) - stackView.topAnchor.constraint(equalTo: topAnchor).isActive = true - stackView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true - stackView.widthAnchor.constraint(greaterThanOrEqualToConstant: toggleContainerSize.width).isActive = true - stackView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true - + + //adding constraints + toggleView.heightAnchor.constraint(equalToConstant: toggleSize.height).isActive = true + toggleView.widthAnchor.constraint(equalToConstant: toggleSize.width).isActive = true + toggleView.layer.cornerRadius = toggleSize.height / 2.0 + toggleView.bottomAnchor.constraint(greaterThanOrEqualTo: knobView.bottomAnchor).isActive = true toggleView.centerXAnchor.constraint(equalTo: toggleContainerView.centerXAnchor).isActive = true toggleView.centerYAnchor.constraint(equalTo: toggleContainerView.centerYAnchor).isActive = true - + + knobView.layer.cornerRadius = knobSize.height / 2.0 + knobView.heightAnchor.constraint(equalToConstant: knobSize.height).isActive = true + knobView.widthAnchor.constraint(equalToConstant: knobSize.width).isActive = true + knobView.centerYAnchor.constraint(equalTo: toggleView.centerYAnchor).isActive = true + knobView.topAnchor.constraint(greaterThanOrEqualTo: toggleView.topAnchor).isActive = true + + //pin stackview to edges + 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 } public override func reset() {