 		return txt
 	}
 	
-	func addButton(title:String, action:()->Void)->UIButton {
+	func addButton(title:String, action:()->Void)->SCLButton {
 		let btn = addButton(title)
-		actions[btn] = action
+		btn.actionType = SCLActionType.Closure
+		btn.action = action
 		btn.addTarget(self, action:Selector("buttonTapped:"), forControlEvents:.TouchUpInside)
 		return btn
 	}
 	
-	func addButton(title:String, target:AnyObject, selector:Selector)->UIButton {
+	func addButton(title:String, target:AnyObject, selector:Selector)->SCLButton {
 		let btn = addButton(title)
-		btn.addTarget(target, action:selector, forControlEvents:.TouchUpInside)
+		btn.actionType = SCLActionType.Selector
+		btn.target = target
+		btn.selector = selector
+		btn.addTarget(self, action:Selector("buttonTapped:"), forControlEvents:.TouchUpInside)
 		return btn
 	}
 	
-	private func addButton(title:String)->UIButton {
+	private func addButton(title:String)->SCLButton {
 		// Update view height
 		kWindowHeight += 45.0
 		// Add button
-		let btn = UIButton()
+		let btn = SCLButton()
 		btn.layer.masksToBounds = true
 		btn.setTitle(title, forState: .Normal)
 		btn.titleLabel?.font = UIFont(name:kButtonFont, size: 14)

// Pop Up Styles
enum SCLAlertViewStyle {
    case Success, Error, Notice, Warning, Info, Edit
}

// Allow alerts to be closed/renamed in a chainable manner

		}
		for btn in buttons {
			btn.backgroundColor = viewColor
			if style == SCLAlertViewStyle.Warning {
				btn.setTitleColor(UIColor.blackColor(), forState:UIControlState.Normal)
			}
		}
		
        // Adding duration
