aboutsummaryrefslogtreecommitdiff
path: root/tools/ArtistTools/source/BlastPlugin/Window/SupportPanel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/ArtistTools/source/BlastPlugin/Window/SupportPanel.cpp')
-rw-r--r--tools/ArtistTools/source/BlastPlugin/Window/SupportPanel.cpp90
1 files changed, 90 insertions, 0 deletions
diff --git a/tools/ArtistTools/source/BlastPlugin/Window/SupportPanel.cpp b/tools/ArtistTools/source/BlastPlugin/Window/SupportPanel.cpp
new file mode 100644
index 0000000..424dbb3
--- /dev/null
+++ b/tools/ArtistTools/source/BlastPlugin/Window/SupportPanel.cpp
@@ -0,0 +1,90 @@
+#include "SupportPanel.h"
+#include "ui_SupportPanel.h"
+
+SupportPanel::SupportPanel(QWidget *parent) :
+ QWidget(parent),
+ ui(new Ui::SupportPanel)
+{
+ ui->setupUi(this);
+
+ _selectedBonds.clear();
+}
+
+SupportPanel::~SupportPanel()
+{
+ delete ui;
+
+ _selectedBonds.clear();
+}
+
+void SupportPanel::updateValues()
+{
+ if (_selectedBonds.size() > 0)
+ {
+ BPPBond* bond = _selectedBonds[0];
+
+ ui->comboBoxHealthMask->clear();
+ ui->comboBoxHealthMask->addItem(bond->name.buf);
+ ui->spinBoxBondStrength->setValue(bond->support.bondStrength);
+ ui->checkBoxEnableJoint->setChecked(bond->support.enableJoint);
+ }
+ else
+ {
+ ui->comboBoxHealthMask->clear();
+ ui->comboBoxHealthMask->addItem("None");
+ ui->spinBoxBondStrength->setValue(1.0f);
+ ui->checkBoxEnableJoint->setChecked(false);
+ }
+}
+
+void SupportPanel::dataSelected(std::vector<BlastNode*> selections)
+{
+ _selectedBonds.clear();
+
+ for (BlastNode* node : selections)
+ {
+ if (eBond == node->getType())
+ {
+ BPPBond* bond = static_cast<BPPBond*>(node->getData());
+ _selectedBonds.push_back(bond);
+ }
+ }
+
+ updateValues();
+}
+
+void SupportPanel::on_comboBoxHealthMask_currentIndexChanged(int index)
+{
+
+}
+
+void SupportPanel::on_btnAddHealthMask_clicked()
+{
+
+}
+
+void SupportPanel::on_btnPen_clicked()
+{
+
+}
+
+void SupportPanel::on_btnRemove_clicked()
+{
+
+}
+
+void SupportPanel::on_spinBoxBondStrength_valueChanged(double arg1)
+{
+ for (size_t i = 0; i < _selectedBonds.size(); ++i)
+ {
+ _selectedBonds[i]->support.bondStrength = arg1;
+ }
+}
+
+void SupportPanel::on_checkBoxEnableJoint_stateChanged(int arg1)
+{
+ for (size_t i = 0; i < _selectedBonds.size(); ++i)
+ {
+ _selectedBonds[i]->support.enableJoint = arg1;
+ }
+}