aboutsummaryrefslogtreecommitdiff
path: root/tools/ArtistTools/source/BlastPlugin/Window/BlastCompositePanel.cpp
diff options
context:
space:
mode:
authorAnton Novoselov <[email protected]>2017-08-01 12:53:38 +0300
committerAnton Novoselov <[email protected]>2017-08-01 12:53:38 +0300
commit236f03c0b9a4982328ed1201978f7f69d192d9b2 (patch)
treee486f2fa39dba203563895541e92c60ed3e25759 /tools/ArtistTools/source/BlastPlugin/Window/BlastCompositePanel.cpp
parentAdded screens to welcome page (diff)
downloadblast-236f03c0b9a4982328ed1201978f7f69d192d9b2.tar.xz
blast-236f03c0b9a4982328ed1201978f7f69d192d9b2.zip
Blast 1.1 release (windows / linux)
see docs/release_notes.txt for details
Diffstat (limited to 'tools/ArtistTools/source/BlastPlugin/Window/BlastCompositePanel.cpp')
-rw-r--r--tools/ArtistTools/source/BlastPlugin/Window/BlastCompositePanel.cpp306
1 files changed, 0 insertions, 306 deletions
diff --git a/tools/ArtistTools/source/BlastPlugin/Window/BlastCompositePanel.cpp b/tools/ArtistTools/source/BlastPlugin/Window/BlastCompositePanel.cpp
deleted file mode 100644
index b42a4f5..0000000
--- a/tools/ArtistTools/source/BlastPlugin/Window/BlastCompositePanel.cpp
+++ /dev/null
@@ -1,306 +0,0 @@
-#include "BlastCompositePanel.h"
-#include "ui_BlastCompositePanel.h"
-#include "ProjectParams.h"
-#include <QtCore/QFileInfo>
-#include <QtWidgets/QInputDialog>
-#include <QtWidgets/QLineEdit>
-#include <QtWidgets/QMessageBox>
-
-BlastCompositePanel::BlastCompositePanel(QWidget *parent) :
- QWidget(parent),
- ui(new Ui::BlastCompositePanel),
- _selectedAsset(-1)
-{
- ui->setupUi(this);
-
- ui->btnRemoveAsset->setEnabled(false);
- ui->btnModifyLandmark->setEnabled(false);
- ui->btnRemoveLandmark->setEnabled(false);
-}
-
-BlastCompositePanel::~BlastCompositePanel()
-{
- delete ui;
-}
-
-void BlastCompositePanel::updateValues()
-{
- BPParams& projectParams = BlastProject::ins().getParams();
- BPPComposite& composite = projectParams.blast.composite;
-
- ui->lineEditComposite->setText(composite.composite.buf);
-
- _updateAssetComboBox();
-
- _updateAssetInstanceListWidget();
-
- ui->spinBoxBondByThreshold->setValue(composite.bondThreshold);
- ui->spinBoxNewBondStrength->setValue(composite.bondStrength);
-
- _updateLandmarkListWidget();
-
- ui->checkBoxEnableLandmark->setChecked(false);
- ui->spinBoxLandmarkRadius->setValue(false);
-}
-
-void BlastCompositePanel::on_btnCollapse_clicked()
-{
-
-}
-
-void BlastCompositePanel::on_btnSave_clicked()
-{
- BPParams& projectParams = BlastProject::ins().getParams();
- BPPComposite& composite = projectParams.blast.composite;
-
- QByteArray tmp = ui->lineEditComposite->text().toUtf8();
- copy(composite.composite, tmp.data());
-}
-
-void BlastCompositePanel::on_comboBoxAsset_currentIndexChanged(int index)
-{
- _selectedAsset = index;
-}
-
-void BlastCompositePanel::on_btnAddAsset_clicked()
-{
- bool ok = false;
- QString name = QInputDialog::getText(this,
- tr("Blast Tool"),
- tr("Please input name for new blast instance:"),
- QLineEdit::Normal,
- "",
- &ok);
- bool nameExist = BlastProject::ins().isAssetInstanceNameExist(name.toUtf8().data());
- if (ok && !name.isEmpty() && !nameExist)
- {
- BlastProject::ins().addAssetInstance(_selectedAsset, name.toUtf8().data());
- _updateAssetInstanceListWidget();
- ui->listWidgetBlastAsset->setCurrentRow(ui->listWidgetBlastAsset->count() - 1);
- }
- else if (ok && nameExist)
- {
- QMessageBox::warning(this, "Blast Tool", "The name you input is already exist!");
- }
- else if (ok && name.isEmpty())
- {
- QMessageBox::warning(this, "Blast Tool", "You need input a name for the new preset!");
- }
-}
-
-void BlastCompositePanel::on_btnRemoveAsset_clicked()
-{
- QList<QListWidgetItem*> items = ui->listWidgetBlastAsset->selectedItems();
- BlastProject::ins().removeAssetInstance(items.at(0)->text().toUtf8().data());
-}
-
-void BlastCompositePanel::on_listWidgetBlastAsset_itemSelectionChanged()
-{
- QList<QListWidgetItem*> items = ui->listWidgetBlastAsset->selectedItems();
- if (items.count() > 0)
- ui->btnRemoveAsset->setEnabled(true);
- else
- ui->btnRemoveAsset->setEnabled(false);
-}
-
-void BlastCompositePanel::on_spinBoxBondByThreshold_valueChanged(double arg1)
-{
- BPParams& projectParams = BlastProject::ins().getParams();
- BPPComposite& composite = projectParams.blast.composite;
- composite.bondThreshold = arg1;
-}
-
-void BlastCompositePanel::on_spinBoxNewBondStrength_valueChanged(double arg1)
-{
- BPParams& projectParams = BlastProject::ins().getParams();
- BPPComposite& composite = projectParams.blast.composite;
- composite.bondStrength = arg1;
-}
-
-void BlastCompositePanel::on_btnAddLandmark_clicked()
-{
- bool ok = false;
- QString name = QInputDialog::getText(this,
- tr("Blast Tool"),
- tr("Please input name for new landmark:"),
- QLineEdit::Normal,
- "",
- &ok);
- bool nameExist = BlastProject::ins().isLandmarkNameExist(name.toUtf8().data());
- if (ok && !name.isEmpty() && !nameExist)
- {
- BlastProject::ins().addLandmark(name.toUtf8().data());
- _updateLandmarkListWidget();
- ui->listWidgetLandmark->setCurrentRow(ui->listWidgetLandmark->count() - 1);
- }
- else if (ok && nameExist)
- {
- QMessageBox::warning(this, "Blast Tool", "The name you input is already exist!");
- }
- else if (ok && name.isEmpty())
- {
- QMessageBox::warning(this, "Blast Tool", "You need input a name for the new landmark!");
- }
-}
-
-void BlastCompositePanel::on_btnModifyLandmark_clicked()
-{
- QList<QListWidgetItem*> items = ui->listWidgetLandmark->selectedItems();
- QByteArray tem = items.at(0)->text().toUtf8();
- const char* oldName = tem.data();
-
- bool ok = false;
- QString newName = QInputDialog::getText(this,
- tr("Blast Tool"),
- tr("Please input new name for the selected landmark:"),
- QLineEdit::Normal,
- oldName,
- &ok);
- bool nameExist = BlastProject::ins().isLandmarkNameExist(newName.toUtf8().data());
- if (ok && !newName.isEmpty() && !nameExist)
- {
- int selectIndex = ui->listWidgetLandmark->currentRow();
- BlastProject::ins().renameLandmark(oldName, newName.toUtf8().data());
- _updateLandmarkListWidget();
- ui->listWidgetLandmark->setCurrentRow(selectIndex);
- }
- else if (ok && nameExist)
- {
- QMessageBox::warning(this, "Blast Tool", "The name you input is already exist!");
- }
- else if (ok && newName.isEmpty())
- {
- QMessageBox::warning(this, "Blast Tool", "You need input a name for the new landmark!");
- }
-}
-
-void BlastCompositePanel::on_btnRemoveLandmark_clicked()
-{
- QList<QListWidgetItem*> items = ui->listWidgetLandmark->selectedItems();
- QByteArray tem = items.at(0)->text().toUtf8();
- const char* name = tem.data();
- BlastProject::ins().removeLandmark(name);
- _updateLandmarkListWidget();
-}
-
-void BlastCompositePanel::on_listWidgetLandmark_itemSelectionChanged()
-{
- _updateLandmarkUIs();
-}
-
-void BlastCompositePanel::on_checkBoxEnableLandmark_stateChanged(int arg1)
-{
- QList<QListWidgetItem*> items = ui->listWidgetLandmark->selectedItems();
-
- int count = items.count();
- for (int i = 0; i < count; ++i)
- {
- BPPLandmark* landmark = BlastProject::ins().getLandmark(items.at(0)->text().toUtf8().data());
- if (landmark != nullptr)
- {
- landmark->enable = ui->checkBoxEnableLandmark->isChecked();
- }
- }
-}
-
-void BlastCompositePanel::on_spinBoxLandmarkRadius_valueChanged(double arg1)
-{
- QList<QListWidgetItem*> items = ui->listWidgetLandmark->selectedItems();
-
- int count = items.count();
- for (int i = 0; i < count; ++i)
- {
- BPPLandmark* landmark = BlastProject::ins().getLandmark(items.at(0)->text().toUtf8().data());
- if (landmark != nullptr)
- {
- landmark->radius = ui->spinBoxLandmarkRadius->value();
- }
- }
-}
-
-void BlastCompositePanel::_updateAssetComboBox()
-{
- BPParams& projectParams = BlastProject::ins().getParams();
- BPPAssetArray& blastAssetArray = projectParams.blast.blastAssets;
- BPPComposite& composite = projectParams.blast.composite;
-
- ui->comboBoxAsset->clear();
- int countAssets = blastAssetArray.arraySizes[0];
- if (countAssets > 0)
- {
- QStringList assets;
- for (int i = 0; i < countAssets; ++i)
- {
- QFileInfo fileInfo(blastAssetArray.buf[i].path.buf);
- assets.append(fileInfo.baseName());
- }
- ui->comboBoxAsset->addItems(assets);
- }
- else
- {
- ui->btnAddAsset->setEnabled(false);
- ui->btnRemoveAsset->setEnabled(false);
- }
-}
-
-void BlastCompositePanel::_updateAssetInstanceListWidget()
-{
- BPParams& projectParams = BlastProject::ins().getParams();
- BPPComposite& composite = projectParams.blast.composite;
-
- ui->listWidgetBlastAsset->clear();
- int countAssetInstances = composite.blastAssetInstances.arraySizes[0];
- if (countAssetInstances > 0)
- {
- QStringList assetInstances;
-
- for (int i = 0; i < countAssetInstances; ++i)
- {
- assetInstances.append(composite.blastAssetInstances.buf[i].name.buf);
- }
- ui->listWidgetBlastAsset->addItems(assetInstances);
- }
-}
-
-void BlastCompositePanel::_updateLandmarkListWidget()
-{
- BPParams& projectParams = BlastProject::ins().getParams();
- BPPComposite& composite = projectParams.blast.composite;
-
- ui->listWidgetLandmark->clear();
- int countJoints = composite.landmarks.arraySizes[0];
- if (countJoints > 0)
- {
- QStringList landmarks;
-
- for (int i = 0; i < countJoints; ++i)
- {
- landmarks.append(composite.landmarks.buf[i].name.buf);
- }
- ui->listWidgetLandmark->addItems(landmarks);
- }
-}
-
-void BlastCompositePanel::_updateLandmarkUIs()
-{
- QList<QListWidgetItem*> items = ui->listWidgetLandmark->selectedItems();
-
- if (items.count() > 0)
- {
- BPPLandmark* landmark = BlastProject::ins().getLandmark(items.at(0)->text().toUtf8().data());
- if (landmark != nullptr)
- {
- ui->btnModifyLandmark->setEnabled(true);
- ui->btnRemoveLandmark->setEnabled(true);
- ui->checkBoxEnableLandmark->setChecked(landmark->enable);
- ui->spinBoxLandmarkRadius->setValue(landmark->radius);
- }
- }
- else
- {
- ui->btnModifyLandmark->setEnabled(false);
- ui->btnRemoveLandmark->setEnabled(false);
- ui->checkBoxEnableLandmark->setChecked(false);
- ui->spinBoxLandmarkRadius->setValue(0.0f);
- }
-}