Krita Source Code Documentation
Loading...
Searching...
No Matches
KisResourceItemListWidget.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2023 Srirupa Datta <srirupa.sps@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7
8#ifndef KISRESOURCEITEMLISTWIDGET_H
9#define KISRESOURCEITEMLISTWIDGET_H
10
11#include <QWidget>
12#include <QListWidget>
13#include <QScopedPointer>
14
15#include <KisKineticScroller.h>
16#include "kritaresourcewidgets_export.h"
18
19
20class KRITARESOURCEWIDGETS_EXPORT KisResourceItemListWidget : public QListWidget
21{
22 Q_OBJECT
23
24public:
25 KisResourceItemListWidget(QWidget *parent = nullptr);
27
28 void setListViewMode(ListViewMode layout);
29
36 void setItemSize(QSize size);
37
48 void setStrictSelectionMode(bool enable);
49
50 void setFixedToolTipThumbnailSize(const QSize &size);
51 void setToolTipShouldRenderCheckers(bool value);
52
53public Q_SLOTS:
54 void slotScrollerStateChange(QScroller::State state){ KisKineticScroller::updateCursor(this, state); }
55
56Q_SIGNALS:
57
59
60 void currentResourceChanged(const QModelIndex &);
61 void currentResourceClicked(const QModelIndex &);
62
63 void contextMenuRequested(const QPoint &);
64
65protected Q_SLOTS:
66 void rowsAboutToBeRemoved(const QModelIndex &parent, int start, int end) override;
67 void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) override;
68
69protected:
70 QItemSelectionModel::SelectionFlags selectionCommand(const QModelIndex &index, const QEvent *event = nullptr) const override;
71 void contextMenuEvent(QContextMenuEvent *event) override;
72
73 bool viewportEvent(QEvent *event) override;
74
75private:
76 void resizeEvent(QResizeEvent *event) override;
77
78private:
79 struct Private;
80 const QScopedPointer<Private> m_d;
81};
82
83#endif // KISRESOURCEITEMLISTWIDGET_H
84
float value(const T *src, size_t ch)
KRITAWIDGETUTILS_EXPORT void updateCursor(QWidget *source, QScroller::State state)
const QScopedPointer< Private > m_d
void slotScrollerStateChange(QScroller::State state)
void contextMenuRequested(const QPoint &)
void currentResourceClicked(const QModelIndex &)
void currentResourceChanged(const QModelIndex &)