Swiftgram/submodules/TelegramUI/TelegramUI/PeerMediaCollectionInterfaceStateButtons.swift
Peter b317aab568 Add 'submodules/TelegramUI/' from commit 'fa3ac0b61a27c8dd3296518a15891a6f9750cbf2'
git-subtree-dir: submodules/TelegramUI
git-subtree-mainline: 5c1613d1048026b9e00a6ce753775cef87eb53fa
git-subtree-split: fa3ac0b61a27c8dd3296518a15891a6f9750cbf2
2019-06-11 19:00:46 +01:00

33 lines
1.5 KiB
Swift

import Foundation
import UIKit
enum PeerMediaCollectionNavigationButtonAction {
case beginMessageSelection
case cancelMessageSelection
}
struct PeerMediaCollectionNavigationButton: Equatable {
let action: PeerMediaCollectionNavigationButtonAction
let buttonItem: UIBarButtonItem
static func ==(lhs: PeerMediaCollectionNavigationButton, rhs: PeerMediaCollectionNavigationButton) -> Bool {
return lhs.action == rhs.action
}
}
func rightNavigationButtonForPeerMediaCollectionInterfaceState(_ interfaceState: PeerMediaCollectionInterfaceState, currentButton: PeerMediaCollectionNavigationButton?, target: Any?, selector: Selector?) -> PeerMediaCollectionNavigationButton? {
if let _ = interfaceState.selectionState {
if let currentButton = currentButton, currentButton.action == .cancelMessageSelection {
return currentButton
} else {
return PeerMediaCollectionNavigationButton(action: .cancelMessageSelection, buttonItem: UIBarButtonItem(title: interfaceState.strings.Common_Cancel, style: .plain, target: target, action: selector))
}
} else {
if let currentButton = currentButton, currentButton.action == .beginMessageSelection {
return currentButton
} else {
return PeerMediaCollectionNavigationButton(action: .beginMessageSelection, buttonItem: UIBarButtonItem(title: interfaceState.strings.Common_Select, style: .plain, target: target, action: selector))
}
}
}