KIO::NameFinderJob
#include <KIO/NameFinderJob>
Public Member Functions | |
NameFinderJob (const QUrl &baseUrl, const QString &name, QObject *parent) | |
~NameFinderJob () override | |
QUrl | baseUrl () const |
QString | finalName () const |
QUrl | finalUrl () const |
void | start () override |
Public Member Functions inherited from KCompositeJob | |
KCompositeJob (QObject *parent=nullptr) | |
Public Member Functions inherited from KJob | |
KJob (QObject *parent=nullptr) | |
Capabilities | capabilities () const |
qint64 | elapsedTime () const |
int | error () const |
virtual QString | errorString () const |
QString | errorText () const |
bool | exec () |
bool | isAutoDelete () const |
bool | isFinishedNotificationHidden () const |
bool | isStartedWithExec () const |
bool | isSuspended () const |
unsigned long | percent () const |
Q_SCRIPTABLE qulonglong | processedAmount (Unit unit) const |
void | setAutoDelete (bool autodelete) |
void | setFinishedNotificationHidden (bool hide=true) |
void | setUiDelegate (KJobUiDelegate *delegate) |
Q_SCRIPTABLE qulonglong | totalAmount (Unit unit) const |
KJobUiDelegate * | uiDelegate () const |
Public Member Functions inherited from QObject | |
QObject (QObject *parent) | |
QBindable< QString > | bindableObjectName () |
bool | blockSignals (bool block) |
const QObjectList & | children () const const |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const |
void | deleteLater () |
void | destroyed (QObject *obj) |
bool | disconnect (const char *signal, const QObject *receiver, const char *method) const const |
bool | disconnect (const QObject *receiver, const char *method) const const |
void | dumpObjectInfo () const const |
void | dumpObjectTree () const const |
QList< QByteArray > | dynamicPropertyNames () const const |
virtual bool | event (QEvent *e) |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
T | findChild (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const |
QList< T > | findChildren (const QString &name, Qt::FindChildOptions options) const const |
QList< T > | findChildren (Qt::FindChildOptions options) const const |
bool | inherits (const char *className) const const |
void | installEventFilter (QObject *filterObj) |
bool | isQuickItemType () const const |
bool | isWidgetType () const const |
bool | isWindowType () const const |
void | killTimer (int id) |
virtual const QMetaObject * | metaObject () const const |
void | moveToThread (QThread *targetThread) |
QString | objectName () const const |
void | objectNameChanged (const QString &objectName) |
QObject * | parent () const const |
QVariant | property (const char *name) const const |
Q_CLASSINFO (Name, Value) | |
Q_EMIT Q_EMIT | |
Q_ENUM (...) | |
Q_ENUM_NS (...) | |
Q_ENUMS (...) | |
Q_FLAG (...) | |
Q_FLAG_NS (...) | |
Q_FLAGS (...) | |
Q_GADGET Q_GADGET | |
Q_GADGET_EXPORT (EXPORT_MACRO) | |
Q_INTERFACES (...) | |
Q_INVOKABLE Q_INVOKABLE | |
Q_MOC_INCLUDE Q_MOC_INCLUDE | |
Q_NAMESPACE Q_NAMESPACE | |
Q_NAMESPACE_EXPORT (EXPORT_MACRO) | |
Q_OBJECT Q_OBJECT | |
Q_PROPERTY (...) | |
Q_REVISION Q_REVISION | |
Q_SET_OBJECT_NAME (Object) | |
Q_SIGNAL Q_SIGNAL | |
Q_SIGNALS Q_SIGNALS | |
Q_SLOT Q_SLOT | |
Q_SLOTS Q_SLOTS | |
T | qobject_cast (const QObject *object) |
T | qobject_cast (QObject *object) |
QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT | |
void | removeEventFilter (QObject *obj) |
void | setObjectName (const QString &name) |
void | setObjectName (QAnyStringView name) |
void | setParent (QObject *parent) |
bool | setProperty (const char *name, const QVariant &value) |
bool | setProperty (const char *name, QVariant &&value) |
bool | signalsBlocked () const const |
int | startTimer (int interval, Qt::TimerType timerType) |
int | startTimer (std::chrono::milliseconds interval, Qt::TimerType timerType) |
QThread * | thread () const const |
Additional Inherited Members | |
Public Types inherited from KJob | |
typedef QFlags< Capability > | Capabilities |
enum | Capability |
enum | Unit |
Public Types inherited from QObject | |
typedef | QObjectList |
Properties inherited from QObject | |
objectName | |
Signals inherited from KJob | |
void | description (KJob *job, const QString &title, const QPair< QString, QString > &field1=QPair< QString, QString >(), const QPair< QString, QString > &field2=QPair< QString, QString >()) |
void | finished (KJob *job) |
void | infoMessage (KJob *job, const QString &message) |
void | percentChanged (KJob *job, unsigned long percent) |
void | processedAmountChanged (KJob *job, KJob::Unit unit, qulonglong amount) |
void | processedSize (KJob *job, qulonglong size) |
void | result (KJob *job) |
void | resumed (KJob *job) |
void | speed (KJob *job, unsigned long speed) |
void | suspended (KJob *job) |
void | totalAmountChanged (KJob *job, KJob::Unit unit, qulonglong amount) |
void | totalSize (KJob *job, qulonglong size) |
void | warning (KJob *job, const QString &message) |
Public Slots inherited from KJob | |
bool | kill (KJob::KillVerbosity verbosity=KJob::Quietly) |
bool | resume () |
bool | suspend () |
Static Public Member Functions inherited from QObject | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type) |
QMetaObject::Connection | connect (const QObject *sender, PointerToMemberFunction signal, Functor functor) |
bool | disconnect (const QMetaObject::Connection &connection) |
bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method) |
bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method) |
bool | disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method) |
QString | tr (const char *sourceText, const char *disambiguation, int n) |
Public Attributes inherited from KJob | |
Bytes | |
Directories | |
Files | |
Items | |
Killable | |
NoCapabilities | |
Suspendable | |
UnitsCount | |
Protected Slots inherited from KCompositeJob | |
virtual void | slotInfoMessage (KJob *job, const QString &message) |
virtual void | slotResult (KJob *job) |
Protected Member Functions inherited from KCompositeJob | |
virtual bool | addSubjob (KJob *job) |
void | clearSubjobs () |
bool | hasSubjobs () const |
virtual bool | removeSubjob (KJob *job) |
const QList< KJob * > & | subjobs () const |
Protected Member Functions inherited from KJob | |
virtual bool | doKill () |
virtual bool | doResume () |
virtual bool | doSuspend () |
void | emitPercent (qulonglong processedAmount, qulonglong totalAmount) |
void | emitResult () |
void | emitSpeed (unsigned long speed) |
bool | isFinished () const |
void | setCapabilities (Capabilities capabilities) |
void | setError (int errorCode) |
void | setErrorText (const QString &errorText) |
void | setPercent (unsigned long percentage) |
void | setProcessedAmount (Unit unit, qulonglong amount) |
void | setProgressUnit (Unit unit) |
void | setTotalAmount (Unit unit, qulonglong amount) |
void | startElapsedTimer () |
Protected Member Functions inherited from QObject | |
virtual void | childEvent (QChildEvent *event) |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | customEvent (QEvent *event) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
bool | isSignalConnected (const QMetaMethod &signal) const const |
int | receivers (const char *signal) const const |
QObject * | sender () const const |
int | senderSignalIndex () const const |
virtual void | timerEvent (QTimerEvent *event) |
Detailed Description
NameFinderJob finds a valid "New Folder" name.
This job is useful when suggesting a new folder/file name, e.g. in KNewFileMenu, the text box is pre-filled with a suggested name, typically in the form "New Folder"; to offer a valid name (i.e. one that doesn't already exist), you can use a NameFinderJob.
Internally it uses a KIO::StatJob to determine if e.g. "New Folder" already exists, and in such a case it will use KFileUtils::makeSuggestedName() to make a new name, e.g. "New Folder (1)", then if the latter exists, KFileUtils::makeSuggestedName() will be called again... etc, until it finds a name that doesn't already exist.
Since NameFinderJob uses a KIO::StatJob, the code is asynchronous, which means it should work for both local and remote filesystems without blocking I/O calls (this is important when interacting with network mounts (e.g. SMB, NFS), from the upstream QFile perspective these network mounts are "local" files even though they could actually reside on a server halfway across the world).
Note that KIO::StatJob will resolve URLs such as "desktop:/" to the most local URL, hence it's advisable to always use baseUrl() (or finalUrl()) to get the actual URL.
If the job fails for any reason targerUrl() will return an empty URL.
- Note
- You must call start() to start the job.
- Since
- 5.76
Constructor & Destructor Documentation
◆ NameFinderJob()
|
explicit |
Creates a NameFinderJob to get a "New Folder" (or "Text File.txt") name that doesn't already exist.
- Parameters
-
baseUrl URL of the directory where a new folder/file is going to be created name the initially proposed name of the new folder/file
Definition at line 40 of file namefinderjob.cpp.
◆ ~NameFinderJob()
|
override |
Destructor.
Note that by default jobs auto-delete themselves after emitting result.
Definition at line 46 of file namefinderjob.cpp.
Member Function Documentation
◆ baseUrl()
QUrl KIO::NameFinderJob::baseUrl | ( | ) | const |
Call this to get the base URL (i.e. the URL of the folder where a new folder/file is going to be created).
Note that this could return a different URL from the one the job was initially called on, since the StatJob (which is used internally) will resolve the URL to the most local one. See KIO::StatJob::mostLocalUrl() for more details.
Typically you should call this in a slot connected to the result() signal, and after making sure no errors occurred.
Definition at line 103 of file namefinderjob.cpp.
◆ finalName()
QString KIO::NameFinderJob::finalName | ( | ) | const |
Call this to get the suggested new folder/file name.
Typically you should call this in a slot connected to the result() signal and after making sure no errors occurred.
Definition at line 108 of file namefinderjob.cpp.
◆ finalUrl()
QUrl KIO::NameFinderJob::finalUrl | ( | ) | const |
Call this to get the full target URL (basically the baseUrl() + "/" + finalName()).
Typically you should call this in a slot connected to the result() signal, and after making sure no errors occurred (if there were an error this method will return an empty URL).
Definition at line 98 of file namefinderjob.cpp.
◆ start()
|
overridevirtual |
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 16:58:45 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.