26#include <QXmlStreamWriter>
27#include <QXmlStreamReader>
67 bool hasValidThumbnail()
const;
69 void setUrl(
const QUrl& url);
72 void setComments(
const QString& comments);
73 QString comments()
const;
75 void setTags(
const QStringList& tags);
76 QStringList tags()
const;
78 void setRating(
int rating);
81 void setThumb(
const QPixmap& pix,
bool hasThumb=
true);
82 void setProgressAnimation(
const QPixmap& pix);
84 void setProcessedIcon(
const QIcon& icon);
85 void setState(
State state);
88 void updateInformation();
104 void setPixmap(
const QPixmap& pix);
105 bool operator<(
const QTreeWidgetItem& other)
const override;
110 Private*
const d =
nullptr;
142 void setColumnLabel(
ColumnType column,
const QString& label);
143 void setColumnEnabled(
ColumnType column,
bool enable);
144 void setColumn(
ColumnType column,
const QString& label,
bool enable);
148 int column = 0)
const;
163 void slotItemClicked(QTreeWidgetItem* item,
int column);
167 void enableDragAndDrop(
const bool enable =
true);
171 void dragEnterEvent(QDragEnterEvent* e)
override;
172 void dragMoveEvent(QDragMoveEvent* e)
override;
173 void dropEvent(QDropEvent* e)
override;
174 void contextMenuEvent(QContextMenuEvent* e)
override;
176 void drawRow(QPainter* p,
177 const QStyleOptionViewItem& opt,
178 const QModelIndex& index)
const override;
182 QTreeWidgetItem* m_itemDraged =
nullptr;
195 NoControlButtons = 0,
212 Q_DECLARE_FLAGS(ControlButtons, ControlButton)
219 void setAllowRAW(
bool allow);
220 void setAllowDuplicate(
bool allow);
222 void loadImagesFromCurrentSelection();
227 void loadImagesFromCurrentAlbum();
232 bool checkSelection();
234 void setIconSize(
int size);
235 int iconSize()
const;
239 void processing(
const QUrl& url);
240 void processed(
const QUrl& url,
bool success);
241 void cancelProcess();
242 void clearProcessedStatus();
244 void setControlButtons(ControlButtons buttonMask);
251 QBoxLayout* setControlButtonsPlacement(ControlButtonPlacement placement);
258 void appendControlButtonsWidget(QWidget*
const widget);
260 void enableControlButtons(
bool enable =
true);
261 void enableDragAndDrop(
const bool enable =
true);
263 void updateThumbnail(
const QUrl& url);
265 virtual QList<QUrl> imageUrls(
bool onlyUnprocessed =
false)
const;
266 virtual void removeItemByUrl(
const QUrl& url);
268 void setCurrentUrl(
const QUrl& url);
269 QUrl getCurrentUrl()
const;
279 void setIsLessThanHandler(DItemsListIsLessThanHandler fncptr);
300 virtual void slotAddImages(
const QList<QUrl>& list);
301 virtual void slotRemoveItems();
305 void slotProgressTimerDone();
307 virtual void slotAddItems();
308 virtual void slotMoveUpItems();
309 virtual void slotMoveDownItems();
310 virtual void slotClearItems();
311 virtual void slotLoadItems();
312 virtual void slotSaveItems();
314 virtual void slotImageListChanged();
322 Private*
const d =
nullptr;
327Q_DECLARE_OPERATORS_FOR_FLAGS(Digikam::DItemsList::ControlButtons)
Definition dinfointerface.h:48
Definition ditemslist.h:51
State
Definition ditemslist.h:56
@ Success
Definition ditemslist.h:58
@ Waiting
Definition ditemslist.h:57
void setIsLessThanHandler(DItemsListIsLessThanHandler fncptr)
virtual void updateItemWidgets()
Definition ditemslist.h:96
Definition ditemslist.h:120
void signalAddedDropedItems(const QList< QUrl > &)
~DItemsListView() override=default
void signalContextMenuRequested()
ColumnType
Definition ditemslist.h:126
@ Filename
Definition ditemslist.h:128
@ User3
Definition ditemslist.h:131
@ User5
Definition ditemslist.h:133
@ User1
Definition ditemslist.h:129
@ User4
Definition ditemslist.h:132
@ User2
Definition ditemslist.h:130
void signalItemClicked(QTreeWidgetItem *)
Definition ditemslist.h:188
void signalItemClicked(QTreeWidgetItem *)
void signalRemovedItems(const QList< int > &)
ControlButtonPlacement
Definition ditemslist.h:194
@ ControlButtonsLeft
Definition ditemslist.h:196
@ ControlButtonsAbove
Definition ditemslist.h:198
@ ControlButtonsRight
Definition ditemslist.h:197
void signalAddItems(const QList< QUrl > &)
ControlButton
Definition ditemslist.h:203
void signalXMLSaveItem(QXmlStreamWriter &, int)
void signalFoundRAWImages(bool)
void signalXMLCustomElements(QXmlStreamReader &)
void signalMoveDownItem()
void signalXMLLoadImageElement(QXmlStreamReader &)
void signalXMLCustomElements(QXmlStreamWriter &)
void signalImageListChanged()
void signalContextMenuRequested()
Definition loadingdescription.h:35
Definition datefolderview.cpp:34
bool operator<(const ThumbnailIdentifier &a, const ThumbnailIdentifier &b)
Definition albumthumbnailloader.cpp:88
bool(* DItemsListIsLessThanHandler)(const QTreeWidgetItem *current, const QTreeWidgetItem &other)
Definition ditemslist.h:48
Definition abstractalbumtreeview_p.h:75