LAMPCAE/src/SelfDefObject/ParaCheck.cpp

57 lines
1.3 KiB
C++
Raw Normal View History

2023-05-08 06:32:41 +00:00
#include "ParaCheck.h"
#include "DataProperty/ParameterBool.h"
#include "MainWindow/MainWindow.h"
#include "MainWidgets/PropertyTable.h"
#include <QDebug>
namespace SelfDefObj
{
ParaCheck::ParaCheck(GUI::MainWindow *m, DataProperty::ParameterBase *data) : SelfDefParaWidgetBase(data)
// : ParameterWidgetBase(m, data)
{
connect(this, SIGNAL(lockGraphFocus(bool)), m, SIGNAL(enableGraphWindowKeyBoard(bool)));
connect(this, SIGNAL(stateChanged(int)), this, SLOT(stateChanged()));
blockSignals(true);
_data = (DataProperty::ParameterBool *)data;
bool b = _data->getValue();
this->setChecked(b);
blockSignals(false);
_inited = true;
}
void ParaCheck::focusInEvent(QFocusEvent *e)
{
emit lockGraphFocus(false);
QCheckBox::focusInEvent(e);
}
void ParaCheck::focusOutEvent(QFocusEvent *e)
{
bool b = this->isChecked();
_data->setValue(b);
emit lockGraphFocus(true);
QCheckBox::focusOutEvent(e);
}
void ParaCheck::stateChanged()
{
// bool b = this->isChecked();
submitCode();
// _data->setValue(b);
// qDebug() << _data->genAbsoluteName();
emit dataChanged(_data);
}
QString ParaCheck::generateCode()
{
QString value = "false";
if (this->isChecked())
value = "true";
QString code = SelfDefParaWidgetBase::generateCode();
code.replace("%Value%", value);
return code;
}
}