mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-08-05 21:04:14 -04:00
fixed display of icons
This commit is contained in:
parent
ac620d9077
commit
3153df1123
3 changed files with 74 additions and 10 deletions
|
@ -328,13 +328,13 @@ IdDialog::IdDialog(QWidget *parent)
|
||||||
ui->treeWidget_membership->setColumnWidth(CIRCLEGROUP_CIRCLE_COL_GROUPNAME, 270);
|
ui->treeWidget_membership->setColumnWidth(CIRCLEGROUP_CIRCLE_COL_GROUPNAME, 270);
|
||||||
|
|
||||||
/* Setup tree */
|
/* Setup tree */
|
||||||
ui->idTreeWidget->sortByColumn(RsIdentityListModel::COLUMN_THREAD_NAME, Qt::AscendingOrder);
|
//ui->idTreeWidget->sortByColumn(RsIdentityListModel::COLUMN_THREAD_NAME, Qt::AscendingOrder);
|
||||||
|
|
||||||
ui->idTreeWidget->setColumnHidden(RsIdentityListModel::COLUMN_THREAD_OWNER, true);
|
ui->idTreeWidget->setColumnHidden(RsIdentityListModel::COLUMN_THREAD_OWNER, true);
|
||||||
ui->idTreeWidget->setColumnHidden(RsIdentityListModel::COLUMN_THREAD_ID, true);
|
ui->idTreeWidget->setColumnHidden(RsIdentityListModel::COLUMN_THREAD_ID, true);
|
||||||
|
|
||||||
ui->idTreeWidget->setItemDelegate(new RSElidedItemDelegate());
|
ui->idTreeWidget->setItemDelegate(new RSElidedItemDelegate());
|
||||||
ui->idTreeWidget->setItemDelegateForColumn( RsIdentityListModel::COLUMN_THREAD_NAME, new GxsIdTreeItemDelegate());
|
//ui->idTreeWidget->setItemDelegateForColumn( RsIdentityListModel::COLUMN_THREAD_NAME, new GxsIdTreeItemDelegate());
|
||||||
ui->idTreeWidget->setItemDelegateForColumn( RsIdentityListModel::COLUMN_THREAD_REPUTATION, new ReputationItemDelegate(RsReputationLevel(0xff)));
|
ui->idTreeWidget->setItemDelegateForColumn( RsIdentityListModel::COLUMN_THREAD_REPUTATION, new ReputationItemDelegate(RsReputationLevel(0xff)));
|
||||||
|
|
||||||
/* Set header resize modes and initial section sizes */
|
/* Set header resize modes and initial section sizes */
|
||||||
|
@ -2124,6 +2124,9 @@ void IdDialog::IdListCustomPopupMenu( QPoint )
|
||||||
|
|
||||||
auto lst = getSelectedIdentities();
|
auto lst = getSelectedIdentities();
|
||||||
|
|
||||||
|
if(lst.empty())
|
||||||
|
return ;
|
||||||
|
|
||||||
//bool root_node_present = false ;
|
//bool root_node_present = false ;
|
||||||
bool one_item_owned_by_you = false ;
|
bool one_item_owned_by_you = false ;
|
||||||
uint32_t n_positive_reputations = 0 ;
|
uint32_t n_positive_reputations = 0 ;
|
||||||
|
|
|
@ -192,6 +192,7 @@ RsIdentityListModel::EntryIndex RsIdentityListModel::EntryIndex::parent() const
|
||||||
i.identity_index = 0;
|
i.identity_index = 0;
|
||||||
break;
|
break;
|
||||||
case ENTRY_TYPE_TOP_LEVEL:
|
case ENTRY_TYPE_TOP_LEVEL:
|
||||||
|
default:
|
||||||
//Can be when request root index.
|
//Can be when request root index.
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -218,6 +219,7 @@ RsIdentityListModel::EntryIndex RsIdentityListModel::EntryIndex::child(int row)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ENTRY_TYPE_IDENTITY: i = EntryIndex();
|
case ENTRY_TYPE_IDENTITY: i = EntryIndex();
|
||||||
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -338,7 +340,8 @@ QVariant RsIdentityListModel::data(const QModelIndex &index, int role) const
|
||||||
case Qt::SizeHintRole: return sizeHintRole(entry,index.column()) ;
|
case Qt::SizeHintRole: return sizeHintRole(entry,index.column()) ;
|
||||||
case Qt::DisplayRole: return displayRole(entry,index.column()) ;
|
case Qt::DisplayRole: return displayRole(entry,index.column()) ;
|
||||||
case Qt::FontRole: return fontRole(entry,index.column()) ;
|
case Qt::FontRole: return fontRole(entry,index.column()) ;
|
||||||
case Qt::DecorationRole: return decorationRole(entry,index.column()) ;
|
case Qt::ForegroundRole: return foregroundRole(entry,index.column()) ;
|
||||||
|
case Qt::DecorationRole: return decorationRole(entry,index.column()) ;
|
||||||
|
|
||||||
case FilterRole: return filterRole(entry,index.column()) ;
|
case FilterRole: return filterRole(entry,index.column()) ;
|
||||||
case SortRole: return sortRole(entry,index.column()) ;
|
case SortRole: return sortRole(entry,index.column()) ;
|
||||||
|
@ -407,9 +410,37 @@ void RsIdentityListModel::setFilter(FilterType filter_type, const QStringList& s
|
||||||
postMods();
|
postMods();
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant RsIdentityListModel::toolTipRole(const EntryIndex& /*fmpe*/,int /*column*/) const
|
QVariant RsIdentityListModel::toolTipRole(const EntryIndex& fmpe,int /*column*/) const
|
||||||
{
|
{
|
||||||
return QVariant();
|
switch(fmpe.type)
|
||||||
|
{
|
||||||
|
case ENTRY_TYPE_IDENTITY:
|
||||||
|
{
|
||||||
|
RsGxsId id(mIdentities[mCategories[fmpe.category_index].child_identity_indices[fmpe.identity_index]].id);
|
||||||
|
|
||||||
|
if(rsIdentity->isOwnId(id))
|
||||||
|
return QVariant(tr("This identity is owned by you"));
|
||||||
|
|
||||||
|
RsIdentityDetails det;
|
||||||
|
if(!rsIdentity->getIdDetails(id,det))
|
||||||
|
return QVariant();
|
||||||
|
|
||||||
|
if(det.mPgpId.isNull())
|
||||||
|
return QVariant("Anonymous identity");
|
||||||
|
else
|
||||||
|
{
|
||||||
|
RsPeerDetails dd;
|
||||||
|
rsPeers->getGPGDetails(det.mPgpId,dd);
|
||||||
|
|
||||||
|
return QVariant("Identity owned by profile \""+ QString::fromUtf8(dd.name.c_str()) +"\" ("+QString::fromStdString(det.mPgpId.toStdString()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case ENTRY_TYPE_CATEGORY: ; // fallthrough
|
||||||
|
default:
|
||||||
|
return QVariant();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant RsIdentityListModel::sizeHintRole(const EntryIndex& e,int col) const
|
QVariant RsIdentityListModel::sizeHintRole(const EntryIndex& e,int col) const
|
||||||
|
@ -418,7 +449,7 @@ QVariant RsIdentityListModel::sizeHintRole(const EntryIndex& e,int col) const
|
||||||
float y_factor = QFontMetricsF(QApplication::font()).height()/14.0f ;
|
float y_factor = QFontMetricsF(QApplication::font()).height()/14.0f ;
|
||||||
|
|
||||||
if(e.type == ENTRY_TYPE_IDENTITY)
|
if(e.type == ENTRY_TYPE_IDENTITY)
|
||||||
y_factor *= 3.0;
|
y_factor *= 1.0;
|
||||||
|
|
||||||
if(e.type == ENTRY_TYPE_CATEGORY)
|
if(e.type == ENTRY_TYPE_CATEGORY)
|
||||||
y_factor *= 1.5;
|
y_factor *= 1.5;
|
||||||
|
@ -485,8 +516,39 @@ QModelIndex RsIdentityListModel::getIndexOfIdentity(const RsGxsId& id) const
|
||||||
}
|
}
|
||||||
return QModelIndex();
|
return QModelIndex();
|
||||||
}
|
}
|
||||||
QVariant RsIdentityListModel::fontRole(const EntryIndex& e, int col) const
|
QVariant RsIdentityListModel::foregroundRole(const EntryIndex& e, int /*col*/) const
|
||||||
{
|
{
|
||||||
|
auto it = getIdentityInfo(e);
|
||||||
|
if(!it)
|
||||||
|
return QVariant();
|
||||||
|
RsGxsId id(it->id);
|
||||||
|
RsIdentityDetails det;
|
||||||
|
|
||||||
|
if(!rsIdentity->getIdDetails(id,det))
|
||||||
|
return QVariant();
|
||||||
|
|
||||||
|
if(det.mFlags & RS_IDENTITY_FLAGS_IS_DEPRECATED)
|
||||||
|
return QVariant(QColor(Qt::red));
|
||||||
|
|
||||||
|
return QVariant();
|
||||||
|
}
|
||||||
|
QVariant RsIdentityListModel::fontRole(const EntryIndex& e, int /*col*/) const
|
||||||
|
{
|
||||||
|
auto it = getIdentityInfo(e);
|
||||||
|
if(!it)
|
||||||
|
return QVariant();
|
||||||
|
RsGxsId id(it->id);
|
||||||
|
|
||||||
|
if(rsIdentity->isOwnId(id))
|
||||||
|
{
|
||||||
|
QFont f;
|
||||||
|
f.setBold(true);
|
||||||
|
return QVariant(f);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return QVariant();
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef DEBUG_MODEL_INDEX
|
#ifdef DEBUG_MODEL_INDEX
|
||||||
std::cerr << " font role " << e.type << ", (" << (int)e.group_index << ","<< (int)e.profile_index << ","<< (int)e.node_index << ") col="<< col<<": " << std::endl;
|
std::cerr << " font role " << e.type << ", (" << (int)e.group_index << ","<< (int)e.profile_index << ","<< (int)e.node_index << ") col="<< col<<": " << std::endl;
|
||||||
#endif
|
#endif
|
||||||
|
@ -511,8 +573,6 @@ QVariant RsIdentityListModel::fontRole(const EntryIndex& e, int col) const
|
||||||
return QVariant();
|
return QVariant();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
return QVariant();
|
|
||||||
}
|
|
||||||
|
|
||||||
QVariant RsIdentityListModel::displayRole(const EntryIndex& e, int col) const
|
QVariant RsIdentityListModel::displayRole(const EntryIndex& e, int col) const
|
||||||
{
|
{
|
||||||
|
|
|
@ -152,7 +152,8 @@ private:
|
||||||
QVariant statusRole (const EntryIndex& e, int col) const;
|
QVariant statusRole (const EntryIndex& e, int col) const;
|
||||||
QVariant sortRole (const EntryIndex& e, int col) const;
|
QVariant sortRole (const EntryIndex& e, int col) const;
|
||||||
QVariant fontRole (const EntryIndex& e, int col) const;
|
QVariant fontRole (const EntryIndex& e, int col) const;
|
||||||
QVariant textColorRole (const EntryIndex& e, int col) const;
|
QVariant foregroundRole(const EntryIndex& e, int col) const;
|
||||||
|
QVariant textColorRole (const EntryIndex& e, int col) const;
|
||||||
QVariant filterRole (const EntryIndex& e, int col) const;
|
QVariant filterRole (const EntryIndex& e, int col) const;
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue