@Ans1 i do not know if this helps, but here's my init code:
void QtDlgTabs::Panel_Setup()
{
CDialog* dlgP(GetDialog<CDialog>());
QListWidget *listP(dlgP->QtGetItem<QListWidget>(Dlg_Tabs_ICON_BAR));
Rect iconR = { 0, 0, 64, 64 };
CPixels pix(iconR);
ScCGContext context(pix);
Qt::ItemFlags flags(Qt::ItemIsSelectable | Qt::ItemIsEnabled);
float scaleF(devicePixelRatio());
// doesn't work
pix.setDevicePixelRatio(scaleF);
static int s_awidthI = 61;
static int s_heightI = 50;
int s_widthI = 150;
bool is_prefsB(dlgP->GetPanelSet() == PrefPanelSet_PREFS);
if (is_prefsB) {
s_widthI = 70;
}
int widthI = s_widthI;
if (is_prefsB) {
if (dlgP->GetAllControlsVisible()) {
widthI = s_awidthI;
}
}
listP->setGridSize(QSize(widthI, s_heightI));
PrefPanelSet panelSet(dlgP->GetPanelSet());
SInt16Vec& panelVec(GetPanelVec(panelSet));
for (SInt16 indexS: panelVec) {
PanelRec& curPanel(*GetIndPanelRec(panelSet, indexS));
QListWidgetItem *listItemP(new QListWidgetItem());
SuperString nameStr(GetLocalizedPrefPaneName(panelSet, curPanel.prefPanelS));
SDB_SourceType iconType(static_cast<SDB_SourceType>(curPanel.sourceType));
QFont itemFont(listItemP->font());
pix.clear();
gApp->Draw_icns(&context, iconType, iconR, kTransformNone);
itemFont.setPointSize(itemFont.pointSize() - 1);
listItemP->setFont(itemFont);
listItemP->setText(nameStr);
listItemP->setIcon(pix);
listItemP->setFlags(flags);
listP->addItem(listItemP);
}
}