view ui/certificatetablemodel.h @ 582:88c9bdc74175 trustbridge-refactor

New widgets to display certificates in lists.
author Raimund Renkert <rrenkert@intevation.de>
date Tue, 27 May 2014 16:16:21 +0200
parents 5200b8e9b2ae
children 2a1aa9df8f11
line wrap: on
line source
/* Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik
 * Software engineering by Intevation GmbH
 *
 * This file is Free Software under the GNU GPL (v>=2)
 * and comes with ABSOLUTELY NO WARRANTY!
 * See LICENSE.txt for details.
 */
#ifndef CERTIFICATETABLEMODEL_H
#define CERTIFICATETABLEMODEL_H

/**
 * @file certificatetablemodel.h
 * @brief Table model for certificates.
 */

#include <QAbstractTableModel>
#include <QString>
#include "certificate.h"

class CertificateTabelModel : public QAbstractTableModel
{
    Q_OBJECT

public:
    CertificateTabelModel(QObject *parent = 0);

    void addCertificate(const Certificate &certificate, bool editable);
    bool removeRows(int row, int count, const QModelIndex&);
    bool removeAll();
    int rowCount(const QModelIndex &parent = QModelIndex()) const;
    int columnCount(const QModelIndex &parent = QModelIndex()) const;

    QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
    bool setData(const QModelIndex &index, const QVariant &value,
        int role = Qt::EditRole);
    QVariant headerData(int section, Qt::Orientation orientation,
        int role = Qt::DisplayRole) const;

    Qt::ItemFlags flags(const QModelIndex &index) const;

    const QList<Certificate>& certificates() {return mCertificates;}

private:
    QList<Certificate> mCertificates;
    QList<QString> header;
};

#endif

http://wald.intevation.org/projects/trustbridge/