# kdeui Library API Documentation

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

# KIconViewSearchLine Class Reference

This class makes it easy to add a search line for filtering the items in a iconview based on a simple text search. More...

`#include <kiconviewsearchline.h>`

Inheritance diagram for KIconViewSearchLine:

[legend]
Collaboration diagram for KIconViewSearchLine:

[legend]
List of all members.

## Public Slots

virtual void | updateSearch (const QString &s=QString::null)
void | setCaseSensitive (bool cs)
void | setIconView (QIconView *iv)
void | clear ()

## Public Member Functions

| KIconViewSearchLine (QWidget *parent=0, QIconView *iconView=0, const char *name=0)
| KIconViewSearchLine (QWidget *parent, const char *name)
virtual | ~KIconViewSearchLine ()
bool | caseSensitive () const
QIconView * | iconView () const

## Protected Slots

void | queueSearch (const QString &s)
void | activateSearch ()

## Protected Member Functions

virtual bool | itemMatches (const QIconViewItem *item, const QString &s) const
void | init (QIconView *iconView=0)
void | hideItem (QIconViewItem *item)
void | showItem (QIconViewItem *item)

## Detailed Description

This class makes it easy to add a search line for filtering the items in a iconview based on a simple text search.

No changes to the application other than instantiating this class with an appropriate QIconView should be needed.

Since:
  3.3

Definition at line 38 of file kiconviewsearchline.h.

## Constructor & Destructor Documentation

KIconViewSearchLine::KIconViewSearchLine | ( | QWidget * | parent = `0`,
|  | QIconView * | iconView = `0`,
|  | const char * | name = `0`
| ) |

| Constructs a KIconViewSearchLine with iconView being the QIconView to be filtered. If iconView is null then the widget will be disabled until a iconview is set with setIconView(). Definition at line 57 of file kiconviewsearchline.cpp. References iconView(), and init().

KIconViewSearchLine::KIconViewSearchLine | ( | QWidget * | parent,
|  | const char * | name
| ) |

| Constructs a KIconViewSearchLine without any QIconView to filter. The QIconView object has to be set later with setIconView(). Definition at line 66 of file kiconviewsearchline.cpp. References init().

KIconViewSearchLine::~KIconViewSearchLine | ( |  | ) | `[virtual]`

| Destroys the KIconViewSearchLine. Definition at line 73 of file kiconviewsearchline.cpp. References clear().

## Member Function Documentation

bool KIconViewSearchLine::caseSensitive | ( |  | ) | const

Returns true if the search is case sensitive.

This defaults to false.

See also:
  setCaseSensitive()

Definition at line 79 of file kiconviewsearchline.cpp.

Referenced by itemMatches().

QIconView * KIconViewSearchLine::iconView | ( |  | ) | const

Returns the iconview that is currently filtered by the search.

See also:
  setIconView()

Definition at line 84 of file kiconviewsearchline.cpp.

Referenced by init(), and KIconViewSearchLine().

void KIconViewSearchLine::updateSearch | ( | const QString & | s = `QString::null` | ) | `[virtual, slot]`

Updates search to only make visible the items that match s.

If s is null then the line edit's text will be used.

Definition at line 92 of file kiconviewsearchline.cpp.

References QValueList::begin(), QIconView::currentItem(), QValueList::end(), QIconView::ensureItemVisible(), QIconView::firstItem(), hideItem(), itemMatches(), QIconViewItem::nextItem(), showItem(), QIconView::sort(), and QLineEdit::text().

Referenced by activateSearch().

void KIconViewSearchLine::setCaseSensitive | ( | bool | cs | ) | `[slot]`

Make the search case sensitive or case insensitive.

See also:
  caseSenstive()

Definition at line 164 of file kiconviewsearchline.cpp.

void KIconViewSearchLine::setIconView | ( | QIconView * | iv | ) | `[slot]`

Sets the QIconView that is filtered by this search line.

If lv is null then the widget will be disabled.

See also:
  iconView()

Definition at line 169 of file kiconviewsearchline.cpp.

void KIconViewSearchLine::clear | ( |  | ) | `[virtual, slot]`

| Clear line edit and empty hiddenItems, returning elements to iconView. Reimplemented from KLineEdit. Definition at line 137 of file kiconviewsearchline.cpp. References KLineEdit::clear(), endl(), kdDebug(), and showItem(). Referenced by ~KIconViewSearchLine().

bool KIconViewSearchLine::itemMatches | ( | const QIconViewItem * | item,
|  | const QString & | s
| ) | const`[protected, virtual]`

| Returns true if item matches the search s. This will be evaluated based on the value of caseSensitive(). This can be overridden in subclasses to implement more complicated matching schemes. Definition at line 190 of file kiconviewsearchline.cpp. References caseSensitive(). Referenced by updateSearch().

void KIconViewSearchLine::init | ( | QIconView * | iconView = `0` | ) | `[protected]`

| Do initialization common to both constructors. Definition at line 202 of file kiconviewsearchline.cpp. References iconView(), queueSearch(), and QLineEdit::textChanged(). Referenced by KIconViewSearchLine().

void KIconViewSearchLine::hideItem | ( | QIconViewItem * | item | ) | `[protected]`

| Hide item. Definition at line 222 of file kiconviewsearchline.cpp. References QIconView::takeItem(). Referenced by updateSearch().

void KIconViewSearchLine::showItem | ( | QIconViewItem * | item | ) | `[protected]`

| Show item. Just unhide it, doesn't necessary show it on screen, for that use iconView->ensureItemVisible() Definition at line 231 of file kiconviewsearchline.cpp. References endl(), and kdDebug(). Referenced by clear(), and updateSearch().

void KIconViewSearchLine::queueSearch | ( | const QString & | s | ) | `[protected, slot]`

When keys are pressed a new search string is created and a timer is activated.

The most recent search is activated when this timer runs out if another key has not yet been pressed.

This method makes

Parameters:

  | s | the most recent search and starts the timer.

Together with activateSearch() this makes it such that searches are not started until there is a short break in the users typing.

See also:
  activateSearch()

Definition at line 247 of file kiconviewsearchline.cpp.

References activateSearch(), and QTimer::singleShot().

Referenced by init().

void KIconViewSearchLine::activateSearch | ( |  | ) | `[protected, slot]`

When the timer started with queueSearch() expires this slot is called.

If there has been another timer started then this slot does nothing. However if there are no other pending searches this starts the icon view search.

See also:
  queueSearch()

Definition at line 254 of file kiconviewsearchline.cpp.

References updateSearch().

Referenced by queueSearch().

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

- kiconviewsearchline.h
- kiconviewsearchline.cpp

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