class BlockBarButtonItem : UIBarButtonItem {
private var actionHandler: ((Void) -> Void)?
convenience init(title: String?, style: UIBarButtonItemStyle, actionHandler: ((Void) -> Void)?) {
self.init(title: title, style: style, target: nil, action: nil)
self.target = self
self.action = "barButtonItemPressed:"
self.actionHandler = actionHandler
}
func barButtonItemPressed(sender: UIBarButtonItem) {
if let actionHandler = self.actionHandler {
actionHandler()
}
}
}