func added. formating and commenting
This commit is contained in:
parent
dc8e580f87
commit
4c0d38e398
@ -257,8 +257,10 @@ public typealias ActionBlock = () -> ()
|
||||
switch labelModel.textAlignment {
|
||||
case .center:
|
||||
textAlignment = .center
|
||||
|
||||
case .right:
|
||||
textAlignment = .right
|
||||
|
||||
default:
|
||||
textAlignment = .left
|
||||
}
|
||||
@ -290,7 +292,7 @@ public typealias ActionBlock = () -> ()
|
||||
if let color = labelModel.textColor {
|
||||
textColor = color.uiColor
|
||||
}
|
||||
|
||||
|
||||
if let attributes = labelModel.attributes, let labelText = text {
|
||||
let attributedString = NSMutableAttributedString(string: labelText, attributes: [NSAttributedString.Key.font: font.updateSize(standardFontSize), NSAttributedString.Key.foregroundColor: textColor as UIColor])
|
||||
|
||||
@ -359,7 +361,7 @@ public typealias ActionBlock = () -> ()
|
||||
continue
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
attributedText = attributedString
|
||||
originalAttributedString = attributedText
|
||||
}
|
||||
@ -503,11 +505,11 @@ public typealias ActionBlock = () -> ()
|
||||
textColor = .mvmBlack
|
||||
setScale(scale)
|
||||
}
|
||||
|
||||
|
||||
//------------------------------------------------------
|
||||
// MARK: - 2.0 Styling Methods
|
||||
//------------------------------------------------------
|
||||
|
||||
|
||||
@objc public func styleH1(_ scale: Bool) {
|
||||
MFStyler.styleLabelH1(self, genericScaling: false)
|
||||
setScale(scale)
|
||||
@ -548,6 +550,23 @@ public typealias ActionBlock = () -> ()
|
||||
setScale(scale)
|
||||
}
|
||||
|
||||
/// Will remove the values contained in attributedText.
|
||||
func clearAttributes() {
|
||||
|
||||
guard let labelText = text,
|
||||
let attributes = attributedText?.attributes(at: 0, longestEffectiveRange: nil, in: NSRange(location: 0, length: labelText.count))
|
||||
else { return }
|
||||
|
||||
let attributedString = NSMutableAttributedString(string: labelText)
|
||||
|
||||
for attribute in attributes {
|
||||
attributedString.removeAttribute(attribute.key, range: NSRange(location: 0, length: labelText.count))
|
||||
}
|
||||
|
||||
attributedText = attributedString
|
||||
}
|
||||
|
||||
|
||||
@objc public func updateView(_ size: CGFloat) {
|
||||
scaleSize = size as NSNumber
|
||||
|
||||
@ -835,7 +854,7 @@ extension Label {
|
||||
|
||||
/// Converts the entire text into a link. All characters will be underlined and the intrinsic bounds will respond to tap.
|
||||
@objc public func makeTextButton(actionBlock: @escaping ActionBlock) {
|
||||
|
||||
|
||||
setTextLinkState(range: getRange, actionBlock: actionBlock)
|
||||
}
|
||||
|
||||
@ -920,7 +939,7 @@ extension Label {
|
||||
}
|
||||
|
||||
@objc public func accessibilityCustomAction(_ action: UIAccessibilityCustomAction) {
|
||||
|
||||
|
||||
for clause in clauses {
|
||||
if action.hash == clause.accessibilityID {
|
||||
clause.performAction()
|
||||
@ -930,7 +949,7 @@ extension Label {
|
||||
}
|
||||
|
||||
open override func accessibilityActivate() -> Bool {
|
||||
|
||||
|
||||
guard let accessibleActions = accessibilityCustomActions else { return false }
|
||||
|
||||
for clause in clauses {
|
||||
|
||||
@ -6,23 +6,39 @@
|
||||
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
open class LabelAttributeActionModel: LabelAttributeModel {
|
||||
//--------------------------------------------------
|
||||
// MARK: - Properties
|
||||
//--------------------------------------------------
|
||||
|
||||
override public class var identifier: String {
|
||||
return "action"
|
||||
}
|
||||
|
||||
var action: ActionModelProtocol
|
||||
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Initializer
|
||||
//--------------------------------------------------
|
||||
|
||||
public init(_ location: Int, _ length: Int, action: ActionModelProtocol) {
|
||||
self.action = action
|
||||
super.init(location, length)
|
||||
}
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Keys
|
||||
//--------------------------------------------------
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case action
|
||||
}
|
||||
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Codec
|
||||
//--------------------------------------------------
|
||||
|
||||
required public init(from decoder: Decoder) throws {
|
||||
let typeContainer = try decoder.container(keyedBy: CodingKeys.self)
|
||||
action = try typeContainer.decodeModel(codingKey: .action)
|
||||
|
||||
@ -6,7 +6,6 @@
|
||||
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
@objcMembers public class LabelAttributeColorModel: LabelAttributeModel {
|
||||
//--------------------------------------------------
|
||||
|
||||
@ -6,8 +6,6 @@
|
||||
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
|
||||
@objcMembers public class LabelAttributeFontModel: LabelAttributeModel {
|
||||
//--------------------------------------------------
|
||||
|
||||
@ -6,13 +6,12 @@
|
||||
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
class LabelAttributeImageModel: LabelAttributeModel {
|
||||
//--------------------------------------------------
|
||||
// MARK: - Properties
|
||||
//--------------------------------------------------
|
||||
|
||||
|
||||
override public class var identifier: String {
|
||||
return "image"
|
||||
}
|
||||
|
||||
@ -6,7 +6,6 @@
|
||||
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
|
||||
@objcMembers open class LabelAttributeModel: ModelProtocol {
|
||||
//--------------------------------------------------
|
||||
@ -20,7 +19,7 @@ import Foundation
|
||||
public static var categoryCodingKey: String {
|
||||
return "type"
|
||||
}
|
||||
|
||||
|
||||
public class var identifier: String {
|
||||
return ""
|
||||
}
|
||||
@ -31,12 +30,16 @@ import Foundation
|
||||
|
||||
var location: Int
|
||||
var length: Int
|
||||
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Initializer
|
||||
//--------------------------------------------------
|
||||
|
||||
public init(_ location: Int, _ length: Int) {
|
||||
self.location = location
|
||||
self.length = length
|
||||
}
|
||||
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Keys
|
||||
//--------------------------------------------------
|
||||
|
||||
@ -6,16 +6,28 @@
|
||||
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
@objcMembers public class LabelAttributeStrikeThroughModel: LabelAttributeModel {
|
||||
//--------------------------------------------------
|
||||
// MARK: - Properties
|
||||
//--------------------------------------------------
|
||||
|
||||
override public class var identifier: String {
|
||||
return "strikethrough"
|
||||
}
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Initializer
|
||||
//--------------------------------------------------
|
||||
|
||||
required public init(from decoder: Decoder) throws {
|
||||
try super.init(from: decoder)
|
||||
}
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Codec
|
||||
//--------------------------------------------------
|
||||
|
||||
public override func encode(to encoder: Encoder) throws {
|
||||
try super.encode(to: encoder)
|
||||
}
|
||||
|
||||
@ -6,13 +6,20 @@
|
||||
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
||||
//
|
||||
|
||||
import UIKit
|
||||
|
||||
@objcMembers public class LabelAttributeUnderlineModel: LabelAttributeModel {
|
||||
//--------------------------------------------------
|
||||
// MARK: - Properties
|
||||
//--------------------------------------------------
|
||||
|
||||
override public class var identifier: String {
|
||||
return "underline"
|
||||
}
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Codec
|
||||
//--------------------------------------------------
|
||||
|
||||
required public init(from decoder: Decoder) throws {
|
||||
try super.init(from: decoder)
|
||||
}
|
||||
|
||||
@ -7,8 +7,6 @@
|
||||
//
|
||||
|
||||
|
||||
import Foundation
|
||||
|
||||
@objcMembers public class LabelModel: MoleculeModelProtocol {
|
||||
//--------------------------------------------------
|
||||
// MARK: - Properties
|
||||
|
||||
Loading…
Reference in New Issue
Block a user