namespace KIO

# namespace KIO | A namespace for KIO globals. More...
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

#### Public Types

- class AuthInfo
- class NetRC
- class ChmodJob
- struct Task
- class Connection
- class Slave
- class SlaveInterface
- class DavJob
- class DefaultProgress
- typedef signed long long int fileoffset_t
- typedef unsigned long long int filesize_t
- enum Error { ERR_CANNOT_OPEN_FOR_READING = 1, ERR_CANNOT_OPEN_FOR_WRITING = 2, ERR_CANNOT_LAUNCH_PROCESS = 3, ERR_INTERNAL = 4, ERR_MALFORMED_URL = 5, ERR_UNSUPPORTED_PROTOCOL = 6, ERR_NO_SOURCE_PROTOCOL = 7, ERR_UNSUPPORTED_ACTION = 8, ERR_IS_DIRECTORY = 9, ERR_IS_FILE = 10, ERR_DOES_NOT_EXIST = 11, ERR_FILE_ALREADY_EXIST = 12, ERR_DIR_ALREADY_EXIST = 13, ERR_UNKNOWN_HOST = 14, ERR_ACCESS_DENIED = 15, ERR_WRITE_ACCESS_DENIED = 16, ERR_CANNOT_ENTER_DIRECTORY = 17, ERR_PROTOCOL_IS_NOT_A_FILESYSTEM = 18, ERR_CYCLIC_LINK = 19, ERR_USER_CANCELED = 20, ERR_CYCLIC_COPY = 21, ERR_COULD_NOT_CREATE_SOCKET = 22, ERR_COULD_NOT_CONNECT = 23, ERR_CONNECTION_BROKEN = 24, ERR_NOT_FILTER_PROTOCOL = 25, ERR_COULD_NOT_MOUNT = 26, ERR_COULD_NOT_UNMOUNT = 27, ERR_COULD_NOT_READ = 28, ERR_COULD_NOT_WRITE = 29, ERR_COULD_NOT_BIND = 30, ERR_COULD_NOT_LISTEN = 31, ERR_COULD_NOT_ACCEPT = 32, ERR_COULD_NOT_LOGIN = 33, ERR_COULD_NOT_STAT = 34, ERR_COULD_NOT_CLOSEDIR = 35, ERR_COULD_NOT_MKDIR = 37, ERR_COULD_NOT_RMDIR = 38, ERR_CANNOT_RESUME = 39, ERR_CANNOT_RENAME = 40, ERR_CANNOT_CHMOD = 41, ERR_CANNOT_DELETE = 42, ERR_SLAVE_DIED = 43, ERR_OUT_OF_MEMORY = 44, ERR_UNKNOWN_PROXY_HOST = 45, ERR_COULD_NOT_AUTHENTICATE = 46, ERR_ABORTED = 47, ERR_INTERNAL_SERVER = 48, ERR_SERVER_TIMEOUT = 49, ERR_SERVICE_NOT_AVAILABLE = 50, ERR_UNKNOWN = 51, ERR_UNKNOWN_INTERRUPT = 53, ERR_CANNOT_DELETE_ORIGINAL = 54, ERR_CANNOT_DELETE_PARTIAL = 55, ERR_CANNOT_RENAME_ORIGINAL = 56, ERR_CANNOT_RENAME_PARTIAL = 57, ERR_NEED_PASSWD = 58, ERR_CANNOT_SYMLINK = 59, ERR_NO_CONTENT = 60, ERR_DISK_FULL = 61, ERR_IDENTICAL_FILES = 62, ERR_SLAVE_DEFINED = 63, ERR_UPGRADE_REQUIRED = 64, ERR_POST_DENIED = 65 }
- enum UDSAtomTypes { UDS_STRING = 1, UDS_LONG = 2, UDS_TIME = 4 | UDS_LONG, UDS_SIZE = 8 | UDS_LONG, UDS_SIZE_LARGE = 32768 | UDS_LONG, UDS_USER = 16 | UDS_STRING, UDS_GROUP = 32 | UDS_STRING, UDS_NAME = 64 | UDS_STRING, UDS_ACCESS = 128 | UDS_LONG, UDS_MODIFICATION_TIME = 256 | UDS_TIME, UDS_ACCESS_TIME = 512 | UDS_TIME, UDS_CREATION_TIME = 1024 | UDS_TIME, UDS_FILE_TYPE = 2048 | UDS_LONG, UDS_LINK_DEST = 4096 | UDS_STRING, UDS_URL = 8192 | UDS_STRING, UDS_MIME_TYPE = 16384 | UDS_STRING, UDS_GUESSED_MIME_TYPE = 16392 | UDS_STRING, UDS_XML_PROPERTIES = 32768 | UDS_STRING }
- enum CacheControl { CC_CacheOnly, CC_Cache, CC_Verify, CC_Refresh, CC_Reload }
- class UDSAtom
- typedef QValueList UDSEntry
- typedef QValueList UDSEntryList
- typedef QValueListIterator UDSEntryListIterator
- typedef QValueListConstIterator UDSEntryListConstIterator
- class MetaData
- class Job
- class SimpleJob
- class StatJob
- class TransferJob
- class MultiGetJob
- class MimetypeJob
- class FileCopyJob
- class ListJob
- struct CopyInfo
- class CopyJob
- class DeleteJob
- class ParseTreeBase
- struct PreferencesReturn
- struct PreferencesMaxima
- class ParseContext
- class ParseTreeOR
- class ParseTreeAND
- class ParseTreeCMP
- class ParseTreeIN
- class ParseTreeMATCH
- class ParseTreeCALC
- class ParseTreeBRACKETS
- class ParseTreeNOT
- class ParseTreeEXIST
- class ParseTreeID
- class ParseTreeSTRING
- class ParseTreeNUM
- class ParseTreeDOUBLE
- class ParseTreeBOOL
- class ParseTreeMAX2
- class ParseTreeMIN2
- class MetaInfoJob
- class NetAccess
- class PasswordDialog
- class PreviewJob
- enum Progress { DEFAULT = 1, STATUSBAR = 2, LIST = 3 }
- class ProgressBase
- enum RenameDlg_Mode { M_OVERWRITE = 1, M_OVERWRITE_ITSELF = 2, M_SKIP = 4, M_SINGLE = 8, M_MULTI = 16, M_RESUME = 32, M_NORENAME = 64 }
- enum RenameDlg_Result { R_RESUME = 6, R_RESUME_ALL = 7, R_OVERWRITE = 4, R_OVERWRITE_ALL = 5, R_SKIP = 2, R_AUTO_SKIP = 3, R_RENAME = 1, R_CANCEL = 0 }
- class RenameDlg
- class SlaveConfig
- class SessionData
- class Scheduler
- enum SkipDlg_Result { S_SKIP = 1, S_AUTO_SKIP = 2, S_CANCEL = 0 }
- class SkipDlg
- class SlaveBase
- enum Command { CMD_HOST = '0', CMD_CONNECT = '1', CMD_DISCONNECT = '2', CMD_SLAVE_STATUS = '3', CMD_SLAVE_CONNECT = '4', CMD_SLAVE_HOLD = '5', CMD_NONE = 'A', CMD_TESTDIR = 'B', CMD_GET = 'C', CMD_PUT = 'D', CMD_STAT = 'E', CMD_MIMETYPE = 'F', CMD_LISTDIR = 'G', CMD_MKDIR = 'H', CMD_RENAME = 'I', CMD_COPY = 'J', CMD_DEL = 'K', CMD_CHMOD = 'L', CMD_SPECIAL = 'M', CMD_USERPASS = 'N', CMD_REPARSECONFIGURATION = 'O', CMD_META_DATA = 'P', CMD_SYMLINK = 'Q', CMD_SUBURL = 'R', CMD_MESSAGEBOXANSWER = 'S', CMD_RESUMEANSWER = 'T', CMD_CONFIG = 'U', CMD_MULTI_GET = 'V' }
- enum Info { INF_TOTAL_SIZE = 10, INF_PROCESSED_SIZE = 11, INF_SPEED, INF_REDIRECTION = 20, INF_MIME_TYPE = 21, INF_ERROR_PAGE = 22, INF_WARNING = 23, INF_GETTING_FILE, INF_NEED_PASSWD = 25, INF_INFOMESSAGE, INF_META_DATA, INF_NETWORK_STATUS, INF_MESSAGEBOX }
- enum Message { MSG_DATA = 100, MSG_DATA_REQ, MSG_ERROR, MSG_CONNECTED, MSG_FINISHED, MSG_STAT_ENTRY, MSG_LIST_ENTRIES, MSG_RENAMED, MSG_RESUME, MSG_SLAVE_STATUS, MSG_SLAVE_ACK, MSG_NET_REQUEST, MSG_NET_DROP, MSG_NEED_SUBURL_DATA, MSG_CANRESUME, MSG_AUTH_KEY, MSG_DEL_AUTH_KEY }
- class StatusbarProgress
- class TCPSlaveBase

#### Public Methods

- QDataStream& operator<< (QDataStream& s, const AuthInfo& a)
- QDataStream& operator>> (QDataStream& s, AuthInfo& a)
- ChmodJob * chmod ( const KFileItemList& lstItems, int permissions, int mask, QString newOwner, QString newGroup, bool recursive, bool showProgressInfo = true )
- DavJob* davPropFind ( const KURL& url, const QDomDocument& properties, QString depth, bool showProgressInfo=true )
- DavJob* davPropPatch ( const KURL& url, const QDomDocument& properties, bool showProgressInfo=true )
- DavJob* davSearch ( const KURL &url, const QString& nsURI, const QString& qName, const QString& query, bool showProgressInfo=true )
- QString convertSize ( KIO::filesize_t size )
- QString number ( KIO::filesize_t size )
- QString convertSizeFromKB ( KIO::filesize_t kbSize )
- QTime calculateRemaining ( KIO::filesize_t totalSize, KIO::filesize_t processedSize, KIO::filesize_t speed )
- QString itemsSummaryString (uint items, uint files, uint dirs, KIO::filesize_t size, bool showSize)
- QString encodeFileName ( const QString & str )
- QString decodeFileName ( const QString & str )
- QString buildErrorString (int errorCode, const QString &errorText)
- QString buildHTMLErrorString (int errorCode, const QString &errorText, const KURL *reqUrl = 0L, int method = -1 )
- QByteArray rawErrorDetail (int errorCode, const QString &errorText, const KURL *reqUrl = 0L, int method = -1 )
- KIO::CacheControl parseCacheControl (const QString &cacheControl)
- QString getCacheControlString (KIO::CacheControl cacheControl)
- QString findDeviceMountPoint ( const QString& device )
- QString findPathMountPoint ( const QString & filename )
- bool probably_slow_mounted (const QString& filename)
- bool manually_mounted (const QString& filename)
- SimpleJob * mkdir ( const KURL& url, int permissions = -1 )
- SimpleJob * rmdir ( const KURL& url )
- SimpleJob * chmod ( const KURL& url, int permissions )
- SimpleJob * rename ( const KURL& src, const KURL & dest, bool overwrite )
- SimpleJob * symlink ( const QString & target, const KURL& dest, bool overwrite, bool showProgressInfo = true )
- SimpleJob * special ( const KURL& url, const QByteArray & data, bool showProgressInfo = true )
- SimpleJob * mount ( bool ro, const char *fstype, const QString& dev, const QString& point, bool showProgressInfo = true )
- SimpleJob * unmount ( const QString & point, bool showProgressInfo = true )
- SimpleJob * http_update_cache ( const KURL& url, bool no_cache, time_t expireDate)
- StatJob * stat ( const KURL& url, bool showProgressInfo = true )
- StatJob * stat ( const KURL& url, bool sideIsSource, short int details, bool showProgressInfo = true )
- TransferJob * get ( const KURL& url, bool reload=false, bool showProgressInfo = true )
- TransferJob * put ( const KURL& url, int permissions, bool overwrite, bool resume, bool showProgressInfo = true )
- TransferJob * http_post ( const KURL& url, const QByteArray &postData, bool showProgressInfo = true )
- MultiGetJob * multi_get ( long id, const KURL &url, const MetaData &metaData)
- MimetypeJob * mimetype ( const KURL& url, bool showProgressInfo = true )
- FileCopyJob * file_copy ( const KURL& src, const KURL& dest, int permissions=-1, bool overwrite=false, bool resume=false, bool showProgressInfo = true)
- FileCopyJob * file_move ( const KURL& src, const KURL& dest, int permissions=-1, bool overwrite=false, bool resume=false, bool showProgressInfo = true)
- SimpleJob * file_delete ( const KURL& src, bool showProgressInfo = true)
- ListJob * listDir ( const KURL& url, bool showProgressInfo = true, bool includeHidden = true )
- ListJob * listRecursive ( const KURL& url, bool showProgressInfo = true, bool includeHidden = true )
- CopyJob * copy ( const KURL& src, const KURL& dest, bool showProgressInfo = true )
- CopyJob * copyAs ( const KURL& src, const KURL& dest, bool showProgressInfo = true )
- CopyJob * copy ( const KURL::List& src, const KURL& dest, bool showProgressInfo = true )
- CopyJob * move ( const KURL& src, const KURL& dest, bool showProgressInfo = true )
- CopyJob * moveAs ( const KURL& src, const KURL& dest, bool showProgressInfo = true )
- CopyJob * move ( const KURL::List& src, const KURL& dest, bool showProgressInfo = true )
- CopyJob * link ( const KURL& src, const KURL& destDir, bool showProgressInfo = true )
- CopyJob * link ( const KURL::List& src, const KURL& destDir, bool showProgressInfo = true )
- CopyJob * linkAs ( const KURL& src, const KURL& dest, bool showProgressInfo = true )
- DeleteJob * del ( const KURL& src, bool shred = false, bool showProgressInfo = true )
- DeleteJob * del ( const KURL::List& src, bool shred = false, bool showProgressInfo = true )
- int matchConstraint ( const ParseTreeBase *_tree, const KService::Ptr &, const KServiceTypeProfile::OfferList& )
- PreferencesReturn matchPreferences ( const ParseTreeBase *_tree, const KService::Ptr &, const KServiceTypeProfile::OfferList& )
- ParseTreeBase::Ptr parseConstraints ( const QString& _constr )
- ParseTreeBase::Ptr parsePreferences ( const QString& _prefs )
- MetaInfoJob* fileMetaInfo (const KFileItemList& items)
- MetaInfoJob* fileMetaInfo (const KURL::List& items)
- Job * pasteClipboard ( const KURL& _dest_url, bool move = false )
- void pasteData ( const KURL& _dest_url, const QByteArray& _data )
- bool isClipboardEmpty ()
- PreviewJob * filePreview ( const KFileItemList &items, int width, int height = 0, int iconSize = 0, int iconAlpha = 70, bool scale = true, bool save = true, const QStringList *enabledPlugins = 0 )
- PreviewJob * filePreview ( const KURL::List &items, int width, int height = 0, int iconSize = 0, int iconAlpha = 70, bool scale = true, bool save = true, const QStringList *enabledPlugins = 0 )
- RenameDlg_Result open_RenameDlg ( const QString & caption, const QString& src, const QString & dest, RenameDlg_Mode mode, QString& newDestPath, KIO::filesize_t sizeSrc = (KIO::filesize_t) -1, KIO::filesize_t sizeDest = (KIO::filesize_t) -1, time_t ctimeSrc = (time_t) -1, time_t ctimeDest = (time_t) -1, time_t mtimeSrc = (time_t) -1, time_t mtimeDest = (time_t) -1 )
- SkipDlg_Result open_SkipDlg ( bool _multi, const QString& _error_text = QString::null )

#### Public Members

- Forward ChmodInfo
- Forward SlaveList
- Forward SlaveBasePrivate
- Forward SlaveConfigPrivate
- Forward SlaveInterfacePrivate

## Detailed Description

AuthInfo (class) | ### AuthInfo

This class is intended to make it easier to prompt for, cache and retrieve authorization information.

When using this class to cache, retrieve or prompt authentication information, you only need to set the necessary attributes. For example, to check whether a password is already cached, the only required information is the URL of the resource and optionally whether or not a path match should be performed. Similarly, to prompt for password you only need to optionally set the prompt, username (if already supplied), comment and commentLabel fields.

SPECIAL NOTE: If you extend this class to add additional paramters do not forget to overload the stream insertion and extraction operators ("<<" and ">>") so that the added data can be correctly serialzed.

QDataStream& operator<< (QDataStream& s, const AuthInfo& a) | ### operator<<

Flag to indicate the persistence of the given password.

This is a two-way flag, when set before calling openPassDlg it makes the "keep Password" check box visible to the user. In return the flag will indicate the state of the check box. By default if the flag is checked the password will be cached for the entire life of the current KDE session otherwise the cached password is deleted right after the application using it has been closed.

QDataStream& operator>> (QDataStream& s, AuthInfo& a) | ### operator>>

NetRC (class) | ### NetRC

A Singleton class that provides access to passwords stored in .netrc and kionetrc for automatic login purposes.

ChmodJob (class) | ### ChmodJob

This job changes permissions on a list of files or directories, optionally in a recursive manner.

ChmodJob * chmod ( const KFileItemList& lstItems, int permissions, int mask, QString newOwner, QString newGroup, bool recursive, bool showProgressInfo = true ) | ### chmod

Creates a job that changes permissions/ownership on several files or directories, optionally recursively. This version of chmod uses a KFileItemList so that it directly knows what to do with the items. TODO: a version that takes a KURL::List, and a general job that stats each url and returns a KFileItemList.

Note that change of ownership is only supported for local files.

Inside directories, the "x" bits will only be changed for files that had at least one "x" bit before, and for directories. This emulates the behaviour of chmod +X.

Parameters:

lstItems | The file items representing several files or directories.
permissions | the permissions we want to set
mask | the bits we are allowed to change For instance, if mask is 0077, we don't change the "user" bits, only "group" and "others".
newOwner | If non-empty, the new owner for the files
newGroup | If non-empty, the new group for the files
recursive | whether to open directories recursively

Returns: The job handling the operation.

Task (struct) | ### Task

Connection (class) | ### Connection

This class provides a simple means for IPC between two applications via a pipe. It handles a queue of commands to be sent which makes it possible to queue data before an actual connection has been established.

Slave (class) | ### Slave

SlaveInterface (class) | ### SlaveInterface

There are two classes that specifies the protocol between application (job) and kioslave. SlaveInterface is the class to use on the application end, SlaveBase is the one to use on the slave end.

A call to foo() results in a call to slotFoo() on the other end.

DavJob (class) | ### DavJob

The transfer job pumps data into and/or out of a Slave. Data is sent to the slave on request of the slave (dataReq). If data coming from the slave can not be handled, the reading of data from the slave should be suspended.

DavJob* davPropFind ( const KURL& url, const QDomDocument& properties, QString depth, bool showProgressInfo=true ) | ### davPropFind

DavJob* davPropPatch ( const KURL& url, const QDomDocument& properties, bool showProgressInfo=true ) | ### davPropPatch

DavJob* davSearch ( const KURL &url, const QString& nsURI, const QString& qName, const QString& query, bool showProgressInfo=true ) | ### davSearch

DefaultProgress (class) | ### DefaultProgress

typedef signed long long int fileoffset_t | ### fileoffset_t

typedef unsigned long long int filesize_t | ### filesize_t

QString convertSize ( KIO::filesize_t size ) | ### convertSize

Converts `size` from bytes to the string representation.

Parameters:

size | size in bytes

Returns: converted size as a string - e.g. 123.4 kB , 12.0 MB

QString number ( KIO::filesize_t size ) | ### number

Converts a size to a string representation Not unlike QString::number(...)

Parameters:

size | size in bytes

Returns: converted size as a string - e.g. 123456789

QString convertSizeFromKB ( KIO::filesize_t kbSize ) | ### convertSizeFromKB

Converts size from kilo-bytes to the string representation.

Parameters:

size | size in kilo-bytes

Returns: converted size as a string - e.g. 123.4 kB , 12.0 MB

QTime calculateRemaining ( KIO::filesize_t totalSize, KIO::filesize_t processedSize, KIO::filesize_t speed ) | ### calculateRemaining

Calculates remaining time from total size, processed size and speed.

Parameters:

totalSize | total size in bytes
processedSize | processed size in bytes
speed | speed in bytes pre second

Returns: calculated remaining time

QString itemsSummaryString (uint items, uint files, uint dirs, KIO::filesize_t size, bool showSize) | ### itemsSummaryString

Helper for showing information about a set of files and directories `items` = `files` + `dirs` + number of symlinks :)

Parameters:

size | the sum of the size of the _files_
showSize | whether to show the size in the result

QString encodeFileName ( const QString & str ) | ### encodeFileName

Encodes (from the text displayed to the real filename) This translates % into %% and / into %2f Used by KIO::link, for instance.

QString decodeFileName ( const QString & str ) | ### decodeFileName

Decodes (from the filename to the text displayed) This translates %2[fF] into / and %% into %

enum Error { ERR_CANNOT_OPEN_FOR_READING = 1, ERR_CANNOT_OPEN_FOR_WRITING = 2, ERR_CANNOT_LAUNCH_PROCESS = 3, ERR_INTERNAL = 4, ERR_MALFORMED_URL = 5, ERR_UNSUPPORTED_PROTOCOL = 6, ERR_NO_SOURCE_PROTOCOL = 7, ERR_UNSUPPORTED_ACTION = 8, ERR_IS_DIRECTORY = 9, ERR_IS_FILE = 10, ERR_DOES_NOT_EXIST = 11, ERR_FILE_ALREADY_EXIST = 12, ERR_DIR_ALREADY_EXIST = 13, ERR_UNKNOWN_HOST = 14, ERR_ACCESS_DENIED = 15, ERR_WRITE_ACCESS_DENIED = 16, ERR_CANNOT_ENTER_DIRECTORY = 17, ERR_PROTOCOL_IS_NOT_A_FILESYSTEM = 18, ERR_CYCLIC_LINK = 19, ERR_USER_CANCELED = 20, ERR_CYCLIC_COPY = 21, ERR_COULD_NOT_CREATE_SOCKET = 22, ERR_COULD_NOT_CONNECT = 23, ERR_CONNECTION_BROKEN = 24, ERR_NOT_FILTER_PROTOCOL = 25, ERR_COULD_NOT_MOUNT = 26, ERR_COULD_NOT_UNMOUNT = 27, ERR_COULD_NOT_READ = 28, ERR_COULD_NOT_WRITE = 29, ERR_COULD_NOT_BIND = 30, ERR_COULD_NOT_LISTEN = 31, ERR_COULD_NOT_ACCEPT = 32, ERR_COULD_NOT_LOGIN = 33, ERR_COULD_NOT_STAT = 34, ERR_COULD_NOT_CLOSEDIR = 35, ERR_COULD_NOT_MKDIR = 37, ERR_COULD_NOT_RMDIR = 38, ERR_CANNOT_RESUME = 39, ERR_CANNOT_RENAME = 40, ERR_CANNOT_CHMOD = 41, ERR_CANNOT_DELETE = 42, ERR_SLAVE_DIED = 43, ERR_OUT_OF_MEMORY = 44, ERR_UNKNOWN_PROXY_HOST = 45, ERR_COULD_NOT_AUTHENTICATE = 46, ERR_ABORTED = 47, ERR_INTERNAL_SERVER = 48, ERR_SERVER_TIMEOUT = 49, ERR_SERVICE_NOT_AVAILABLE = 50, ERR_UNKNOWN = 51, ERR_UNKNOWN_INTERRUPT = 53, ERR_CANNOT_DELETE_ORIGINAL = 54, ERR_CANNOT_DELETE_PARTIAL = 55, ERR_CANNOT_RENAME_ORIGINAL = 56, ERR_CANNOT_RENAME_PARTIAL = 57, ERR_NEED_PASSWD = 58, ERR_CANNOT_SYMLINK = 59, ERR_NO_CONTENT = 60, ERR_DISK_FULL = 61, ERR_IDENTICAL_FILES = 62, ERR_SLAVE_DEFINED = 63, ERR_UPGRADE_REQUIRED = 64, ERR_POST_DENIED = 65 } | ### Error

Error codes that can be emitted by KIO.

QString buildErrorString (int errorCode, const QString &errorText) | ### buildErrorString

QString buildHTMLErrorString (int errorCode, const QString &errorText, const KURL *reqUrl = 0L, int method = -1 ) | ### buildHTMLErrorString

QByteArray rawErrorDetail (int errorCode, const QString &errorText, const KURL *reqUrl = 0L, int method = -1 ) | ### rawErrorDetail

enum UDSAtomTypes { UDS_STRING = 1, UDS_LONG = 2, UDS_TIME = 4 | UDS_LONG, UDS_SIZE = 8 | UDS_LONG, UDS_SIZE_LARGE = 32768 | UDS_LONG, UDS_USER = 16 | UDS_STRING, UDS_GROUP = 32 | UDS_STRING, UDS_NAME = 64 | UDS_STRING, UDS_ACCESS = 128 | UDS_LONG, UDS_MODIFICATION_TIME = 256 | UDS_TIME, UDS_ACCESS_TIME = 512 | UDS_TIME, UDS_CREATION_TIME = 1024 | UDS_TIME, UDS_FILE_TYPE = 2048 | UDS_LONG, UDS_LINK_DEST = 4096 | UDS_STRING, UDS_URL = 8192 | UDS_STRING, UDS_MIME_TYPE = 16384 | UDS_STRING, UDS_GUESSED_MIME_TYPE = 16392 | UDS_STRING, UDS_XML_PROPERTIES = 32768 | UDS_STRING } | ### UDSAtomTypes

Constants used to specify the type of a KUDSAtom.

enum CacheControl { CC_CacheOnly, CC_Cache, CC_Verify, CC_Refresh, CC_Reload } | ### CacheControl

KIO::CacheControl parseCacheControl (const QString &cacheControl) | ### parseCacheControl

QString getCacheControlString (KIO::CacheControl cacheControl) | ### getCacheControlString

QString findDeviceMountPoint ( const QString& device ) | ### findDeviceMountPoint

Returns the mount point where `device` is mounted right now. This means, it has to be mounted, not just defined in fstab.

QString findPathMountPoint ( const QString & filename ) | ### findPathMountPoint

Returns the mount point on which resides `filename`. For instance if /home is a separate partition, findPathMountPoint("/home/user/blah") will return /home

bool probably_slow_mounted (const QString& filename) | ### probably_slow_mounted

Checks if the path belongs to a filesystem that is probably slow. It checks for NFS or for paths belonging to automounted paths not yet mounted

bool manually_mounted (const QString& filename) | ### manually_mounted

Checks if the path belongs to a filesystem that is manually mounted.

Parameters:

filename | the file name to check

Returns: true if the filesystem is manually mounted

UDSAtom (class) | ### UDSAtom

Universal Directory Service

Any file or URL can be represented by the UDSEntry type below A UDSEntry is a list of atoms Each atom contains a specific bit of information for the file

The following UDS constants represent the different possible values for m_uds in the UDS atom structure below

Each atom contains a specific bit of information for the file

typedef QValueList UDSEntry | ### UDSEntry

An entry is the list of atoms containing all the informations for a file or URL

typedef QValueList UDSEntryList | ### UDSEntryList

typedef QValueListIterator UDSEntryListIterator | ### UDSEntryListIterator

typedef QValueListConstIterator UDSEntryListConstIterator | ### UDSEntryListConstIterator

MetaData (class) | ### MetaData

SimpleJob * mkdir ( const KURL& url, int permissions = -1 ) | ### mkdir

Creates a single directory.

Parameters:

url | The URL of the directory to create.
permissions | The permissions to set after creating the directory.

Returns: A pointer to the job handling the operation.

SimpleJob * rmdir ( const KURL& url ) | ### rmdir

Removes a single directory.

The directory is assumed to be empty.

Parameters:

url | The URL of the directory to remove.

Returns: A pointer to the job handling the operation.

SimpleJob * chmod ( const KURL& url, int permissions ) | ### chmod

Changes permissions on a file or directory. See the other chmod below for changing many files or directories.

Parameters:

url | The URL of file or directory.
permissions | The permissions to set.

Returns: The job handling the operation.

SimpleJob * rename ( const KURL& src, const KURL & dest, bool overwrite ) | ### rename

Rename a file or directory. Warning: this operation fails if a direct renaming is not possible (like with files or dirs on separate partitions) Use move or file_move in this case.

Parameters:

src | The original URL
dest | The final URL
overwrite | whether to automatically overwrite if the dest exists

Returns: The job handling the operation.

SimpleJob * symlink ( const QString & target, const KURL& dest, bool overwrite, bool showProgressInfo = true ) | ### symlink

Create or move a symlink. This is the lowlevel operation, similar to file_copy and file_move. It doesn't do any check (other than those the slave does) and it doesn't show rename and skip dialogs - use KIO::link for that.

Parameters:

target | The string that will become the "target" of the link (can be relative)
dest | The symlink to create.
overwrite | whether to automatically overwrite if the dest exists

Returns: The job handling the operation.

SimpleJob * special ( const KURL& url, const QByteArray & data, bool showProgressInfo = true ) | ### special

Execute any command that is specific to one slave (protocol).

Examples are : HTTP POST, mount and unmount (kio_file)

Parameters:

url | The URL isn't passed to the slave, but is used to know which slave to send it to :-)
data | Packed data. The meaning is completely dependent on the slave, but usually starts with an int for the command number.

SimpleJob * mount ( bool ro, const char *fstype, const QString& dev, const QString& point, bool showProgressInfo = true ) | ### mount

Mount filesystem.

Special job for `kio_file`.

Parameters:

ro | Mount read-only if `true`.
fstype | File system type (e.g. "ext2", can be 0L).
dev | Device (e.g. /dev/sda0).
point | Mount point, can be `null`.

SimpleJob * unmount ( const QString & point, bool showProgressInfo = true ) | ### unmount

Unmount filesystem.

Special job for `kio_file`.

Parameters:

mount | Point to unmount.

SimpleJob * http_update_cache ( const KURL& url, bool no_cache, time_t expireDate) | ### http_update_cache

HTTP cache update

Parameters:

url | Url to update, protocol must be "http".
no_cache | If true, cache entry for `url` is deleted.
expireDate | Local machine time indicating when the entry is supposed to expire.

StatJob * stat ( const KURL& url, bool showProgressInfo = true ) | ### stat

Find all details for one file or directory.

StatJob * stat ( const KURL& url, bool sideIsSource, short int details, bool showProgressInfo = true ) | ### stat

Find all details for one file or directory. This version of the call includes two additional booleans, `sideIsSource` and `details`.

Parameters:

sideIsSource | is true when stating a source file (we will do a get on it if the stat works) and false when stating a destination file (target of a copy).
details | selects the level of details we want. By default this is 2 (all details wanted, including modification time, size, etc.), setDetails(1) is used when deleting: we don't need all the information if it takes too much time, no need to follow symlinks etc. setDetails(0) is used for very simple probing: we'll only get the answer "it's a file or a directory, or it doesn't exist". This is used by KRun.

TransferJob * get ( const KURL& url, bool reload=false, bool showProgressInfo = true ) | ### get

Get (a.k.a. read).

The slave emits the data through data().

TransferJob * put ( const KURL& url, int permissions, bool overwrite, bool resume, bool showProgressInfo = true ) | ### put

Put (a.k.a. write)

Parameters:

url | Where to write data.
permissions | May be -1. In this case no special permission mode is set.
overwrite | If `true`, any existing file will be overwritten.
resume |

TransferJob * http_post ( const KURL& url, const QByteArray &postData, bool showProgressInfo = true ) | ### http_post

HTTP POST (for form data).

Example:

        job = KIO::http_post( url, postData, false );
        job->addMetaData("content-type", contentType );
        job->addMetaData("referrer", referrerURL);

`postData` is the data that you want to send and `contentType` is the complete HTTP header line that specifies the content's MIME type, for example "Content-Type: text/xml".

You MUST specify content-type!

Often `contentType` is "Content-Type: application/x-www-form-urlencoded" and the `postData` is then an ASCII string (without null-termination!) with characters like space, linefeed and percent escaped like %20, %0A and %25.

Parameters:

url | Where to write data.
postData | Encoded data to post.
showProgressInfo | true to display

MultiGetJob * multi_get ( long id, const KURL &url, const MetaData &metaData) | ### multi_get

MimetypeJob * mimetype ( const KURL& url, bool showProgressInfo = true ) | ### mimetype

Find mimetype for one file or directory.

FileCopyJob * file_copy ( const KURL& src, const KURL& dest, int permissions=-1, bool overwrite=false, bool resume=false, bool showProgressInfo = true) | ### file_copy

Copy a single file.

Uses either SlaveBase::copy() if the slave supports that or get() and put() otherwise.

Parameters:

src | Where to get the file.
dest | Where to put the file.
permissions | May be -1. In this case no special permission mode is set.
overwrite | If `true`, any existing file will be overwritten.
resume |

FileCopyJob * file_move ( const KURL& src, const KURL& dest, int permissions=-1, bool overwrite=false, bool resume=false, bool showProgressInfo = true) | ### file_move

Move a single file.

Use either SlaveBase::rename() if the slave supports that, or copy() and del() otherwise, or eventually get() & put() & del()

Parameters:

src | Where to get the file.
dest | Where to put the file.
permissions | May be -1. In this case no special permission mode is set.
overwrite | If `true`, any existing file will be overwritten.
resume |

SimpleJob * file_delete ( const KURL& src, bool showProgressInfo = true) | ### file_delete

Delete a single file.

Parameters:

src | File to delete.

ListJob * listDir ( const KURL& url, bool showProgressInfo = true, bool includeHidden = true ) | ### listDir

List the contents of `url`, which is assumed to be a directory.

"." and ".." are returned, filter them out if you don't want them.

pass includeHidden = false to cull out UNIX hidden files/dirs (whose names start with .)

ListJob * listRecursive ( const KURL& url, bool showProgressInfo = true, bool includeHidden = true ) | ### listRecursive

The same as the previous method, but recurses subdirectories.

"." and ".." are returned but only for the toplevel directory. Filter them out if you don't want them.

pass includeHidden = false to cull out UNIX hidden files/dirs (whose names start with .)

CopyJob * copy ( const KURL& src, const KURL& dest, bool showProgressInfo = true ) | ### copy

Copy a file or directory `src` into the destination @dest, which can be a file (including the final filename) or a directory (into which `src` will be copied).

This emulates the `cp` command completely.

CopyJob * copyAs ( const KURL& src, const KURL& dest, bool showProgressInfo = true ) | ### copyAs

Copy a file or directory `src` into the destination @dest, which is the destination name in any case, even for a directory.

As opposed to copy, this doesn't emulate `cp`, but is the only way to copy a directory, giving it a new name and getting an error box if a directory already exists with the same name.

CopyJob * copy ( const KURL::List& src, const KURL& dest, bool showProgressInfo = true ) | ### copy

Copy a list of file/dirs `src` into a destination directory `dest`.

CopyJob * move ( const KURL& src, const KURL& dest, bool showProgressInfo = true ) | ### move

See also: copy

CopyJob * moveAs ( const KURL& src, const KURL& dest, bool showProgressInfo = true ) | ### moveAs

See also: copyAs

CopyJob * move ( const KURL::List& src, const KURL& dest, bool showProgressInfo = true ) | ### move

See also: copy

CopyJob * link ( const KURL& src, const KURL& destDir, bool showProgressInfo = true ) | ### link

Create a link.

Parameters:

src | The existing file or directory, 'target' of the link.
destDir | Destination directory where the link will be created. If the protocols and hosts are the same, a Unix symlink will be created. Otherwise, a .desktop file of Type Link and pointing to the src URL will be created.

CopyJob * link ( const KURL::List& src, const KURL& destDir, bool showProgressInfo = true ) | ### link

See also: link

CopyJob * linkAs ( const KURL& src, const KURL& dest, bool showProgressInfo = true ) | ### linkAs

See also: link, and, copyAs

DeleteJob * del ( const KURL& src, bool shred = false, bool showProgressInfo = true ) | ### del

Delete a file or directory.

Parameters:

src | file to delete
shred | If `true`, delete in a way that makes recovery impossible (only supported for local files currently)

DeleteJob * del ( const KURL::List& src, bool shred = false, bool showProgressInfo = true ) | ### del

Job (class) | ### Job

The base class for all jobs. For all jobs created in an application, the code looks like

       KIO::Job * job = KIO::someoperation( some parameters );
       connect( job, SIGNAL( result( KIO::Job * ) ),
                this, SLOT( slotResult( KIO::Job * ) ) );

(other connects, specific to the job)

And slotResult is usually at least:

      if ( job->error() )
          job->showErrorDialog( this or 0L  );

SimpleJob (class) | ### SimpleJob

A simple job (one url and one command). This is the base class for all jobs that are scheduled. Other jobs are high-level jobs (CopyJob, DeleteJob, FileCopyJob...) that manage subjobs but aren't scheduled directly.

StatJob (class) | ### StatJob

TransferJob (class) | ### TransferJob

The transfer job pumps data into and/or out of a Slave. Data is sent to the slave on request of the slave (dataReq). If data coming from the slave can not be handled, the reading of data from the slave should be suspended.

MultiGetJob (class) | ### MultiGetJob

MimetypeJob (class) | ### MimetypeJob

FileCopyJob (class) | ### FileCopyJob

The FileCopyJob copies data from one place to another.

ListJob (class) | ### ListJob

CopyInfo (struct) | ### CopyInfo

CopyJob (class) | ### CopyJob

DeleteJob (class) | ### DeleteJob

ParseTreeBase (class) | ### ParseTreeBase

PreferencesReturn (struct) | ### PreferencesReturn

int matchConstraint ( const ParseTreeBase *_tree, const KService::Ptr &, const KServiceTypeProfile::OfferList& ) | ### matchConstraint

Returns: 0 => Does not match 1 => Does match <0 => Error

PreferencesReturn matchPreferences ( const ParseTreeBase *_tree, const KService::Ptr &, const KServiceTypeProfile::OfferList& ) | ### matchPreferences

Returns: 1 on success or <0 on Error

PreferencesMaxima (struct) | ### PreferencesMaxima

ParseContext (class) | ### ParseContext

ParseTreeBase::Ptr parseConstraints ( const QString& _constr ) | ### parseConstraints

ParseTreeBase::Ptr parsePreferences ( const QString& _prefs ) | ### parsePreferences

ParseTreeOR (class) | ### ParseTreeOR

ParseTreeAND (class) | ### ParseTreeAND

ParseTreeCMP (class) | ### ParseTreeCMP

ParseTreeIN (class) | ### ParseTreeIN

ParseTreeMATCH (class) | ### ParseTreeMATCH

ParseTreeCALC (class) | ### ParseTreeCALC

ParseTreeBRACKETS (class) | ### ParseTreeBRACKETS

ParseTreeNOT (class) | ### ParseTreeNOT

ParseTreeEXIST (class) | ### ParseTreeEXIST

ParseTreeID (class) | ### ParseTreeID

ParseTreeSTRING (class) | ### ParseTreeSTRING

ParseTreeNUM (class) | ### ParseTreeNUM

ParseTreeDOUBLE (class) | ### ParseTreeDOUBLE

ParseTreeBOOL (class) | ### ParseTreeBOOL

ParseTreeMAX2 (class) | ### ParseTreeMAX2

ParseTreeMIN2 (class) | ### ParseTreeMIN2

MetaInfoJob (class) | ### MetaInfoJob

MetaInfoJob* fileMetaInfo (const KFileItemList& items) | ### fileMetaInfo

Retrieves meta information for the given items.

Parameters:

items | files to get metainfo for
save | if the data should be cached for later use
enabledPlugins | if non-zero, this points to a list containing the names of the plugins that may be used. see availablePlugins.

MetaInfoJob* fileMetaInfo (const KURL::List& items) | ### fileMetaInfo

Same as above, but takes a URL list instead of KFileItemList

NetAccess (class) | ### NetAccess

Net Transparency, formerly provided by kfmlib, but now done with KIO::Job.

This class isn't meant to be used as a class but only as a simple namespace for static functions, though an instance of the class is built for internal purposes. Whereas a KIO::Job is asynchronous, meaning that the developer has to connect slots for it, KIO::NetAccess provides synchronous downloads and uploads, as well as temporary file creation and removal.

Port to kio done by David Faure, faure@kde.org

PasswordDialog (class) | ### PasswordDialog

A dialog for requesting a login and a password from the end user.

KIO-Slave authors are encouraged to use SlaveBase::openPassDlg instead of directly instantiating this dialog.

Job * pasteClipboard ( const KURL& _dest_url, bool move = false ) | ### pasteClipboard

void pasteData ( const KURL& _dest_url, const QByteArray& _data ) | ### pasteData

bool isClipboardEmpty () | ### isClipboardEmpty

PreviewJob (class) | ### PreviewJob

PreviewJob * filePreview ( const KFileItemList &items, int width, int height = 0, int iconSize = 0, int iconAlpha = 70, bool scale = true, bool save = true, const QStringList *enabledPlugins = 0 ) | ### filePreview

Generates or retrieves a preview image for the given URL.

Parameters:

items | files to get previews for
width | the maximum width to use
height | the maximum height to use, if this is 0, the same value as width is used.
iconSize | the size of the mimetype icon to overlay over the preview or zero to not overlay an icon. This has no effect if the preview plugin that will be used doesn't use icon overlays.
iconAlpha | transparency to use for the icon overlay
scale | if the image is to be scaled to the requested size or returned in its original size
save | if the image should be cached for later use
enabledPlugins | if non-zero, this points to a list containing the names of the plugins that may be used. see availablePlugins.

PreviewJob * filePreview ( const KURL::List &items, int width, int height = 0, int iconSize = 0, int iconAlpha = 70, bool scale = true, bool save = true, const QStringList *enabledPlugins = 0 ) | ### filePreview

Same as above, but takes a URL list instead of KFileItemList

enum Progress { DEFAULT = 1, STATUSBAR = 2, LIST = 3 } | ### Progress

ProgressBase (class) | ### ProgressBase

This class does all initialization stuff for progress, like connecting signals to slots. All slots are implemented as pure virtual methods.

All custom IO progress dialog should inherit this class. Add your GUI code to the constructor and implemement those virtual methods which you need in order to display progress.

E.g. StatusbarProgress only implements slotTotalSize(), slotPercent() and slotSpeed().

Custom progress dialog will be used like this :

     // create job
     CopyJob* job = KIO::copy(...);
     // create a dialog
     MyCustomProgress *customProgress;
     customProgress = new MyCustomProgress();
     // connect progress with job
     customProgress->setJob( job );
     ...

There is a special method setStopOnClose() that controls the behavior of the dialog.

enum RenameDlg_Mode { M_OVERWRITE = 1, M_OVERWRITE_ITSELF = 2, M_SKIP = 4, M_SINGLE = 8, M_MULTI = 16, M_RESUME = 32, M_NORENAME = 64 } | ### RenameDlg_Mode

enum RenameDlg_Result { R_RESUME = 6, R_RESUME_ALL = 7, R_OVERWRITE = 4, R_OVERWRITE_ALL = 5, R_SKIP = 2, R_AUTO_SKIP = 3, R_RENAME = 1, R_CANCEL = 0 } | ### RenameDlg_Result

RenameDlg (class) | ### RenameDlg

A dialog for the options to rename two files

RenameDlg_Result open_RenameDlg ( const QString & caption, const QString& src, const QString & dest, RenameDlg_Mode mode, QString& newDestPath, KIO::filesize_t sizeSrc = (KIO::filesize_t) -1, KIO::filesize_t sizeDest = (KIO::filesize_t) -1, time_t ctimeSrc = (time_t) -1, time_t ctimeDest = (time_t) -1, time_t mtimeSrc = (time_t) -1, time_t mtimeDest = (time_t) -1 ) | ### open_RenameDlg

\addtogroup renamedlg "RenameDlg related Functions" @{ \relate KIO::RenameDlg Construct a modal, parent-less "rename" dialog, and return a result code, as well as the new dest. Much easier to use than the class RenameDlg directly.

The following parameters bring optionnal information about `src` and `dest`

Parameters:

caption | the caption for the dialog box
src | the file/dir we're trying to copy, as it's part of the text message
dest | the destination file/dir, i.e. the one that already exists
mode | parameters for the dialog (which buttons to show...),
newDest | the new destination path, valid if R_RENAME was returned.
sizeSrc | size of source file
sizeDest | size of destination file
ctimeSrc | creation time of source file
ctimeDest | creation time of destination file
mtimeSrc | modification time of source file
mtimeDest | modification time of destination file

See also: RenameDlg_Mode

SlaveConfig (class) | ### SlaveConfig

SlaveConfig

This class manages the configuration for io-slaves based on protocol and host. The Scheduler makes use of this class to configure the slave whenever it has to connect to a new host.

You only need to use this class if you want to override specific configuration items of an io-slave when the io-slave is used by your application.

Normally io-slaves are being configured by "kio_rc" configuration files. Groups defined in such files are treated as host or domain specification. Configuration items defined in a group are only applied when the slave is connecting with a host that matches with the host and/or domain specified by the group.

SessionData (class) | ### SessionData

Scheduler (class) | ### Scheduler

The KIO::Scheduler manages io-slaves for the application. It also queues jobs and assigns the job to a slave when one becomes available.

There are 3 possible ways for a job to get a slave:

1) Direct. This is the default. When you create a job the KIO::Scheduler will be notified and will find either an existing slave that is idle or it will create a new slave for the job.

Example: TransferJob *job = KIO::get(KURL("http://www.kde.org"));

2) Scheduled If you create a lot of jobs, you might want not want to have a slave for each job. If you schedule a job, a maximum number of slaves will be created. When more jobs arrive, they will be queued. When a slave is finished with a job, it will be assigned a job from the queue.

Example:

        TransferJob *job = KIO::get(KURL("http://www.kde.org"));
        KIO::Scheduler::scheduleJob(job);

3) Connection Oriented For some operations it is important that multiple jobs use the same connection. This can only be ensured if all these jobs use the same slave.

You can ask the scheduler to open a slave for connection oriented operations. You can then use the scheduler to assign jobs to this slave. The jobs will be queued and the slave will handle these jobs one after the other.

Example:

        Slave *slave = KIO::Scheduler::getConnectedSlave(
                KURL("pop3://bastian:password@mail.kde.org"));
        TransferJob *job1 = KIO::get(
                KURL("pop3://bastian:password@mail.kde.org/msg1"));
        KIO::Scheduler::assignJobToSlave(slave, job1);
        TransferJob *job2 = KIO::get(
                KURL("pop3://bastian:password@mail.kde.org/msg2"));
        KIO::Scheduler::assignJobToSlave(slave, job2);
        TransferJob *job3 = KIO::get(
                KURL("pop3://bastian:password@mail.kde.org/msg3"));
        KIO::Scheduler::assignJobToSlave(slave, job3);

        // ... Wait for jobs to finish...

        KIO::Scheduler::disconnectSlave(slave);

enum SkipDlg_Result { S_SKIP = 1, S_AUTO_SKIP = 2, S_CANCEL = 0 } | ### SkipDlg_Result

SkipDlg_Result open_SkipDlg ( bool _multi, const QString& _error_text = QString::null ) | ### open_SkipDlg

SkipDlg (class) | ### SkipDlg

SlaveBase (class) | ### SlaveBase

There are two classes that specifies the protocol between application (job) and kioslave. SlaveInterface is the class to use on the application end, SlaveBase is the one to use on the slave end.

Slave implementations should simply inherit SlaveBase

A call to foo() results in a call to slotFoo() on the other end.

enum Command { CMD_HOST = '0', CMD_CONNECT = '1', CMD_DISCONNECT = '2', CMD_SLAVE_STATUS = '3', CMD_SLAVE_CONNECT = '4', CMD_SLAVE_HOLD = '5', CMD_NONE = 'A', CMD_TESTDIR = 'B', CMD_GET = 'C', CMD_PUT = 'D', CMD_STAT = 'E', CMD_MIMETYPE = 'F', CMD_LISTDIR = 'G', CMD_MKDIR = 'H', CMD_RENAME = 'I', CMD_COPY = 'J', CMD_DEL = 'K', CMD_CHMOD = 'L', CMD_SPECIAL = 'M', CMD_USERPASS = 'N', CMD_REPARSECONFIGURATION = 'O', CMD_META_DATA = 'P', CMD_SYMLINK = 'Q', CMD_SUBURL = 'R', CMD_MESSAGEBOXANSWER = 'S', CMD_RESUMEANSWER = 'T', CMD_CONFIG = 'U', CMD_MULTI_GET = 'V' } | ### Command

Commands that can be invoked by a job.

enum Info { INF_TOTAL_SIZE = 10, INF_PROCESSED_SIZE = 11, INF_SPEED, INF_REDIRECTION = 20, INF_MIME_TYPE = 21, INF_ERROR_PAGE = 22, INF_WARNING = 23, INF_GETTING_FILE, INF_NEED_PASSWD = 25, INF_INFOMESSAGE, INF_META_DATA, INF_NETWORK_STATUS, INF_MESSAGEBOX } | ### Info

Identifiers for KIO informational messages.

enum Message { MSG_DATA = 100, MSG_DATA_REQ, MSG_ERROR, MSG_CONNECTED, MSG_FINISHED, MSG_STAT_ENTRY, MSG_LIST_ENTRIES, MSG_RENAMED, MSG_RESUME, MSG_SLAVE_STATUS, MSG_SLAVE_ACK, MSG_NET_REQUEST, MSG_NET_DROP, MSG_NEED_SUBURL_DATA, MSG_CANRESUME, MSG_AUTH_KEY, MSG_DEL_AUTH_KEY } | ### Message

Identifiers for KIO data messages.

StatusbarProgress (class) | ### StatusbarProgress

This is a special IO progress widget.

Similarly to DefaultProgress, it's purpose is to show a progress of the IO operation.

Instead of creating a separate window, this is only a widget that can be easily embedded in a statusbar.

Usage of StatusbarProgress is little different. This dialog will be a part of some application.

     // create a dialog
     StatusbarProgress *statusProgress;
     statusProgress = new StatusbarProgress( statusBar() );
     statusBar()->insertWidget( statusProgress, statusProgress->width() , 0 );
     ...
     // create job and connect it to the progress
     CopyJob* job = KIO::copy(...);
     statusProgress->setJob( job );
     ...

TCPSlaveBase (class) | ### TCPSlaveBase

There are two classes that specifies the protocol between application (job) and kioslave. SlaveInterface is the class to use on the application end, SlaveBase is the one to use on the slave end.

Slave implementations should simply inherit SlaveBase

A call to foo() results in a call to slotFoo() on the other end.

Generated by: root on macppc.ports.openbsd.org on Sat Sep 6 10:36:57 2003, using kdoc 2.0a54.