JKQtExtras
a library of useful Qt widgets and tools
JKQTECheckableStringListModel Class Reference

a QStringListModel, which allows to check/uncheck each entry More...

#include <jkqtecheckablestringlistmodel.h>

Inheritance diagram for JKQTECheckableStringListModel:
Collaboration diagram for JKQTECheckableStringListModel:

Public Member Functions

 JKQTECheckableStringListModel (bool editable, bool checkable, QObject *parent=0)
 
 JKQTECheckableStringListModel (QObject *parent=0)
 
void checkAll ()
 check all items More...
 
QVariant data (const QModelIndex &index, int role) const
 
Qt::ItemFlags flags (const QModelIndex &index) const
 
bool isCheckable () const
 is the model contents (texts!) editable? More...
 
bool isChecked (int i) const
 is the i -th entry checked? More...
 
bool isTextEditable () const
 is the model contents (texts!) editable? More...
 
void setCheckable (bool checkable)
 model contents (texts!) is editable More...
 
void setChecked (int i)
 check the i -th entry More...
 
void setChecked (int i, bool c)
 check/uncheck the i -th entry More...
 
bool setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole)
 
void setTextEditable (bool editable)
 model contents (texts!) is editable More...
 
void setUnChecked (int i)
 uncheck the i -th entry More...
 
void unCheckAll ()
 uncheck all items More...
 

Protected Attributes

QSet< int > m_check
 
bool m_checkable
 
bool m_editable
 

Detailed Description

a QStringListModel, which allows to check/uncheck each entry

Usage in QListView:

Basic usage is simple:

// add lines
QStringList lst;
lst<<tr("item 1");
lst<<tr("item 2");
lst<<tr("item 3");
lst<<tr("item 4");
lst<<tr("item 5");
lst<<tr("item 6");
lst<<tr("item 7");
lst<<tr("item 8");
lst<<tr("item 9");
lst<<tr("item 10");
model->setStringList(lst);
// set checkable
model->setCheckable(true);
// set check state
model->setChecked(0);
model->setChecked(1);
model->setChecked(2);
model->setChecked(5);
model->setChecked(8);
model->setChecked(9);
// assign model to view
QListView* wid=new QListView(this);
wid->setModel(model);

Constructor & Destructor Documentation

◆ JKQTECheckableStringListModel() [1/2]

JKQTECheckableStringListModel::JKQTECheckableStringListModel ( QObject *  parent = 0)
explicit

◆ JKQTECheckableStringListModel() [2/2]

JKQTECheckableStringListModel::JKQTECheckableStringListModel ( bool  editable,
bool  checkable,
QObject *  parent = 0 
)
explicit

Member Function Documentation

◆ checkAll()

void JKQTECheckableStringListModel::checkAll ( )

check all items

◆ data()

QVariant JKQTECheckableStringListModel::data ( const QModelIndex &  index,
int  role 
) const

◆ flags()

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

◆ isCheckable()

bool JKQTECheckableStringListModel::isCheckable ( ) const

is the model contents (texts!) editable?

◆ isChecked()

bool JKQTECheckableStringListModel::isChecked ( int  i) const

is the i -th entry checked?

◆ isTextEditable()

bool JKQTECheckableStringListModel::isTextEditable ( ) const

is the model contents (texts!) editable?

◆ setCheckable()

void JKQTECheckableStringListModel::setCheckable ( bool  checkable)

model contents (texts!) is editable

◆ setChecked() [1/2]

void JKQTECheckableStringListModel::setChecked ( int  i)

check the i -th entry

◆ setChecked() [2/2]

void JKQTECheckableStringListModel::setChecked ( int  i,
bool  c 
)

check/uncheck the i -th entry

◆ setData()

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

◆ setTextEditable()

void JKQTECheckableStringListModel::setTextEditable ( bool  editable)

model contents (texts!) is editable

◆ setUnChecked()

void JKQTECheckableStringListModel::setUnChecked ( int  i)

uncheck the i -th entry

◆ unCheckAll()

void JKQTECheckableStringListModel::unCheckAll ( )

uncheck all items

Member Data Documentation

◆ m_check

QSet<int> JKQTECheckableStringListModel::m_check
protected

◆ m_checkable

bool JKQTECheckableStringListModel::m_checkable
protected

◆ m_editable

bool JKQTECheckableStringListModel::m_editable
protected

The documentation for this class was generated from the following file:
JKQTECheckableStringListModel::setChecked
void setChecked(int i)
check the i -th entry
JKQTECheckableStringListModel::JKQTECheckableStringListModel
JKQTECheckableStringListModel(QObject *parent=0)
JKQTECheckableStringListModel::setCheckable
void setCheckable(bool checkable)
model contents (texts!) is editable
JKQTECheckableStringListModel
a QStringListModel, which allows to check/uncheck each entry
Definition: jkqtecheckablestringlistmodel.h:36