~ubuntu-branches/ubuntu/precise/gwenview/precise-proposed

« back to all changes in this revision

Viewing changes to app/kipiimagecollectionselector.cpp

  • Committer: Package Import Robot
  • Author(s): Jonathan Riddell
  • Date: 2011-12-15 14:17:54 UTC
  • mto: This revision was merged to the branch mainline in revision 12.
  • Revision ID: package-import@ubuntu.com-20111215141754-z043hyx69dulbggf
Tags: upstream-4.7.90
Import upstream version 4.7.90

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
// vim: set tabstop=4 shiftwidth=4 noexpandtab:
 
1
// vim: set tabstop=4 shiftwidth=4 expandtab:
2
2
/*
3
3
Gwenview: an image viewer
4
4
Copyright 2008 Aurélien Gâteau <agateau@kde.org>
30
30
 
31
31
// Local
32
32
 
33
 
namespace Gwenview {
34
 
 
 
33
namespace Gwenview
 
34
{
35
35
 
36
36
struct KIPIImageCollectionSelectorPrivate {
37
 
        KIPIInterface* mInterface;
38
 
        QListWidget* mListWidget;
 
37
    KIPIInterface* mInterface;
 
38
    QListWidget* mListWidget;
39
39
};
40
40
 
41
 
 
42
41
KIPIImageCollectionSelector::KIPIImageCollectionSelector(KIPIInterface* interface, QWidget* parent)
43
42
: KIPI::ImageCollectionSelector(parent)
44
 
, d(new KIPIImageCollectionSelectorPrivate) {
45
 
        d->mInterface = interface;
46
 
 
47
 
        d->mListWidget = new QListWidget;
48
 
        QList<KIPI::ImageCollection> list = interface->allAlbums();
49
 
        Q_FOREACH(const KIPI::ImageCollection& collection, list) {
50
 
                QListWidgetItem* item = new QListWidgetItem(d->mListWidget);
51
 
                QString name = collection.name();
52
 
                int imageCount = collection.images().size();
53
 
                QString title = i18ncp("%1 is collection name, %2 is image count in collection",
54
 
                        "%1 (%2 image)", "%1 (%2 images)", name, imageCount);
55
 
 
56
 
                item->setText(title);
57
 
                item->setData(Qt::UserRole, name);
58
 
        }
59
 
 
60
 
        connect(d->mListWidget, SIGNAL(currentRowChanged(int)),
61
 
                SIGNAL(selectionChanged()) );
62
 
 
63
 
        QVBoxLayout* layout = new QVBoxLayout(this);
64
 
        layout->addWidget(d->mListWidget);
65
 
        layout->setMargin(0);
66
 
}
67
 
 
68
 
 
69
 
KIPIImageCollectionSelector::~KIPIImageCollectionSelector() {
70
 
        delete d;
71
 
}
72
 
 
73
 
 
74
 
 
75
 
QList<KIPI::ImageCollection> KIPIImageCollectionSelector::selectedImageCollections() const {
76
 
        QListWidgetItem* item = d->mListWidget->currentItem();
77
 
        QList<KIPI::ImageCollection> selectedList;
78
 
        if (item) {
79
 
                QString name = item->data(Qt::UserRole).toString();
80
 
                QList<KIPI::ImageCollection> list = d->mInterface->allAlbums();
81
 
                Q_FOREACH(const KIPI::ImageCollection& collection, list) {
82
 
                        if (collection.name() == name) {
83
 
                                selectedList << collection;
84
 
                                break;
85
 
                        }
86
 
                }
87
 
        }
88
 
        return selectedList;
89
 
}
90
 
 
 
43
, d(new KIPIImageCollectionSelectorPrivate)
 
44
{
 
45
    d->mInterface = interface;
 
46
 
 
47
    d->mListWidget = new QListWidget;
 
48
    QList<KIPI::ImageCollection> list = interface->allAlbums();
 
49
    Q_FOREACH(const KIPI::ImageCollection & collection, list) {
 
50
        QListWidgetItem* item = new QListWidgetItem(d->mListWidget);
 
51
        QString name = collection.name();
 
52
        int imageCount = collection.images().size();
 
53
        QString title = i18ncp("%1 is collection name, %2 is image count in collection",
 
54
                               "%1 (%2 image)", "%1 (%2 images)", name, imageCount);
 
55
 
 
56
        item->setText(title);
 
57
        item->setData(Qt::UserRole, name);
 
58
    }
 
59
 
 
60
    connect(d->mListWidget, SIGNAL(currentRowChanged(int)),
 
61
            SIGNAL(selectionChanged()));
 
62
 
 
63
    QVBoxLayout* layout = new QVBoxLayout(this);
 
64
    layout->addWidget(d->mListWidget);
 
65
    layout->setMargin(0);
 
66
}
 
67
 
 
68
KIPIImageCollectionSelector::~KIPIImageCollectionSelector()
 
69
{
 
70
    delete d;
 
71
}
 
72
 
 
73
QList<KIPI::ImageCollection> KIPIImageCollectionSelector::selectedImageCollections() const
 
74
{
 
75
    QListWidgetItem* item = d->mListWidget->currentItem();
 
76
    QList<KIPI::ImageCollection> selectedList;
 
77
    if (item) {
 
78
        QString name = item->data(Qt::UserRole).toString();
 
79
        QList<KIPI::ImageCollection> list = d->mInterface->allAlbums();
 
80
        Q_FOREACH(const KIPI::ImageCollection & collection, list) {
 
81
            if (collection.name() == name) {
 
82
                selectedList << collection;
 
83
                break;
 
84
            }
 
85
        }
 
86
    }
 
87
    return selectedList;
 
88
}
91
89
 
92
90
} // namespace