• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdelibs-4.8.3 API Reference
  • KDE Home
  • Contact Us
 

KDEUI

Public Member Functions | Protected Member Functions
KCheckableProxyModel Class Reference

#include <kcheckableproxymodel.h>

Inheritance diagram for KCheckableProxyModel:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 KCheckableProxyModel (QObject *parent=0)
 ~KCheckableProxyModel ()
QVariant data (const QModelIndex &index, int role=Qt::DisplayRole) const
Qt::ItemFlags flags (const QModelIndex &index) const
QItemSelectionModel * selectionModel () const
bool setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole)
void setSelectionModel (QItemSelectionModel *itemSelectionModel)
void setSourceModel (QAbstractItemModel *sourceModel)

Protected Member Functions

virtual bool select (const QItemSelection &selection, QItemSelectionModel::SelectionFlags command)

Detailed Description

Adds a checkable capability to a source model.

Items is standard Qt views such as QTreeView and QListView can have a checkable capability and draw checkboxes. Adding such a capability requires specific implementations of the data() and flags() virtual methods. This class implements those methods generically so that it is not necessary to implement them in your model.

This can be combined with a KSelectionProxyModel showing the items currently selected

   QItemSelectionModel *checkModel = new QItemSelectionModel(rootModel, this);
   KCheckableProxyModel *checkable = new KCheckableProxyModel(this);
   checkable->setSourceModel(rootModel);
   checkable->setSelectionModel(checkModel);

   QTreeView *tree1 = new QTreeView(vSplitter);
   tree1->setModel(checkable);
   tree1->expandAll();

   KSelectionProxyModel *selectionProxy = new KSelectionProxyModel(checkModel, this);
   selectionProxy->setFilterBehavior(KSelectionProxyModel::ExactSelection);
   selectionProxy->setSourceModel(rootModel);

   QTreeView *tree2 = new QTreeView(vSplitter);
   tree2->setModel(selectionProxy);
kcheckableproxymodel.png
A KCheckableProxyModel and KSelectionProxyModel showing checked items
Since:
4.6
Author:
Stephen Kelly steve.nosp@m.ire@.nosp@m.gmail.nosp@m..com

Definition at line 68 of file kcheckableproxymodel.h.


Constructor & Destructor Documentation

KCheckableProxyModel::KCheckableProxyModel ( QObject *  parent = 0)

Definition at line 45 of file kcheckableproxymodel.cpp.

KCheckableProxyModel::~KCheckableProxyModel ( )

Definition at line 51 of file kcheckableproxymodel.cpp.


Member Function Documentation

QVariant KCheckableProxyModel::data ( const QModelIndex &  index,
int  role = Qt::DisplayRole 
) const

Definition at line 77 of file kcheckableproxymodel.cpp.

Qt::ItemFlags KCheckableProxyModel::flags ( const QModelIndex &  index) const

Definition at line 70 of file kcheckableproxymodel.cpp.

bool KCheckableProxyModel::select ( const QItemSelection &  selection,
QItemSelectionModel::SelectionFlags  command 
) [protected, virtual]

Definition at line 127 of file kcheckableproxymodel.cpp.

QItemSelectionModel * KCheckableProxyModel::selectionModel ( ) const

Definition at line 64 of file kcheckableproxymodel.cpp.

bool KCheckableProxyModel::setData ( const QModelIndex &  index,
const QVariant &  value,
int  role = Qt::EditRole 
)

Definition at line 93 of file kcheckableproxymodel.cpp.

void KCheckableProxyModel::setSelectionModel ( QItemSelectionModel *  itemSelectionModel)

Definition at line 56 of file kcheckableproxymodel.cpp.

void KCheckableProxyModel::setSourceModel ( QAbstractItemModel *  sourceModel)
Reimplemented from superclass.

Reimplemented from KIdentityProxyModel.

Definition at line 112 of file kcheckableproxymodel.cpp.


The documentation for this class was generated from the following files:
  • kcheckableproxymodel.h
  • kcheckableproxymodel.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Thu May 10 2012 20:53:11 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KDEUI

Skip menu "KDEUI"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules
  • Related Pages

kdelibs-4.8.3 API Reference

Skip menu "kdelibs-4.8.3 API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal