diff options
| author | jmoenig <jens@moenig.org> | 2014-02-13 09:54:40 +0100 |
|---|---|---|
| committer | jmoenig <jens@moenig.org> | 2014-02-13 09:54:40 +0100 |
| commit | 505859533586e697442b349a545aa0307784c9f4 (patch) | |
| tree | e410f910684c1314f03364fd170a19dd6d7375ed | |
| parent | dac7460e7644e49be8eca2885500f8ea6616b511 (diff) | |
| download | snap-505859533586e697442b349a545aa0307784c9f4.tar.gz snap-505859533586e697442b349a545aa0307784c9f4.zip | |
Constrain minimum stage size to 480 x 180
| -rw-r--r-- | gui.js | 15 | ||||
| -rwxr-xr-x | history.txt | 4 | ||||
| -rw-r--r-- | store.js | 6 |
3 files changed, 15 insertions, 10 deletions
@@ -68,7 +68,7 @@ sb, CommentMorph, CommandBlockMorph, BlockLabelPlaceHolderMorph, Audio*/ // Global stuff //////////////////////////////////////////////////////// -modules.gui = '2014-February-11'; +modules.gui = '2014-February-13'; // Declarations @@ -3515,7 +3515,7 @@ IDE_Morph.prototype.userSetStageHeight = function () { IDE_Morph.prototype.setStageWidth = function (num) { this.setStageExtent(new Point( - Math.max(num, 240), + num, (StageMorph.prototype.dimensions.y) )); }; @@ -3523,20 +3523,21 @@ IDE_Morph.prototype.setStageWidth = function (num) { IDE_Morph.prototype.setStageHeight = function (num) { this.setStageExtent(new Point( (StageMorph.prototype.dimensions.x), - Math.max(num, 180) + num )); }; IDE_Morph.prototype.setStageExtent = function (aPoint) { - var myself = this; + var myself = this, + ext = aPoint.max(new Point(480, 180)); function zoom() { myself.step = function () { - var delta = aPoint.subtract( + var delta = ext.subtract( StageMorph.prototype.dimensions ).divideBy(2); if (delta.abs().lt(new Point(5, 5))) { - StageMorph.prototype.dimensions = aPoint; + StageMorph.prototype.dimensions = ext; delete myself.step; } else { StageMorph.prototype.dimensions = @@ -3555,7 +3556,7 @@ IDE_Morph.prototype.setStageExtent = function (aPoint) { if (this.isAnimating) { zoom(); } else { - StageMorph.prototype.dimensions = aPoint; + StageMorph.prototype.dimensions = ext; this.stage.setExtent(StageMorph.prototype.dimensions); this.stage.clearPenTrails(); this.fixLayout(); diff --git a/history.txt b/history.txt index a99517e..236b983 100755 --- a/history.txt +++ b/history.txt @@ -2095,3 +2095,7 @@ ______ * GUI: Set stage dimensions arbitrarily (new entries in the settings menu when holding shift) * Store: Saving & Loading for arbitrary stage dimensions in the project data * new Date block, thanks, Michael!!! + +140213 +------ +* GUI, Store: constrain minimum stage size to 480 x 180 @@ -61,7 +61,7 @@ SyntaxElementMorph*/ // Global stuff //////////////////////////////////////////////////////// -modules.store = '2014-February-11'; +modules.store = '2014-February-13'; // XML_Serializer /////////////////////////////////////////////////////// @@ -380,11 +380,11 @@ SnapSerializer.prototype.loadProjectModel = function (xmlNode) { StageMorph.prototype.dimensions = new Point(480, 360); if (model.stage.attributes.width) { StageMorph.prototype.dimensions.x = - +model.stage.attributes.width; + Math.max(+model.stage.attributes.width, 480); } if (model.stage.attributes.height) { StageMorph.prototype.dimensions.y = - +model.stage.attributes.height; + Math.max(+model.stage.attributes.height, 180); } project.stage.setExtent(StageMorph.prototype.dimensions); SpriteMorph.prototype.useFlatLineEnds = |
