enable sending green-flag events when switching scenes

snap7
jmoenig 2021-10-20 13:21:49 +02:00
rodzic 25d7d97f05
commit 52473cfb4e
3 zmienionych plików z 18 dodań i 5 usunięć

Wyświetl plik

@ -41,6 +41,9 @@
* German
* Chinese, thanks, Simon!
### 2021-10-20
* blocks: enable sending green-flag events when switching scenes
### 2021-10-19
* threads: enable sending green-flag events to specific sprites

Wyświetl plik

@ -16,7 +16,7 @@
<script src="src/morphic.js?version=2021-07-09"></script>
<script src="src/symbols.js?version=2021-03-03"></script>
<script src="src/widgets.js?version=2021-07-21"></script>
<script src="src/blocks.js?version=2021-10-14"></script>
<script src="src/blocks.js?version=2021-10-20"></script>
<script src="src/threads.js?version=2021-10-19"></script>
<script src="src/objects.js?version=2021-10-14"></script>
<script src="src/scenes.js?version=2021-10-12"></script>

Wyświetl plik

@ -160,7 +160,7 @@ CustomCommandBlockMorph, ToggleButtonMorph, DialMorph, SnapExtensions*/
// Global stuff ////////////////////////////////////////////////////////
modules.blocks = '2021-October-14';
modules.blocks = '2021-October-20';
var SyntaxElementMorph;
var BlockMorph;
@ -593,6 +593,10 @@ SyntaxElementMorph.prototype.labelParts = {
tags: 'read-only static',
menu: 'messagesReceivedMenu'
},
'%msgSend': {
type: 'input',
menu: 'eventsMenu'
},
'%att': {
type: 'input',
tags: 'read-only',
@ -994,7 +998,7 @@ SyntaxElementMorph.prototype.labelParts = {
},
'%send': {
type: 'multi',
slots: '%s',
slots: '%msgSend',
label: 'and send',
tags: 'static',
max: 1
@ -9357,6 +9361,11 @@ InputSlotMorph.prototype.messagesReceivedMenu = function (searching) {
return dict;
};
InputSlotMorph.prototype.eventsMenu = function (searching) {
if (searching) {return {}; }
return {__shout__go__: ['__shout__go__']};
};
InputSlotMorph.prototype.primitivesMenu = function () {
var dict = {},
allNames = Array.from(SnapExtensions.primitives.keys());
@ -9919,7 +9928,8 @@ InputSlotMorph.prototype.fixLayout = function () {
// InputSlotMorph events:
InputSlotMorph.prototype.mouseDownLeft = function (pos) {
if (this.isReadOnly || this.arrow().bounds.containsPoint(pos)) {
if (this.isReadOnly || this.symbol ||
this.arrow().bounds.containsPoint(pos)) {
this.escalateEvent('mouseDownLeft', pos);
} else {
this.selectForEdit().contents().edit();
@ -9929,7 +9939,7 @@ InputSlotMorph.prototype.mouseDownLeft = function (pos) {
InputSlotMorph.prototype.mouseClickLeft = function (pos) {
if (this.arrow().bounds.containsPoint(pos)) {
this.dropDownMenu();
} else if (this.isReadOnly) {
} else if (this.isReadOnly || this.symbol) {
this.dropDownMenu();
} else {
this.contents().edit();