KIO
fileundomanager.cpp
Go to the documentation of this file.
44 static const char* const s_undoStateToString[] = { "MAKINGDIRS", "MOVINGFILES", "STATINGFILE", "REMOVINGDIRS", "REMOVINGLINKS" };
129CommandRecorder::CommandRecorder(FileUndoManager::CommandType op, const KUrl::List &src, const KUrl &dst, KIO::Job *job)
161void CommandRecorder::slotCopyingDone(KIO::Job *job, const KUrl &from, const KUrl &to, time_t mtime, bool directory, bool renamed)
186void CommandRecorder::slotCopyingLinkDone(KIO::Job *, const KUrl &from, const QString &target, const KUrl &to)
247void FileUndoManager::recordJob(CommandType op, const KUrl::List &src, const KUrl &dst, KIO::Job *job)
348 if (d->m_current.m_type == FileUndoManager::Mkdir || d->m_current.m_type == FileUndoManager::Put) {
770bool FileUndoManager::UiInterface::copiedFileWasModified(const KUrl& src, const KUrl& dest, const KDateTime& srcTime, const KDateTime& destTime)
779 "Are you sure you want to delete %4?", dest.pathOrUrl(), src.pathOrUrl(), timeStr, dest.pathOrUrl()),
792 return uiDelegate.askDeleteConfirmation(files, KIO::JobUiDelegate::Delete, KIO::JobUiDelegate::ForceConfirmation);
void setTime_t(qint64 seconds)
KDateTime toLocalZone() const
virtual void showErrorMessage()
static ClipboardUpdater * create(Job *job, Mode mode)
Returns an instance of clipboard updater if QApplication::type() does not return a tty.
Definition: clipboardupdater.cpp:162
CommandRecorder(FileUndoManager::CommandType op, const KUrl::List &src, const KUrl &dst, KIO::Job *job)
Definition: fileundomanager.cpp:129
CopyMode operationMode() const
Returns the mode of the operation (copy, move, or link), depending on whether KIO::copy(),...
Definition: copyjob.cpp:2142
QList< KUrl > m_dirsToUpdate
Definition: fileundomanager_p.h:151
FileUndoManager::UiInterface * m_uiInterface
Definition: fileundomanager_p.h:152
void broadcastPush(const UndoCommand &cmd)
Definition: fileundomanager.cpp:662
FileUndoManagerPrivate(FileUndoManager *qq)
Definition: fileundomanager.cpp:218
void addDirToUpdate(const KUrl &url)
Definition: fileundomanager.cpp:454
bool initializeFromKDesky()
Definition: fileundomanager.cpp:707
void stepRemovingDirectories()
Definition: fileundomanager.cpp:587
void pushCommand(const UndoCommand &cmd)
Definition: fileundomanager.cpp:626
void stepRemovingLinks()
Definition: fileundomanager.cpp:564
void stepMakingDirectories()
Definition: fileundomanager.cpp:484
QStack< KUrl > m_dirCleanupStack
Definition: fileundomanager_p.h:149
void broadcastUnlock()
Definition: fileundomanager.cpp:696
QStack< KUrl > m_fileCleanupStack
Definition: fileundomanager_p.h:150
void addCommand(const UndoCommand &cmd)
called by UndoCommandRecorder
Definition: fileundomanager.cpp:272
UndoCommand::Stack m_commands
Definition: fileundomanager_p.h:143
quint64 m_nextCommandIndex
Definition: fileundomanager_p.h:155
void stepMovingFiles()
Definition: fileundomanager.cpp:499
Interface for the gui handling of FileUndoManager.
Definition: fileundomanager.h:64
QWidget * parentWidget() const
Definition: fileundomanager.cpp:795
void setShowProgressInfo(bool b)
Sets whether to show progress info when running the KIO jobs for undoing.
Definition: fileundomanager.cpp:805
virtual bool confirmDeletion(const KUrl::List &files)
Called when we are about to remove those files.
Definition: fileundomanager.cpp:787
virtual ~UiInterface()
Definition: fileundomanager.cpp:760
virtual bool copiedFileWasModified(const KUrl &src, const KUrl &dest, const KDateTime &srcTime, const KDateTime &destTime)
Called when dest was modified since it was copied from src.
Definition: fileundomanager.cpp:770
virtual void jobError(KIO::Job *job)
Called when an undo job errors; default implementation displays a message box.
Definition: fileundomanager.cpp:765
virtual void virtual_hook(int id, void *data)
Definition: fileundomanager.cpp:815
void setParentWidget(QWidget *parentWidget)
Sets the parent widget to use for message boxes.
Definition: fileundomanager.cpp:800
bool showProgressInfo() const
Definition: fileundomanager.cpp:810
FileUndoManager: makes it possible to undo kio jobs.
Definition: fileundomanager.h:45
void recordCopyJob(KIO::CopyJob *copyJob)
Record this CopyJob while it's happening and add a command for it so that the user can undo it.
Definition: fileundomanager.cpp:254
void undoJobFinished()
Emitted when an undo job finishes. Used for unit testing.
friend class FileUndoManagerPrivate
Definition: fileundomanager.h:213
void jobRecordingFinished(CommandType op)
Emitted when a job that has been recorded by FileUndoManager::recordJob() or FileUndoManager::recordC...
void recordJob(CommandType op, const KUrl::List &src, const KUrl &dst, KIO::Job *job)
Record this job while it's happening and add a command for it so that the user can undo it.
Definition: fileundomanager.cpp:247
quint64 newCommandSerialNumber()
These two functions are useful when wrapping FileUndoManager and adding custom commands.
Definition: fileundomanager.cpp:309
void setUiInterface(UiInterface *ui)
Set a new UiInterface implementation.
Definition: fileundomanager.cpp:732
void jobRecordingStarted(CommandType op)
Emitted when a job recording has been started by FileUndoManager::recordJob() or FileUndoManager::rec...
void undoTextChanged(const QString &text)
Emitted when the value of undoText() changes.
UiInterface * uiInterface() const
Definition: fileundomanager.cpp:738
void undo()
Undoes the last command Remember to call uiInterface()->setParentWidget(parentWidget) first,...
Definition: fileundomanager.cpp:325
quint64 currentCommandSerialNumber() const
Definition: fileundomanager.cpp:314
bool askDeleteConfirmation(const KUrl::List &urls, DeletionType deletionType, ConfirmationType confirmationType)
Ask for confirmation before deleting/trashing urls.
Definition: jobuidelegate.cpp:108
virtual void setWindow(QWidget *window)
Associate this job with a window given by window.
Definition: jobuidelegate.cpp:58
A KIO job that retrieves information about a file or directory.
Definition: jobclasses.h:440
long long numberValue(uint field, long long defaultValue=0) const
Definition: udsentry.cpp:78
Definition: fileundomanager_p.h:56
virtual void registerJob(KJob *job)
void emitResult()
int error() const
void description(KJob *job, const QString &title, const QPair< QString, QString > &field1=qMakePair(QString(), QString()), const QPair< QString, QString > &field2=qMakePair(QString(), QString()))
bool kill(KillVerbosity verbosity=Quietly)
QString formatDateTime(const KDateTime &dateTime, DateFormat format=ShortDate, DateTimeFormatOptions options=0) const
ShortDate
static int warningContinueCancel(QWidget *parent, const QString &text, const QString &caption=QString(), const KGuiItem &buttonContinue=KStandardGuiItem::cont(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
Continue
Notify
Dangerous
QString pathOrUrl() const
QString prettyUrl(AdjustPathOption trailing=LeaveTrailingSlash) const
QString path(AdjustPathOption trailing=LeaveTrailingSlash) const
QString directory(const DirectoryOptions &options=IgnoreTrailingSlash) const
void setPath(const QString &path)
QString protocol() const
static void emitFilesAdded(const QString &directory)
Definition: kdirnotify.cpp:47
static QDataStream & operator>>(QDataStream &stream, BasicOperation &op)
Definition: fileundomanager.cpp:54
static QDataStream & operator<<(QDataStream &stream, const KIO::BasicOperation &op)
Definition: fileundomanager.cpp:48
static const char * undoStateToString(UndoState state)
Definition: fileundomanager.cpp:43
#define K_GLOBAL_STATIC(TYPE, NAME)
#define kDebug
#define kapp
QString i18n(const char *text)
QString i18nc(const char *ctxt, const char *text)
KLocale * locale()
StatJob * stat(const KUrl &url, JobFlags flags=DefaultFlags)
Find all details for one file or directory.
Definition: job.cpp:924
FileCopyJob * file_move(const KUrl &src, const KUrl &dest, int permissions=-1, JobFlags flags=DefaultFlags)
Move a single file.
Definition: job.cpp:2479
SimpleJob * mkdir(const KUrl &url, int permissions=-1)
Creates a single directory.
Definition: job.cpp:697
SimpleJob * rename(const KUrl &src, const KUrl &dest, JobFlags flags=DefaultFlags)
Rename a file or directory.
Definition: job.cpp:731
SimpleJob * file_delete(const KUrl &src, JobFlags flags=DefaultFlags)
Delete a single file.
Definition: job.cpp:2487
@ Overwrite
When set, automatically overwrite the destination if it exists already.
Definition: jobclasses.h:67
SimpleJob * symlink(const QString &target, const KUrl &dest, JobFlags flags=DefaultFlags)
Create or move a symlink.
Definition: job.cpp:738
QString dir(const QString &fileClass)
Returns the most recently used directory accociated with this file-class.
Definition: krecentdirs.cpp:68
KGuiItem cont()
KGuiItem cancel()
Definition: fileundomanager_p.h:37
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Feb 20 2023 00:00:00 by doxygen 1.9.6 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Feb 20 2023 00:00:00 by doxygen 1.9.6 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.