mirror of
https://github.com/rizinorg/cutter.git
synced 2025-01-22 12:28:51 +00:00
58 lines
1.5 KiB
C++
58 lines
1.5 KiB
C++
#include "PreferenceCategory.h"
|
|
|
|
PreferenceCategory::PreferenceCategory(const QString &name, const QIcon &icon)
|
|
: name(name), icon(icon), widget(nullptr), children{}
|
|
{
|
|
}
|
|
|
|
PreferenceCategory::PreferenceCategory(const QString &name, QWidget *widget, const QIcon &icon)
|
|
: name(name), icon(icon), widget(widget), children{}
|
|
{
|
|
}
|
|
|
|
PreferenceCategory::PreferenceCategory(const QString &name, QWidget *widget, const QIcon &icon,
|
|
const QList<PreferenceCategory> &children)
|
|
: name(name), icon(icon), widget(widget), children(children)
|
|
{
|
|
}
|
|
|
|
PreferenceCategory::PreferenceCategory(const QString &name, const QIcon &icon,
|
|
const QList<PreferenceCategory> &children)
|
|
: name(name), icon(icon), widget(nullptr), children(children)
|
|
{
|
|
}
|
|
|
|
void PreferenceCategory::addItem(QTreeWidget &tree, QStackedWidget &panel)
|
|
{
|
|
QTreeWidgetItem *w = new QTreeWidgetItem({name});
|
|
|
|
tree.addTopLevelItem(w);
|
|
for (auto &c : children)
|
|
c.addItem(*w, panel);
|
|
|
|
w->setExpanded(true);
|
|
w->setIcon(0, icon);
|
|
|
|
if (widget) {
|
|
panel.addWidget(widget);
|
|
w->setData(0, Qt::UserRole, panel.count());
|
|
}
|
|
}
|
|
|
|
void PreferenceCategory::addItem(QTreeWidgetItem &tree, QStackedWidget &panel)
|
|
{
|
|
QTreeWidgetItem *w = new QTreeWidgetItem({name});
|
|
|
|
tree.addChild(w);
|
|
for (auto &c : children)
|
|
c.addItem(*w, panel);
|
|
|
|
w->setExpanded(true);
|
|
w->setIcon(0, icon);
|
|
|
|
if (widget) {
|
|
panel.addWidget(widget);
|
|
w->setData(0, Qt::UserRole, panel.count());
|
|
}
|
|
}
|