Browse Source

Editor: i18n

林炳权 6 years ago
parent
commit
4936e19dc9

+ 8 - 6
editor/js/Sidebar.Geometry.BoxGeometry.js

@@ -4,6 +4,8 @@
 
 Sidebar.Geometry.BoxGeometry = function ( editor, object ) {
 
+	var strings = editor.strings;
+
 	var signals = editor.signals;
 
 	var container = new UI.Row();
@@ -16,7 +18,7 @@ Sidebar.Geometry.BoxGeometry = function ( editor, object ) {
 	var widthRow = new UI.Row();
 	var width = new UI.Number( parameters.width ).onChange( update );
 
-	widthRow.add( new UI.Text( 'Width' ).setWidth( '90px' ) );
+	widthRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/boxgeometry/width' ) ).setWidth( '90px' ) );
 	widthRow.add( width );
 
 	container.add( widthRow );
@@ -26,7 +28,7 @@ Sidebar.Geometry.BoxGeometry = function ( editor, object ) {
 	var heightRow = new UI.Row();
 	var height = new UI.Number( parameters.height ).onChange( update );
 
-	heightRow.add( new UI.Text( 'Height' ).setWidth( '90px' ) );
+	heightRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/boxgeometry/height' ) ).setWidth( '90px' ) );
 	heightRow.add( height );
 
 	container.add( heightRow );
@@ -36,7 +38,7 @@ Sidebar.Geometry.BoxGeometry = function ( editor, object ) {
 	var depthRow = new UI.Row();
 	var depth = new UI.Number( parameters.depth ).onChange( update );
 
-	depthRow.add( new UI.Text( 'Depth' ).setWidth( '90px' ) );
+	depthRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/boxgeometry/depth' ) ).setWidth( '90px' ) );
 	depthRow.add( depth );
 
 	container.add( depthRow );
@@ -46,7 +48,7 @@ Sidebar.Geometry.BoxGeometry = function ( editor, object ) {
 	var widthSegmentsRow = new UI.Row();
 	var widthSegments = new UI.Integer( parameters.widthSegments ).setRange( 1, Infinity ).onChange( update );
 
-	widthSegmentsRow.add( new UI.Text( 'Width Seg' ).setWidth( '90px' ) );
+	widthSegmentsRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/boxgeometry/widthseg' ) ).setWidth( '90px' ) );
 	widthSegmentsRow.add( widthSegments );
 
 	container.add( widthSegmentsRow );
@@ -56,7 +58,7 @@ Sidebar.Geometry.BoxGeometry = function ( editor, object ) {
 	var heightSegmentsRow = new UI.Row();
 	var heightSegments = new UI.Integer( parameters.heightSegments ).setRange( 1, Infinity ).onChange( update );
 
-	heightSegmentsRow.add( new UI.Text( 'Height Seg' ).setWidth( '90px' ) );
+	heightSegmentsRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/boxgeometry/heightseg' ) ).setWidth( '90px' ) );
 	heightSegmentsRow.add( heightSegments );
 
 	container.add( heightSegmentsRow );
@@ -66,7 +68,7 @@ Sidebar.Geometry.BoxGeometry = function ( editor, object ) {
 	var depthSegmentsRow = new UI.Row();
 	var depthSegments = new UI.Integer( parameters.depthSegments ).setRange( 1, Infinity ).onChange( update );
 
-	depthSegmentsRow.add( new UI.Text( 'Depth Seg' ).setWidth( '90px' ) );
+	depthSegmentsRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/boxgeometry/depthseg' ) ).setWidth( '90px' ) );
 	depthSegmentsRow.add( depthSegments );
 
 	container.add( depthSegmentsRow );

+ 4 - 2
editor/js/Sidebar.Geometry.BufferGeometry.js

@@ -4,6 +4,8 @@
 
 Sidebar.Geometry.BufferGeometry = function ( editor ) {
 
+	var strings = editor.strings;
+
 	var signals = editor.signals;
 
 	var container = new UI.Row();
@@ -20,7 +22,7 @@ Sidebar.Geometry.BufferGeometry = function ( editor ) {
 			container.clear();
 			container.setDisplay( 'block' );
 
-			var text = new UI.Text( 'Attributes' ).setWidth( '90px' );
+			var text = new UI.Text( strings.getKey( 'sidebar/geometry/buffergeometry/attributes' ) ).setWidth( '90px' );
 			container.add( text );
 
 			var container2 = new UI.Span().setDisplay( 'inline-block' ).setWidth( '160px' );
@@ -30,7 +32,7 @@ Sidebar.Geometry.BufferGeometry = function ( editor ) {
 
 			if ( index !== null ) {
 
-				container2.add( new UI.Text( 'index' ).setWidth( '80px' ) );
+				container2.add( new UI.Text( strings.getKey( 'sidebar/geometry/buffergeometry/index' ) ).setWidth( '80px' ) );
 				container2.add( new UI.Text( ( index.count ).format() ).setFontSize( '12px' ) );
 				container2.add( new UI.Break() );
 

+ 6 - 4
editor/js/Sidebar.Geometry.CircleGeometry.js

@@ -4,6 +4,8 @@
 
 Sidebar.Geometry.CircleGeometry = function ( editor, object ) {
 
+	var strings = editor.strings;
+
 	var signals = editor.signals;
 
 	var container = new UI.Row();
@@ -16,7 +18,7 @@ Sidebar.Geometry.CircleGeometry = function ( editor, object ) {
 	var radiusRow = new UI.Row();
 	var radius = new UI.Number( parameters.radius ).onChange( update );
 
-	radiusRow.add( new UI.Text( 'Radius' ).setWidth( '90px' ) );
+	radiusRow.add( new UI.Text( strings.getKey('sidebar/geometry/circlegeometry/radius') ).setWidth( '90px' ) );
 	radiusRow.add( radius );
 
 	container.add( radiusRow );
@@ -26,7 +28,7 @@ Sidebar.Geometry.CircleGeometry = function ( editor, object ) {
 	var segmentsRow = new UI.Row();
 	var segments = new UI.Integer( parameters.segments ).setRange( 3, Infinity ).onChange( update );
 
-	segmentsRow.add( new UI.Text( 'Segments' ).setWidth( '90px' ) );
+	segmentsRow.add( new UI.Text( strings.getKey('sidebar/geometry/circlegeometry/segments') ).setWidth( '90px' ) );
 	segmentsRow.add( segments );
 
 	container.add( segmentsRow );
@@ -36,7 +38,7 @@ Sidebar.Geometry.CircleGeometry = function ( editor, object ) {
 	var thetaStartRow = new UI.Row();
 	var thetaStart = new UI.Number( parameters.thetaStart * THREE.Math.RAD2DEG ).setStep( 10 ).onChange( update );
 
-	thetaStartRow.add( new UI.Text( 'Theta start' ).setWidth( '90px' ) );
+	thetaStartRow.add( new UI.Text( strings.getKey('sidebar/geometry/circlegeometry/thetastart') ).setWidth( '90px' ) );
 	thetaStartRow.add( thetaStart );
 
 	container.add( thetaStartRow );
@@ -46,7 +48,7 @@ Sidebar.Geometry.CircleGeometry = function ( editor, object ) {
 	var thetaLengthRow = new UI.Row();
 	var thetaLength = new UI.Number( parameters.thetaLength * THREE.Math.RAD2DEG ).setStep( 10 ).onChange( update );
 
-	thetaLengthRow.add( new UI.Text( 'Theta length' ).setWidth( '90px' ) );
+	thetaLengthRow.add( new UI.Text( strings.getKey('sidebar/geometry/circlegeometry/thetalength') ).setWidth( '90px' ) );
 	thetaLengthRow.add( thetaLength );
 
 	container.add( thetaLengthRow );

+ 8 - 6
editor/js/Sidebar.Geometry.CylinderGeometry.js

@@ -4,6 +4,8 @@
 
 Sidebar.Geometry.CylinderGeometry = function ( editor, object ) {
 
+	var strings = editor.strings;
+
 	var signals = editor.signals;
 
 	var container = new UI.Row();
@@ -16,7 +18,7 @@ Sidebar.Geometry.CylinderGeometry = function ( editor, object ) {
 	var radiusTopRow = new UI.Row();
 	var radiusTop = new UI.Number( parameters.radiusTop ).onChange( update );
 
-	radiusTopRow.add( new UI.Text( 'Radius top' ).setWidth( '90px' ) );
+	radiusTopRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/cylindergeometry/radiustop' ) ).setWidth( '90px' ) );
 	radiusTopRow.add( radiusTop );
 
 	container.add( radiusTopRow );
@@ -26,7 +28,7 @@ Sidebar.Geometry.CylinderGeometry = function ( editor, object ) {
 	var radiusBottomRow = new UI.Row();
 	var radiusBottom = new UI.Number( parameters.radiusBottom ).onChange( update );
 
-	radiusBottomRow.add( new UI.Text( 'Radius bottom' ).setWidth( '90px' ) );
+	radiusBottomRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/cylindergeometry/radiusbottom' ) ).setWidth( '90px' ) );
 	radiusBottomRow.add( radiusBottom );
 
 	container.add( radiusBottomRow );
@@ -36,7 +38,7 @@ Sidebar.Geometry.CylinderGeometry = function ( editor, object ) {
 	var heightRow = new UI.Row();
 	var height = new UI.Number( parameters.height ).onChange( update );
 
-	heightRow.add( new UI.Text( 'Height' ).setWidth( '90px' ) );
+	heightRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/cylindergeometry/height' ) ).setWidth( '90px' ) );
 	heightRow.add( height );
 
 	container.add( heightRow );
@@ -46,7 +48,7 @@ Sidebar.Geometry.CylinderGeometry = function ( editor, object ) {
 	var radialSegmentsRow = new UI.Row();
 	var radialSegments = new UI.Integer( parameters.radialSegments ).setRange( 1, Infinity ).onChange( update );
 
-	radialSegmentsRow.add( new UI.Text( 'Radial segments' ).setWidth( '90px' ) );
+	radialSegmentsRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/cylindergeometry/radialsegments' ) ).setWidth( '90px' ) );
 	radialSegmentsRow.add( radialSegments );
 
 	container.add( radialSegmentsRow );
@@ -56,7 +58,7 @@ Sidebar.Geometry.CylinderGeometry = function ( editor, object ) {
 	var heightSegmentsRow = new UI.Row();
 	var heightSegments = new UI.Integer( parameters.heightSegments ).setRange( 1, Infinity ).onChange( update );
 
-	heightSegmentsRow.add( new UI.Text( 'Height segments' ).setWidth( '90px' ) );
+	heightSegmentsRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/cylindergeometry/heightsegments' ) ).setWidth( '90px' ) );
 	heightSegmentsRow.add( heightSegments );
 
 	container.add( heightSegmentsRow );
@@ -66,7 +68,7 @@ Sidebar.Geometry.CylinderGeometry = function ( editor, object ) {
 	var openEndedRow = new UI.Row();
 	var openEnded = new UI.Checkbox( parameters.openEnded ).onChange( update );
 
-	openEndedRow.add( new UI.Text( 'Open ended' ).setWidth( '90px' ) );
+	openEndedRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/cylindergeometry/openended' ) ).setWidth( '90px' ) );
 	openEndedRow.add( openEnded );
 
 	container.add( openEndedRow );

+ 7 - 5
editor/js/Sidebar.Geometry.js

@@ -4,6 +4,8 @@
 
 Sidebar.Geometry = function ( editor ) {
 
+	var strings = editor.strings;
+
 	var signals = editor.signals;
 
 	var container = new UI.Panel();
@@ -88,7 +90,7 @@ Sidebar.Geometry = function ( editor ) {
 	var geometryTypeRow = new UI.Row();
 	var geometryType = new UI.Text();
 
-	geometryTypeRow.add( new UI.Text( 'Type' ).setWidth( '90px' ) );
+	geometryTypeRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/type' ) ).setWidth( '90px' ) );
 	geometryTypeRow.add( geometryType );
 
 	container.add( geometryTypeRow );
@@ -97,7 +99,7 @@ Sidebar.Geometry = function ( editor ) {
 
 	var geometryUUIDRow = new UI.Row();
 	var geometryUUID = new UI.Input().setWidth( '102px' ).setFontSize( '12px' ).setDisabled( true );
-	var geometryUUIDRenew = new UI.Button( 'New' ).setMarginLeft( '7px' ).onClick( function () {
+	var geometryUUIDRenew = new UI.Button( strings.getKey( 'sidebar/geometry/new' ) ).setMarginLeft( '7px' ).onClick( function () {
 
 		geometryUUID.setValue( THREE.Math.generateUUID() );
 
@@ -105,7 +107,7 @@ Sidebar.Geometry = function ( editor ) {
 
 	} );
 
-	geometryUUIDRow.add( new UI.Text( 'UUID' ).setWidth( '90px' ) );
+	geometryUUIDRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/uuid' ) ).setWidth( '90px' ) );
 	geometryUUIDRow.add( geometryUUID );
 	geometryUUIDRow.add( geometryUUIDRenew );
 
@@ -120,7 +122,7 @@ Sidebar.Geometry = function ( editor ) {
 
 	} );
 
-	geometryNameRow.add( new UI.Text( 'Name' ).setWidth( '90px' ) );
+	geometryNameRow.add( new UI.Text( strings.getKey( 'sidebar/geometry/name' ) ).setWidth( '90px' ) );
 	geometryNameRow.add( geometryName );
 
 	container.add( geometryNameRow );
@@ -142,7 +144,7 @@ Sidebar.Geometry = function ( editor ) {
 
 	var geometryBoundingSphere = new UI.Text();
 
-	container.add( new UI.Text( 'Bounds' ).setWidth( '90px' ) );
+	container.add( new UI.Text( strings.getKey( 'sidebar/geometry/bounds' ) ).setWidth( '90px' ) );
 	container.add( geometryBoundingSphere );
 
 	//

+ 26 - 24
editor/js/Sidebar.Object.js

@@ -4,6 +4,8 @@
 
 Sidebar.Object = function ( editor ) {
 
+	var strings = editor.strings;
+
 	var signals = editor.signals;
 
 	var container = new UI.Panel();
@@ -59,7 +61,7 @@ Sidebar.Object = function ( editor ) {
 	var objectTypeRow = new UI.Row();
 	var objectType = new UI.Text();
 
-	objectTypeRow.add( new UI.Text( 'Type' ).setWidth( '90px' ) );
+	objectTypeRow.add( new UI.Text( strings.getKey( 'sidebar/object/type' ) ).setWidth( '90px' ) );
 	objectTypeRow.add( objectType );
 
 	container.add( objectTypeRow );
@@ -68,7 +70,7 @@ Sidebar.Object = function ( editor ) {
 
 	var objectUUIDRow = new UI.Row();
 	var objectUUID = new UI.Input().setWidth( '102px' ).setFontSize( '12px' ).setDisabled( true );
-	var objectUUIDRenew = new UI.Button( 'New' ).setMarginLeft( '7px' ).onClick( function () {
+	var objectUUIDRenew = new UI.Button( strings.getKey( 'sidebar/object/new' ) ).setMarginLeft( '7px' ).onClick( function () {
 
 		objectUUID.setValue( THREE.Math.generateUUID() );
 
@@ -76,7 +78,7 @@ Sidebar.Object = function ( editor ) {
 
 	} );
 
-	objectUUIDRow.add( new UI.Text( 'UUID' ).setWidth( '90px' ) );
+	objectUUIDRow.add( new UI.Text( strings.getKey( 'sidebar/object/uuid' ) ).setWidth( '90px' ) );
 	objectUUIDRow.add( objectUUID );
 	objectUUIDRow.add( objectUUIDRenew );
 
@@ -91,7 +93,7 @@ Sidebar.Object = function ( editor ) {
 
 	} );
 
-	objectNameRow.add( new UI.Text( 'Name' ).setWidth( '90px' ) );
+	objectNameRow.add( new UI.Text( strings.getKey( 'sidebar/object/name' ) ).setWidth( '90px' ) );
 	objectNameRow.add( objectName );
 
 	container.add( objectNameRow );
@@ -103,7 +105,7 @@ Sidebar.Object = function ( editor ) {
 	var objectPositionY = new UI.Number().setPrecision( 3 ).setWidth( '50px' ).onChange( update );
 	var objectPositionZ = new UI.Number().setPrecision( 3 ).setWidth( '50px' ).onChange( update );
 
-	objectPositionRow.add( new UI.Text( 'Position' ).setWidth( '90px' ) );
+	objectPositionRow.add( new UI.Text( strings.getKey( 'sidebar/object/position' ) ).setWidth( '90px' ) );
 	objectPositionRow.add( objectPositionX, objectPositionY, objectPositionZ );
 
 	container.add( objectPositionRow );
@@ -115,7 +117,7 @@ Sidebar.Object = function ( editor ) {
 	var objectRotationY = new UI.Number().setStep( 10 ).setUnit( '°' ).setWidth( '50px' ).onChange( update );
 	var objectRotationZ = new UI.Number().setStep( 10 ).setUnit( '°' ).setWidth( '50px' ).onChange( update );
 
-	objectRotationRow.add( new UI.Text( 'Rotation' ).setWidth( '90px' ) );
+	objectRotationRow.add( new UI.Text( strings.getKey( 'sidebar/object/rotation' ) ).setWidth( '90px' ) );
 	objectRotationRow.add( objectRotationX, objectRotationY, objectRotationZ );
 
 	container.add( objectRotationRow );
@@ -128,7 +130,7 @@ Sidebar.Object = function ( editor ) {
 	var objectScaleY = new UI.Number( 1 ).setPrecision( 3 ).setRange( 0.001, Infinity ).setWidth( '50px' ).onChange( updateScaleY );
 	var objectScaleZ = new UI.Number( 1 ).setPrecision( 3 ).setRange( 0.001, Infinity ).setWidth( '50px' ).onChange( updateScaleZ );
 
-	objectScaleRow.add( new UI.Text( 'Scale' ).setWidth( '90px' ) );
+	objectScaleRow.add( new UI.Text( strings.getKey( 'sidebar/object/scale' ) ).setWidth( '90px' ) );
 	objectScaleRow.add( objectScaleLock );
 	objectScaleRow.add( objectScaleX, objectScaleY, objectScaleZ );
 
@@ -139,7 +141,7 @@ Sidebar.Object = function ( editor ) {
 	var objectFovRow = new UI.Row();
 	var objectFov = new UI.Number().onChange( update );
 
-	objectFovRow.add( new UI.Text( 'Fov' ).setWidth( '90px' ) );
+	objectFovRow.add( new UI.Text( strings.getKey( 'sidebar/object/fov' ) ).setWidth( '90px' ) );
 	objectFovRow.add( objectFov );
 
 	container.add( objectFovRow );
@@ -149,7 +151,7 @@ Sidebar.Object = function ( editor ) {
 	var objectNearRow = new UI.Row();
 	var objectNear = new UI.Number().onChange( update );
 
-	objectNearRow.add( new UI.Text( 'Near' ).setWidth( '90px' ) );
+	objectNearRow.add( new UI.Text( strings.getKey( 'sidebar/object/near' ) ).setWidth( '90px' ) );
 	objectNearRow.add( objectNear );
 
 	container.add( objectNearRow );
@@ -159,7 +161,7 @@ Sidebar.Object = function ( editor ) {
 	var objectFarRow = new UI.Row();
 	var objectFar = new UI.Number().onChange( update );
 
-	objectFarRow.add( new UI.Text( 'Far' ).setWidth( '90px' ) );
+	objectFarRow.add( new UI.Text( strings.getKey( 'sidebar/object/far' ) ).setWidth( '90px' ) );
 	objectFarRow.add( objectFar );
 
 	container.add( objectFarRow );
@@ -169,7 +171,7 @@ Sidebar.Object = function ( editor ) {
 	var objectIntensityRow = new UI.Row();
 	var objectIntensity = new UI.Number().setRange( 0, Infinity ).onChange( update );
 
-	objectIntensityRow.add( new UI.Text( 'Intensity' ).setWidth( '90px' ) );
+	objectIntensityRow.add( new UI.Text( strings.getKey( 'sidebar/object/intensity' ) ).setWidth( '90px' ) );
 	objectIntensityRow.add( objectIntensity );
 
 	container.add( objectIntensityRow );
@@ -179,7 +181,7 @@ Sidebar.Object = function ( editor ) {
 	var objectColorRow = new UI.Row();
 	var objectColor = new UI.Color().onChange( update );
 
-	objectColorRow.add( new UI.Text( 'Color' ).setWidth( '90px' ) );
+	objectColorRow.add( new UI.Text( strings.getKey( 'sidebar/object/color' ) ).setWidth( '90px' ) );
 	objectColorRow.add( objectColor );
 
 	container.add( objectColorRow );
@@ -189,7 +191,7 @@ Sidebar.Object = function ( editor ) {
 	var objectGroundColorRow = new UI.Row();
 	var objectGroundColor = new UI.Color().onChange( update );
 
-	objectGroundColorRow.add( new UI.Text( 'Ground color' ).setWidth( '90px' ) );
+	objectGroundColorRow.add( new UI.Text( strings.getKey( 'sidebar/object/groundcolor' ) ).setWidth( '90px' ) );
 	objectGroundColorRow.add( objectGroundColor );
 
 	container.add( objectGroundColorRow );
@@ -199,7 +201,7 @@ Sidebar.Object = function ( editor ) {
 	var objectDistanceRow = new UI.Row();
 	var objectDistance = new UI.Number().setRange( 0, Infinity ).onChange( update );
 
-	objectDistanceRow.add( new UI.Text( 'Distance' ).setWidth( '90px' ) );
+	objectDistanceRow.add( new UI.Text( strings.getKey( 'sidebar/object/distance' ) ).setWidth( '90px' ) );
 	objectDistanceRow.add( objectDistance );
 
 	container.add( objectDistanceRow );
@@ -209,7 +211,7 @@ Sidebar.Object = function ( editor ) {
 	var objectAngleRow = new UI.Row();
 	var objectAngle = new UI.Number().setPrecision( 3 ).setRange( 0, Math.PI / 2 ).onChange( update );
 
-	objectAngleRow.add( new UI.Text( 'Angle' ).setWidth( '90px' ) );
+	objectAngleRow.add( new UI.Text( strings.getKey( 'sidebar/object/angle' ) ).setWidth( '90px' ) );
 	objectAngleRow.add( objectAngle );
 
 	container.add( objectAngleRow );
@@ -219,7 +221,7 @@ Sidebar.Object = function ( editor ) {
 	var objectPenumbraRow = new UI.Row();
 	var objectPenumbra = new UI.Number().setRange( 0, 1 ).onChange( update );
 
-	objectPenumbraRow.add( new UI.Text( 'Penumbra' ).setWidth( '90px' ) );
+	objectPenumbraRow.add( new UI.Text( strings.getKey( 'sidebar/object/penumbra' ) ).setWidth( '90px' ) );
 	objectPenumbraRow.add( objectPenumbra );
 
 	container.add( objectPenumbraRow );
@@ -229,7 +231,7 @@ Sidebar.Object = function ( editor ) {
 	var objectDecayRow = new UI.Row();
 	var objectDecay = new UI.Number().setRange( 0, Infinity ).onChange( update );
 
-	objectDecayRow.add( new UI.Text( 'Decay' ).setWidth( '90px' ) );
+	objectDecayRow.add( new UI.Text( strings.getKey( 'sidebar/object/decay' ) ).setWidth( '90px' ) );
 	objectDecayRow.add( objectDecay );
 
 	container.add( objectDecayRow );
@@ -238,12 +240,12 @@ Sidebar.Object = function ( editor ) {
 
 	var objectShadowRow = new UI.Row();
 
-	objectShadowRow.add( new UI.Text( 'Shadow' ).setWidth( '90px' ) );
+	objectShadowRow.add( new UI.Text( strings.getKey( 'sidebar/object/shadow' ) ).setWidth( '90px' ) );
 
-	var objectCastShadow = new UI.THREE.Boolean( false, 'cast' ).onChange( update );
+	var objectCastShadow = new UI.THREE.Boolean( false, strings.getKey( 'sidebar/object/cast' ) ).onChange( update );
 	objectShadowRow.add( objectCastShadow );
 
-	var objectReceiveShadow = new UI.THREE.Boolean( false, 'receive' ).onChange( update );
+	var objectReceiveShadow = new UI.THREE.Boolean( false, strings.getKey( 'sidebar/object/receive' ) ).onChange( update );
 	objectShadowRow.add( objectReceiveShadow );
 
 	var objectShadowRadius = new UI.Number( 1 ).onChange( update );
@@ -256,7 +258,7 @@ Sidebar.Object = function ( editor ) {
 	var objectVisibleRow = new UI.Row();
 	var objectVisible = new UI.Checkbox().onChange( update );
 
-	objectVisibleRow.add( new UI.Text( 'Visible' ).setWidth( '90px' ) );
+	objectVisibleRow.add( new UI.Text( strings.getKey( 'sidebar/object/visible' ) ).setWidth( '90px' ) );
 	objectVisibleRow.add( objectVisible );
 
 	container.add( objectVisibleRow );
@@ -266,7 +268,7 @@ Sidebar.Object = function ( editor ) {
 	var objectFrustumCulledRow = new UI.Row();
 	var objectFrustumCulled = new UI.Checkbox().onChange( update );
 
-	objectFrustumCulledRow.add( new UI.Text( 'Frustum Cull' ).setWidth( '90px' ) );
+	objectFrustumCulledRow.add( new UI.Text( strings.getKey( 'sidebar/object/frustumcull' ) ).setWidth( '90px' ) );
 	objectFrustumCulledRow.add( objectFrustumCulled );
 
 	container.add( objectFrustumCulledRow );
@@ -276,7 +278,7 @@ Sidebar.Object = function ( editor ) {
 	var objectRenderOrderRow = new UI.Row();
 	var objectRenderOrder = new UI.Integer().setWidth( '50px' ).onChange( update );
 
-	objectRenderOrderRow.add( new UI.Text( 'Render Order' ).setWidth( '90px' ) );
+	objectRenderOrderRow.add( new UI.Text( strings.getKey( 'sidebar/object/renderorder' ) ).setWidth( '90px' ) );
 	objectRenderOrderRow.add( objectRenderOrder );
 
 	container.add( objectRenderOrderRow );
@@ -305,7 +307,7 @@ Sidebar.Object = function ( editor ) {
 
 	} );
 
-	objectUserDataRow.add( new UI.Text( 'User data' ).setWidth( '90px' ) );
+	objectUserDataRow.add( new UI.Text( strings.getKey( 'sidebar/object/userdata' ) ).setWidth( '90px' ) );
 	objectUserDataRow.add( objectUserData );
 
 	container.add( objectUserDataRow );

+ 106 - 0
editor/js/Strings.js

@@ -68,6 +68,59 @@ var Strings = function ( config ) {
 			'sidebar/properties/material': 'Material',
 			'sidebar/properties/script': 'Script',
 
+			'sidebar/object/type': 'Type',
+			'sidebar/object/new': 'New',
+			'sidebar/object/uuid': 'UUID',
+			'sidebar/object/name': 'Name',
+			'sidebar/object/position': 'Position',
+			'sidebar/object/rotation': 'Rotation',
+			'sidebar/object/scale': 'Scale',
+			'sidebar/object/fov': 'Fov',
+			'sidebar/object/near': 'Near',
+			'sidebar/object/far': 'Far',
+			'sidebar/object/intensity': 'Intensity',
+			'sidebar/object/color': 'Color',
+			'sidebar/object/groundcolor': 'Ground Color',
+			'sidebar/object/distance': 'Distance',
+			'sidebar/object/angle': 'Angle',
+			'sidebar/object/penumbra': 'Penumbra',
+			'sidebar/object/decay': 'Decay',
+			'sidebar/object/shadow': 'Shadow',
+			'sidebar/object/cast': 'cast',
+			'sidebar/object/receive': 'receive',
+			'sidebar/object/visible': 'Visible',
+			'sidebar/object/frustumcull': 'Frustum Cull',
+			'sidebar/object/renderorder': 'Render Order',
+			'sidebar/object/userdata': 'User data',
+
+			'sidebar/geometry/type': 'Type',
+			'sidebar/geometry/new': 'New',
+			'sidebar/geometry/uuid': 'UUID',
+			'sidebar/geometry/name': 'Name',
+			'sidebar/geometry/bounds': 'Bounds',
+
+			'sidebar/geometry/boxgeometry/width': 'Width',
+			'sidebar/geometry/boxgeometry/height': 'Height',
+			'sidebar/geometry/boxgeometry/depth': 'Depth',
+			'sidebar/geometry/boxgeometry/widthseg': 'Width Seg',
+			'sidebar/geometry/boxgeometry/heightseg': 'Height Seg',
+			'sidebar/geometry/boxgeometry/depthseg': 'Depth Seg',
+
+			'sidebar/geometry/buffergeometry/attributes': 'Attributes',
+			'sidebar/geometry/buffergeometry/index': 'index',
+
+			'sidebar/geometry/circlegeometry/radius': 'Radius',
+			'sidebar/geometry/circlegeometry/segments': 'Segments',
+			'sidebar/geometry/circlegeometry/thetastart': 'Theta start',
+			'sidebar/geometry/circlegeometry/thetalength': 'Theta length',
+
+			'sidebar/geometry/cylindergeometry/radiustop': 'Radius top',
+			'sidebar/geometry/cylindergeometry/radiusbottom': 'Radius bottom',
+			'sidebar/geometry/cylindergeometry/height': 'Height',
+			'sidebar/geometry/cylindergeometry/radialsegments': 'Radial segments',
+			'sidebar/geometry/cylindergeometry/heightsegments': 'Height segments',
+			'sidebar/geometry/cylindergeometry/openended': 'Open ended',
+
 			'sidebar/project': 'Project',
 			'sidebar/project/title': 'Title',
 			'sidebar/project/editable': 'Editable',
@@ -157,6 +210,59 @@ var Strings = function ( config ) {
 			'sidebar/properties/material': '材质组件',
 			'sidebar/properties/script': '脚本',
 
+			'sidebar/object/type': '类型',
+			'sidebar/object/new': '更新',
+			'sidebar/object/uuid': '识别码',
+			'sidebar/object/name': '名称',
+			'sidebar/object/position': '位置',
+			'sidebar/object/rotation': '旋转',
+			'sidebar/object/scale': '缩放',
+			'sidebar/object/fov': '视角',
+			'sidebar/object/near': '近点',
+			'sidebar/object/far': '远点',
+			'sidebar/object/intensity': '强度',
+			'sidebar/object/color': '颜色',
+			'sidebar/object/groundcolor': '基色',
+			'sidebar/object/distance': '距离',
+			'sidebar/object/angle': '角度',
+			'sidebar/object/penumbra': '边缘',
+			'sidebar/object/decay': '衰减',
+			'sidebar/object/shadow': '阴影',
+			'sidebar/object/cast': '产生',
+			'sidebar/object/receive': '接受',
+			'sidebar/object/visible': '可见性',
+			'sidebar/object/frustumcull': '视锥体裁剪',
+			'sidebar/object/renderorder': '渲染次序',
+			'sidebar/object/userdata': '自定义数据',
+
+			'sidebar/geometry/type': '类型',
+			'sidebar/geometry/new': '更新',
+			'sidebar/geometry/uuid': '识别码',
+			'sidebar/geometry/name': '名称',
+			'sidebar/geometry/bounds': '界限',
+
+			'sidebar/geometry/boxgeometry/width': '宽度',
+			'sidebar/geometry/boxgeometry/height': '高度',
+			'sidebar/geometry/boxgeometry/depth': '深度',
+			'sidebar/geometry/boxgeometry/widthseg': '宽度分段',
+			'sidebar/geometry/boxgeometry/heightseg': '高度分段',
+			'sidebar/geometry/boxgeometry/depthseg': '深度分段',
+
+			'sidebar/geometry/buffergeometry/attributes': '属性',
+			'sidebar/geometry/buffergeometry/index': '索引',
+
+			'sidebar/geometry/circlegeometry/radius': '半径',
+			'sidebar/geometry/circlegeometry/segments': '分段',
+			'sidebar/geometry/circlegeometry/thetastart': '弧度起点',
+			'sidebar/geometry/circlegeometry/thetalength': '弧度长度',
+
+			'sidebar/geometry/cylindergeometry/radiustop': '顶部半径',
+			'sidebar/geometry/cylindergeometry/radiusbottom': '底部半径',
+			'sidebar/geometry/cylindergeometry/height': '高度',
+			'sidebar/geometry/cylindergeometry/radialsegments': '径向分段',
+			'sidebar/geometry/cylindergeometry/heightsegments': '高度分段',
+			'sidebar/geometry/cylindergeometry/openended': '开端',
+
 			'sidebar/project': '项目',
 			'sidebar/project/title': '标题',
 			'sidebar/project/editable': '编辑性',