summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--public/assets/javascripts/mx/primitives/mx.youtube.js3
-rw-r--r--public/assets/javascripts/rectangles/models/vec2.js8
-rw-r--r--public/assets/javascripts/ui/builder/BuilderInfo.js48
-rw-r--r--public/assets/javascripts/ui/editor/MediaEditor.js2
-rwxr-xr-xpublic/assets/stylesheets/app.css1
5 files changed, 48 insertions, 14 deletions
diff --git a/public/assets/javascripts/mx/primitives/mx.youtube.js b/public/assets/javascripts/mx/primitives/mx.youtube.js
index 5514359..f7f00aa 100644
--- a/public/assets/javascripts/mx/primitives/mx.youtube.js
+++ b/public/assets/javascripts/mx/primitives/mx.youtube.js
@@ -48,7 +48,7 @@ MX.Youtube = MX.Object3D.extend({
}.bind(this), 300)
}
else {
- // not sure why i need to wait here..
+ // not sure why i need to delay here..
// stopped working until i added the setTimeout
setTimeout(function(){
this.build(uid)
@@ -132,7 +132,6 @@ MX.Youtube = MX.Object3D.extend({
},
pause: function(){
- console.log(this, bzbz = this.player)
this.paused = true
this.player.pauseVideo()
},
diff --git a/public/assets/javascripts/rectangles/models/vec2.js b/public/assets/javascripts/rectangles/models/vec2.js
index 5cdd54c..b8dba93 100644
--- a/public/assets/javascripts/rectangles/models/vec2.js
+++ b/public/assets/javascripts/rectangles/models/vec2.js
@@ -52,6 +52,14 @@ vec2.prototype.div = function(n){
this.b /= n
return this
}
+vec2.prototype.setPosition = function(n){
+ var len = this.length()
+ this.a = n
+ this.b = n + len
+}
+vec2.prototype.setLength = function(n){
+ this.b = this.a + n
+}
vec2.prototype.normalize = function(){
var dim = max(this.a, this.b)
this.a = this.a/dim
diff --git a/public/assets/javascripts/ui/builder/BuilderInfo.js b/public/assets/javascripts/ui/builder/BuilderInfo.js
index ee6c81a..2a7c8d9 100644
--- a/public/assets/javascripts/ui/builder/BuilderInfo.js
+++ b/public/assets/javascripts/ui/builder/BuilderInfo.js
@@ -4,11 +4,11 @@ var BuilderInfo = View.extend({
events: {
"keydown": 'stopPropagation',
- "change [name=x]": 'changePosition',
- "change [name=y]": 'changePosition',
- "change [name=width]": 'changeDimensions',
- "change [name=depth]": 'changeDimensions',
- "change [name=height]": 'changeDimensions',
+ "change [name=x]": 'changeX',
+ "change [name=y]": 'changeY',
+ "change [name=width]": 'changeWidth',
+ "change [name=depth]": 'changeDepth',
+ "change [name=height]": 'changeHeight',
"change [name=units]": 'changeUnits',
"change [name=resolution]": 'changeResolution',
"change [name=viewHeight]": 'changeViewHeight',
@@ -63,11 +63,31 @@ var BuilderInfo = View.extend({
this.room = null
this.hide()
},
-
- changeDimensions: function(){
-// this.$width.unitVal( room.rect.x.length() )
-// this.$depth.unitVal( room.rect.y.length() )
-// this.$height.unitVal( room.height )
+
+ changeWidth: function(e){
+ e.stopPropagation()
+ this.room.rect.x.setLength( this.$width.unitVal() )
+ Rooms.clipper.update()
+ },
+ changeDepth: function(e){
+ e.stopPropagation()
+ this.room.rect.y.setLength( this.$depth.unitVal() )
+ Rooms.clipper.update()
+ },
+ changeHeight: function(e){
+ e.stopPropagation()
+ this.room.height = this.$height.unitVal()
+ Rooms.clipper.update()
+ },
+ changeX: function(e){
+ e.stopPropagation()
+ this.room.rect.x.setPosition( this.$x.unitVal() )
+ Rooms.clipper.update()
+ },
+ changeY: function(e){
+ e.stopPropagation()
+ this.room.rect.y.setPosition( this.$y.unitVal() )
+ Rooms.clipper.update()
},
changeUnits: function(){
@@ -93,6 +113,9 @@ $.fn.unitVal = function(n){
if (typeof n === "undefined") {
s = $(this).val()
n = stringToMeasurement( s )
+ if (! n || isNaN(n)) {
+ n = $(this).data("px")
+ }
}
s = measurementToString( n )
$(this).val( s ).data("px", n)
@@ -122,6 +145,9 @@ function measurementToString( n ) {
}
function stringToMeasurement( s ) {
var ft, inch, ft_in, type
+ if (! s.match(/[0-9]/)) {
+ return NaN
+ }
if (s.indexOf("'") !== -1 || s.indexOf('"') !== -1 || s.indexOf('ft') !== -1) {
ft_in = s.match(/[0-9.]+/g)
if (ft_in.length >= 2) {
@@ -143,7 +169,7 @@ function stringToMeasurement( s ) {
}
n = ft * 36 + inch * 3
}
- else if (type === "m") {
+ else if (s.indexOf("m") !== -1) {
n = parseFloat(s.match(/[0-9.]+/)) * 36 / 0.3048
}
else if (s.indexOf("px") !== -1) {
diff --git a/public/assets/javascripts/ui/editor/MediaEditor.js b/public/assets/javascripts/ui/editor/MediaEditor.js
index f4e8071..cd8fb63 100644
--- a/public/assets/javascripts/ui/editor/MediaEditor.js
+++ b/public/assets/javascripts/ui/editor/MediaEditor.js
@@ -47,7 +47,7 @@ var MediaEditor = FormView.extend({
if (this.scenery) {
this.unbind()
}
-console.log(scenery)
+
this.bind(scenery)
this.$el.addClass("active")
diff --git a/public/assets/stylesheets/app.css b/public/assets/stylesheets/app.css
index 61a4fa9..9072542 100755
--- a/public/assets/stylesheets/app.css
+++ b/public/assets/stylesheets/app.css
@@ -540,6 +540,7 @@ iframe.embed {
}
.mx-object3d.image,
.mx-object3d.video,
+.mx-object3d iframe,
.mx-object3d canvas,
.mx-object3d.backface-hidden {
-webkit-backface-visibility: hidden;