QModelIndex CalendarItemModel::index( int row, int column, const QModelIndex &parent ) const { if ( m_project == 0 || column < 0 || column >= columnCount() || row < 0 ) { return QModelIndex(); } Calendar *par = calendar( parent ); if ( par == 0 ) { if ( row < m_project->calendars().count() ) { return createIndex( row, column, m_project->calendars().at( row ) ); } } else if ( row < par->calendars().count() ) { return createIndex( row, column, par->calendars().at( row ) ); } return QModelIndex(); }
int CalendarItemModel::rowCount( const QModelIndex &parent ) const { if ( m_project == 0 ) { return 0; } Calendar *par = calendar( parent ); if ( par == 0 ) { return m_project->calendars().count(); } return par->calendars().count(); }