KMFilterListBox Class Reference
This is a complex widget that is used to manipulate KMail's filter list. A complex widget that allows managing a list of KMFilter's. More...
#include <kmfilterdlg.h>
Inheritance diagram for KMFilterListBox:

Public Slots | |
void | slotUpdateFilterName () |
void | slotApplyFilterChanges () |
void | slotShowLaterToggled (bool aOn) |
Signals | |
void | filterSelected (KMFilter *filter) |
void | resetWidgets () |
Public Methods | |
KMFilterListBox (const QString &title, QWidget *parent=0, const char *name=0, bool popFilter=false) | |
void | createFilter (const QCString &field, const QString &value) |
void | loadFilterList () |
bool | showLaterMsgs () |
Protected Slots | |
void | slotSelected (int aIdx) |
void | slotNew () |
void | slotDelete () |
void | slotUp () |
void | slotDown () |
void | slotRename () |
Protected Attributes | |
QPtrList< KMFilter > | mFilterList |
QListBox * | mListBox |
QPushButton * | mBtnNew |
QPushButton * | mBtnDelete |
QPushButton * | mBtnUp |
QPushButton * | mBtnDown |
QPushButton * | mBtnRename |
int | mIdxSelItem |
bool | mShowLater |
Detailed Description
This is a complex widget that is used to manipulate KMail's filter list. A complex widget that allows managing a list of KMFilter's.It consists of an internal list of filters, which is a deep copy of the list KMFilterMgr manages, a QListBox displaying that list, and a few buttons used to create new filters, delete them, rename them and change the order of filters.
It does not provide means to change the actual filter (besides the name), but relies on auxiliary widgets (KMSearchPatternEdit and KMFilterActionEdit) to do that.
Communication with this widget is quite easy: simply create an instance, connect the signals filterSelected and resetWidgets with a slot that does the right thing and there you go...
This widget will operate on it's own copy of the filter list as long as you don't call slotApplyFilterChanges. It will then transfer the altered filter list back to KMFilterMgr.
- Author:
- Marc Mutz <Marc@Mutz.com>, based upon work by Stefan Taferner <taferner@kde.org>.
- See also:
- KMFilter KMFilterDlg KMFilterActionEdit KMSearchPatternEdit
Definition at line 58 of file kmfilterdlg.h.
Constructor & Destructor Documentation
|
Constuctor.
Definition at line 370 of file kmfilterdlg.cpp. References QToolTip::add(), QWhatsThis::add(), mBtnDelete, mBtnDown, mBtnNew, mBtnRename, mBtnUp, mFilterList, mIdxSelItem, mListBox, QPtrList< KMFilter >::setAutoDelete(), QPushButton::setAutoRepeat(), QPushButton::setPixmap(), QHBox::setSpacing(), slotDelete(), slotDown(), slotNew(), slotRename(), slotSelected(), and slotUp(). |
Member Function Documentation
|
Called from KMFilterDlg. Creates a new filter and presets the first rule with "field equals value". It's there mainly to support "rapid filter creation" from a context menu. You should instead call KMFilterMgr::createFilter.
Definition at line 437 of file kmfilterdlg.cpp. References KMFilterActionDesc::create, and KMSearchRule::createInstance(). Referenced by KMFilterDlg::createFilter(). |
|
Loads the filter list and selects the first filter. Should be called when all signals are connected properly. Definition at line 681 of file kmfilterdlg.cpp. References QPtrList< KMFilter >::append(), QListBox::clear(), QPtrList< KMFilter >::clear(), QListBox::count(), QPtrListIterator::current(), QListBox::insertItem(), mFilterList, mIdxSelItem, mListBox, resetWidgets(), QListBox::setSelected(), and QPtrListIterator::toFirst(). Referenced by KMFilterDlg::KMFilterDlg(). |
|
Returns wheather the global option 'Show Later Msgs' is set or not.
Definition at line 454 of file kmfilterdlg.cpp. Referenced by KMFilterDlg::slotFilterSelected(). |
|
Emitted when a new filter has been selected by the user or if the current filter has changed after a 'new' or 'delete' operation.
Referenced by slotSelected(). |
|
Emitted when this widgets wants the edit widgets to let go of their filter reference. Everyone holding a reference to a filter should update it from the contents of the widgets used to edit it and set their internal reference to 0. Referenced by loadFilterList(), slotApplyFilterChanges(), slotDelete(), and slotSelected(). |
|
Called when the name of a filter might have changed (e.g. through changing the first rule in KMSearchPatternEdit). Updates the corresponding entry in the listbox and (if necessary) auto-names the filter. Definition at line 459 of file kmfilterdlg.cpp. References QString::arg(), QPtrList< KMFilter >::at(), QListBox::changeItem(), QPtrList< KMSearchRule >::first(), mFilterList, mIdxSelItem, mListBox, KMSearchPattern::name(), KMSearchPattern::setName(), QString::stripWhiteSpace(), and QListBox::text(). Referenced by slotRename(). |
|
Called when the user clicks either 'Apply' or 'OK' in KMFilterDlg. Updates the filter list in the KMFilterMgr. Definition at line 488 of file kmfilterdlg.cpp. References QPtrList< KMFilter >::append(), QPtrList< KMFilter >::clear(), QPtrListIterator::current(), QListBox::currentItem(), mFilterList, mIdxSelItem, mListBox, resetWidgets(), QListBox::selectAll(), QListBox::setSelected(), slotSelected(), and QPtrListIterator::toFirst(). |
|
Called when the user toggles the 'Show Download Later Msgs' Checkbox in the Global Options section.
Definition at line 483 of file kmfilterdlg.cpp. |
|
Called when the user clicks on a filter in the filter list. Calculates the corresponding filter and emits the filterSelected signal. Definition at line 549 of file kmfilterdlg.cpp. References QPtrList< KMFilter >::at(), filterSelected(), mFilterList, mIdxSelItem, and resetWidgets(). Referenced by KMFilterListBox(), and slotApplyFilterChanges(). |
|
Called when the user clicks the 'New' button. Creates a new empty filter just before the current one. Definition at line 561 of file kmfilterdlg.cpp. Referenced by KMFilterListBox(). |
|
Called when the user clicks the 'Delete' button. Deletes the current filter. Definition at line 568 of file kmfilterdlg.cpp. References QListBox::count(), mFilterList, mIdxSelItem, mListBox, QPtrList< KMFilter >::remove(), QListBox::removeItem(), resetWidgets(), QListBox::selectAll(), and QListBox::setSelected(). Referenced by KMFilterListBox(). |
|
Called when the user clicks the 'Up' button. Moves the current filter up one line. Definition at line 602 of file kmfilterdlg.cpp. References mIdxSelItem. Referenced by KMFilterListBox(). |
|
Called when the user clicks the 'Down' button. Moves the current filter down one line. Definition at line 617 of file kmfilterdlg.cpp. References QListBox::count(), mIdxSelItem, and mListBox. Referenced by KMFilterListBox(). |
|
Called when the user clicks the 'Rename' button. Pops up a dialog prompting to enter the new name. Definition at line 632 of file kmfilterdlg.cpp. References QPtrList< KMFilter >::at(), QString::isEmpty(), mFilterList, mIdxSelItem, and slotUpdateFilterName(). Referenced by KMFilterListBox(). |
Member Data Documentation
|
The deep copy of the filter list.
Definition at line 128 of file kmfilterdlg.h. Referenced by KMFilterListBox(), loadFilterList(), slotApplyFilterChanges(), slotDelete(), slotRename(), slotSelected(), and slotUpdateFilterName(). |
|
The listbox displaying the filter list.
Definition at line 130 of file kmfilterdlg.h. Referenced by KMFilterListBox(), loadFilterList(), slotApplyFilterChanges(), slotDelete(), slotDown(), and slotUpdateFilterName(). |
|
The various action buttons.
Definition at line 132 of file kmfilterdlg.h. Referenced by KMFilterListBox(). |
|
The various action buttons.
Definition at line 132 of file kmfilterdlg.h. Referenced by KMFilterListBox(). |
|
The various action buttons.
Definition at line 132 of file kmfilterdlg.h. Referenced by KMFilterListBox(). |
|
The various action buttons.
Definition at line 132 of file kmfilterdlg.h. Referenced by KMFilterListBox(). |
|
The various action buttons.
Definition at line 132 of file kmfilterdlg.h. Referenced by KMFilterListBox(). |
|
The index of the currently selected item.
Definition at line 134 of file kmfilterdlg.h. Referenced by KMFilterListBox(), loadFilterList(), slotApplyFilterChanges(), slotDelete(), slotDown(), slotRename(), slotSelected(), slotUp(), and slotUpdateFilterName(). |
The documentation for this class was generated from the following files: