2 #include "ui_musicpluginwidget.h"
33 property.m_type = path;
44 property.m_type = path;
55 property.m_type = path;
66 property.m_type = path;
77 property.m_type = path;
99 default:
return false;
151 setIcon(3, QIcon(
":/contextMenu/btn_setting"));
154 const QColor &color = enabled ? (state ? QColor(0xE6, 0x73, 0x00) : QColor(0x00, 0x00, 0x00)) : QColor(0xBB, 0xBB, 0xBB);
155 setData(1, Qt::ForegroundRole, color);
156 setData(2, Qt::ForegroundRole, color);
171 setFixedSize(
size());
174 m_ui->topTitleCloseButton->setIcon(QIcon(
":/functions/btn_close_hover"));
176 m_ui->topTitleCloseButton->setCursor(QCursor(Qt::PointingHandCursor));
177 m_ui->topTitleCloseButton->setToolTip(tr(
"Close"));
178 connect(
m_ui->topTitleCloseButton, SIGNAL(clicked()), SLOT(close()));
180 #if TTK_QT_VERSION_CHECK(5,0,0)
181 m_ui->treeWidget->header()->setSectionsMovable(
false);
182 m_ui->treeWidget->header()->setSectionResizeMode(0, QHeaderView::Fixed);
184 m_ui->treeWidget->header()->setMovable(
false);
185 m_ui->treeWidget->header()->setResizeMode(0, QHeaderView::Fixed);
187 m_ui->treeWidget->setHeaderLabels({{}, tr(
"Description"), tr(
"Name"), {}});
192 m_ui->treeWidget->setItemDelegateForColumn(0, delegateCheck);
196 delegateTitle->
setAlignment(Qt::AlignLeft | Qt::AlignVCenter);
198 m_ui->treeWidget->setItemDelegateForColumn(1, delegateTitle);
202 delegateName->
setAlignment(Qt::AlignLeft | Qt::AlignVCenter);
204 m_ui->treeWidget->setItemDelegateForColumn(2, delegateName);
206 QItemDelegate *delegateSetting =
new QItemDelegate(
this);
207 m_ui->treeWidget->setItemDelegateForColumn(3, delegateSetting);
209 m_ui->treeWidget->setColumnWidth(0, 65);
210 m_ui->treeWidget->setColumnWidth(1, 210);
211 m_ui->treeWidget->setColumnWidth(2, 120);
212 m_ui->treeWidget->setColumnWidth(3, 70);
218 m_ui->treeWidget->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
220 m_ui->treeWidget->setFocusPolicy(Qt::NoFocus);
225 connect(
m_ui->treeWidget, SIGNAL(itemClicked(QTreeWidgetItem*,
int)), SLOT(
pluginItemChanged(QTreeWidgetItem*,
int)));
234 QTreeWidgetItem *parent = item->parent();
240 for(
int i = 0; i < parent->childCount(); ++i)
242 QTreeWidgetItem *it = parent->child(i);
244 it->setData(1, Qt::ForegroundRole, QColor(0x00, 0x00, 0x00));
245 it->setData(2, Qt::ForegroundRole, QColor(0x00, 0x00, 0x00));
250 item->setData(column,
TTK_CHECKED_ROLE, status == Qt::Checked ? Qt::Unchecked : Qt::Checked);
253 const QColor &color = (status != Qt::Checked) ? QColor(0xE6, 0x73, 0x00) : QColor(0x00, 0x00, 0x00);
254 item->setData(1, Qt::ForegroundRole, color);
255 item->setData(2, Qt::ForegroundRole, color);
273 m_ui->treeWidget->blockSignals(
true);
275 QTreeWidgetItem *item =
nullptr;
276 item =
new QTreeWidgetItem(
m_ui->treeWidget, {tr(
"Decoder")});
277 item->setFirstColumnSpanned(
true);
278 item->setExpanded(
true);
283 m_ui->treeWidget->addTopLevelItem(item);
285 item =
new QTreeWidgetItem(
m_ui->treeWidget, {tr(
"Effect")});
286 item->setFirstColumnSpanned(
true);
287 item->setExpanded(
true);
292 m_ui->treeWidget->addTopLevelItem(item);
294 item =
new QTreeWidgetItem(
m_ui->treeWidget, {tr(
"Visualization")});
295 item->setFirstColumnSpanned(
true);
296 item->setExpanded(
true);
301 m_ui->treeWidget->addTopLevelItem(item);
303 item =
new QTreeWidgetItem(
m_ui->treeWidget, {tr(
"Transport")});
304 item->setFirstColumnSpanned(
true);
305 item->setExpanded(
true);
310 m_ui->treeWidget->addTopLevelItem(item);
312 item =
new QTreeWidgetItem(
m_ui->treeWidget, {tr(
"Output")});
313 item->setFirstColumnSpanned(
true);
314 item->setExpanded(
true);
319 m_ui->treeWidget->addTopLevelItem(item);
321 m_ui->treeWidget->blockSignals(
false);
MusicPluginItem(QTreeWidgetItem *parent, OutputFactory *factory, const QString &path)
#define TTKStaticCast(x, y)
static QList< VisualFactory * > factories()
virtual OutputProperties properties() const =0
The class of the label item delegate.
static const QString CheckBoxStyle01
CheckBox.
static const QString SliderStyle06
void setStyleSheet(const QString &style) const
static bool isEnabled(const DecoderFactory *factory)
static const QString PushButtonStyle12
The class of the plugin item widget.
MusicPluginItem(QTreeWidgetItem *parent, EffectFactory *factory, const QString &path)
static void setCurrentFactory(const OutputFactory *factory)
static OutputFactory * currentFactory()
Effect plugin interface (effect factory).
static QList< OutputFactory * > factories()
void setEnabled(bool enabled)
static QString file(const DecoderFactory *factory)
MusicPluginItem(QTreeWidgetItem *parent, VisualFactory *factory, const QString &path)
static bool isEnabled(const VisualFactory *factory)
void setAlignment(Qt::Alignment alignment) const
static const QString ScrollBarStyle03
static const QString GroupBoxStyle01
GroupBox.
static const QString ScrollBarStyle01
ScrollBar.
MusicPluginItem(QTreeWidgetItem *parent, InputSourceFactory *factory, const QString &path)
static const QString PushButtonStyle03
Input plugin interface (decoder factory).
static const QString SpinBoxStyle01
SpinBox.
static bool isEnabled(const EffectFactory *factory)
virtual DecoderProperties properties() const =0
static const QString BackgroundStyle01
Background.
void initialize(bool state, bool enabled, const MusicPluginProperty &property)
static QList< EffectFactory * > factories()
static QString file(const OutputFactory *factory)
The class of the moving dialog base.
static QString file(const EffectFactory *factory)
static void setEnabled(DecoderFactory *factory, bool enable=true)
static const QString LineEditStyle01
LineEdit.
MusicPluginItem(QTreeWidgetItem *parent, DecoderFactory *factory, const QString &path)
Visual plugin interface (visual factory).
static const QString ToolButtonStyle04
void setModuleMode(TTKUInt8 mode)
static const QString RadioButtonStyle01
RadioButton.
static QList< DecoderFactory * > factories()
virtual VisualProperties properties() const =0
The class of the checkbox item delegate.
static const QString ComboBoxStyle01
ComboBox.
Output plugin interface (output factory).
static QString file(const VisualFactory *factory)
The class of the plugin property.
#define TTKDynamicCast(x, y)
virtual const EffectProperties properties() const =0
void showSettingWidget() const