コード例 #1
0
ファイル: qaxissetting.cpp プロジェクト: 2gis/2gisqt5android
void QAxisSetting::setAxes(const QVariantList &axes)
{
    Q_D(QAxisSetting);
    if (d->m_axes == axes)
        return;

    d->m_axes = axes;
    emit axesChanged(axes);
}
コード例 #2
0
ファイル: EulerWidget.cpp プロジェクト: nneumann91/lecture
void EulerWidget::setEulerAxes(uint a1, uint a2, uint a3)
{
	if (a1 > 2 || a2 > 2 || a3 > 2) return;
	if (a1 == _ui->a1->currentIndex() &&
	    a2 == _ui->a2->currentIndex() &&
	    a3 == _ui->a3->currentIndex()) return;

	this->blockSignals(true);
	_ui->a3->setCurrentIndex(a3);
	_ui->a2->setCurrentIndex(a2);
	_ui->a1->setCurrentIndex(a1);
	this->blockSignals(false);
	updateAngles();

	emit axesChanged(a1, a2, a3);
}
コード例 #3
0
ファイル: EulerWidget.cpp プロジェクト: nneumann91/lecture
void EulerWidget::axisChanged(int axis) {
	bool bFirstCall = !this->signalsBlocked();
	this->blockSignals(true);

	// ensure different axes for consecutive operations
	QComboBox* origin = dynamic_cast<QComboBox*>(sender());
	if (origin == _ui->a1) disableAxis(_ui->a2, axis);
	if (origin == _ui->a2) disableAxis(_ui->a3, axis);

	if (bFirstCall) {
		updateAngles();
		this->blockSignals(false);

		emit axesChanged(_ui->a1->currentIndex(),
		                 _ui->a2->currentIndex(),
		                 _ui->a3->currentIndex());
	}
}