kopia lustrzana https://github.com/backface/turtlestitch
rodzic
2c361bc9a1
commit
47264f10b0
11
gui.js
11
gui.js
|
@ -70,11 +70,11 @@ fontHeight, hex_sha512, sb, CommentMorph, CommandBlockMorph,
|
||||||
BlockLabelPlaceHolderMorph, Audio, SpeechBubbleMorph, ScriptFocusMorph,
|
BlockLabelPlaceHolderMorph, Audio, SpeechBubbleMorph, ScriptFocusMorph,
|
||||||
XML_Element, WatcherMorph, BlockRemovalDialogMorph, saveAs, TableMorph,
|
XML_Element, WatcherMorph, BlockRemovalDialogMorph, saveAs, TableMorph,
|
||||||
isSnapObject, isRetinaEnabled, disableRetinaSupport, enableRetinaSupport,
|
isSnapObject, isRetinaEnabled, disableRetinaSupport, enableRetinaSupport,
|
||||||
isRetinaSupported, SliderMorph, Animation*/
|
isRetinaSupported, SliderMorph, Animation, CamSnapshotDialogMorph*/
|
||||||
|
|
||||||
// Global stuff ////////////////////////////////////////////////////////
|
// Global stuff ////////////////////////////////////////////////////////
|
||||||
|
|
||||||
modules.gui = '2017-September-05';
|
modules.gui = '2017-September-08';
|
||||||
|
|
||||||
// Declarations
|
// Declarations
|
||||||
|
|
||||||
|
@ -1503,7 +1503,12 @@ IDE_Morph.prototype.createCorralBar = function () {
|
||||||
cambutton.fixLayout();
|
cambutton.fixLayout();
|
||||||
cambutton.setCenter(this.corralBar.center());
|
cambutton.setCenter(this.corralBar.center());
|
||||||
cambutton.setLeft(
|
cambutton.setLeft(
|
||||||
this.corralBar.left() + padding + newbutton.width() + padding + paintbutton.width() + padding
|
this.corralBar.left() +
|
||||||
|
padding +
|
||||||
|
newbutton.width() +
|
||||||
|
padding +
|
||||||
|
paintbutton.width() +
|
||||||
|
padding
|
||||||
);
|
);
|
||||||
|
|
||||||
if (location.protocol === 'http:') {
|
if (location.protocol === 'http:') {
|
||||||
|
|
|
@ -3615,12 +3615,17 @@ Fixes:
|
||||||
* Blocks, Threads: added “csv” option to the SPLIT primitive
|
* Blocks, Threads: added “csv” option to the SPLIT primitive
|
||||||
* Threads: allow https query from locally loaded sources (thanks, Michael, for the hint!)
|
* Threads: allow https query from locally loaded sources (thanks, Michael, for the hint!)
|
||||||
|
|
||||||
|
170908
|
||||||
|
------
|
||||||
|
* GUI, Objects, Widgets, Symbols: Camera Snapshot Dialog. Thank you, Bernat!!
|
||||||
|
|
||||||
|
|
||||||
v4.1 Features:
|
v4.1 Features:
|
||||||
* polymorphic sprite-local custom blocks
|
* polymorphic sprite-local custom blocks
|
||||||
* inheritance of sprite-local custom blocks
|
* inheritance of sprite-local custom blocks
|
||||||
* inheritance of sprite attributes (x, y, direction, size, costumes, costume #, sounds, scripts)
|
* inheritance of sprite attributes (x, y, direction, size, costumes, costume #, sounds, scripts)
|
||||||
* first-class costumes and sounds
|
* first-class costumes and sounds
|
||||||
|
* camera snapshots for costumes and new sprites
|
||||||
* localization support when typing expressions
|
* localization support when typing expressions
|
||||||
* support for user-forced line-breaks in custom block labels
|
* support for user-forced line-breaks in custom block labels
|
||||||
* ternary Boolean slot setting: support to limit Boolean input slots to “true/false” outside of rings and in palette
|
* ternary Boolean slot setting: support to limit Boolean input slots to “true/false” outside of rings and in palette
|
||||||
|
|
16
objects.js
16
objects.js
|
@ -80,9 +80,10 @@ document, isNaN, isString, newCanvas, nop, parseFloat, radians, window,
|
||||||
modules, IDE_Morph, VariableDialogMorph, HTMLCanvasElement, Context, List,
|
modules, IDE_Morph, VariableDialogMorph, HTMLCanvasElement, Context, List,
|
||||||
SpeechBubbleMorph, RingMorph, isNil, FileReader, TableDialogMorph,
|
SpeechBubbleMorph, RingMorph, isNil, FileReader, TableDialogMorph,
|
||||||
BlockEditorMorph, BlockDialogMorph, PrototypeHatBlockMorph, localize,
|
BlockEditorMorph, BlockDialogMorph, PrototypeHatBlockMorph, localize,
|
||||||
TableMorph, TableFrameMorph, normalizeCanvas, BooleanSlotMorph, HandleMorph*/
|
TableMorph, TableFrameMorph, normalizeCanvas, BooleanSlotMorph, HandleMorph,
|
||||||
|
AlignmentMorph*/
|
||||||
|
|
||||||
modules.objects = '2017-September-05';
|
modules.objects = '2017-September-08';
|
||||||
|
|
||||||
var SpriteMorph;
|
var SpriteMorph;
|
||||||
var StageMorph;
|
var StageMorph;
|
||||||
|
@ -9526,7 +9527,7 @@ StagePrompterMorph.prototype.mouseClickLeft = function () {
|
||||||
|
|
||||||
StagePrompterMorph.prototype.accept = function () {
|
StagePrompterMorph.prototype.accept = function () {
|
||||||
this.isDone = true;
|
this.isDone = true;
|
||||||
}
|
};
|
||||||
|
|
||||||
// CamSnapshotDialogMorph /////////////////////////////////////////////////////////
|
// CamSnapshotDialogMorph /////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
@ -9546,7 +9547,7 @@ CamSnapshotDialogMorph.uber = DialogBoxMorph.prototype;
|
||||||
|
|
||||||
function CamSnapshotDialogMorph(ide, sprite, onCancel, onAccept) {
|
function CamSnapshotDialogMorph(ide, sprite, onCancel, onAccept) {
|
||||||
this.init(ide, sprite, onCancel, onAccept);
|
this.init(ide, sprite, onCancel, onAccept);
|
||||||
};
|
}
|
||||||
|
|
||||||
CamSnapshotDialogMorph.prototype.init = function (ide, sprite, onCancel, onAccept) {
|
CamSnapshotDialogMorph.prototype.init = function (ide, sprite, onCancel, onAccept) {
|
||||||
this.ide = ide;
|
this.ide = ide;
|
||||||
|
@ -9568,8 +9569,7 @@ CamSnapshotDialogMorph.prototype.init = function (ide, sprite, onCancel, onAccep
|
||||||
};
|
};
|
||||||
|
|
||||||
CamSnapshotDialogMorph.prototype.buildContents = function () {
|
CamSnapshotDialogMorph.prototype.buildContents = function () {
|
||||||
var myself = this,
|
var myself = this;
|
||||||
stage = this.ide.stage;
|
|
||||||
|
|
||||||
this.videoElement = document.createElement('video');
|
this.videoElement = document.createElement('video');
|
||||||
this.videoElement.hidden = true;
|
this.videoElement.hidden = true;
|
||||||
|
@ -9625,9 +9625,9 @@ CamSnapshotDialogMorph.prototype.buildContents = function () {
|
||||||
|
|
||||||
CamSnapshotDialogMorph.prototype.ok = function () {
|
CamSnapshotDialogMorph.prototype.ok = function () {
|
||||||
var stage = this.ide.stage,
|
var stage = this.ide.stage,
|
||||||
canvas = newCanvas(stage.dimensions);
|
canvas = newCanvas(stage.dimensions),
|
||||||
|
context = canvas.getContext('2d');
|
||||||
|
|
||||||
context = canvas.getContext('2d');
|
|
||||||
context.translate(stage.dimensions.x, 0);
|
context.translate(stage.dimensions.x, 0);
|
||||||
context.scale(-1, 1);
|
context.scale(-1, 1);
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
|
|
||||||
// Global stuff ////////////////////////////////////////////////////////
|
// Global stuff ////////////////////////////////////////////////////////
|
||||||
|
|
||||||
modules.symbols = '2017-September-01';
|
modules.symbols = '2017-September-08';
|
||||||
|
|
||||||
var SymbolMorph;
|
var SymbolMorph;
|
||||||
|
|
||||||
|
|
|
@ -85,7 +85,7 @@ HTMLCanvasElement, fontHeight, SymbolMorph, localize, SpeechBubbleMorph,
|
||||||
ArrowMorph, MenuMorph, isString, isNil, SliderMorph, MorphicPreferences,
|
ArrowMorph, MenuMorph, isString, isNil, SliderMorph, MorphicPreferences,
|
||||||
ScrollFrameMorph, MenuItemMorph, Note*/
|
ScrollFrameMorph, MenuItemMorph, Note*/
|
||||||
|
|
||||||
modules.widgets = '2017-September-01';
|
modules.widgets = '2017-September-08';
|
||||||
|
|
||||||
var PushButtonMorph;
|
var PushButtonMorph;
|
||||||
var ToggleButtonMorph;
|
var ToggleButtonMorph;
|
||||||
|
|
Ładowanie…
Reference in New Issue