view ui/certificatetablemodel.h @ 404:17e1c8f37d72

Add License
author Andre Heinecke <aheinecke@intevation.de>
date Wed, 16 Apr 2014 13:28:44 +0000
parents 26651cc0cc47
children 5200b8e9b2ae
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;

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

#endif

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