Translates MFCustomButton to Button
This commit is contained in:
parent
ed25385d4b
commit
39c96849c8
@ -32,6 +32,7 @@
|
||||
943784F6236B77BB006A1E82 /* GraphViewAnimationHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 943784F4236B77BB006A1E82 /* GraphViewAnimationHandler.swift */; };
|
||||
9455B19C234F8A0400A574DB /* MVMAnimationFramework.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9455B19B234F8A0400A574DB /* MVMAnimationFramework.framework */; };
|
||||
948DB67E2326DCD90011F916 /* MultiProgress.swift in Sources */ = {isa = PBXBuildFile; fileRef = 948DB67D2326DCD90011F916 /* MultiProgress.swift */; };
|
||||
C003506123AA94CD00B6AC29 /* Button.swift in Sources */ = {isa = PBXBuildFile; fileRef = C003506023AA94CD00B6AC29 /* Button.swift */; };
|
||||
D20A9A5E2243D3E300ADE781 /* TwoButtonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D20A9A5D2243D3E300ADE781 /* TwoButtonView.swift */; };
|
||||
D213347723843825008E41B3 /* Line.swift in Sources */ = {isa = PBXBuildFile; fileRef = D213347623843825008E41B3 /* Line.swift */; };
|
||||
D224798A2314445E003FCCF9 /* LabelSwitch.swift in Sources */ = {isa = PBXBuildFile; fileRef = D22479892314445E003FCCF9 /* LabelSwitch.swift */; };
|
||||
@ -230,6 +231,7 @@
|
||||
943784F4236B77BB006A1E82 /* GraphViewAnimationHandler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GraphViewAnimationHandler.swift; sourceTree = "<group>"; };
|
||||
9455B19B234F8A0400A574DB /* MVMAnimationFramework.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MVMAnimationFramework.framework; path = ../SharedFrameworks/MVMAnimationFramework.framework; sourceTree = "<group>"; };
|
||||
948DB67D2326DCD90011F916 /* MultiProgress.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MultiProgress.swift; sourceTree = "<group>"; };
|
||||
C003506023AA94CD00B6AC29 /* Button.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Button.swift; sourceTree = "<group>"; };
|
||||
D20A9A5D2243D3E300ADE781 /* TwoButtonView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TwoButtonView.swift; sourceTree = "<group>"; };
|
||||
D213347623843825008E41B3 /* Line.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Line.swift; sourceTree = "<group>"; };
|
||||
D22479892314445E003FCCF9 /* LabelSwitch.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LabelSwitch.swift; sourceTree = "<group>"; };
|
||||
@ -733,6 +735,7 @@
|
||||
DBC4391A224421A0001AB423 /* CaretButton.swift */,
|
||||
D29DF25821E6A22D003B2FB9 /* MFButtonProtocol.h */,
|
||||
D29DF16B21E69E1F003B2FB9 /* ButtonDelegateProtocol.h */,
|
||||
C003506023AA94CD00B6AC29 /* Button.swift */,
|
||||
D29DF16A21E69E1F003B2FB9 /* MFCustomButton.h */,
|
||||
D29DF17021E69E1F003B2FB9 /* MFCustomButton.m */,
|
||||
D29DF16C21E69E1F003B2FB9 /* PrimaryButton.h */,
|
||||
@ -1158,6 +1161,7 @@
|
||||
D29DF11821E6805F003B2FB9 /* NSLayoutConstraint+MFConvenience.m in Sources */,
|
||||
D29DF26C21E6AA0B003B2FB9 /* FLAnimatedImage.m in Sources */,
|
||||
D29770FC21F7C77400B2F0D0 /* MVMCoreUITextFieldView.m in Sources */,
|
||||
C003506123AA94CD00B6AC29 /* Button.swift in Sources */,
|
||||
D29DF25121E6A177003B2FB9 /* MFDigitTextBox.m in Sources */,
|
||||
DBC4391B224421A0001AB423 /* CaretButton.swift in Sources */,
|
||||
0198F7A82256A80B0066C936 /* MFRadioButton.m in Sources */,
|
||||
|
||||
57
MVMCoreUI/Atoms/Buttons/Button.swift
Normal file
57
MVMCoreUI/Atoms/Buttons/Button.swift
Normal file
@ -0,0 +1,57 @@
|
||||
//
|
||||
// Button.swift
|
||||
// MVMCoreUI
|
||||
//
|
||||
// Created by Robinson, Blake on 12/18/19.
|
||||
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
|
||||
@objcMembers open class Button: UIButton, MFButtonProtocol {
|
||||
|
||||
public var actionMap: [AnyHashable: Any]?
|
||||
public weak var buttonDelegate: ButtonDelegateProtocol?
|
||||
public var heightConstraint: NSLayoutConstraint?
|
||||
|
||||
//Does buttonTap block need to be rewritten in swift?
|
||||
private var buttonTapBlock: ButtonTapBlock?
|
||||
|
||||
public func addBlock(_ buttonTapBlock: @escaping ButtonTapBlock, event: Event) {
|
||||
self.buttonTapBlock = buttonTapBlock
|
||||
addTarget(self, action: #selector(callBlock(_:)), for: event)
|
||||
}
|
||||
|
||||
func callBlock(_ sender: Button) {
|
||||
guard let buttonTapBlock = buttonTapBlock else { return }
|
||||
buttonTapBlock(self)
|
||||
}
|
||||
|
||||
public func setWithActionMap(_ actionMap: [AnyHashable: Any]?, delegateObject: DelegateObject?, additionalData: [AnyHashable: Any]?) {
|
||||
self.actionMap = actionMap
|
||||
self.titleLabel?.numberOfLines = 0
|
||||
self.titleLabel?.lineBreakMode = .byWordWrapping
|
||||
setTitle(actionMap?.stringForkey(KeyTitle), for: .normal)
|
||||
|
||||
if let actionMap = self.actionMap,
|
||||
let disableButtonAsAny = actionMap[KeyDisableButton],
|
||||
let isDisabled = disableButtonAsAny as? Bool {
|
||||
|
||||
isEnabled = !isDisabled
|
||||
}
|
||||
|
||||
if let mVMCoreUIDelegateObject = delegateObject as? MVMCoreUIDelegateObject {
|
||||
self.buttonDelegate = mVMCoreUIDelegateObject.buttonDelegate
|
||||
}
|
||||
|
||||
self.addBlock({ [weak self] (sender) in
|
||||
guard let self = self else { return }
|
||||
var performAction = true
|
||||
if let shouldPerformAction = self.buttonDelegate?.button?(self, shouldPerformActionWithMap: actionMap, additionalData: additionalData) {
|
||||
performAction = shouldPerformAction
|
||||
}
|
||||
if performAction {
|
||||
MVMCoreActionHandler.shared()?.handleAction(with: actionMap, additionalData: additionalData, delegateObject: delegateObject)
|
||||
}
|
||||
|
||||
}, event: .touchUpInside)
|
||||
}
|
||||
}
|
||||
@ -8,7 +8,7 @@
|
||||
//
|
||||
|
||||
|
||||
open class CaretButton: MFCustomButton, MVMCoreUIMoleculeViewProtocol, MVMCoreUIViewConstrainingProtocol {
|
||||
open class CaretButton: Button, MVMCoreUIMoleculeViewProtocol, MVMCoreUIViewConstrainingProtocol {
|
||||
|
||||
//------------------------------------------------------
|
||||
// MARK: - Constants
|
||||
@ -46,10 +46,10 @@ open class CaretButton: MFCustomButton, MVMCoreUIMoleculeViewProtocol, MVMCoreUI
|
||||
super.layoutSubviews()
|
||||
}
|
||||
|
||||
public func setEnabled(_ enabled: Bool) {
|
||||
super.isEnabled = enabled
|
||||
|
||||
changeCaretColor()
|
||||
override public var isEnabled: Bool {
|
||||
didSet {
|
||||
changeCaretColor()
|
||||
}
|
||||
}
|
||||
|
||||
public func updateView(_ size: CGFloat) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user