digiKam
Loading...
Searching...
No Matches
tableview_column_thumbnail.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2013-02-25
7 * Description : Table view column helpers: Thumbnail column
8 *
9 * SPDX-FileCopyrightText: 2017-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
10 * SPDX-FileCopyrightText: 2013 by Michael G. Hansen <mike at mghansen dot de>
11 *
12 * SPDX-License-Identifier: GPL-2.0-or-later
13 *
14 * ============================================================ */
15
16#pragma once
17
18// Local includes
19
21
22namespace Digikam
23{
24
25class LoadingDescription;
26
27namespace TableViewColumns
28{
29
31{
32 Q_OBJECT
33
34private:
35
36 explicit ColumnThumbnail(TableViewShared* const tableViewShared,
37 const TableViewColumnConfiguration& pConfiguration,
38 QWidget* const parent);
39 ~ColumnThumbnail() override = default;
40
41public:
42
43 ColumnFlags getColumnFlags() const override;
44 QString getTitle() const override;
45 QVariant data(TableViewModel::Item* const item, const int role) const override;
46 bool paint(QPainter* const painter, const QStyleOptionViewItem& option, TableViewModel::Item* const item) const override;
47 QSize sizeHint(const QStyleOptionViewItem& option, TableViewModel::Item* const item) const override;
48 void updateThumbnailSize() override;
49
50 static bool CreateFromConfiguration(TableViewShared* const tableViewShared,
51 const TableViewColumnConfiguration& pConfiguration,
52 TableViewColumn** const pNewColumn,
53 QWidget* const parent);
54
56
57private Q_SLOTS:
58
59 void slotThumbnailLoaded(const LoadingDescription& loadingDescription, const QPixmap& thumb);
60
61private:
62
63 int m_thumbnailSize = 64;
64 QWidget* m_displayWidget = nullptr;
65};
66
67} // namespace TableViewColumns
68
69} // namespace Digikam
Definition loadingdescription.h:35
Definition tableview_columnfactory.h:41
Definition tableview_columnfactory.h:72
Definition tableview_columnfactory.h:187
Definition tableview_column_thumbnail.h:31
QString getTitle() const override
Definition tableview_column_thumbnail.cpp:82
QVariant data(TableViewModel::Item *const item, const int role) const override
Definition tableview_column_thumbnail.cpp:87
static bool CreateFromConfiguration(TableViewShared *const tableViewShared, const TableViewColumnConfiguration &pConfiguration, TableViewColumn **const pNewColumn, QWidget *const parent)
Definition tableview_column_thumbnail.cpp:57
static TableViewColumnDescription getDescription()
Definition tableview_column_thumbnail.cpp:72
ColumnFlags getColumnFlags() const override
Definition tableview_column_thumbnail.cpp:77
void updateThumbnailSize() override
Definition tableview_column_thumbnail.cpp:201
bool paint(QPainter *const painter, const QStyleOptionViewItem &option, TableViewModel::Item *const item) const override
Definition tableview_column_thumbnail.cpp:97
QSize sizeHint(const QStyleOptionViewItem &option, TableViewModel::Item *const item) const override
Definition tableview_column_thumbnail.cpp:168
Definition tableview_model.h:62
Definition tableview_shared.h:35
Definition datefolderview.cpp:34