summaryrefslogtreecommitdiffstats
path: root/src/gui/selectuserform.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/selectuserform.cpp')
-rw-r--r--src/gui/selectuserform.cpp53
1 files changed, 27 insertions, 26 deletions
diff --git a/src/gui/selectuserform.cpp b/src/gui/selectuserform.cpp
index 0a0af5a..9f1618f 100644
--- a/src/gui/selectuserform.cpp
+++ b/src/gui/selectuserform.cpp
@@ -21,7 +21,7 @@
#include <QImage>
#include <QPixmap>
-#include <Q3ListView>
+#include <QListWidget>
#include "selectuserform.h"
/*
* Constructs a SelectUserForm as a child of 'parent', with the
@@ -58,8 +58,6 @@ void SelectUserForm::languageChange()
void SelectUserForm::init()
{
- // Disable sorting
- userListView->setSorting(-1);
}
void SelectUserForm::show(t_select_purpose purpose)
@@ -99,15 +97,19 @@ void SelectUserForm::show(t_select_purpose purpose)
// Fill list view
list<t_user *> user_list = phone->ref_users();
for (list<t_user *>::reverse_iterator i = user_list.rbegin(); i != user_list.rend(); i++) {
- Q3CheckListItem *item = new Q3CheckListItem(userListView,
- (*i)->get_profile_name().c_str(), Q3CheckListItem::CheckBox);
+ QListWidgetItem* item = new QListWidgetItem(QString::fromStdString((*i)->get_profile_name()), userListView);
+
+ item->setFlags(item->flags() | Qt::ItemIsUserCheckable);
+ item->setCheckState(Qt::Unchecked);
switch (purpose) {
case SELECT_DND:
- item->setOn(phone->ref_service(*i)->is_dnd_active());
+ if (phone->ref_service(*i)->is_dnd_active())
+ item->setCheckState(Qt::Checked);
break;
case SELECT_AUTO_ANSWER:
- item->setOn(phone->ref_service(*i)->is_auto_answer_active());
+ if (phone->ref_service(*i)->is_auto_answer_active())
+ item->setCheckState(Qt::Checked);
break;
default:
break;
@@ -121,10 +123,10 @@ void SelectUserForm::validate()
{
list<t_user *> selected_list, not_selected_list;
- Q3ListViewItemIterator i(userListView);
- while (i.current()) {
- Q3CheckListItem *item = (Q3CheckListItem *)(i.current());
- if (item->isOn()) {
+ for (int i = 0; i < userListView->count(); i++)
+ {
+ QListWidgetItem *item = userListView->item(i);
+ if (item->checkState() == Qt::Checked) {
selected_list.push_back(phone->
ref_user_profile(item->text().ascii()));
} else {
@@ -141,26 +143,25 @@ void SelectUserForm::validate()
void SelectUserForm::selectAll()
{
- Q3ListViewItemIterator i(userListView);
- while (i.current()) {
- Q3CheckListItem *item = (Q3CheckListItem *)(i.current());
- item->setOn(true);
- i++;
- }
+ for (int i = 0; i < userListView->count(); i++)
+ {
+ QListWidgetItem *item = userListView->item(i);
+ item->setCheckState(Qt::Checked);
+ }
}
void SelectUserForm::clearAll()
{
- Q3ListViewItemIterator i(userListView);
- while (i.current()) {
- Q3CheckListItem *item = (Q3CheckListItem *)(i.current());
- item->setOn(false);
- i++;
- }
+ for (int i = 0; i < userListView->count(); i++)
+ {
+ QListWidgetItem *item = userListView->item(i);
+ item->setCheckState(Qt::Unchecked);
+ }
}
-void SelectUserForm::toggle(Q3ListViewItem *item)
+void SelectUserForm::toggle(QModelIndex index)
{
- Q3CheckListItem *checkItem = (Q3CheckListItem *)item;
- checkItem->setOn(!checkItem->isOn());
+ QListWidgetItem *item = userListView->item(index.row());
+ Qt::CheckState state = item->checkState();
+ item->setCheckState((state == Qt::Checked) ? Qt::Unchecked : Qt::Checked);
}