Support item tabs based on item group string
This commit is contained in:
parent
0e09b6f46c
commit
a17cd23a4e
29 changed files with 527 additions and 181 deletions
|
|
@ -4,10 +4,12 @@
|
|||
#include <QCheckBox>
|
||||
#include <QDebug>
|
||||
#include <QSlider>
|
||||
#include "itemsettingsdialog.h"
|
||||
|
||||
ItemWidget::ItemWidget(std::weak_ptr<Item> item, QWidget *parent) :
|
||||
ItemWidget::ItemWidget(std::weak_ptr<Item> item, bool noGroupEdit, QWidget *parent) :
|
||||
QWidget(parent),
|
||||
item_(item),
|
||||
noGroupEdit_(noGroupEdit),
|
||||
ui(new Ui::ItemWidget)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
|
@ -40,12 +42,13 @@ ItemWidget::ItemWidget(std::weak_ptr<Item> item, QWidget *parent) :
|
|||
connect(ui->pushButton, &QPushButton::clicked, this, &ItemWidget::showSettingsDialog);
|
||||
connect(workingItem.get(), &Item::updated, this, &ItemWidget::onItemUpdated);
|
||||
connect(ui->pushButton_Remove, &QPushButton::clicked, this, &ItemWidget::deleteItem);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
disable();
|
||||
}
|
||||
|
||||
setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
|
||||
}
|
||||
|
||||
void ItemWidget::deleteItem()
|
||||
|
|
@ -60,7 +63,9 @@ void ItemWidget::moveToValue(int value)
|
|||
{
|
||||
if(auto workingItem = item_.lock())
|
||||
{
|
||||
ItemUpdateRequest request = workingItem->createValueUpdateRequest(value, ITEM_UPDATE_USER);
|
||||
ItemUpdateRequest request = workingItem->createValueUpdateRequest(ITEM_UPDATE_USER);
|
||||
request.payload.setValueData(value);
|
||||
request.changes.value = true;
|
||||
workingItem->requestUpdate(request);
|
||||
}
|
||||
else
|
||||
|
|
@ -71,15 +76,7 @@ void ItemWidget::moveToValue(int value)
|
|||
|
||||
void ItemWidget::moveToState(bool state)
|
||||
{
|
||||
if(auto workingItem = item_.lock())
|
||||
{
|
||||
ItemUpdateRequest request = workingItem->createValueUpdateRequest(state, ITEM_UPDATE_USER);
|
||||
workingItem->requestUpdate(request);
|
||||
}
|
||||
else
|
||||
{
|
||||
disable();
|
||||
}
|
||||
moveToValue(state);
|
||||
}
|
||||
|
||||
void ItemWidget::disable()
|
||||
|
|
@ -104,8 +101,9 @@ void ItemWidget::showSettingsDialog()
|
|||
{
|
||||
if(auto workingItem = item_.lock())
|
||||
{
|
||||
ItemSettingsDialog dialog(workingItem, this);
|
||||
ItemSettingsDialog dialog(workingItem, noGroupEdit_, this);
|
||||
dialog.exec();
|
||||
|
||||
}
|
||||
else disable();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue