void QCitationDialog::setButtons()
{
int const arows = availableLV->model()->rowCount();
+ QModelIndexList const availSels =
+ availableLV->selectionModel()->selectedIndexes();
addPB->setEnabled(arows > 0 &&
- availableLV->currentIndex().isValid() &&
- !isSelected(availableLV->currentIndex()));
+ !availSels.isEmpty() &&
+ !isSelected(availSels.first()));
int const srows = selectedLV->model()->rowCount();
- int const sel_nr = selectedLV->currentIndex().row();
+ QModelIndexList const selSels =
+ selectedLV->selectionModel()->selectedIndexes();
+ int const sel_nr = selSels.empty() ? -1 : selSels.first().row();
deletePB->setEnabled(sel_nr >= 0);
upPB->setEnabled(sel_nr > 0);
downPB->setEnabled(sel_nr >= 0 && sel_nr < srows - 1);
- applyPB->setEnabled(srows > 0);
- okPB->setEnabled(srows > 0);
}
void QCitationDialog::on_selectedLV_clicked(const QModelIndex &)
{
- availableLV->selectionModel()->reset();
update();
}
{
if (!idx.isValid())
return;
-
- availableLV->selectionModel()->reset();
update();
}
void QCitationDialog::on_availableLV_clicked(const QModelIndex &)
{
- selectedLV->selectionModel()->reset();
update();
}
{
if (!idx.isValid())
return;
-
- selectedLV->selectionModel()->reset();
update();
}
{
if (isSelected(idx))
return;
-
- selectedLV->selectionModel()->reset();
on_addPB_clicked();
}
-void QCitationDialog::on_availableLV_entered(const QModelIndex &)
-{
-}
-
-
namespace {
//helper function for next two
QModelIndex getSelectedIndex(QListView * lv) {
form_->addKey(idxToAdd);
if (idx.isValid())
selectedLV->setCurrentIndex(idx);
- selectedLV->selectionModel()->reset();
update();
}
if (nrows>1)
selectedLV->setCurrentIndex(idx);
- availableLV->selectionModel()->reset();
update();
}
void selectedChanged(const QModelIndex &, const QModelIndex &);
void on_availableLV_clicked(const QModelIndex &);
void on_availableLV_doubleClicked(const QModelIndex &);
- void on_availableLV_entered(const QModelIndex &);
void availableChanged(const QModelIndex &, const QModelIndex &);
virtual void changed();
/// check whether key is already selected