• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepimlibs API Reference
  • KDE Home
  • Contact Us
 

akonadi

  • Akonadi
  • FavoriteCollectionsModel
Public Slots | Public Member Functions | List of all members
Akonadi::FavoriteCollectionsModel Class Reference

#include <favoritecollectionsmodel.h>

Inheritance diagram for Akonadi::FavoriteCollectionsModel:
Inheritance graph
[legend]

Public Slots

void addCollection (const Collection &collection)
 
void removeCollection (const Collection &collection)
 
void setCollections (const Collection::List &collections)
 
void setFavoriteLabel (const Collection &collection, const QString &label)
 

Public Member Functions

 FavoriteCollectionsModel (QAbstractItemModel *model, const KConfigGroup &group, QObject *parent=0)
 
virtual ~FavoriteCollectionsModel ()
 
QList< Collection::Id > collectionIds () const
 
Collection::List collections () const
 
virtual QVariant data (const QModelIndex &index, int role=Qt::DisplayRole) const
 
virtual bool dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)
 
QString favoriteLabel (const Akonadi::Collection &col)
 
virtual Qt::ItemFlags flags (const QModelIndex &index) const
 
virtual QVariant headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const
 
virtual QStringList mimeTypes () const
 
virtual bool setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole)
 
- Public Member Functions inherited from Akonadi::SelectionProxyModel
 SelectionProxyModel (QItemSelectionModel *selectionModel, QObject *parent=0)
 

Detailed Description

A model that lists a set of favorite collections.

In some applications you want to provide fast access to a list of often used collections (e.g. Inboxes from different email accounts in a mail application). Therefor you can use the FavoriteCollectionsModel which stores the list of favorite collections in a given configuration file.

Example:

using namespace Akonadi;
EntityTreeModel *sourceModel = new EntityTreeModel( ... );
const KConfigGroup group = KGlobal::config()->group( "Favorite Collections" );
FavoriteCollectionsModel *model = new FavoriteCollectionsModel( sourceModel, group, this );
EntityListView *view = new EntityListView( this );
view->setModel( model );
Author
Kevin Ottens ervin.nosp@m.@kde.nosp@m..org
Since
4.4

Definition at line 65 of file favoritecollectionsmodel.h.

Constructor & Destructor Documentation

FavoriteCollectionsModel::FavoriteCollectionsModel ( QAbstractItemModel *  model,
const KConfigGroup &  group,
QObject *  parent = 0 
)

Creates a new favorite collections model.

Parameters
modelThe source model where the favorite collections come from.
groupThe config group that shall be used to save the selection of favorite collections.
parentThe parent object.

Definition at line 128 of file favoritecollectionsmodel.cpp.

FavoriteCollectionsModel::~FavoriteCollectionsModel ( )
virtual

Destroys the favorite collections model.

Definition at line 141 of file favoritecollectionsmodel.cpp.

Member Function Documentation

void FavoriteCollectionsModel::addCollection ( const Collection &  collection)
slot

Adds a collection to the list of favorite collections.

Definition at line 157 of file favoritecollectionsmodel.cpp.

QList< Collection::Id > FavoriteCollectionsModel::collectionIds ( ) const

Returns the list of ids of favorite collections set on the FavoriteCollectionsModel.

Note that if you want Collections with actual data you should use something like this instead:

FavoriteCollectionsModel* favs = getFavsModel();
Collection::List cols;
const int rowCount = favs->rowCount();
for (int row = 0; row < rowcount; ++row) {
static const int column = 0;
const QModelIndex index = favs->index(row, column);
const Collection col = index.data(EntityTreeModel::CollectionRole).value<Collection>();
cols << col;
}

Note that due to the asynchronous nature of the model, this method returns collection ids of collections which may not be in the model yet. If you want the ids of the collections that are actually in the model, use a loop similar to above with the CollectionIdRole.

Definition at line 193 of file favoritecollectionsmodel.cpp.

Akonadi::Collection::List FavoriteCollectionsModel::collections ( ) const

Returns the list of favorite collections.

Deprecated:
Use collectionIds instead.

Definition at line 182 of file favoritecollectionsmodel.cpp.

QString Akonadi::FavoriteCollectionsModel::favoriteLabel ( const Akonadi::Collection &  col)

Return associate label for collection.

Definition at line 244 of file favoritecollectionsmodel.cpp.

void FavoriteCollectionsModel::removeCollection ( const Collection &  collection)
slot

Removes a collection from the list of favorite collections.

Definition at line 164 of file favoritecollectionsmodel.cpp.

void FavoriteCollectionsModel::setCollections ( const Collection::List &  collections)
slot

Sets the collections as favorite collections.

Definition at line 146 of file favoritecollectionsmodel.cpp.

void Akonadi::FavoriteCollectionsModel::setFavoriteLabel ( const Collection &  collection,
const QString &  label 
)
slot

Sets a custom label that will be used when showing the favorite collection.

Definition at line 198 of file favoritecollectionsmodel.cpp.


The documentation for this class was generated from the following files:
  • favoritecollectionsmodel.h
  • favoritecollectionsmodel.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:00:28 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

akonadi

Skip menu "akonadi"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • Modules
  • Related Pages

kdepimlibs API Reference

Skip menu "kdepimlibs API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kldap
  • kmbox
  • kmime
  • kpimidentities
  • kpimtextedit
  • kresources
  • ktnef
  • kxmlrpcclient
  • microblog

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal