 import UIKit
 import QuartzCore
 
-@objc protocol DropdownListMenuDelegate : NSObjectProtocol {
+@objc protocol DropdownListMenuDelegate {
     
     optional func dropdownListMenuWillDisplay()
     optional func dropdownListMenuWillDismiss()

    private var fontOfListItem: UIFont!           // list item font size
    private var baseView: UIView!
    private var tableView: UITableView!
    
    override init() {
        super.init()


class DropdownMenu: UIBarButtonItem {
    
    var superView: UIView!                        // parentView
    var menuDelegate: DropdownListMenuDelegate!
    
    var tableSelectedColor = UIColor.grayColor()
    var menuSeparatorColor = UIColor.darkGrayColor()
    var menuTableBackgroundColor = UIColor.whiteColor()
    var menuBackgroundColor = UIColor.lightGrayColor()
    var menuLabelColor = UIColor.darkTextColor()

    private var isShowDisplay: Bool = false
    private var dropList: [AnyObject]!            // drop menu list
    private var displayNumOfRows = 0              // display count
    private var heightOfListItem = 0              // list item height
