diff --git a/src/Gui/DlgUnitsCalculator.ui b/src/Gui/DlgUnitsCalculator.ui
index 2d74c12024d8..4a94166f8564 100644
--- a/src/Gui/DlgUnitsCalculator.ui
+++ b/src/Gui/DlgUnitsCalculator.ui
@@ -6,14 +6,14 @@
0
0
- 425
- 187
+ 645
+ 375
Units calculator
-
+
-
-
@@ -89,42 +89,118 @@ To add a calculation press Return in the value input field
-
-
-
-
-
-
- Quantity:
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- -
-
-
- Units:
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
-
+
+
+ Quantity
+
+
+ -
+
+
+ Quantity:
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ -
+
+
+ Scheme:
+
+
+
+ -
+
+
-
+
+ Standard (mm/kg/s/degree)
+
+
+ -
+
+ MKS (m/kg/s/degree)
+
+
+ -
+
+ US customary (in/lb)
+
+
+ -
+
+ Imperial decimal (in/lb)
+
+
+ -
+
+ Building Euro (cm/m²/m³)
+
+
+ -
+
+ Building US (ft-in/sqft/cuft)
+
+
+ -
+
+ Metric small parts & CNC(mm, mm/min)
+
+
+ -
+
+ Imperial Civil (ft/ft^2/ft^3)
+
+
+
+
+ -
+
+
+ Decimals:
+
+
+
+ -
+
+
+ 2
+
+
+ 12
+
+
+ 5
+
+
+
+ -
+
+
+ Units:
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+
+
-
diff --git a/src/Gui/DlgUnitsCalculatorImp.cpp b/src/Gui/DlgUnitsCalculatorImp.cpp
index b37d0d8a7c27..e8dcfd837795 100644
--- a/src/Gui/DlgUnitsCalculatorImp.cpp
+++ b/src/Gui/DlgUnitsCalculatorImp.cpp
@@ -66,22 +66,45 @@ DlgUnitsCalculator::DlgUnitsCalculator( QWidget* parent, Qt::WindowFlags fl )
ui->ValueInput->setText(QString::fromLatin1("1 cm"));
ui->UnitInput->setText(QString::fromLatin1("in"));
- units << Base::Unit::Acceleration << Base::Unit::AmountOfSubstance << Base::Unit::Angle
- << Base::Unit::Area << Base::Unit::Density << Base::Unit::ElectricalCapacitance
- << Base::Unit::ElectricalInductance << Base::Unit::ElectricCharge
- << Base::Unit::ElectricCurrent << Base::Unit::ElectricPotential
- << Base::Unit::Frequency << Base::Unit::Force << Base::Unit::HeatFlux << Base::Unit::Length
- << Base::Unit::LuminousIntensity << Base::Unit::Mass << Base::Unit::MagneticFluxDensity
- << Base::Unit::Pressure << Base::Unit::Power << Base::Unit::SpecificHeat
- << Base::Unit::Stress << Base::Unit::Temperature << Base::Unit::ThermalConductivity
- << Base::Unit::ThermalExpansionCoefficient << Base::Unit::ThermalTransferCoefficient
- << Base::Unit::TimeSpan << Base::Unit::Velocity << Base::Unit::Volume << Base::Unit::Work;
+ units << Base::Unit::Acceleration
+ << Base::Unit::AmountOfSubstance
+ << Base::Unit::Angle
+ << Base::Unit::Area
+ << Base::Unit::Density
+ << Base::Unit::ElectricalCapacitance
+ << Base::Unit::ElectricalInductance
+ << Base::Unit::ElectricCharge
+ << Base::Unit::ElectricCurrent
+ << Base::Unit::ElectricPotential
+ << Base::Unit::Frequency
+ << Base::Unit::Force
+ << Base::Unit::HeatFlux
+ << Base::Unit::Length
+ << Base::Unit::LuminousIntensity
+ << Base::Unit::Mass
+ << Base::Unit::MagneticFluxDensity
+ << Base::Unit::Pressure
+ << Base::Unit::Power
+ << Base::Unit::SpecificHeat
+ << Base::Unit::Stress
+ << Base::Unit::Temperature
+ << Base::Unit::ThermalConductivity
+ << Base::Unit::ThermalExpansionCoefficient
+ << Base::Unit::ThermalTransferCoefficient
+ << Base::Unit::TimeSpan
+ << Base::Unit::Velocity
+ << Base::Unit::Volume
+ << Base::Unit::Work;
for (QList::iterator it = units.begin(); it != units.end(); ++it) {
ui->unitsBox->addItem(it->getTypeString());
}
ui->quantitySpinBox->setValue(1.0);
ui->quantitySpinBox->setUnit(units.front());
+ ui->spinBoxDecimals->setValue(Base::UnitsApi::getDecimals());
+
+ // see on_comboBoxScheme_activated
+ ui->comboBoxScheme->setDisabled(true);
}
/** Destroys the object and frees any allocated resources */
@@ -164,7 +187,19 @@ void DlgUnitsCalculator::returnPressed(void)
void DlgUnitsCalculator::on_unitsBox_activated(int index)
{
+ ui->quantitySpinBox->setValue(1.0);
ui->quantitySpinBox->setUnit(units[index]);
}
+void DlgUnitsCalculator::on_comboBoxScheme_activated(int index)
+{
+ //TODO
+ Q_UNUSED(index)
+}
+
+void DlgUnitsCalculator::on_spinBoxDecimals_valueChanged(int value)
+{
+ ui->quantitySpinBox->setDecimals(value);
+}
+
#include "moc_DlgUnitsCalculatorImp.cpp"
diff --git a/src/Gui/DlgUnitsCalculatorImp.h b/src/Gui/DlgUnitsCalculatorImp.h
index 745b0913992e..00f0d2bfc0a5 100644
--- a/src/Gui/DlgUnitsCalculatorImp.h
+++ b/src/Gui/DlgUnitsCalculatorImp.h
@@ -53,6 +53,8 @@ protected Q_SLOTS:
void textChanged(const QString);
void valueChanged(const Base::Quantity&);
void on_unitsBox_activated(int);
+ void on_comboBoxScheme_activated(int);
+ void on_spinBoxDecimals_valueChanged(int);
void copy(void);
void returnPressed(void);