KDE PIM / Developers / API Docs / kpilot

ListCategorizer Class Reference

This Widget extends KListView for a particular purpose: sorting some items into some bins. More...

#include <listCat.h>

Inherits KListView.

List of all members.

Public Member Functions

Protected Member Functions


Detailed Description

This Widget extends KListView for a particular purpose: sorting some items into some bins.

This can be useful for putting items in an enabled / disabled state, or into categories, or configuring toolbars (putting icons onto toolbars).

You can use all of the standard KListView signals and slots. You may in particular want to change the names of the columns, for example:

 ListCategorizer *lc = new ListCategorizer(this,colors);
 lc->setColumnText(0,i18n("Color"));
 lc->setColumnText(1,i18n("HTML"));
 QListViewItem *stdKDE = lc->addCategory(i18n("Standard KDE"));
 (void) new QListViewItem(stdKDE,i18n("red"),"#FF0000");
 
to set sensible column headers for a list of colors and their HTML equivalents (although why you would want to categorize colors is beyond me).

Version:
Id
listCat.h 386915 2005-02-06 22:48:34Z winterz


Constructor & Destructor Documentation

ListCategorizer::ListCategorizer QWidget *  parent,
const char *  name = 0
 

Constructor.

This creates a new empty ListCategorizer with

See also:
startOpen set to false. The parameters parent and name are the usual Qt ones.

ListCategorizer::ListCategorizer const QStringList &  categories,
bool  startOpen,
QWidget *  parent,
const char *  name = 0
 

Constructor.

This creates a ListCategorizer with the given categories already inserted. In addition, this constructor lets you specify whether or not

See also:
startOpen is set.

Member Function Documentation

void ListCategorizer::addCategories const QStringList &   ) 
 

Add a list of categories to the ListCategorizer.

All the categories are added without descriptions; use

See also:
addCategory on a per-category basis for that.

QListViewItem * ListCategorizer::addCategory const QString &  name,
const QString &  description = QString::null
 

Add a category with name name and optional description.

This can be useful if you want either a description for the category or want to refer to this category in the future without using

See also:
findCategory().
Returns:
the QListViewItem created for the category

QStringList ListCategorizer::categories  )  const [inline]
 

Returns the list of names of the categories in the ListCategorizer.

QListViewItem * ListCategorizer::addItem const QString &  category,
const QString &  name,
const QString &  description = QString::null
 

Add a single item to the category named category, with name name and description set to description.

This might be a convenience function, but it's probably more convenient to just use

See also:
QListViewItem's constructor. That way you can also hide more data in the remaining columns.

QStringList ListCategorizer::items const QString &  category,
int  column = 0
const [inline]
 

Returns the list of strings in column column under category category.

You can do this to get, for example the names of all the items categorized under a given category, or, more usefully, set column to something other that 0 (name) or 1 (description) to return the

See also:
QStringList hidden in the non-visible columns.

QListViewItem * ListCategorizer::findCategory const QString &  categoryName  )  const
 

Given a category.

See also:
categoryName return the

QListViewItem that represents that category. Probably a useless function, since just remembering the pointer

addCategory gives you is faster and uses hardly any memory.

QStringList ListCategorizer::listSiblings const QListViewItem *  p,
int  column = 0
const
 

Return the list of strings in column of all siblings of the given item p.

If you remembered a pointer to a category, you can use

 QStringList l = lc->listSiblings(stdKDE->firstChild(),2);
 to get the list of strings in hidden column 2 under
 the category you remembered.

bool ListCategorizer::startOpen  )  const [inline]
 

Returns:
whether new categories are inserted in an open state or not.
See also:
setStartOpen

void ListCategorizer::setStartOpen bool  b  )  [inline]
 

Enable categories being inserted in an open state.

It is disabled by default but may be set from the constructor.

bool ListCategorizer::acceptDrag QDropEvent *  event  )  const [protected, virtual]
 

Reimplemented to prevent categories from being dragged.

void ListCategorizer::startDrag  )  [protected, virtual]
 

Reimplemented to prevent categories from being dragged.

void ListCategorizer::contentsDropEvent QDropEvent *   )  [protected, virtual]
 

Reimplemented to prevent categories from being dragged.


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