MeeGo 1.2 Harmattan Developer Documentation Develop for the Nokia N9
   Home · All Classes · All Namespaces · Modules · Functions · Files

accounts/account-item.h

#ifndef _TelepathyQt4_examples_accounts_account_item_h_HEADER_GUARD_
#define _TelepathyQt4_examples_accounts_account_item_h_HEADER_GUARD_

#include <TelepathyQt4/Types>
#include <TelepathyQt4/Account>
#include <TelepathyQt4/Types>

#include <QString>

namespace Tp {
class AccountManager;
class PendingOperation;
}

class QTableWidget;

class AccountItem : public QObject
{
    Q_OBJECT

public:
    enum Columns {
        ColumnValid = 0,
        ColumnEnabled,
        ColumnConnectionManager,
        ColumnProtocol,
        ColumnDisplayName,
        ColumnNickname,
        ColumnConnectsAutomatically,
        ColumnChangingPresence,
        ColumnAutomaticPresence,
        ColumnCurrentPresence,
        ColumnRequestedPresence,
        ColumnConnectionStatus,
        ColumnConnection,
        NumColumns
    };
    Q_ENUMS(Columns)

    AccountItem(Tp::AccountPtr acc, QTableWidget *table, int row, QObject *parent = 0);
    virtual ~AccountItem();

    int row() const { return mRow; }

private Q_SLOTS:
    void onValidityChanged(bool);
    void onStateChanged(bool);
    void onDisplayNameChanged(const QString &);
    void onNicknameChanged(const QString &);
    void onConnectsAutomaticallyPropertyChanged(bool);
    void onChangingPresenceChanged(bool);
    void onAutomaticPresenceChanged(const Tp::SimplePresence &);
    void onCurrentPresenceChanged(const Tp::SimplePresence &);
    void onRequestedPresenceChanged(const Tp::SimplePresence &);
    void onStatusChanged(Tp::ConnectionStatus, Tp::ConnectionStatusReason,
            const QString &error, const QVariantMap &errorDetails);
    void onHaveConnectionChanged(bool);

private:
    void init();
    void setupGui();

    Tp::AccountPtr mAcc;
    QTableWidget *mTable;
    int mRow;
};

#endif

Copyright © 2008-2011 Collabora Ltd. and Nokia Corporation
Telepathy-Qt4 0.6.5