41class DIGIKAM_GUI_EXPORT
DIO :
public QObject
47 static DIO* instance();
49 static void cleanUp();
51 static bool itemsUnderProcessing();
61 static void copy(
const QList<ItemInfo>& infos,
PAlbum*
const dest);
64 static void copy(
const QUrl& src,
PAlbum*
const dest);
67 static void copy(
const QList<QUrl>& srcList,
PAlbum*
const dest);
70 static void copy(
const QList<ItemInfo>& infos,
const QUrl& dest);
76 static void move(
const QList<ItemInfo>& infos,
PAlbum*
const dest);
79 static void move(
const QUrl& src,
PAlbum*
const dest);
82 static void move(
const QList<QUrl>& srcList,
PAlbum*
const dest);
84 static void del(
const QList<ItemInfo>& infos,
bool useTrash);
85 static void del(
const ItemInfo& info,
bool useTrash);
86 static void del(
PAlbum*
const album,
bool useTrash);
89 static void rename(
const QUrl& src,
const QString& newName,
bool overwrite =
false);
92 static int getTrashCounter(
const QString& albumRootPath);
95 static void buildCollectionTrashCounters();
109 void updateAlbumDate(
int albumID);
110 QString getItemString(
IOJobData*
const data)
const;
112 void addAlbumChildrenToList(QList<int>& list,
Album*
const album);
118 void slotOneProccessed(
const QUrl& url);
119 void slotTrashCounterMap(
const QMap<QString, int>& counterMap);
125 explicit DIO(QObject*) =
delete;
126 ~DIO()
override =
default;
130 int m_processingCount = 0;
131 QMap<QString, int> m_trashCounterMap;
132 QMutex m_trashCounterMutex;
134 friend class DIOCreator;
Abstract base class for all album types.
Definition album.h:57
void signalTrashCounters()
void signalRenameFinished()
void signalTrashFinished()
void signalRenameFailed(const QUrl &url)
Definition iojobdata.h:35
Definition progressmanager.h:35
@ Album
Definition coredbfields.h:48
Definition datefolderview.cpp:34
QList< DTrashItemInfo > DTrashItemInfoList
Definition dtrashiteminfo.h:45