summaryrefslogtreecommitdiff
path: root/src/org/unitConverter/converterGUI/UnitConverterGUI.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/org/unitConverter/converterGUI/UnitConverterGUI.java')
-rwxr-xr-xsrc/org/unitConverter/converterGUI/UnitConverterGUI.java50
1 files changed, 30 insertions, 20 deletions
diff --git a/src/org/unitConverter/converterGUI/UnitConverterGUI.java b/src/org/unitConverter/converterGUI/UnitConverterGUI.java
index 49a40d6..34cbef9 100755
--- a/src/org/unitConverter/converterGUI/UnitConverterGUI.java
+++ b/src/org/unitConverter/converterGUI/UnitConverterGUI.java
@@ -62,6 +62,35 @@ import org.unitConverter.unit.UnitPrefix;
*/
final class UnitConverterGUI {
private static class Presenter {
+ /**
+ * Adds default units and dimensions to a database.
+ *
+ * @param database
+ * database to add to
+ * @since 2019-04-14
+ */
+ private static void addDefaults(final UnitsDatabase database) {
+ database.addUnit("metre", SI.METRE);
+ database.addUnit("kilogram", SI.KILOGRAM);
+ database.addUnit("gram", SI.KILOGRAM.dividedBy(1000));
+ database.addUnit("second", SI.SECOND);
+ database.addUnit("ampere", SI.AMPERE);
+ database.addUnit("kelvin", SI.KELVIN);
+ database.addUnit("mole", SI.MOLE);
+ database.addUnit("candela", SI.CANDELA);
+ database.addUnit("bit", SI.SI.getBaseUnit(StandardDimensions.INFORMATION));
+ database.addUnit("unit", SI.SI.getBaseUnit(UnitDimension.EMPTY));
+ // nonlinear units - must be loaded manually
+ database.addUnit("tempCelsius", NonlinearUnits.CELSIUS);
+ database.addUnit("tempFahrenheit", NonlinearUnits.FAHRENHEIT);
+
+ // load initial dimensions
+ database.addDimension("LENGTH", StandardDimensions.LENGTH);
+ database.addDimension("MASS", StandardDimensions.MASS);
+ database.addDimension("TIME", StandardDimensions.TIME);
+ database.addDimension("TEMPERATURE", StandardDimensions.TEMPERATURE);
+ }
+
/** The presenter's associated view. */
private final View view;
@@ -100,26 +129,7 @@ final class UnitConverterGUI {
// load initial units
this.units = new UnitsDatabase();
- this.units.addUnit("metre", SI.METRE);
- this.units.addUnit("kilogram", SI.KILOGRAM);
- this.units.addUnit("gram", SI.KILOGRAM.dividedBy(1000));
- this.units.addUnit("second", SI.SECOND);
- this.units.addUnit("ampere", SI.AMPERE);
- this.units.addUnit("kelvin", SI.KELVIN);
- this.units.addUnit("mole", SI.MOLE);
- this.units.addUnit("candela", SI.CANDELA);
- this.units.addUnit("bit", SI.SI.getBaseUnit(StandardDimensions.INFORMATION));
- this.units.addUnit("unit", SI.SI.getBaseUnit(UnitDimension.EMPTY));
- // nonlinear units - must be loaded manually
- this.units.addUnit("tempCelsius", NonlinearUnits.CELSIUS);
- this.units.addUnit("tempFahrenheit", NonlinearUnits.FAHRENHEIT);
-
- // load initial dimensions
- this.units.addDimension("LENGTH", StandardDimensions.LENGTH);
- this.units.addDimension("MASS", StandardDimensions.MASS);
- this.units.addDimension("TIME", StandardDimensions.TIME);
- this.units.addDimension("TEMPERATURE", StandardDimensions.TEMPERATURE);
- this.units.addDimension("LUMINOUS_INTENSITY", StandardDimensions.LUMINOUS_INTENSITY);
+ Presenter.addDefaults(this.units);
this.units.loadUnitsFile(new File("unitsfile.txt"));
this.units.loadDimensionFile(new File("dimensionfile.txt"));