             button.setBackgroundImage(img, forState: .Disabled)
         }
 		
-		if backgroundColor != nil {
-			button.backgroundColorNormal = backgroundColor!
-		}
-        if backgroundColorHighlighted != nil {
-            button.backgroundColorHighlighted = backgroundColorHighlighted!
-        }
-        if backgroundColorSelected != nil {
-            button.backgroundColorSelected = backgroundColorSelected!
-        }
-        if backgroundColorSelectedHighlighted != nil {
-            button.backgroundColorSelectedHighlighted = backgroundColorSelectedHighlighted!
-        }
-        if backgroundColorDisabled != nil {
-            button.backgroundColorDisabled = backgroundColorDisabled!
-        }
+        button.backgroundColorNormal = backgroundColor
+        button.backgroundColorHighlighted = backgroundColorHighlighted
+        button.backgroundColorSelected = backgroundColorSelected
+        button.backgroundColorSelectedHighlighted = backgroundColorSelectedHighlighted
+        button.backgroundColorDisabled = backgroundColorDisabled
         
         button.isToggle = isToggle
     }

                NSNotificationCenter.defaultCenter().postNotificationName(name!, object: scopeObject)  // todo scope
            }
        }
        
        /*if isToggle {
            sender.selected = !sender.selected;
        }*/
    }
    
    @objc func buttonOnTouchDown(sender:UIButton!)

        }
        
        if backgroundImageSet != nil {
            let pathLength = countElements(backgroundImageSet!)
            let extensionLength = countElements(backgroundImageSet!.componentsSeparatedByString(".").last!)
            let insertPosition = pathLength - extensionLength - 1
            
            let normalPath = backgroundImageSet!.substringToIndex(advance(backgroundImageSet!.startIndex, insertPosition)) + "_normal" + backgroundImageSet!.substringFromIndex(advance(backgroundImageSet!.startIndex, insertPosition))
            let highlightedPath = backgroundImageSet!.substringToIndex(advance(backgroundImageSet!.startIndex, insertPosition)) + "_highlighted" + backgroundImageSet!.substringFromIndex(advance(backgroundImageSet!.startIndex, insertPosition))
            let selectedPath = backgroundImageSet!.substringToIndex(advance(backgroundImageSet!.startIndex, insertPosition)) + "_selected" + backgroundImageSet!.substringFromIndex(advance(backgroundImageSet!.startIndex, insertPosition))
            let selectedHighlightedPath = backgroundImageSet!.substringToIndex(advance(backgroundImageSet!.startIndex, insertPosition)) + "_selected_highlighted" + backgroundImageSet!.substringFromIndex(advance(backgroundImageSet!.startIndex, insertPosition))
            let disabledPath = backgroundImageSet!.substringToIndex(advance(backgroundImageSet!.startIndex, insertPosition)) + "_disabled" + backgroundImageSet!.substringFromIndex(advance(backgroundImageSet!.startIndex, insertPosition))
            
            var img: UIImage? = UIImage(named: String(bundlePath: normalPath))
            if img == nil {
