     private var redoEnabled = false
     private var clearEnabled = false
     
+    /// init: initializes a TouchDrawView instance
+    /// - Parameter: frame: frame for the view to be initialized in
     override init(frame: CGRect) {
         super.init(frame: frame)
         initTouchDrawView()
     }
-
+    
+    /// init: initializes a TouchDrawView instance
+    /// - Parameter: coder aDecoder: NSCoder to initialize the view
     required public init?(coder aDecoder: NSCoder) {
         super.init(coder: aDecoder)
         initTouchDrawView()

        }
    }
    
}

//  TouchDrawView.swift
//  TouchDraw
//
//  Created by Christian Paul Dehli
//

public protocol TouchDrawViewDelegate {
    /// undoEnabled: triggered when undo is enabled (only if it was previously disabled)
    /// - Returns: Void
    func undoEnabled() -> Void
    
    /// undoDisabled: triggered when undo is disabled (only if it previously enabled)
    /// - Returns: Void
    func undoDisabled() -> Void
    
    /// redoEnabled: triggered when redo is enabled (only if it was previously disabled)
    /// - Returns: Void
    func redoEnabled() -> Void
    
    /// redoDisabled: triggered when redo is disabled (only if it previously enabled)
    /// - Returns: Void
    func redoDisabled() -> Void
    
    /// clearEnabled: triggered when clear is enabled (only if it was previously disabled)
    /// - Returns: Void
    func clearEnabled() -> Void
    
    /// clearDisabled: triggered when clear is disabled (only if it previously enabled)
    /// - Returns: Void
    func clearDisabled() -> Void
}

private class BrushProperties {
