Swiftgram/TelegramUI/ItemListEditableReorderControlNode.swift
Peter Iakovlev d36e7e3a6e no message
2018-02-23 20:28:31 +04:00

40 lines
1.3 KiB
Swift

import Foundation
import AsyncDisplayKit
import Display
final class ItemListEditableReorderControlNode: ASDisplayNode {
var tapped: (() -> Void)?
private let iconNode: ASImageNode
override init() {
self.iconNode = ASImageNode()
self.iconNode.isLayerBacked = true
super.init()
self.addSubnode(self.iconNode)
}
static func asyncLayout(_ node: ItemListEditableReorderControlNode?) -> (_ height: CGFloat, _ theme: PresentationTheme) -> (CGSize, () -> ItemListEditableReorderControlNode) {
return { height, theme in
let image = PresentationResourcesItemList.itemListReorderIndicatorIcon(theme)
let resultNode: ItemListEditableReorderControlNode
if let node = node {
resultNode = node
} else {
resultNode = ItemListEditableReorderControlNode()
resultNode.iconNode.image = image
}
return (CGSize(width: 44.0, height: height), {
if let image = image {
resultNode.iconNode.frame = CGRect(origin: CGPoint(x: 7.0, y: floor((height - image.size.height) / 2.0)), size: image.size)
}
return resultNode
})
}
}
}