     
     // MARK: colors
     
-    @IBInspectable var textColor:UIColor = UIColor.blackColor() {
+    /// The text color of the editable text.
+    @IBInspectable public var textColor:UIColor = UIColor.blackColor() {
         didSet {
             self.textField.textColor = textColor
         }
     }
 
-    @IBInspectable var placeholderColor:UIColor = UIColor.lightGrayColor() {
+    /// The text color of the placeholder label.
+    @IBInspectable public var placeholderColor:UIColor = UIColor.lightGrayColor() {
         didSet {
             self.placeholderLabel.textColor = placeholderColor
         }
     }
     
-    @IBInspectable var errorColor:UIColor = UIColor.redColor() {
+    /// The color used for the title label and the line when the error message is not `nil`
+    @IBInspectable public var errorColor:UIColor = UIColor.redColor() {
         didSet {
             self.updateTitleColor()
             self.updateLineColor()
         }
     }
     
-    @IBInspectable var titleColor:UIColor = UIColor.grayColor() {
+    /// The text color of the title label when not editing.
+    @IBInspectable public var titleColor:UIColor = UIColor.grayColor() {
         didSet {
             self.updateTitleColor()
         }
     }
     
-    @IBInspectable var selectedTitleColor:UIColor = UIColor.grayColor() {
+    /// The text color of the title label when editing.
+    @IBInspectable public var selectedTitleColor:UIColor = UIColor.grayColor() {
         didSet {
             self.updateTitleColor()
         }
     }
-    @IBInspectable var selectedLineColor:UIColor = UIColor.blackColor() {
+    
+    /// The color of the line when editing.
+    @IBInspectable public var selectedLineColor:UIColor = UIColor.blackColor() {
         didSet {
             self.updateLineColor()
         }
     }
-    @IBInspectable var lineColor:UIColor = UIColor.lightGrayColor() {
+    
+    /// The color of the line when not editing.
+    @IBInspectable public var lineColor:UIColor = UIColor.lightGrayColor() {
         didSet {
             self.updateLineColor()
         }
     }
-
+    
     // MARK: delegate
-    
+
+    /// The `WatermarkedTextfield` delegate.
     @IBOutlet weak var delegate:WatermarkedTextFieldDelegate?
 
     // MARK: view components

        self.init(frame:frame, textField:nil, lineView:nil)
    }

    required init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        self.createLineView()
        self.createTitleLabel()

    
    // MARK: - layout
    
    override public func layoutSubviews() {
        super.layoutSubviews()

        self.placeholderLabel.frame = self.placeholderLabelRectForBounds(self.bounds)
