This commit is contained in:
Kevin G Christiano 2021-02-10 14:22:47 -05:00
parent ee95db5116
commit 746daa9cd2
6 changed files with 30 additions and 23 deletions

View File

@ -55,7 +55,7 @@ import UIKit
@objc required public init?(coder: NSCoder) {
super.init(coder: coder)
fatalError("DropdownEntryField does not support xib.")
fatalError("\(String(describing: Self.self)) does not support xib.")
}
required public init(model: MoleculeModelProtocol, _ delegateObject: MVMCoreUIDelegateObject?, _ additionalData: [AnyHashable: Any]?) {

View File

@ -8,8 +8,23 @@
import UIKit
class BaseItemPickerField: BaseDropdownField {
open class BaseItemPickerField: BaseDropdownField {
//--------------------------------------------------
// MARK: - Outlets
//--------------------------------------------------
open var pickerView: UIPickerView?
//--------------------------------------------------
// MARK: - Properties
//--------------------------------------------------
/// Closure passed here will run as picker changes items.
public var observeDropdownChange: ((String, String) -> ())?
/// Closure passed here will run upon dismissing the selection picker.
public var observeDropdownSelection: ((String) -> ())?
/// When selecting for first responder, allow initial selected value to appear in empty text field.
public var setInitialValueInTextField = true
}

View File

@ -8,6 +8,11 @@
import UIKit
class BaseItemPickerFieldModel: BaseDropdownEntryFieldModel {
open class BaseItemPickerFieldModel: BaseDropdownEntryFieldModel {
//--------------------------------------------------
// MARK: - Properties
//--------------------------------------------------
public override class var identifier: String { "" }
}

View File

@ -9,13 +9,7 @@
import UIKit
open class MultiItemDropdownEntryField: BaseDropdownField {
//--------------------------------------------------
// MARK: - Outlets
//--------------------------------------------------
open var pickerView: UIPickerView?
open class MultiItemDropdownEntryField: BaseItemPickerField {
//--------------------------------------------------
// MARK: - Properties
//--------------------------------------------------
@ -25,15 +19,6 @@ open class MultiItemDropdownEntryField: BaseDropdownField {
dropdownModel?.components ?? [[]]
}
/// When selecting for first responder, allow initial selected value to appear in empty text field.
public var setInitialValueInTextField = true
/// Closure passed here will run as picker changes items.
// public var observeDropdownChange: ((String, String) -> ())?
/// Closure passed here will run upon dismissing the selection picker.
// public var observeDropdownSelection: ((String) -> ())?
public var dropdownModel: MultiItemDropdownEntryFieldModel? {
model as? MultiItemDropdownEntryFieldModel
}

View File

@ -9,7 +9,7 @@
import Foundation
@objcMembers open class MultiItemDropdownEntryFieldModel: BaseDropdownEntryFieldModel {
@objcMembers open class MultiItemDropdownEntryFieldModel: BaseItemPickerFieldModel {
//--------------------------------------------------
// MARK: - Properties
//--------------------------------------------------

View File

@ -96,6 +96,8 @@ import UIKit
open override var text: String? {
get { textField.text }
set {
NSRegularExpression(pattern: <#T##String#>, options: [])
textField.text = newValue
textEntryFieldModel?.text = newValue
}