@Override public void refresh1(boolean[] data){
  if (mode == Constant.MODE_SHOW_DATA_OF_THIS_MONTH) {
    calendar=Calendar.getInstance();
    selectedYear=calendar.get(Calendar.YEAR);
    selectedMonth=calendar.get(Calendar.MONTH) + 1;
    calendar.set(Calendar.DAY_OF_MONTH,1);
    for (int i=1; i <= daysOfCurrentMonth(); i++) {
      if (i < data.length) {
        this.data[i]=data[i];
      }
 else {
        this.data[i]=false;
      }
    }
    initial();
    invalidate();
    if (onRefreshListener != null) {
      onRefreshListener.onRefresh();
    }
  }
}

@ Override public void refresh1 ( boolean [ ] data ) { if ( mode == Constant . MODE_SHOW_DATA_OF_THIS_MONTH ) { calendar = Calendar . getInstance ( ) ; selectedYear = calendar . get ( Calendar . YEAR ) ; selectedMonth = calendar . get ( Calendar . MONTH ) + 1 ; calendar . set ( Calendar . DAY_OF_MONTH , 1 ) ; for ( int i = 1 ; i <= daysOfCurrentMonth ( ) ; i ++ ) { if ( i < data . length ) { this . data [ i ] = data [ i ] ; } else { this . data [ i ] = false ; } } initial ( ) ; invalidate ( ) ; if ( onRefreshListener != null ) { onRefreshListener . onRefresh ( ) ; } } }
used for mode_show_data_of_this_month the index 1 to 31 ( big month ) , 1 to 30 ( small month ) , 1 - 28 ( feb of normal year ) , 1 - 29 ( feb of leap year ) is better to be accessible in the parameter data , illegal indexes will be ignored with default false value
