Mercurial > trustbridge
view ui/certificateitemwidget.h @ 885:1cc85fd3daa5
(issue70) Handle i386 and amd64 packages
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Fri, 08 Aug 2014 10:56:24 +0200 |
parents | 31c3d2bc9880 |
children | 9c4543128666 |
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 CERTIFICATELISTITEM_H #define CERTIFICATELISTITEM_H /** * @file certificateitemdelegate.h * @brief Item delegate drawing custom certificate items in list views. * */ #include <QWidget> #include <QLabel> #include <QComboBox> #include "certificate.h" /** @brief A combo box that shows the text only in the popup * * The text shown is the data set as Qt::UserRole */ class IconOnlyTextPopupBox : public QComboBox { protected: virtual void showPopup(); virtual void hidePopup(); }; class CertificateItemWidget : public QWidget { Q_OBJECT public: CertificateItemWidget( QWidget *parent = 0, const Certificate &cert = Certificate(), bool state = false, bool editable = true, const QString& installLabel = tr("install"), const QString& removeLabel = tr("remove")); bool state(); void setState(bool state); Certificate certificate(); private: void setupGUI(); Certificate mCertificate; bool mState; bool mEditable; QLabel *mLabel; IconOnlyTextPopupBox *mComboBox; QString mInstallLabel; QString mRemoveLabel; private slots: void currentStateChanged(int ndx); signals: void stateChanged(bool state, const Certificate &cert); }; #endif