mirror of
https://github.com/zhigang1992/GitHawk.git
synced 2026-06-05 20:03:41 +08:00
50 lines
1.4 KiB
Swift
50 lines
1.4 KiB
Swift
//
|
|
// Shared.swift
|
|
// MailExample
|
|
//
|
|
// Created by Ryan Nystrom on 6/26/17.
|
|
//
|
|
//
|
|
|
|
import UIKit
|
|
|
|
enum ActionDescriptor {
|
|
case read, unread, more, flag, trash
|
|
|
|
func title(forDisplayMode displayMode: ButtonDisplayMode) -> String? {
|
|
guard displayMode != .imageOnly else { return nil }
|
|
|
|
switch self {
|
|
case .read: return "Read"
|
|
case .unread: return "Unread"
|
|
case .more: return "More"
|
|
case .flag: return "Flag"
|
|
case .trash: return "Trash"
|
|
}
|
|
}
|
|
|
|
func image(forStyle style: ButtonStyle, displayMode: ButtonDisplayMode) -> UIImage? {
|
|
guard displayMode != .titleOnly else { return nil }
|
|
|
|
let name: String
|
|
switch self {
|
|
case .read: name = "Read"
|
|
case .unread: name = "Unread"
|
|
case .more: name = "More"
|
|
case .flag: name = "Flag"
|
|
case .trash: name = "Trash"
|
|
}
|
|
|
|
return UIImage(named: style == .backgroundColor ? name : name + "-circle")
|
|
}
|
|
|
|
var color: UIColor {
|
|
switch self {
|
|
case .read, .unread: return #colorLiteral(red: 0, green: 0.4577052593, blue: 1, alpha: 1)
|
|
case .more: return #colorLiteral(red: 0.7803494334, green: 0.7761332393, blue: 0.7967314124, alpha: 1)
|
|
case .flag: return #colorLiteral(red: 1, green: 0.5803921569, blue: 0, alpha: 1)
|
|
case .trash: return #colorLiteral(red: 1, green: 0.2352941176, blue: 0.1882352941, alpha: 1)
|
|
}
|
|
}
|
|
}
|