Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   Related Pages  

KFileItem Class Reference

#include <kfileitem.h>

List of all members.

Public Methods

 KFileItem (const KIO::UDSEntry &_entry, const KURL &_url, bool _determineMimeTypeOnDemand=false, bool _urlIsDirectory=false)
 KFileItem (mode_t _mode, mode_t _permissions, const KURL &_url, bool _determineMimeTypeOnDemand=false)
 KFileItem (const KURL &url, const QString &mimeType, mode_t mode)
 KFileItem (const KFileItem &item)
virtual ~KFileItem ()
void refresh ()
void refreshMimeType ()
const KURLurl () const
void setURL (const KURL &url)
mode_t permissions () const
QString permissionsString () const
mode_t mode () const
QString user () const
QString group () const
bool isLink () const
bool isDir () const
bool isFile () const
bool isReadable () const
QString linkDest () const
KIO::filesize_t size () const
time_t time (unsigned int which) const
QString timeString (unsigned int which=KIO::UDS_MODIFICATION_TIME) const
bool isLocalFile () const
const QString & text () const
const QString & name (bool lowerCase=false) const
QString mimetype () const
KMimeType::Ptr determineMimeType ()
KMimeType::Ptr mimeTypePtr () const
QString mimeComment ()
QString iconName ()
QPixmap pixmap (int _size, int _state=0) const
int overlays () const
QString getStatusBarInfo ()
QString getToolTipText (int maxcount=6)
bool acceptsDrops ()
void run ()
const KIO::UDSEntryentry () const
bool cmp (const KFileItem &item)
virtual void setExtraData (const void *key, void *value)
virtual const void * extraData (const void *key) const
virtual void * extraData (const void *key)
virtual void removeExtraData (const void *key)
void setMetaInfo (const KFileMetaInfo &info)
const KFileMetaInfometaInfo (bool autoget=true, int what=KFileMetaInfo::Fastest) const
void assign (const KFileItem &item)

Protected Methods

void init (bool _determineMimeTypeOnDemand)
QString parsePermissions (mode_t perm) const


Detailed Description

A KFileItem is a generic class to handle a file, local or remote. In particular, it makes it easier to handle the result of KIO::listDir. (UDSEntry isn't very friendly to use) It includes many file attributes such as mimetype, icon, text, mode, link...

Definition at line 40 of file kfileitem.h.


Constructor & Destructor Documentation

KFileItem::KFileItem const KIO::UDSEntry   _entry,
const KURL   _url,
bool    _determineMimeTypeOnDemand = false,
bool    _urlIsDirectory = false
 

Creates an item representing a file, from a UDSEntry. This is the preferred constructor when using KIO::listDir().

Parameters:
_entry  the KIO entry used to get the file, contains info about it
_url  the file url
_determineMimeTypeOnDemand  specifies if the mimetype of the given URL should be determined immediately or on demand
_urlIsDirectory  specifies if the url is just the directory of the fileitem and the filename from the UDSEntry should be used.

KFileItem::KFileItem mode_t    _mode,
mode_t    _permissions,
const KURL   _url,
bool    _determineMimeTypeOnDemand = false
 

Creates an item representing a file, from all the necessary info for it.

Parameters:
_mode  the file mode (according to stat() (e.g. S_IFDIR...) Set to KFileItem::Unknown if unknown. For local files, KFileItem will use stat().
_permissions  the access permissions If you set both the mode and the permissions, you save a stat() for local files. Set to KFileItem::Unknown if you don't know the mode or the permission.
_url  the file url
_determineMimeTypeOnDemand  specify if the mimetype of the given URL should be determined immediately or on demand

KFileItem::KFileItem const KURL   url,
const QString &    mimeType,
mode_t    mode
 

Creates an item representing a file, for which the mimetype is already known.

Parameters:
url  the file url
mimeType  the name of the file's mimetype
mode  the mode (S_IFDIR...)

KFileItem::KFileItem const KFileItem &    item
 

Copy constructor. Note that extra-data set via setExtraData() is not deeply copied -- just the pointers are copied.

virtual KFileItem::~KFileItem   [virtual]
 

Destructs the KFileItem. Extra data set via setExtraData() is not deleted.


Member Function Documentation

bool KFileItem::acceptsDrops  
 

Returns true if files can be dropped over this item. Contrary to popular belief, not only dirs will return true :) Executables, .desktop files, will do so as well.

void KFileItem::assign const KFileItem &    item
 

Somewhat like an assignment operator, but more explicit. Note: extra-data set with setExtraData() is not copied, so be careful what you do!

I.e. KDirLister uses it to update existing items from a fresh item.

bool KFileItem::cmp const KFileItem &    item
 

Somewhat like a comparison operator, but more explicit

KMimeType::Ptr KFileItem::determineMimeType  
 

Returns the mimetype of the file item. If determineMimeTypeOnDemand was used, this will determine the mimetype first.

const KIO::UDSEntry& KFileItem::entry   const [inline]
 

Returns the UDS entry. Used by the tree view to access all details by position.

Definition at line 298 of file kfileitem.h.

virtual void* KFileItem::extraData const void *    key [virtual]
 

The non-const version of the previous extraData() method.

virtual const void* KFileItem::extraData const void *    key const [virtual]
 

Returns:
the extra data associated to an item with key via setExtraData. Returns 0L if nothing was associated with key.
See also:
extraData

QString KFileItem::getStatusBarInfo  
 

Returns the string to be displayed in the statusbar, e.g. when the mouse is over this item

QString KFileItem::getToolTipText int    maxcount = 6
 

Parameters:
maxcount  the maximum number of entries shown
Returns:
the string to be displayed in the tool tip when the mouse is over this item. This may load a plugin to determine additional information specific to the mimetype of the file

QString KFileItem::group  
 

Returns the group of the file.

QString KFileItem::iconName  
 

Returns the full path name to the icon that represents this mime type.

void KFileItem::init bool    _determineMimeTypeOnDemand [protected]
 

Computes the text, mode, and mimetype from the UDSEntry Called by constructor, but can be called again later

bool KFileItem::isDir  
 

Returns true if this item represents a directory.

Referenced by KFileViewSignaler::activate(), and isFile().

bool KFileItem::isFile   const [inline]
 

Returns true if this item represents a file (and not a a directory)

Definition at line 158 of file kfileitem.h.

References isDir().

bool KFileItem::isLink   const [inline]
 

Returns true if this item represents a link in the UNIX sense of a link.

Definition at line 148 of file kfileitem.h.

bool KFileItem::isLocalFile   const [inline]
 

Returns true if the file is a local file.

Definition at line 195 of file kfileitem.h.

bool KFileItem::isReadable  
 

Returns:
true if the file can be read - more precisely, returns false if we know for sure it can't. In some cases (remote files), we may return true even though it can't be read.

QString KFileItem::linkDest  
 

Returns the link destination if isLink() == true.

const KFileMetaInfo& KFileItem::metaInfo bool    autoget = true,
int    what = KFileMetaInfo::Fastest
const
 

Returns the metainfo of this item. If autoget is true, it will automatically be created

QString KFileItem::mimeComment  
 

Returns the descriptive comment for this mime type, or the mime type itself if none is present.

QString KFileItem::mimetype  
 

Returns the mimetype of the file item. If determineMimeTypeOnDemand was used, this will determine the mimetype first. Equivalent to determineMimeType()->name()

KMimeType::Ptr KFileItem::mimeTypePtr   const [inline]
 

Returns the currently known mimetype of the file item. This will not try to determine the mimetype if unknown.

Definition at line 235 of file kfileitem.h.

mode_t KFileItem::mode   const [inline]
 

Returns the file type (stat.st_mode containing only S_IFDIR, S_IFLNK, ...).

Definition at line 132 of file kfileitem.h.

const QString& KFileItem::name bool    lowerCase = false const [inline]
 

Returns:
the name of the file item (without a path) Similar to text(), but unencoded, i.e. the original name If lowerCase is true, the name will be returned in lower case, which is useful to speed up sorting by name, case insensitively.

Definition at line 209 of file kfileitem.h.

int KFileItem::overlays  
 

Returns the overlays (bitfield of KIcon::*Overlay flags) that are used for this item's pixmap.

QString KFileItem::parsePermissions mode_t    perm const [protected]
 

Parses the given permission set and provides it for access()

mode_t KFileItem::permissions   const [inline]
 

Returns the permissions of the file (stat.st_mode containing only permissions).

Definition at line 122 of file kfileitem.h.

QString KFileItem::permissionsString  
 

Returns the access permissions for the file as a string.

QPixmap KFileItem::pixmap int    _size,
int    _state = 0
const
 

Returns a pixmap representing the file.

Parameters:
_size  Size for the pixmap in pixels. Zero will return the globally configured default size.
_state  The state of the icon: KIcon::DefaultState, KIcon::ActiveState or KIcon::DisabledState.
Returns:
the pixmap

void KFileItem::refresh  
 

Re-reads information (currently only permissions and mimetype). This is called when the _file_ changes.

void KFileItem::refreshMimeType  
 

Re-reads mimetype information. This is called when the mimetype database changes.

virtual void KFileItem::removeExtraData const void *    key [virtual]
 

Removes the extra data associated with an item via key.

void KFileItem::run  
 

Let's "KRun" this file ! (e.g. when file is clicked or double-clicked or return is pressed)

virtual void KFileItem::setExtraData const void *    key,
void *    value
[virtual]
 

This allows to associate some "extra" data to a KFileItem. As one KFileItem can be used by several objects (often views) which all need to add some data, you have to use a key to reference your extra data within the KFileItem.

That way a KFileItem can hold and provide access to all those views separately.

I.e. a KFileIconView that associates a KFileIconViewItem (an item suitable for use with QIconView) does

 kfileItem->setExtraData( this, iconViewItem );
 

and can later access the iconViewItem by doing

 KFileIconViewItem *iconViewItem = static_cast<KFileIconViewItem*>( kfileItem->extraData( this ));
 

This is usually more efficient then having every view associate data to items by using a separate QDict or QMap.

Note: you have to remove and destroy the data you associated yourself when you don't need it anymore!

See also:
extraData , removeExtraData

void KFileItem::setMetaInfo const KFileMetaInfo   info
 

Sets the metainfo of this item to info.

void KFileItem::setURL const KURL   url
 

Sets the item's URL. Do not call unless you know what you are doing! (used for example when an item got renamed).

KIO::filesize_t KFileItem::size  
 

Returns the size of the file, if known.

const QString& KFileItem::text   const [inline]
 

Returns the text of the file item. It's not exactly the filename since some decoding happens ('%2F'->'/').

Definition at line 201 of file kfileitem.h.

time_t KFileItem::time unsigned int    which const
 

Parameters:
which  UDS_MODIFICATION_TIME, UDS_ACCESS_TIME or even UDS_CREATION_TIME
Returns:
the time asked for, (time_t)0 if not available
See also:
timeString

QString KFileItem::timeString unsigned int    which = KIO::UDS_MODIFICATION_TIME const
 

Parameters:
which  UDS_MODIFICATION_TIME, UDS_ACCESS_TIME or even UDS_CREATION_TIME
Returns:
a formatted string of the requested time.
See also:
time

const KURL& KFileItem::url   const [inline]
 

Returns the url of the file.

Definition at line 111 of file kfileitem.h.

QString KFileItem::user  
 

Returns the owner of the file.


The documentation for this class was generated from the following file:
Generated on Wed Aug 13 23:30:13 2003 for kdelibs by doxygen1.2.18