From 0bc4dab7fb67f134eb3459fc49851dc1796e0d0e Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Tue, 20 Dec 2022 16:52:25 -0600 Subject: [PATCH] added percentage Signed-off-by: Matt Bruce --- .../ViewControllers/TiletViewController.swift | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/VDSSample/ViewControllers/TiletViewController.swift b/VDSSample/ViewControllers/TiletViewController.swift index 03c20a9..d4211d4 100644 --- a/VDSSample/ViewControllers/TiletViewController.swift +++ b/VDSSample/ViewControllers/TiletViewController.swift @@ -33,6 +33,8 @@ class TiletViewController: BaseViewController { var titleTextField = TextField() var subTitleTextField = TextField() var widthTextField = TextField() + var textPercentageTextField = TextField() + var textWidthTextField = TextField() var tilet = Tilet() @@ -57,6 +59,8 @@ class TiletViewController: BaseViewController { addFormRow(label: "Subtitle Color", view: subtitleColorPickerSelectorView) addFormRow(label: "Subtitle Text", view: subTitleTextField) addFormRow(label: "Width", view: widthTextField) + addFormRow(label: "Text Width", view: textWidthTextField) + addFormRow(label: "Text Percentage", view: textPercentageTextField) widthTextField .textPublisher @@ -66,6 +70,28 @@ class TiletViewController: BaseViewController { } }.store(in: &subscribers) + textWidthTextField + .textPublisher + .sink { [weak self] text in + guard let self else { return } + if let n = NumberFormatter().number(from: text), n.floatValue > 50.0 && n.floatValue <= Float(self.tilet.width) { + self.tilet.textWidth = CGFloat(truncating: n) + self.textPercentageTextField.text = "" + } else { + self.tilet.textWidth = nil + } + }.store(in: &subscribers) + + textPercentageTextField + .textPublisher + .sink { [weak self] text in + if let n = NumberFormatter().number(from: text), n.intValue > 15 && n.intValue <= 100 { + self?.tilet.textPercentage = CGFloat(truncating: n) + self?.textWidthTextField.text = "" + } else { + self?.tilet.textPercentage = nil + } + }.store(in: &subscribers) titleTextField .textPublisher