added direct relabelling option to pen trails blocks' context menus

pull/89/head
jmoenig 2019-12-13 09:56:45 +01:00
rodzic 03d56d4cc8
commit c4d55b7b38
4 zmienionych plików z 36 dodań i 48 usunięć

Wyświetl plik

@ -13,6 +13,9 @@
* NEW Slovak translation, thanks, Peter Lukacovic
* German
### 2019-12-13
* added direct relabelling option to pen trails blocks' context menus
### 2019-12-10
* NEW Slovak translation, thanks, Peter Lukacovic

Wyświetl plik

@ -6,9 +6,9 @@
<link rel="shortcut icon" href="src/favicon.ico">
<script type="text/javascript" src="src/morphic.js?version=2019-11-12"></script>
<script type="text/javascript" src="src/widgets.js?version=2019-10-16"></script>
<script type="text/javascript" src="src/blocks.js?version=2019-12-03"></script>
<script type="text/javascript" src="src/blocks.js?version=2019-12-13"></script>
<script type="text/javascript" src="src/threads.js?version=2019-12-05"></script>
<script type="text/javascript" src="src/objects.js?version=2019-12-05"></script>
<script type="text/javascript" src="src/objects.js?version=2019-12-13"></script>
<script type="text/javascript" src="src/gui.js?version=2019-12-07"></script>
<script type="text/javascript" src="src/paint.js?version=2019-06-27"></script>
<script type="text/javascript" src="src/lists.js?version=2019-12-08"></script>

Wyświetl plik

@ -148,7 +148,7 @@ CustomCommandBlockMorph, SymbolMorph, ToggleButtonMorph, DialMorph*/
// Global stuff ////////////////////////////////////////////////////////
modules.blocks = '2019-December-03';
modules.blocks = '2019-December-13';
var SyntaxElementMorph;
var BlockMorph;
@ -2851,7 +2851,9 @@ BlockMorph.prototype.userMenu = function () {
}
}
// JIT-compile HOFs - experimental
// direct relabelling:
// - JIT-compile HOFs - experimental
// - vector pen trails
if (
contains(
['reportMap', 'reportKeep', 'reportFindFirst', 'reportCombine'],
@ -2897,6 +2899,27 @@ BlockMorph.prototype.userMenu = function () {
myself.changed();
}
);
} else if (
contains(
['reportPenTrailsAsCostume', 'reportPentrailsAsSVG'],
this.selector
)
) {
alternatives = {
reportPenTrailsAsCostume : 'reportPentrailsAsSVG',
reportPentrailsAsSVG : 'reportPenTrailsAsCostume'
};
menu.addItem(
localize(
SpriteMorph.prototype.blocks[
alternatives[myself.selector]
].spec
),
function () {
myself.setSelector(alternatives[myself.selector]);
myself.changed();
}
);
}
menu.addItem(

Wyświetl plik

@ -84,7 +84,7 @@ BlockEditorMorph, BlockDialogMorph, PrototypeHatBlockMorph, BooleanSlotMorph,
localize, TableMorph, TableFrameMorph, normalizeCanvas, VectorPaintEditorMorph,
HandleMorph, AlignmentMorph, Process, XML_Element, WorldMap, copyCanvas*/
modules.objects = '2019-December-05';
modules.objects = '2019-December-13';
var SpriteMorph;
var StageMorph;
@ -688,20 +688,17 @@ SpriteMorph.prototype.initBlocks = function () {
category: 'pen',
spec: 'pen trails'
},
reportPentrailsAsSVG: {
type: 'reporter',
category: 'pen',
spec: 'pen vectors'
},
doPasteOn: {
type: 'command',
category: 'pen',
spec: 'paste on %spr'
},
// Pen - experimental primitives for development mode
reportPentrailsAsSVG: {
dev: true,
type: 'reporter',
category: 'pen',
spec: 'pen vectors'
},
// Control
receiveGo: {
type: 'hat',
@ -1560,9 +1557,6 @@ SpriteMorph.prototype.blockAlternatives = {
changeSize: ['setSize'],
setSize: ['changeSize'],
reportPenTrailsAsCostume: ['reportPentrailsAsSVG'],
reportPentrailsAsSVG: ['reportPenTrailsAsCostume'],
// control:
doBroadcast: ['doBroadcastAndWait'],
doBroadcastAndWait: ['doBroadcast'],
@ -2329,22 +2323,6 @@ SpriteMorph.prototype.blockTemplates = function (category) {
blocks.push('=');
blocks.push(this.makeBlockButton(cat));
// for debugging: ///////////////
if (this.world().isDevMode) {
blocks.push('-');
txt = new TextMorph(localize(
'development mode \ndebugging primitives:'
));
txt.fontSize = 9;
txt.setColor(this.paletteTextColor);
blocks.push(txt);
blocks.push('-');
blocks.push(block('reportPentrailsAsSVG'));
}
////////////////////////////////
} else if (cat === 'control') {
blocks.push(block('receiveGo'));
@ -8476,22 +8454,6 @@ StageMorph.prototype.blockTemplates = function (category) {
blocks.push('=');
blocks.push(this.makeBlockButton(cat));
// for debugging: ///////////////
if (this.world().isDevMode) {
blocks.push('-');
txt = new TextMorph(localize(
'development mode \ndebugging primitives:'
));
txt.fontSize = 9;
txt.setColor(this.paletteTextColor);
blocks.push(txt);
blocks.push('-');
blocks.push(block('reportPentrailsAsSVG'));
}
/////////////////////////////////
} else if (cat === 'control') {
blocks.push(block('receiveGo'));