updated ui

Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
Matt Bruce 2023-03-29 14:11:53 -05:00
parent d8549abb10
commit bcb6bbf7cf
5 changed files with 31 additions and 37 deletions

View File

@ -24,21 +24,20 @@ extension UIView {
} }
} }
extension ButtonBase { extension Clickable where Self: ButtonBase {
func labelPublisher(_ label: UILabel){ func labelPublisher(_ label: UILabel){
onClickSubscriber = publisher(for: .touchUpInside) onClick = { control in
.sink { control in let newText = "\(control.text!) clicked - "
let newText = "\(control.text!) clicked - " if let labelText = label.text {
if let labelText = label.text { let components = labelText.components(separatedBy: " - ")
let components = labelText.components(separatedBy: " - ") let last: String = (components.last ?? "0").trimmingCharacters(in: .whitespaces)
let last: String = (components.last ?? "0").trimmingCharacters(in: .whitespaces) let count = Int(last)!
let count = Int(last)! label.text = "\(newText)\(count+1)"
label.text = "\(newText)\(count+1)" } else {
} else { label.text = "\(newText)1"
label.text = "\(newText)1"
}
print("clicked me")
} }
print("clicked me")
}
} }
} }

View File

@ -74,16 +74,14 @@ public class PickerSelectorView<EnumType: RawRepresentable>: UIStackView, Picker
updateSelectedIndex() updateSelectedIndex()
addArrangedSubview(label) addArrangedSubview(label)
addArrangedSubview(button) addArrangedSubview(button)
button button.onClick = { [weak self] _ in
.publisher(for: .touchUpInside) self?.picker?.delegate = self
.sink { [weak self] _ in self?.picker?.dataSource = self
self?.picker?.delegate = self self?.picker?.reloadAllComponents()
self?.picker?.dataSource = self self?.picker?.selectRow(self?.selectedIndex ?? 0, inComponent: 0, animated: false)
self?.picker?.reloadAllComponents() self?.picker?.isHidden = false
self?.picker?.selectRow(self?.selectedIndex ?? 0, inComponent: 0, animated: false) self?.scrollToBottom?()
self?.picker?.isHidden = false }
self?.scrollToBottom?()
}.store(in: &subscribers)
} }
func updateSelectedIndex() { func updateSelectedIndex() {

View File

@ -19,7 +19,7 @@ class CheckboxViewController: BaseViewController {
var errorTextField = TextField() var errorTextField = TextField()
var showErrorSwitch = Toggle() var showErrorSwitch = Toggle()
var checkbox = SoloCheckbox() var checkbox = Checkbox()
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()

View File

@ -36,7 +36,6 @@ class TileContainerViewController: BaseViewController {
}() }()
var clickableSwitch = Toggle() var clickableSwitch = Toggle()
var clickableCancel: AnyCancellable?
var showBackgroundImageSwitch = Toggle() var showBackgroundImageSwitch = Toggle()
var showBorderSwitch = Toggle() var showBorderSwitch = Toggle()
@ -78,15 +77,13 @@ class TileContainerViewController: BaseViewController {
clickableSwitch clickableSwitch
.publisher(for: .valueChanged) .publisher(for: .valueChanged)
.sink { [weak self] sender in .sink { [weak self] sender in
guard let self else { return }
if sender.isOn { if sender.isOn {
self?.clickableCancel = self?.tileContainer self.tileContainer.onClick = { _ in
.publisher(for: .touchUpInside) print("you click on me!")
.sink(receiveValue: { _ in }
print("you click on me!")
})
} else { } else {
self?.clickableCancel?.cancel() self.tileContainer.onClick = nil
self?.clickableCancel = nil
} }
}.store(in: &subscribers) }.store(in: &subscribers)

View File

@ -79,13 +79,13 @@ class TileletViewController: BaseViewController {
.sink { [weak self] sender in .sink { [weak self] sender in
guard let tilelet = self?.tilelet else { return } guard let tilelet = self?.tilelet else { return }
if sender.isOn { if sender.isOn {
tilelet.onClickSubscriber = tilelet.publisher(for: .touchUpInside) tilelet.onClick = { t in
.sink(receiveValue: { _ in print("you click on me!")
print("you click on me!") }
}) } else {
tilelet.onClick = nil
} }
}.store(in: &subscribers) }.store(in: &subscribers)
widthTextField widthTextField
.textPublisher .textPublisher
.sink { [weak self] text in .sink { [weak self] text in