//$ Id $ Ċ package Ġcom . events . calendar . adapters Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . support . v 4 . view . Pager Adapter Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ Ċ import Ġcom . events . calendar . utils . Events Calendar Util Ċ import Ġcom . events . calendar . views . Events Calendar Ċ import Ġcom . events . calendar . views . Month View Ċ Ċ import Ġjava . util . Calendar Ċ Ċ class ĠMonth Pager Adapter ( view Pager : ĠEvents Calendar , Ġstart Month : ĠCalendar , Ġend Month : ĠCalendar ) Ġ: ĠP ager Adapter () Ġ{ ĊĠĠĠ Ġprivate Ġval ĠmContext : ĠContext ĊĠĠĠ Ġprivate Ġval Ġm Month Iterator : ĠCalendar ĊĠĠĠ Ġprivate Ġval Ġm Count : ĠInt ĊĠĠĠ Ġprivate Ġval Ġm Month View Callback : ĠMonth View . Callback ĊĊĠĠĠ Ġprivate Ġval Ġmonth Dates Grid Layouts Array : ĠArray < Month View ?> ĊĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠmContext Ġ= Ġview Pager . context ĊĠĠĠĠĠĠĠ Ġm Month View Callback Ġ= Ġview Pager ĊĠĠĠĠĠĠĠ Ġif Ġ( Events Calendar Util . is Past Day ( start Month )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Min Month Ġ= Ġstart Month ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Min Month Ġ= ĠCalendar . getInstance () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( Events Calendar Util . is Future Day ( end Month )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Max Month Ġ= Ġend Month ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Max Month Ġ= ĠCalendar . getInstance () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġm Count Ġ= ĠEvents Calendar Util . getMonth Count ( m Min Month !! , Ġm Max Month !! ) ĊĠĠĠĠĠĠĠ Ġmonth Dates Grid Layouts Array Ġ= ĠarrayOf Null s ( m Count ) ĊĠĠĠĠĠĠĠ Ġm Month Iterator Ġ= Ġm Min Month !!. clone () Ġas ĠCalendar ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm Count ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġis View From Object ( view : ĠView , Ġ` object `: ĠAny ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġview Ġ=== Ġ` object ` ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinstantiate Item ( container : ĠViewGroup , Ġposition : ĠInt ): ĠAny Ġ{ ĊĠĠĠĠĠĠĠ Ġm Month Iterator . add ( Calendar . MONTH , Ġposition ) ĊĠĠĠĠĠĠĠ Ġval Ġmonth View Ġ= ĠMonth View ( mContext , Ġm Month Iterator , ĠEvents Calendar Util . week Start Day , Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġmonth View . set Callback ( m Month View Callback ) ĊĠĠĠĠĠĠĠ Ġm Month Iterator . add ( Calendar . MONTH , Ġ- position ) ĊĠĠĠĠĠĠĠ Ġmonth Dates Grid Layouts Array [ position ] Ġ= Ġmonth View ĊĠĠĠĠĠĠĠ Ġcontainer . addView ( month View ) ĊĠĠĠĠĠĠĠ Ġreturn Ġmonth View ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdestroy Item ( container : ĠViewGroup , Ġposition : ĠInt , Ġ` object `: ĠAny ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcontainer . remove View (` object ` Ġas ĠView ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetItem ( position : ĠInt ): ĠMonth View ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmonth Dates Grid Layouts Array [ position ] ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġm Min Month : ĠCalendar ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġm Max Month : ĠCalendar ? Ġ= Ġnull ĊĠĠĠ Ġ} Ċ } Ċ