NCTrashGridCell.swift 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. //
  2. // NCTrashGridCell.swift
  3. // Nextcloud
  4. //
  5. // Created by Marino Faggiana on 08/10/2018.
  6. // Copyright © 2018 TWS. All rights reserved.
  7. //
  8. import Foundation
  9. import UIKit
  10. class NCTrashGridCell: UICollectionViewCell {
  11. @IBOutlet weak var imageItem: UIImageView!
  12. @IBOutlet weak var restore: UIImageView!
  13. @IBOutlet weak var tapRestore: UIImageView!
  14. @IBOutlet weak var more: UIImageView!
  15. @IBOutlet weak var tapMore: UIImageView!
  16. var delegate: NCTrashGridDelegate?
  17. var fileID = ""
  18. override func awakeFromNib() {
  19. super.awakeFromNib()
  20. restore.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "trashRestore"), multiplier: 2, color: NCBrandColor.sharedInstance.optionItem)
  21. more.image = CCGraphics.changeThemingColorImage(UIImage.init(named: "trashMore"), multiplier: 2, color: NCBrandColor.sharedInstance.optionItem)
  22. let tapGestureRestore = UITapGestureRecognizer(target: self, action: #selector(NCTrashGridCell.tapRestore(sender:)))
  23. addGestureRecognizer(tapGestureRestore)
  24. tapGestureRestore.numberOfTapsRequired = 1
  25. tapRestore.isUserInteractionEnabled = true
  26. tapRestore.addGestureRecognizer(tapGestureRestore)
  27. let tapGestureMore = UITapGestureRecognizer(target: self, action: #selector(NCTrashGridCell.tapMore(sender:)))
  28. addGestureRecognizer(tapGestureMore)
  29. tapGestureMore.numberOfTapsRequired = 1
  30. tapMore.isUserInteractionEnabled = true
  31. tapMore.addGestureRecognizer(tapGestureMore)
  32. }
  33. public func configure(with fileID: String, image: UIImage?, title: String, info: String) {
  34. self.fileID = fileID
  35. imageItem.image = image
  36. }
  37. @objc func tapRestore(sender: UITapGestureRecognizer) {
  38. delegate?.tapRestoreItem(with: fileID)
  39. }
  40. @objc func tapMore(sender: UITapGestureRecognizer) {
  41. delegate?.tapMoreItem(with: fileID)
  42. }
  43. }
  44. protocol NCTrashGridDelegate {
  45. func tapRestoreItem(with fileID: String)
  46. func tapMoreItem(with fileID: String)
  47. }