1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
//##########################################################################
//# #
//# CLOUDCOMPARE #
//# #
//# This program is free software; you can redistribute it and/or modify #
//# it under the terms of the GNU General Public License as published by #
//# the Free Software Foundation; version 2 or later of the License. #
//# #
//# This program is distributed in the hope that it will be useful, #
//# but WITHOUT ANY WARRANTY; without even the implied warranty of #
//# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
//# GNU General Public License for more details. #
//# #
//# COPYRIGHT: Chris Brown #
//# #
//##########################################################################
#include "ccPrimitiveDistanceDlg.h"
//Qt
#include <QHeaderView>
#include <QMessageBox>
//System
#include <assert.h>
static bool s_signedDist = true;
static bool s_flipNormals = false;
static bool s_treatAsBounded = false;
ccPrimitiveDistanceDlg::ccPrimitiveDistanceDlg(QWidget* parent)
: QDialog(parent, Qt::Tool)
, Ui::primitiveDistanceDlg()
{
setupUi(this);
signedDistCheckBox->setChecked(s_signedDist);
flipNormalsCheckBox->setEnabled(s_signedDist);
flipNormalsCheckBox->setChecked(s_flipNormals);
treatPlanesAsBoundedCheckBox->setUpdatesEnabled(false);
treatPlanesAsBoundedCheckBox->setChecked(s_treatAsBounded);
connect(cancelButton, &QPushButton::clicked, this, &ccPrimitiveDistanceDlg::cancelAndExit);
connect(okButton, &QPushButton::clicked, this, &ccPrimitiveDistanceDlg::applyAndExit);
connect(signedDistCheckBox, &QCheckBox::toggled, this, &ccPrimitiveDistanceDlg::toggleSigned);
}
void ccPrimitiveDistanceDlg::applyAndExit()
{
s_signedDist = signedDistances();
s_flipNormals = flipNormals();
s_treatAsBounded = treatPlanesAsBounded();
accept();
}
void ccPrimitiveDistanceDlg::cancelAndExit()
{
reject();
}
void ccPrimitiveDistanceDlg::toggleSigned(bool state)
{
flipNormalsCheckBox->setEnabled(state);
}
|