Allows "gone" property for hiding list molecules in the list template
This commit is contained in:
parent
8f3bf61574
commit
ae71e723ee
@ -18,7 +18,7 @@ import MVMCore
|
|||||||
public var hideArrow: Bool?
|
public var hideArrow: Bool?
|
||||||
public var line: LineModel?
|
public var line: LineModel?
|
||||||
public var style: ListItemStyle?
|
public var style: ListItemStyle?
|
||||||
@DecodableDefault.False public var gone: Bool
|
public var gone: Bool = false
|
||||||
public var accessibilityTraits: UIAccessibilityTraits?
|
public var accessibilityTraits: UIAccessibilityTraits?
|
||||||
public var accessibilityValue: String?
|
public var accessibilityValue: String?
|
||||||
public var accessibilityText: String?
|
public var accessibilityText: String?
|
||||||
@ -32,6 +32,7 @@ import MVMCore
|
|||||||
case hideArrow
|
case hideArrow
|
||||||
case line
|
case line
|
||||||
case style
|
case style
|
||||||
|
case gone
|
||||||
case accessibilityTraits
|
case accessibilityTraits
|
||||||
case accessibilityValue
|
case accessibilityValue
|
||||||
case accessibilityText
|
case accessibilityText
|
||||||
@ -108,6 +109,7 @@ import MVMCore
|
|||||||
hideArrow = try typeContainer.decodeIfPresent(Bool.self, forKey: .hideArrow)
|
hideArrow = try typeContainer.decodeIfPresent(Bool.self, forKey: .hideArrow)
|
||||||
line = try typeContainer.decodeIfPresent(LineModel.self, forKey: .line)
|
line = try typeContainer.decodeIfPresent(LineModel.self, forKey: .line)
|
||||||
style = try typeContainer.decodeIfPresent(ListItemStyle.self, forKey: .style)
|
style = try typeContainer.decodeIfPresent(ListItemStyle.self, forKey: .style)
|
||||||
|
gone = try typeContainer.decodeIfPresent(Bool.self, forKey: .gone) ?? false
|
||||||
accessibilityTraits = try typeContainer.decodeIfPresent(UIAccessibilityTraits.self, forKey: .accessibilityTraits)
|
accessibilityTraits = try typeContainer.decodeIfPresent(UIAccessibilityTraits.self, forKey: .accessibilityTraits)
|
||||||
accessibilityValue = try typeContainer.decodeIfPresent(String.self, forKey: .accessibilityValue)
|
accessibilityValue = try typeContainer.decodeIfPresent(String.self, forKey: .accessibilityValue)
|
||||||
try super.init(from: decoder)
|
try super.init(from: decoder)
|
||||||
@ -121,6 +123,7 @@ import MVMCore
|
|||||||
try container.encodeIfPresent(hideArrow, forKey: .hideArrow)
|
try container.encodeIfPresent(hideArrow, forKey: .hideArrow)
|
||||||
try container.encodeIfPresent(line, forKey: .line)
|
try container.encodeIfPresent(line, forKey: .line)
|
||||||
try container.encodeIfPresent(style, forKey: .style)
|
try container.encodeIfPresent(style, forKey: .style)
|
||||||
|
try container.encode(gone, forKey: .gone)
|
||||||
try container.encodeIfPresent(accessibilityTraits, forKey: .accessibilityTraits)
|
try container.encodeIfPresent(accessibilityTraits, forKey: .accessibilityTraits)
|
||||||
try container.encodeIfPresent(accessibilityValue, forKey: .accessibilityValue)
|
try container.encodeIfPresent(accessibilityValue, forKey: .accessibilityValue)
|
||||||
try container.encodeIfPresent(accessibilityText, forKey: .accessibilityText)
|
try container.encodeIfPresent(accessibilityText, forKey: .accessibilityText)
|
||||||
|
|||||||
@ -156,7 +156,7 @@ open class MoleculeListTemplate: ThreeLayerTableViewController, TemplateProtocol
|
|||||||
guard let moleculeInfo = getMoleculeInfo(for: indexPath),
|
guard let moleculeInfo = getMoleculeInfo(for: indexPath),
|
||||||
let cell = tableView.dequeueReusableCell(withIdentifier: moleculeInfo.identifier)
|
let cell = tableView.dequeueReusableCell(withIdentifier: moleculeInfo.identifier)
|
||||||
else { return UITableViewCell() }
|
else { return UITableViewCell() }
|
||||||
|
cell.isHidden = (getMoleculeInfo(for: indexPath)?.molecule as? ListItemModelProtocol)?.gone == true
|
||||||
(cell as? MoleculeViewProtocol)?.reset()
|
(cell as? MoleculeViewProtocol)?.reset()
|
||||||
(cell as? MoleculeListCellProtocol)?.setLines(with: templateModel?.line, delegateObject: delegateObjectIVar, additionalData: nil, indexPath: indexPath)
|
(cell as? MoleculeListCellProtocol)?.setLines(with: templateModel?.line, delegateObject: delegateObjectIVar, additionalData: nil, indexPath: indexPath)
|
||||||
if let moleculeView = cell as? MoleculeViewProtocol {
|
if let moleculeView = cell as? MoleculeViewProtocol {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user