Applied patch for l10n supplied by Russian Uss.
This commit is contained in:
parent
3aedbaa19f
commit
da430d3611
@ -169,6 +169,9 @@ debuglogdlg.lbl.Logmessage = Log message:
|
|||||||
debuglogdlg.lbl.Stacktrace = Stack trace:
|
debuglogdlg.lbl.Stacktrace = Stack trace:
|
||||||
|
|
||||||
|
|
||||||
|
! MotorChooserDialog
|
||||||
|
MotorChooserDialog.title = Select a rocket motor
|
||||||
|
|
||||||
! Edit Motor configuration dialog
|
! Edit Motor configuration dialog
|
||||||
edtmotorconfdlg.but.removemotor = Remove motor
|
edtmotorconfdlg.but.removemotor = Remove motor
|
||||||
edtmotorconfdlg.but.Selectmotor = Select motor
|
edtmotorconfdlg.but.Selectmotor = Select motor
|
||||||
@ -1111,7 +1114,13 @@ main.menu.debug.createtestrocket = Create test rocket
|
|||||||
! Translate here all material database
|
! Translate here all material database
|
||||||
!
|
!
|
||||||
|
|
||||||
|
Material.CUSTOM = Custom
|
||||||
|
|
||||||
! Material database
|
! Material database
|
||||||
|
Databases.materials.types.Bulk = Bulk
|
||||||
|
Databases.materials.types.Line = Line
|
||||||
|
Databases.materials.types.Surface = Surface
|
||||||
|
|
||||||
! BULK_MATERIAL
|
! BULK_MATERIAL
|
||||||
Databases.materials.Acrylic = Acrylic
|
Databases.materials.Acrylic = Acrylic
|
||||||
Databases.materials.Aluminum = Aluminum
|
Databases.materials.Aluminum = Aluminum
|
||||||
@ -1186,8 +1195,8 @@ Shape.Ellipsoid = Ellipsoid
|
|||||||
Shape.Ellipsoid.desc1 = An ellipsoidal nose cone has a profile of a half-ellipse with major axes of lengths 2×<i>Length</i> and <i>Diameter</i>.
|
Shape.Ellipsoid.desc1 = An ellipsoidal nose cone has a profile of a half-ellipse with major axes of lengths 2×<i>Length</i> and <i>Diameter</i>.
|
||||||
Shape.Ellipsoid.desc2 = An ellipsoidal transition has a profile of a half-ellipse with major axes of lengths 2×<i>Length</i> and <i>Diameter</i>. If the transition is not clipped, then the profile is extended at the center by the corresponding radius.
|
Shape.Ellipsoid.desc2 = An ellipsoidal transition has a profile of a half-ellipse with major axes of lengths 2×<i>Length</i> and <i>Diameter</i>. If the transition is not clipped, then the profile is extended at the center by the corresponding radius.
|
||||||
Shape.Powerseries = Power series
|
Shape.Powerseries = Power series
|
||||||
Shape.Powerseries.desc1 = A power series nose cone has a profile of <i>Radius</i> × (<i>x</i> / <i>Length</i>)<sup><i>k</i></sup> where <i>k</i> is the shape parameter. For <i>k</i>=0.5 this is a <b>\u00BD-power</b> or <b>parabolic</b> nose cone, for <i>k</i>=0.75 a <b>\u00BE-power</b>, and for <i>k</i>=1 a <b>conical</b> nose cone.
|
Shape.Powerseries.desc1 = A power series nose cone has a profile of <i>Radius</i> × (<i>x</i> / <i>Length</i>)<sup><i>k</i></sup> where <i>k</i> is the shape parameter. For <i>k</i>=0.5 this is a <b>\u00bd-power</b> or <b>parabolic</b> nose cone, for <i>k</i>=0.75 a <b>\u00be-power</b>, and for <i>k</i>=1 a <b>conical</b> nose cone.
|
||||||
Shape.Powerseries.desc2 = A power series transition has a profile of <i>Radius</i> × (<i>x</i> / <i>Length</i>)<sup><i>k</i></sup> where <i>k</i> is the shape parameter. For <i>k</i>=0.5 the transition is <b>\u00BD-power</b> or <b>parabolic</b>, for <i>k</i>=0.75 a <b>\u00BE-power</b>, and for <i>k</i>=1 <b>conical</b>.
|
Shape.Powerseries.desc2 = A power series transition has a profile of <i>Radius</i> × (<i>x</i> / <i>Length</i>)<sup><i>k</i></sup> where <i>k</i> is the shape parameter. For <i>k</i>=0.5 the transition is <b>\u00bd-power</b> or <b>parabolic</b>, for <i>k</i>=0.75 a <b>\u00be-power</b>, and for <i>k</i>=1 <b>conical</b>.
|
||||||
Shape.Parabolicseries = Parabolic series
|
Shape.Parabolicseries = Parabolic series
|
||||||
Shape.Parabolicseries.desc1 = A parabolic series nose cone has a profile of a parabola. The shape parameter defines the segment of the parabola to utilize. The shape parameter 1.0 produces a <b>full parabola</b> which is tangent to the body tube, 0.75 produces a <b>3/4 parabola</b>, 0.5 procudes a <b>1/2 parabola</b> and 0 produces a <b>conical</b> nose cone.
|
Shape.Parabolicseries.desc1 = A parabolic series nose cone has a profile of a parabola. The shape parameter defines the segment of the parabola to utilize. The shape parameter 1.0 produces a <b>full parabola</b> which is tangent to the body tube, 0.75 produces a <b>3/4 parabola</b>, 0.5 procudes a <b>1/2 parabola</b> and 0 produces a <b>conical</b> nose cone.
|
||||||
Shape.Parabolicseries.desc2 = A parabolic series transition has a profile of a parabola. The shape parameter defines the segment of the parabola to utilize. The shape parameter 1.0 produces a <b>full parabola</b> which is tangent to the body tube at the aft end, 0.75 produces a <b>3/4 parabola</b>, 0.5 procudes a <b>1/2 parabola</b> and 0 produces a <b>conical</b> transition.
|
Shape.Parabolicseries.desc2 = A parabolic series transition has a profile of a parabola. The shape parameter defines the segment of the parabola to utilize. The shape parameter 1.0 produces a <b>full parabola</b> which is tangent to the body tube at the aft end, 0.75 produces a <b>3/4 parabola</b>, 0.5 procudes a <b>1/2 parabola</b> and 0 produces a <b>conical</b> transition.
|
||||||
@ -1237,6 +1246,14 @@ Parachute.Parachute = Parachute
|
|||||||
ShockCord.ShockCord = Shock cord
|
ShockCord.ShockCord = Shock cord
|
||||||
! Bulkhead
|
! Bulkhead
|
||||||
Bulkhead.Bulkhead = Bulkhead
|
Bulkhead.Bulkhead = Bulkhead
|
||||||
|
! CenteringRing
|
||||||
|
CenteringRing.CenteringRing = Centering ring
|
||||||
|
! EngineBlock
|
||||||
|
EngineBlock.EngineBlock = Engine block
|
||||||
|
! Streamer
|
||||||
|
Streamer.Streamer = Streamer
|
||||||
|
! Sleeve
|
||||||
|
Sleeve.Sleeve = Sleeve
|
||||||
|
|
||||||
!Rocket
|
!Rocket
|
||||||
Rocket.motorCount.Nomotor = [No motors]
|
Rocket.motorCount.Nomotor = [No motors]
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -22,7 +22,7 @@ import net.sf.openrocket.util.Reflection;
|
|||||||
public class MaterialModel extends AbstractListModel implements
|
public class MaterialModel extends AbstractListModel implements
|
||||||
ComboBoxModel, ComponentChangeListener, DatabaseListener<Material> {
|
ComboBoxModel, ComponentChangeListener, DatabaseListener<Material> {
|
||||||
|
|
||||||
private static final String CUSTOM = "Custom";
|
private final String custom;
|
||||||
|
|
||||||
|
|
||||||
private final Component parentComponent;
|
private final Component parentComponent;
|
||||||
@ -47,6 +47,7 @@ public class MaterialModel extends AbstractListModel implements
|
|||||||
this.parentComponent = parent;
|
this.parentComponent = parent;
|
||||||
this.component = component;
|
this.component = component;
|
||||||
this.type = type;
|
this.type = type;
|
||||||
|
this.custom = trans.get ("Material.CUSTOM");
|
||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case LINE:
|
case LINE:
|
||||||
@ -90,7 +91,7 @@ public class MaterialModel extends AbstractListModel implements
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (item == CUSTOM) {
|
if (item == custom) {
|
||||||
|
|
||||||
// Open custom material dialog in the future, after combo box has closed
|
// Open custom material dialog in the future, after combo box has closed
|
||||||
SwingUtilities.invokeLater(new Runnable() {
|
SwingUtilities.invokeLater(new Runnable() {
|
||||||
@ -129,7 +130,7 @@ public class MaterialModel extends AbstractListModel implements
|
|||||||
@Override
|
@Override
|
||||||
public Object getElementAt(int index) {
|
public Object getElementAt(int index) {
|
||||||
if (index == database.size()) {
|
if (index == database.size()) {
|
||||||
return CUSTOM;
|
return custom;
|
||||||
} else if (index >= database.size()+1) {
|
} else if (index >= database.size()+1) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -29,7 +29,7 @@ public class MotorChooserDialog extends JDialog implements CloseableDialog {
|
|||||||
|
|
||||||
|
|
||||||
public MotorChooserDialog(Motor current, double delay, double diameter, Window owner) {
|
public MotorChooserDialog(Motor current, double delay, double diameter, Window owner) {
|
||||||
super(owner, "Select a rocket motor", Dialog.ModalityType.APPLICATION_MODAL);
|
super(owner, trans.get ("MotorChooserDialog.title"), Dialog.ModalityType.APPLICATION_MODAL);
|
||||||
|
|
||||||
// Check that the motor database has been loaded properly
|
// Check that the motor database has been loaded properly
|
||||||
MotorDatabaseLoadingDialog.check(null);
|
MotorDatabaseLoadingDialog.check(null);
|
||||||
|
|||||||
@ -63,7 +63,7 @@ public class PlotConfiguration implements Cloneable {
|
|||||||
configs.add(config);
|
configs.add(config);
|
||||||
|
|
||||||
//// Stability vs. time
|
//// Stability vs. time
|
||||||
config = new PlotConfiguration("Stability vs. time");
|
config = new PlotConfiguration(trans.get("PlotConfiguration.Stability"));
|
||||||
config.addPlotDataType(FlightDataType.TYPE_STABILITY, 0);
|
config.addPlotDataType(FlightDataType.TYPE_STABILITY, 0);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_CP_LOCATION, 1);
|
config.addPlotDataType(FlightDataType.TYPE_CP_LOCATION, 1);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_CG_LOCATION, 1);
|
config.addPlotDataType(FlightDataType.TYPE_CG_LOCATION, 1);
|
||||||
@ -76,7 +76,7 @@ public class PlotConfiguration implements Cloneable {
|
|||||||
configs.add(config);
|
configs.add(config);
|
||||||
|
|
||||||
//// Drag coefficients vs. Mach number
|
//// Drag coefficients vs. Mach number
|
||||||
config = new PlotConfiguration("Drag coefficients vs. Mach number",
|
config = new PlotConfiguration(trans.get("PlotConfiguration.Dragcoef"),
|
||||||
FlightDataType.TYPE_MACH_NUMBER);
|
FlightDataType.TYPE_MACH_NUMBER);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_DRAG_COEFF, 0);
|
config.addPlotDataType(FlightDataType.TYPE_DRAG_COEFF, 0);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_FRICTION_DRAG_COEFF, 0);
|
config.addPlotDataType(FlightDataType.TYPE_FRICTION_DRAG_COEFF, 0);
|
||||||
@ -85,7 +85,7 @@ public class PlotConfiguration implements Cloneable {
|
|||||||
configs.add(config);
|
configs.add(config);
|
||||||
|
|
||||||
//// Roll characteristics
|
//// Roll characteristics
|
||||||
config = new PlotConfiguration("Roll characteristics");
|
config = new PlotConfiguration(trans.get("PlotConfiguration.Rollcharacteristics"));
|
||||||
config.addPlotDataType(FlightDataType.TYPE_ROLL_RATE, 0);
|
config.addPlotDataType(FlightDataType.TYPE_ROLL_RATE, 0);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_ROLL_MOMENT_COEFF, 1);
|
config.addPlotDataType(FlightDataType.TYPE_ROLL_MOMENT_COEFF, 1);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_ROLL_FORCING_COEFF, 1);
|
config.addPlotDataType(FlightDataType.TYPE_ROLL_FORCING_COEFF, 1);
|
||||||
@ -100,7 +100,7 @@ public class PlotConfiguration implements Cloneable {
|
|||||||
configs.add(config);
|
configs.add(config);
|
||||||
|
|
||||||
//// Angle of attack and orientation vs. time
|
//// Angle of attack and orientation vs. time
|
||||||
config = new PlotConfiguration("Angle of attack and orientation vs. time");
|
config = new PlotConfiguration(trans.get("PlotConfiguration.Angleofattack"));
|
||||||
config.addPlotDataType(FlightDataType.TYPE_AOA, 0);
|
config.addPlotDataType(FlightDataType.TYPE_AOA, 0);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_ORIENTATION_PHI);
|
config.addPlotDataType(FlightDataType.TYPE_ORIENTATION_PHI);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_ORIENTATION_THETA);
|
config.addPlotDataType(FlightDataType.TYPE_ORIENTATION_THETA);
|
||||||
@ -113,7 +113,7 @@ public class PlotConfiguration implements Cloneable {
|
|||||||
configs.add(config);
|
configs.add(config);
|
||||||
|
|
||||||
//// Simulation time step and computation time
|
//// Simulation time step and computation time
|
||||||
config = new PlotConfiguration("Simulation time step and computation time");
|
config = new PlotConfiguration(trans.get("PlotConfiguration.Simulationtime"));
|
||||||
config.addPlotDataType(FlightDataType.TYPE_TIME_STEP);
|
config.addPlotDataType(FlightDataType.TYPE_TIME_STEP);
|
||||||
config.addPlotDataType(FlightDataType.TYPE_COMPUTATION_TIME);
|
config.addPlotDataType(FlightDataType.TYPE_COMPUTATION_TIME);
|
||||||
config.setEvent(FlightEvent.Type.IGNITION, true);
|
config.setEvent(FlightEvent.Type.IGNITION, true);
|
||||||
|
|||||||
@ -30,7 +30,7 @@ public abstract class Material implements Comparable<Material> {
|
|||||||
private final UnitGroup units;
|
private final UnitGroup units;
|
||||||
|
|
||||||
private Type(String name, UnitGroup units) {
|
private Type(String name, UnitGroup units) {
|
||||||
this.name = name;
|
this.name = trans.get ("Databases.materials.types." + name);
|
||||||
this.units = units;
|
this.units = units;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
package net.sf.openrocket.rocketcomponent;
|
package net.sf.openrocket.rocketcomponent;
|
||||||
|
|
||||||
|
import net.sf.openrocket.l10n.Translator;
|
||||||
import net.sf.openrocket.preset.ComponentPreset;
|
import net.sf.openrocket.preset.ComponentPreset;
|
||||||
import net.sf.openrocket.preset.ComponentPreset.Type;
|
import net.sf.openrocket.preset.ComponentPreset.Type;
|
||||||
|
import net.sf.openrocket.startup.Application;
|
||||||
import net.sf.openrocket.util.Coordinate;
|
import net.sf.openrocket.util.Coordinate;
|
||||||
|
|
||||||
|
|
||||||
@ -12,6 +14,8 @@ public class CenteringRing extends RadiusRingComponent {
|
|||||||
setInnerRadiusAutomatic(true);
|
setInnerRadiusAutomatic(true);
|
||||||
setLength(0.002);
|
setLength(0.002);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static final Translator trans = Application.getTranslator();
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -56,7 +60,7 @@ public class CenteringRing extends RadiusRingComponent {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getComponentName() {
|
public String getComponentName() {
|
||||||
return "Centering ring";
|
return trans.get ("CenteringRing.CenteringRing");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -1,11 +1,15 @@
|
|||||||
package net.sf.openrocket.rocketcomponent;
|
package net.sf.openrocket.rocketcomponent;
|
||||||
|
|
||||||
|
import net.sf.openrocket.l10n.Translator;
|
||||||
import net.sf.openrocket.preset.ComponentPreset;
|
import net.sf.openrocket.preset.ComponentPreset;
|
||||||
import net.sf.openrocket.preset.ComponentPreset.Type;
|
import net.sf.openrocket.preset.ComponentPreset.Type;
|
||||||
|
import net.sf.openrocket.startup.Application;
|
||||||
|
|
||||||
|
|
||||||
public class EngineBlock extends ThicknessRingComponent {
|
public class EngineBlock extends ThicknessRingComponent {
|
||||||
|
|
||||||
|
private static final Translator trans = Application.getTranslator();
|
||||||
|
|
||||||
public EngineBlock() {
|
public EngineBlock() {
|
||||||
super();
|
super();
|
||||||
setOuterRadiusAutomatic(true);
|
setOuterRadiusAutomatic(true);
|
||||||
@ -20,7 +24,7 @@ public class EngineBlock extends ThicknessRingComponent {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getComponentName() {
|
public String getComponentName() {
|
||||||
return "Engine block";
|
return trans.get ("EngineBlock.EngineBlock");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -1,5 +1,7 @@
|
|||||||
package net.sf.openrocket.rocketcomponent;
|
package net.sf.openrocket.rocketcomponent;
|
||||||
|
|
||||||
|
import net.sf.openrocket.l10n.Translator;
|
||||||
|
import net.sf.openrocket.startup.Application;
|
||||||
import net.sf.openrocket.util.Coordinate;
|
import net.sf.openrocket.util.Coordinate;
|
||||||
import net.sf.openrocket.util.MathUtil;
|
import net.sf.openrocket.util.MathUtil;
|
||||||
|
|
||||||
@ -12,6 +14,7 @@ import net.sf.openrocket.util.MathUtil;
|
|||||||
* @author Sampo Niskanen <sampo.niskanen@iki.fi>
|
* @author Sampo Niskanen <sampo.niskanen@iki.fi>
|
||||||
*/
|
*/
|
||||||
public class Sleeve extends RingComponent {
|
public class Sleeve extends RingComponent {
|
||||||
|
private static final Translator trans = Application.getTranslator();
|
||||||
|
|
||||||
protected double innerRadius = 0;
|
protected double innerRadius = 0;
|
||||||
protected double thickness = 0;
|
protected double thickness = 0;
|
||||||
@ -91,7 +94,7 @@ public class Sleeve extends RingComponent {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getComponentName() {
|
public String getComponentName() {
|
||||||
return "Sleeve";
|
return trans.get ("Sleeve.Sleeve");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
package net.sf.openrocket.rocketcomponent;
|
package net.sf.openrocket.rocketcomponent;
|
||||||
|
|
||||||
|
import net.sf.openrocket.l10n.Translator;
|
||||||
import net.sf.openrocket.preset.ComponentPreset;
|
import net.sf.openrocket.preset.ComponentPreset;
|
||||||
import net.sf.openrocket.preset.ComponentPreset.Type;
|
import net.sf.openrocket.preset.ComponentPreset.Type;
|
||||||
|
import net.sf.openrocket.startup.Application;
|
||||||
import net.sf.openrocket.util.MathUtil;
|
import net.sf.openrocket.util.MathUtil;
|
||||||
|
|
||||||
public class Streamer extends RecoveryDevice {
|
public class Streamer extends RecoveryDevice {
|
||||||
@ -10,6 +12,7 @@ public class Streamer extends RecoveryDevice {
|
|||||||
|
|
||||||
public static final double MAX_COMPUTED_CD = 0.4;
|
public static final double MAX_COMPUTED_CD = 0.4;
|
||||||
|
|
||||||
|
private static final Translator trans = Application.getTranslator();
|
||||||
|
|
||||||
private double stripLength;
|
private double stripLength;
|
||||||
private double stripWidth;
|
private double stripWidth;
|
||||||
@ -120,7 +123,7 @@ public class Streamer extends RecoveryDevice {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getComponentName() {
|
public String getComponentName() {
|
||||||
return "Streamer";
|
return trans.get ("Streamer.Streamer");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user