Browse Source

Editor: More handling of userData.

Mr.doob 12 years ago
parent
commit
9d2eb51d34
2 changed files with 27 additions and 8 deletions
  1. 25 4
      editor/js/ui/Sidebar.Object3D.js
  2. 2 4
      editor/js/ui/Viewport.js

+ 25 - 4
editor/js/ui/Sidebar.Object3D.js

@@ -175,7 +175,7 @@ Sidebar.Object3D = function ( signals ) {
 	var objectUserDataRow = new UI.Panel();
 	objectUserDataRow.add( new UI.Text().setValue( 'User data' ).setColor( '#666' ) );
 
-	var objectUserData = new UI.TextArea( 'absolute' ).setLeft( '100px' ).setWidth( '150px' ).setColor( '#444' ).setFontSize( '12px' );
+	var objectUserData = new UI.TextArea( 'absolute' ).setLeft( '100px' ).setWidth( '150px' ).setColor( '#444' ).setFontSize( '12px' ).onChange( update );
 	objectUserDataRow.add( objectUserData );
 
 	container.add( objectUserDataRow );
@@ -254,8 +254,6 @@ Sidebar.Object3D = function ( signals ) {
 			selected.scale.y = objectScaleY.getValue();
 			selected.scale.z = objectScaleZ.getValue();
 
-			selected.visible = objectVisible.getValue();
-
 			if ( selected.fov !== undefined ) {
 
 				selected.fov = objectFov.getValue();
@@ -310,6 +308,19 @@ Sidebar.Object3D = function ( signals ) {
 
 			}
 
+			selected.visible = objectVisible.getValue();
+
+			try {
+
+				selected.userData = JSON.parse( objectUserData.getValue() );
+				// objectUserData.setValue( JSON.stringify( selected.userData, null, '  ' ) );
+
+			} catch ( error ) {
+
+				console.log( error );
+
+			}
+
 			signals.objectChanged.dispatch( selected );
 
 		}
@@ -445,7 +456,17 @@ Sidebar.Object3D = function ( signals ) {
 			}
 
 			objectVisible.setValue( object.visible );
-			objectUserData.setValue( JSON.stringify( object.userData ) );
+
+			try {
+
+				console.log( object.userData );
+				objectUserData.setValue( JSON.stringify( object.userData, null, '  ' ) );
+
+			} catch ( error ) {
+
+				console.log( error );
+
+			}
 
 			updateRows();
 			updateTransformRows();

+ 2 - 4
editor/js/ui/Viewport.js

@@ -684,7 +684,7 @@ var Viewport = function ( signals ) {
 		}
 
 		var exporter = new object.exporter();
-		
+
 		var output = JSON.stringify( exporter.parse( selected.geometry ), null, '\t' );
 		output = output.replace( /[\n\t]+([\d\.e\-\[\]]+)/g, '$1' );
 
@@ -769,7 +769,6 @@ var Viewport = function ( signals ) {
 		if ( newCamera ) {
 
 			camera = newCamera;
-			camera.userData.active = true;
 
 			camera.aspect = container.dom.offsetWidth / container.dom.offsetHeight;
 			camera.updateProjectionMatrix();
@@ -887,10 +886,9 @@ var Viewport = function ( signals ) {
 	function createDefaultCamera() {
 
 		var camera = new THREE.PerspectiveCamera( 50, 1, 1, 5000 );
-		camera.position.set( 500, 250, 500 );
 
 		camera.name = "Camera";
-		camera.userData.active = true;
+		camera.position.set( 500, 250, 500 );
 
 		return camera;