contacts_plat/contacts_ui_extensions_api/inc/cntuigroupsupplier.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Thu, 27 May 2010 12:45:19 +0300
changeset 37 fd64c38c277d
parent 27 de1630741fbe
child 50 77bc263e1626
permissions -rw-r--r--
Revision: 201019 Kit: 2010121

/*
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
 * which accompanies this distribution, and is available
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
 *
 * Initial Contributors:
 * Nokia Corporation - initial contribution.
 *
 * Contributors:
 *
 * Description:
 *
 */

#ifndef CNTUIGROUPSUPPLIER_H
#define CNTUIGROUPSUPPLIER_H

#include <QObject>
#include <cntuiextensiongroup.h>

/**
 * UI extension class that supplies groups to phonebook groups UI.
 */
class CntUiGroupSupplier
{
 public:

    /**
     * Returns number of groups provided by the extension.
     *
     * @return int, group count
     */      
    virtual int groupCount() const = 0;

    /**
     * Returns specific group handle which can be used to access
     * members of the group.
     *
     * @param int, group index 
     * @return CntUiExtensionGroup&, group handle
     */      
    virtual CntUiExtensionGroup& groupAt( int aIndex ) const = 0;

    virtual void* GroupSupplierExtension(
            int /*aExtensionId*/ )
    {
        return NULL;
    }
protected:
    // prevent deleting by client
    virtual ~CntUiGroupSupplier() {}
};

#endif //CNTUIGROUPSUPPLIER_H