             return self._stComponentHelper.substyleName
         }
     }
-
+    
+    var normalBackgroundColor: UIColor? {
+        get {
+            return self._normalBackgroundColor
+        }
+        set {
+            self._normalBackgroundColor = newValue
+        }
+    }
+    
+    var highlightedBackgroundColor: UIColor? {
+        get {
+            return self._highlightedBackgroundColor
+        }
+        set {
+            self._highlightedBackgroundColor = newValue
+        }
+    }
+    var selectedBackgroundColor: UIColor? {
+        get {
+            return self._selectedBackgroundColor
+        }
+        set {
+            self._selectedBackgroundColor = newValue
+        }
+    }
+    
+    var borderColor: UIColor? {
+        get {
+            var color:UIColor?
+            if let cgColor = self.layer.borderColor {
+                color = UIColor(cgColor: cgColor)
+            }
+            return color
+        }
+        set {
+            self.layer.borderColor = newValue?.cgColor
+        }
+    }
+    
+    var highlightedBorderColor: UIColor? {
+        get {
+            return self._highlightedBorderColor
+        }
+        set {
+            self._highlightedBorderColor = newValue
+        }
+    }
+    
+    var selectedBorderColor: UIColor? {
+        get {
+            return self._selectedBorderColor
+        }
+        set {
+            self._selectedBorderColor = newValue
+        }
+    }
+    
     
     // -----------------------------------------------------------------------------------------------------------------------
     //

    
    private var _selected = false
    private var _highlighted = false
	
	private var _backgroundColor = UIColor.white
	private var _borderColor:UIColor = UIColor.clear
	private var _highlightedBackgroundColor:UIColor?
	private var _highlightedBorderColor:UIColor?
	private var _selectedBackgroundColor:UIColor?
	private var _selectedBorderColor:UIColor?
	
	
    // -----------------------------------------------------------------------------------------------------------------------
    //
    // MARK: - Initializers & deinit

    
    override open func setHighlighted(_ highlighted: Bool, animated: Bool) {
        self._highlighted = highlighted
        if self.styleName != nil {
            self.updateColors()
        } else {
            super.setHighlighted(highlighted, animated: animated)
