         let selectedMonth = half + (months.count - (half % months.count)) + initialComponents.month!
         let selectedDate = half + (days.count - (half % days.count)) + initialComponents.day!
         let selectedYear = years.indexOf(initialComponents.year!)
-        selectRow(selectedDate - 1, inComponent: 1, animated: false)
-        selectRow(selectedMonth - 1, inComponent: 0, animated: false)
-        selectRow(selectedYear!, inComponent: 2, animated: false)
+        
+        switch type!{
+            
+        case .Default:
+            selectRow(selectedDate - 1, inComponent: 1, animated: false)
+            selectRow(selectedMonth - 1, inComponent: 0, animated: false)
+            selectRow(selectedYear!, inComponent: 2, animated: false)
+        case .MonthDay:
+            selectRow(selectedDate - 1, inComponent: 1, animated: false)
+            selectRow(selectedMonth - 1, inComponent: 0, animated: false)
+            break
+        case .MonthOnly:
+            selectRow(selectedMonth - 1, inComponent: 0, animated: false)
+            break
+        case .DayOnly:
+            selectRow(selectedDate - 1, inComponent: 0, animated: false)
+            break
+        case .YearMonth:
+            selectRow(selectedMonth - 1, inComponent: 1, animated: false)
+            selectRow(selectedYear!, inComponent: 0, animated: false)
+            break
+        case .YearOnly:
+            selectRow(selectedYear!, inComponent: 0, animated: false)
+            break
+        }
     }
     
     private func getNumberOfComponentsForDatePickerType(var type : VJDatePickerType?)->Int{

    // The default initializer sets components from
    // current system date
    
    init(){
        let calendar = NSCalendar.currentCalendar()
        let todayComponents = calendar.components([.Day,.Month,.Year], fromDate: NSDate())
        self.day = todayComponents.day

    case MonthDay
}

public class VJDateComponents : NSObject {
    
    var day : Int!
    var month : Int!
