# kio Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KMimeTypeResolver< IconItem, Parent > Class Template Reference

This class implements the "delayed-mimetype-determination" feature, for konqueror's directory views (and KFileDialog's :). More...

`#include <kmimetyperesolver.h>`

Inheritance diagram for KMimeTypeResolver< IconItem, Parent >:

[legend]
Collaboration diagram for KMimeTypeResolver< IconItem, Parent >:

[legend]
List of all members.

## Public Member Functions

| KMimeTypeResolver (Parent *parent)
void | start (uint delayNonVisibleIcons=10)
virtual void | slotViewportAdjusted ()
virtual void | slotProcessMimeIcons ()

## Public Attributes

QPtrList< IconItem > | m_lstPendingMimeIconItems

## Detailed Description

### template<class IconItem, class Parent>
class KMimeTypeResolver< IconItem, Parent >

This class implements the "delayed-mimetype-determination" feature, for konqueror's directory views (and KFileDialog's :).

It determines the mimetypes of the icons in the background, but giving preferrence to the visible icons.

It is implemented as a template, so that it can work with both QPtrListViewItem and QIconViewItem, without requiring hacks such as void * or QPtrDict lookups.

Here's what the parent must implement :

- void mimeTypeDeterminationFinished();
- QScrollView * scrollWidget();
- void determineIcon( IconItem * item ), which should call
- KFileItem::determineMimeType on the fileItem, and update the icon, etc.

Definition at line 118 of file kmimetyperesolver.h.

## Constructor & Destructor Documentation

template<class IconItem, class Parent>
KMimeTypeResolver< IconItem, Parent >::KMimeTypeResolver | ( | Parent * | parent | ) | `[inline]`

Creates a new KMimeTypeResolver with the given parent.

Parameters:

  | parent | the parent's resolver

Definition at line 125 of file kmimetyperesolver.h.

## Member Function Documentation

template<class IconItem, class Parent>
void KMimeTypeResolver< IconItem, Parent >::start | ( | uint | delayNonVisibleIcons = `10` | ) | `[inline]`

Start the mimetype-determination.

Call this when the listing is completed.

Parameters:

  | delayNonVisibleIcons | the delay to use between icons not on screen. Usually 10, but should be set to 0 when the image preview feature is activated, because image preview can only start once we know the mimetypes

Definition at line 141 of file kmimetyperesolver.h.

Referenced by KFileIconView::listingCompleted(), and KFileDetailView::listingCompleted().

template<class IconItem, class Parent>
void KMimeTypeResolver< IconItem, Parent >::slotViewportAdjusted | ( |  | ) | `[inline, virtual]`

| "Connected" to the viewportAdjusted signal of the scrollview Definition at line 217 of file kmimetyperesolver.h. References QPtrList::isEmpty(), KMimeTypeResolver< IconItem, Parent >::m_lstPendingMimeIconItems, and QPtrList::remove().

template<class IconItem, class Parent>
void KMimeTypeResolver< IconItem, Parent >::slotProcessMimeIcons | ( |  | ) | `[inline, virtual]`

| "Connected" to the timer Definition at line 180 of file kmimetyperesolver.h. References QPtrList::count(), QPtrList::first(), KMimeTypeResolver< IconItem, Parent >::m_lstPendingMimeIconItems, and QPtrList::remove().

## Member Data Documentation

template<class IconItem, class Parent>
QPtrList<IconItem> KMimeTypeResolver< IconItem, Parent >::m_lstPendingMimeIconItems

The list of items to process.

The view is free to clear it, insert new items into it, remove items, etc.

Returns:
  the list of items to process

Definition at line 152 of file kmimetyperesolver.h.

Referenced by KFileIconView::clearView(), KFileDetailView::clearView(), KFileIconView::insertItem(), KFileDetailView::insertItem(), KFileIconView::removeItem(), KFileDetailView::removeItem(), KMimeTypeResolver< IconItem, Parent >::slotProcessMimeIcons(), and KMimeTypeResolver< IconItem, Parent >::slotViewportAdjusted().

The documentation for this class was generated from the following file:

- kmimetyperesolver.h

This file is part of the documentation for kio Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:25:00 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003