   private var _vc: ViewController!
   
   var delegate: FigureViewDelegate? = nil
-  
+  var selected: Bool = false {
+    didSet {
+      self.selected ? self.backgroundColor = UIColor.lightGrayColor() : setColor(_figure)
+    }
+  }
   
   
   required init(coder aDecoder: NSCoder) {

  
  func endTouch() {
    
    var oldOverlaps = _overlapFVs
    for fv in oldOverlaps {
      fv.requestDeleteFV(self)

    
    super.init(frame: frame)
    
    initFigureView(figure, vc: vc, frame: frame)
  }
  
  init(figure: Figure, vc: ViewController) {
    
    var frame = CGRect(origin: CGPointZero, size: CGSizeMake(30, 30))
    super.init(frame: frame)
    
    initFigureView(figure, vc: vc, frame: frame)
  }
  
  
  private func initFigureView(figure: Figure, vc: ViewController, frame: CGRect) {
    _vc  = vc
    setFigure(figure)
    _startingPoint = frame.origin
    
    var gr = UITapGestureRecognizer(target: self, action: NSSelectorFromString("handleTap:"))
    gr.numberOfTapsRequired = 1
    gr.numberOfTouchesRequired = 1
    addGestureRecognizer(gr)
  }
  
  private func setFigure(figure: Figure) {
    
    _figure = figure
    setColor(figure)
  }
  
  private func setColor(figure: Figure) {
    var color = figure.color.intValue
    var red   = CGFloat((color >> 16) & 0xFF)
    var green = CGFloat((color >>  8) & 0xFF)
