fi.helsinki.cs.gist.timeline
Interface GVisibleDaysModel

All Known Implementing Classes:
GDefaultVisibleDaysModel

public abstract interface GVisibleDaysModel

Interface GVisibleDaysModel defines the requirements for a model object suitable to use with GTimeline to store information of currently visible days. It stores also formation of days, so that, if days are shown in different places (like in several GSchedules of GTimeline and in GThumbPane of GCalendarScrollbar) they can be laid out similarly. This helps user.

See Also:
GDefaultVisibleDaysModel

Method Summary
 void addVisibleDaysModelListener(GVisibleDaysModelListener listener)
           
 boolean contains(java.util.Date day)
          Returns true, if visible days contains given day.
 int getActualColumnCount()
          Returns number of columns, which contains dates.
 int getActualRowCount()
          Returns number of rows, which contains dates.
 java.util.Date[] getDaysInColumn(int column)
          Returns days in given column.
 java.util.Date[] getDaysInRow(int row)
          Returns days in given row.
 java.util.Date getFirstDay()
          Returns chronologically first visible day.
 java.util.Date getLastDay()
          Returns chronologically last visible day.
 int getMaximumColumnCount()
          Returns number of columns that formation spans.
 int getMaximumRowCount()
          Returns number of rows that formation spans.
 java.util.Vector getVisibleDays()
          Returns just visible days.
 java.util.Date[][] getVisibleDaysWithFormation()
          Returns days in formation.
 void removeVisibleDaysModelListener(GVisibleDaysModelListener listener)
           
 void setVisibleDays(java.util.Vector days)
          Sets visible days.
 void setVisibleDaysWithFormation(java.util.Date[][] days)
          Sets visible days in given formation.
 

Method Detail

setVisibleDays

public void setVisibleDays(java.util.Vector days)
Sets visible days. No formation of days is given.
Parameters:
days - vector of days to be visible.

setVisibleDaysWithFormation

public void setVisibleDaysWithFormation(java.util.Date[][] days)
Sets visible days in given formation. Days are given in two-dimensional array, which can contain null values to represent empty slots.

getVisibleDays

public java.util.Vector getVisibleDays()
Returns just visible days. No formation information is returned.

getVisibleDaysWithFormation

public java.util.Date[][] getVisibleDaysWithFormation()
Returns days in formation. Days are returned in 2D array, which can contain null values for non-visible days. If days were set without formation (setVisibleDays(Vector)), then they have formation of one big row without empty slots.

getDaysInRow

public java.util.Date[] getDaysInRow(int row)
Returns days in given row. Also empty slots are returned as null values in array.

getDaysInColumn

public java.util.Date[] getDaysInColumn(int column)
Returns days in given column. Also empty slots are returned as null values in array.

getActualRowCount

public int getActualRowCount()
Returns number of rows, which contains dates.

getMaximumRowCount

public int getMaximumRowCount()
Returns number of rows that formation spans. This includes empty rows.

getActualColumnCount

public int getActualColumnCount()
Returns number of columns, which contains dates.

getMaximumColumnCount

public int getMaximumColumnCount()
Returns number of columns that formation spans. This includes empty rows.

contains

public boolean contains(java.util.Date day)
Returns true, if visible days contains given day.

getFirstDay

public java.util.Date getFirstDay()
Returns chronologically first visible day.

getLastDay

public java.util.Date getLastDay()
Returns chronologically last visible day.

addVisibleDaysModelListener

public void addVisibleDaysModelListener(GVisibleDaysModelListener listener)

removeVisibleDaysModelListener

public void removeVisibleDaysModelListener(GVisibleDaysModelListener listener)