 		view.borderColor = borderColor
 		view.borderWidth = borderWidth
 		view.cornerRadius = cornerRadius
+		configEventHandlers(view)
 		return view
 	}
+
+	private func configEventHandlers(view: FewView) {
+		view.mouseDown = { [weak self] in
+			if let strongSelf = self {
+				strongSelf.mouseDown(strongSelf)
+			}
+		}
+
+		view.mouseUp = { [weak self] in
+			if let strongSelf = self {
+				strongSelf.mouseUp(strongSelf)
+			}
+		}
+	}
 }

		}
	}

	private override func drawRect(dirtyRect: NSRect) {
		let path: NSBezierPath
		if cornerRadius.isZero {

			if fabs(cornerRadius - backgroundView.cornerRadius) > CGFloat(DBL_EPSILON) {
				backgroundView.cornerRadius = cornerRadius
			}

			configEventHandlers(backgroundView)
		}
	}

