kopia lustrzana https://github.com/backface/turtlestitch
new outline path rendering for variadic c-slots in command blocks
rodzic
2762c857e7
commit
a6dea08bba
|
@ -148,7 +148,7 @@ CustomCommandBlockMorph, SymbolMorph, ToggleButtonMorph, DialMorph*/
|
||||||
|
|
||||||
// Global stuff ////////////////////////////////////////////////////////
|
// Global stuff ////////////////////////////////////////////////////////
|
||||||
|
|
||||||
modules.blocks = '2020-March-29';
|
modules.blocks = '2020-March-30';
|
||||||
|
|
||||||
var SyntaxElementMorph;
|
var SyntaxElementMorph;
|
||||||
var BlockMorph;
|
var BlockMorph;
|
||||||
|
@ -5044,7 +5044,7 @@ CommandBlockMorph.prototype.outlinePath = function(ctx, inset) {
|
||||||
bottomCorner = this.height() - this.corner * 2,
|
bottomCorner = this.height() - this.corner * 2,
|
||||||
radius = Math.max(this.corner - inset, 0),
|
radius = Math.max(this.corner - inset, 0),
|
||||||
pos = this.position(),
|
pos = this.position(),
|
||||||
cslots = this.parts().filter(part => part instanceof CSlotMorph);
|
cslots = this.cSlots();
|
||||||
|
|
||||||
// top left:
|
// top left:
|
||||||
ctx.arc(
|
ctx.arc(
|
||||||
|
@ -5107,6 +5107,22 @@ CommandBlockMorph.prototype.outlinePath = function(ctx, inset) {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
CommandBlockMorph.prototype.cSlots = function () {
|
||||||
|
var result = [];
|
||||||
|
this.parts().forEach(part => {
|
||||||
|
if (part instanceof CSlotMorph) {
|
||||||
|
result.push(part);
|
||||||
|
} else if (part instanceof MultiArgMorph) {
|
||||||
|
part.parts().forEach(slot => {
|
||||||
|
if (slot instanceof CSlotMorph) {
|
||||||
|
result.push(slot);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return result;
|
||||||
|
};
|
||||||
|
|
||||||
CommandBlockMorph.prototype.drawEdges = function (ctx) {
|
CommandBlockMorph.prototype.drawEdges = function (ctx) {
|
||||||
this.drawTopDentEdge(ctx, 0, 0);
|
this.drawTopDentEdge(ctx, 0, 0);
|
||||||
this.drawBottomDentEdge(ctx, 0, this.height() - this.corner);
|
this.drawBottomDentEdge(ctx, 0, this.height() - this.corner);
|
||||||
|
@ -5291,7 +5307,7 @@ CommandBlockMorph.prototype.drawLeftEdge = function (ctx) {
|
||||||
|
|
||||||
CommandBlockMorph.prototype.drawRightEdge = function (ctx) {
|
CommandBlockMorph.prototype.drawRightEdge = function (ctx) {
|
||||||
var shift = this.edge * 0.5,
|
var shift = this.edge * 0.5,
|
||||||
cslots = this.parts().filter(part => part instanceof CSlotMorph),
|
cslots = this.cSlots(),
|
||||||
top = this.top(),
|
top = this.top(),
|
||||||
x = this.width(),
|
x = this.width(),
|
||||||
y,
|
y,
|
||||||
|
|
Ładowanie…
Reference in New Issue