fixed load/save of visible columns

This commit is contained in:
csoler 2025-03-01 21:26:29 +01:00
parent 06d9ea2398
commit 7c5a45335a

View file

@ -1312,9 +1312,16 @@ void IdDialog::processSettings(bool load)
ui->mainSplitter->restoreState(Settings->value("splitter").toByteArray()); ui->mainSplitter->restoreState(Settings->value("splitter").toByteArray());
//Restore expanding //Restore expanding
ui->idTreeWidget->setExpanded(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_ALL),Settings->value("ExpandAll", QVariant(true)).toBool()); ui->idTreeWidget->setExpanded(mProxyModel->mapFromSource(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_ALL)),Settings->value("ExpandAll", QVariant(true)).toBool());
ui->idTreeWidget->setExpanded(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_OWN),Settings->value("ExpandOwn", QVariant(true)).toBool()); ui->idTreeWidget->setExpanded(mProxyModel->mapFromSource(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_OWN)),Settings->value("ExpandOwn", QVariant(true)).toBool());
ui->idTreeWidget->setExpanded(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_CTS),Settings->value("ExpandContacts", QVariant(true)).toBool()); ui->idTreeWidget->setExpanded(mProxyModel->mapFromSource(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_CTS)),Settings->value("ExpandContacts", QVariant(true)).toBool());
// visible columns
int v = Settings->value("columnVisibility",(1 << RsIdentityListModel::COLUMN_THREAD_NAME)+(1 << RsIdentityListModel::COLUMN_THREAD_REPUTATION)).toInt();
for(int i=0;i<mIdListModel->columnCount();++i)
ui->idTreeWidget->setColumnHidden(i,!(v & (1<<i)));
} }
else else
{ {
@ -1327,9 +1334,16 @@ void IdDialog::processSettings(bool load)
Settings->setValue("splitter", ui->mainSplitter->saveState()); Settings->setValue("splitter", ui->mainSplitter->saveState());
//save expanding //save expanding
Settings->setValue("ExpandAll", ui->idTreeWidget->isExpanded(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_ALL))); Settings->setValue("ExpandAll", ui->idTreeWidget->isExpanded(mProxyModel->mapFromSource(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_ALL))));
Settings->setValue("ExpandContacts", ui->idTreeWidget->isExpanded(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_OWN))); Settings->setValue("ExpandContacts", ui->idTreeWidget->isExpanded(mProxyModel->mapFromSource(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_CTS))));
Settings->setValue("ExpandOwn", ui->idTreeWidget->isExpanded(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_CTS))); Settings->setValue("ExpandOwn", ui->idTreeWidget->isExpanded(mProxyModel->mapFromSource(mIdListModel->getIndexOfCategory(RsIdentityListModel::CATEGORY_OWN))));
int v = 0;
for(int i=0;i<mIdListModel->columnCount();++i)
if(!ui->idTreeWidget->isColumnHidden(i))
v += (1 << i);
Settings->setValue("columnVisibility",v);
} }
Settings->endGroup(); Settings->endGroup();
@ -1930,9 +1944,10 @@ void IdDialog::navigate(const RsGxsId& gxs_id)
std::cerr << "IdDialog::navigate to " << gxs_id.toStdString() << std::endl; std::cerr << "IdDialog::navigate to " << gxs_id.toStdString() << std::endl;
#endif #endif
QModelIndex indx = mIdListModel->getIndexOfIdentity(gxs_id); QModelIndex indx = mProxyModel->mapFromSource(mIdListModel->getIndexOfIdentity(gxs_id));
// in order to do this, we just select the correct ID in the ID list // in order to do this, we just select the correct ID in the ID list
if (!gxs_id.isNull()) if (!gxs_id.isNull())
{ {
if(!indx.isValid()) if(!indx.isValid())