From fa279b91cec68abcc1301bd41aa241cb0de23989 Mon Sep 17 00:00:00 2001 From: Neil Fraser Date: Wed, 2 Dec 2015 22:10:09 -0800 Subject: [PATCH] Add option to delete all blocks on workspace. --- blockly_compressed.js | 63 +++++++++++++++++++------------------ core/block_svg.js | 24 +++++++------- core/workspace_svg.js | 45 ++++++++++++++++++++++++-- demos/code/code.js | 2 +- demos/code/msg/ar.js | 1 - demos/code/msg/be-tarask.js | 1 - demos/code/msg/br.js | 1 - demos/code/msg/ca.js | 1 - demos/code/msg/cs.js | 1 - demos/code/msg/da.js | 1 - demos/code/msg/de.js | 1 - demos/code/msg/el.js | 1 - demos/code/msg/en.js | 1 - demos/code/msg/es.js | 1 - demos/code/msg/fa.js | 1 - demos/code/msg/fr.js | 1 - demos/code/msg/he.js | 1 - demos/code/msg/hrx.js | 1 - demos/code/msg/hu.js | 1 - demos/code/msg/ia.js | 1 - demos/code/msg/is.js | 1 - demos/code/msg/it.js | 1 - demos/code/msg/ja.js | 1 - demos/code/msg/ko.js | 1 - demos/code/msg/mk.js | 1 - demos/code/msg/ms.js | 3 +- demos/code/msg/nb.js | 1 - demos/code/msg/nl.js | 1 - demos/code/msg/oc.js | 1 - demos/code/msg/pl.js | 1 - demos/code/msg/pms.js | 1 - demos/code/msg/pt-br.js | 1 - demos/code/msg/ro.js | 1 - demos/code/msg/ru.js | 1 - demos/code/msg/sc.js | 1 - demos/code/msg/sk.js | 1 - demos/code/msg/sr.js | 1 - demos/code/msg/sv.js | 1 - demos/code/msg/ta.js | 1 - demos/code/msg/th.js | 1 - demos/code/msg/tlh.js | 1 - demos/code/msg/tr.js | 1 - demos/code/msg/uk.js | 1 - demos/code/msg/vi.js | 1 - demos/code/msg/zh-hans.js | 1 - demos/code/msg/zh-hant.js | 1 - msg/js/ar.js | 1 + msg/js/az.js | 1 + msg/js/bcc.js | 1 + msg/js/be-tarask.js | 1 + msg/js/bg.js | 1 + msg/js/bn.js | 1 + msg/js/br.js | 1 + msg/js/ca.js | 1 + msg/js/cs.js | 1 + msg/js/da.js | 1 + msg/js/de.js | 1 + msg/js/el.js | 1 + msg/js/en.js | 1 + msg/js/es.js | 1 + msg/js/fa.js | 1 + msg/js/fi.js | 1 + msg/js/fr.js | 1 + msg/js/he.js | 1 + msg/js/hi.js | 1 + msg/js/hrx.js | 1 + msg/js/hu.js | 1 + msg/js/ia.js | 1 + msg/js/id.js | 1 + msg/js/is.js | 1 + msg/js/it.js | 1 + msg/js/ja.js | 1 + msg/js/ko.js | 1 + msg/js/lb.js | 1 + msg/js/lrc.js | 1 + msg/js/lt.js | 1 + msg/js/mk.js | 1 + msg/js/ms.js | 1 + msg/js/nb.js | 3 +- msg/js/nl.js | 1 + msg/js/oc.js | 1 + msg/js/pl.js | 1 + msg/js/pms.js | 1 + msg/js/pt-br.js | 1 + msg/js/pt.js | 1 + msg/js/ro.js | 1 + msg/js/ru.js | 1 + msg/js/sc.js | 1 + msg/js/shn.js | 1 + msg/js/sk.js | 1 + msg/js/sq.js | 1 + msg/js/sr.js | 1 + msg/js/sv.js | 1 + msg/js/ta.js | 1 + msg/js/tcy.js | 1 + msg/js/th.js | 1 + msg/js/tl.js | 1 + msg/js/tlh.js | 1 + msg/js/tr.js | 1 + msg/js/uk.js | 1 + msg/js/vi.js | 1 + msg/js/zh-hans.js | 1 + msg/js/zh-hant.js | 1 + msg/json/ar.json | 1 + msg/json/be-tarask.json | 1 + msg/json/br.json | 1 + msg/json/ca.json | 1 + msg/json/cs.json | 1 + msg/json/da.json | 1 + msg/json/de.json | 1 + msg/json/el.json | 1 + msg/json/en.json | 3 +- msg/json/es.json | 1 + msg/json/fa.json | 1 + msg/json/fr.json | 1 + msg/json/he.json | 1 + msg/json/hrx.json | 1 + msg/json/hu.json | 1 + msg/json/ia.json | 1 + msg/json/is.json | 1 + msg/json/it.json | 1 + msg/json/ja.json | 1 + msg/json/ko.json | 1 + msg/json/mk.json | 1 + msg/json/ms.json | 1 + msg/json/nb.json | 3 +- msg/json/nl.json | 1 + msg/json/oc.json | 1 + msg/json/pl.json | 1 + msg/json/pms.json | 1 + msg/json/pt-br.json | 1 + msg/json/qqq.json | 8 +---- msg/json/ro.json | 1 + msg/json/ru.json | 1 + msg/json/sc.json | 1 + msg/json/sk.json | 1 + msg/json/sr.json | 1 + msg/json/sv.json | 1 + msg/json/ta.json | 1 + msg/json/th.json | 1 + msg/json/tlh.json | 1 + msg/json/tr.json | 1 + msg/json/uk.json | 1 + msg/json/vi.json | 1 + msg/json/zh-hans.json | 1 + msg/json/zh-hant.json | 1 + msg/messages.js | 2 ++ 147 files changed, 194 insertions(+), 99 deletions(-) diff --git a/blockly_compressed.js b/blockly_compressed.js index ce9480345..89d445b27 100644 --- a/blockly_compressed.js +++ b/blockly_compressed.js @@ -58,8 +58,8 @@ goog.string.escapeChar=function(a){if(a in goog.string.jsEscapeCache_)return goo goog.string.caseInsensitiveContains=function(a,b){return goog.string.contains(a.toLowerCase(),b.toLowerCase())};goog.string.countOf=function(a,b){return a&&b?a.split(b).length-1:0};goog.string.removeAt=function(a,b,c){var d=a;0<=b&&bb?1:0};goog.string.hashCode=function(a){for(var b=0,c=0;c>>0;return b};goog.string.uniqueStringCounter_=2147483648*Math.random()|0;goog.string.createUniqueString=function(){return"goog_"+goog.string.uniqueStringCounter_++}; +goog.string.compareVersions=function(a,b){for(var c=0,d=goog.string.trim(String(a)).split("."),e=goog.string.trim(String(b)).split("."),f=Math.max(d.length,e.length),g=0;0==c&&gb?1:0};goog.string.hashCode=function(a){for(var b=0,c=0;c>>0;return b};goog.string.uniqueStringCounter_=2147483648*Math.random()|0;goog.string.createUniqueString=function(){return"goog_"+goog.string.uniqueStringCounter_++}; goog.string.toNumber=function(a){var b=Number(a);return 0==b&&goog.string.isEmptyOrWhitespace(a)?NaN:b};goog.string.isLowerCamelCase=function(a){return/^[a-z]+([A-Z][a-z]*)*$/.test(a)};goog.string.isUpperCamelCase=function(a){return/^([A-Z][a-z]*)+$/.test(a)};goog.string.toCamelCase=function(a){return String(a).replace(/\-([a-z])/g,function(a,c){return c.toUpperCase()})};goog.string.toSelectorCase=function(a){return String(a).replace(/([A-Z])/g,"-$1").toLowerCase()}; goog.string.toTitleCase=function(a,b){var c=goog.isString(b)?goog.string.regExpEscape(b):"\\s";return a.replace(new RegExp("(^"+(c?"|["+c+"]+":"")+")([a-z])","g"),function(a,b,c){return b+c.toUpperCase()})};goog.string.capitalize=function(a){return String(a.charAt(0)).toUpperCase()+String(a.substr(1)).toLowerCase()};goog.string.parseInt=function(a){isFinite(a)&&(a=String(a));return goog.isString(a)?/^\s*-?0x/i.test(a)?parseInt(a,16):parseInt(a,10):NaN}; goog.string.splitLimit=function(a,b,c){a=a.split(b);for(var d=[];0e&&(g=2*Math.PI-g);var h=g+Math.PI/2;h>2*Math.PI&&(h-=2*Math.PI);var k=Math.sin(h),l=Math.cos(h),q=this.getBubbleSize(),h=(q.width+q.height)/Blockly.Bubble.ARROW_THICKNESS,h=Math.min(h,q.width,q.height)/2,q=1-Blockly.Bubble.ANCHOR_RADIUS/f,d=b+ -q*d,e=c+q*e,q=b+h*l,m=c+h*k,b=b-h*l,c=c-h*k,k=g+this.arrow_radians_;k>2*Math.PI&&(k-=2*Math.PI);g=Math.sin(k)*f/Blockly.Bubble.ARROW_BEND;f=Math.cos(k)*f/Blockly.Bubble.ARROW_BEND;a.push("M"+q+","+m);a.push("C"+(q+f)+","+(m+g)+" "+d+","+e+" "+d+","+e);a.push("C"+d+","+e+" "+(b+f)+","+(c+g)+" "+b+","+c)}a.push("z");this.bubbleArrow_.setAttribute("d",a.join(" "))};Blockly.Bubble.prototype.setColour=function(a){this.bubbleBack_.setAttribute("fill",a);this.bubbleArrow_.setAttribute("fill",a)}; +Blockly.Bubble.prototype.renderArrow_=function(){var a=[],b=this.width_/2,c=this.height_/2,d=-this.relativeLeft_,e=-this.relativeTop_;if(b==d&&c==e)a.push("M "+b+","+c);else{e-=c;d-=b;this.workspace_.RTL&&(d*=-1);var f=Math.sqrt(e*e+d*d),g=Math.acos(d/f);0>e&&(g=2*Math.PI-g);var h=g+Math.PI/2;h>2*Math.PI&&(h-=2*Math.PI);var k=Math.sin(h),l=Math.cos(h),p=this.getBubbleSize(),h=(p.width+p.height)/Blockly.Bubble.ARROW_THICKNESS,h=Math.min(h,p.width,p.height)/2,p=1-Blockly.Bubble.ANCHOR_RADIUS/f,d=b+ +p*d,e=c+p*e,p=b+h*l,m=c+h*k,b=b-h*l,c=c-h*k,k=g+this.arrow_radians_;k>2*Math.PI&&(k-=2*Math.PI);g=Math.sin(k)*f/Blockly.Bubble.ARROW_BEND;f=Math.cos(k)*f/Blockly.Bubble.ARROW_BEND;a.push("M"+p+","+m);a.push("C"+(p+f)+","+(m+g)+" "+d+","+e+" "+d+","+e);a.push("C"+d+","+e+" "+(b+f)+","+(c+g)+" "+b+","+c)}a.push("z");this.bubbleArrow_.setAttribute("d",a.join(" "))};Blockly.Bubble.prototype.setColour=function(a){this.bubbleBack_.setAttribute("fill",a);this.bubbleArrow_.setAttribute("fill",a)}; Blockly.Bubble.prototype.dispose=function(){Blockly.Bubble.unbindDragEvents_();goog.dom.removeNode(this.bubbleGroup_);this.shape_=this.content_=this.workspace_=this.resizeGroup_=this.bubbleBack_=this.bubbleArrow_=this.bubbleGroup_=null};Blockly.Icon=function(a){this.block_=a};Blockly.Icon.prototype.collapseHidden=!0;Blockly.Icon.prototype.SIZE=17;Blockly.Icon.prototype.png_="";Blockly.Icon.prototype.bubble_=null;Blockly.Icon.prototype.iconX_=0;Blockly.Icon.prototype.iconY_=0; Blockly.Icon.prototype.createIcon=function(){this.iconGroup_||(this.iconGroup_=Blockly.createSvgElement("g",{"class":"blocklyIconGroup"},null),Blockly.createSvgElement("image",{width:this.SIZE,height:this.SIZE},this.iconGroup_).setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",this.png_),this.block_.getSvgRoot().appendChild(this.iconGroup_),Blockly.bindEvent_(this.iconGroup_,"mouseup",this,this.iconClick_),this.updateEditable())}; Blockly.Icon.prototype.dispose=function(){goog.dom.removeNode(this.iconGroup_);this.iconGroup_=null;this.setVisible(!1);this.block_=null};Blockly.Icon.prototype.updateEditable=function(){this.block_.isInFlyout||!this.block_.isEditable()?Blockly.addClass_(this.iconGroup_,"blocklyIconGroupReadonly"):Blockly.removeClass_(this.iconGroup_,"blocklyIconGroupReadonly")};Blockly.Icon.prototype.isVisible=function(){return!!this.bubble_}; @@ -895,8 +895,8 @@ Blockly.Connection.prototype.moveTo=function(a,b){this.inDB_&&this.db_.removeCon Blockly.Connection.prototype.highlight=function(){var a;this.type==Blockly.INPUT_VALUE||this.type==Blockly.OUTPUT_VALUE?(a=this.sourceBlock_.RTL?-Blockly.BlockSvg.TAB_WIDTH:Blockly.BlockSvg.TAB_WIDTH,a="m 0,0 v 5 c 0,10 "+-a+",-8 "+-a+",7.5 s "+a+",-2.5 "+a+",7.5 v 5"):a=this.sourceBlock_.RTL?"m 20,0 h -5 "+Blockly.BlockSvg.NOTCH_PATH_RIGHT+" h -5":"m -20,0 h 5 "+Blockly.BlockSvg.NOTCH_PATH_LEFT+" h 5";var b=this.sourceBlock_.getRelativeToSurfaceXY();Blockly.Connection.highlightedPath_=Blockly.createSvgElement("path", {"class":"blocklyHighlightedConnectionPath",d:a,transform:"translate("+(this.x_-b.x)+","+(this.y_-b.y)+")"},this.sourceBlock_.getSvgRoot())};Blockly.Connection.prototype.unhighlight=function(){goog.dom.removeNode(Blockly.Connection.highlightedPath_);delete Blockly.Connection.highlightedPath_}; Blockly.Connection.prototype.tighten_=function(){var a=this.targetConnection.x_-this.x_,b=this.targetConnection.y_-this.y_;if(0!=a||0!=b){var c=this.targetBlock(),d=c.getSvgRoot();if(!d)throw"block is not rendered.";d=Blockly.getRelativeXY_(d);c.getSvgRoot().setAttribute("transform","translate("+(d.x-a)+","+(d.y-b)+")");c.moveConnections_(-a,-b)}}; -Blockly.Connection.prototype.closest=function(a,b,c){function d(b){b=e[b];if((b.type==Blockly.OUTPUT_VALUE||b.type==Blockly.PREVIOUS_STATEMENT)&&b.targetConnection||b.type==Blockly.INPUT_VALUE&&b.targetConnection&&!b.targetBlock().isMovable()&&!b.targetBlock().isShadow()||!q.checkType_(b))return!0;var c=b.sourceBlock_;do{if(l==c)return!0;c=c.getParent()}while(c);var d=f-b.x_,c=g-b.y_,d=Math.sqrt(d*d+c*c);d<=a&&(k=b,a=d);return Math.abs(c)=p.length?Blockly.Msg.DELETE_BLOCK:Blockly.Msg.DELETE_X_BLOCKS.replace("%1",String(p.length)),enabled:0 +p.length||window.confirm(Blockly.Msg.DELETE_ALL_BLOCKS.replace("%1",String(p.length))))&&c()}};d.push(f);Blockly.ContextMenu.show(a,d,this.RTL)}};Blockly.WorkspaceSvg.prototype.loadAudio_=function(a,b){if(a.length){try{var c=new window.Audio}catch(h){return}for(var d,e=0;e=a.clientX&&0==a.clientY&&0==a.button)){Blockly.removeAllRanges();var d=b.getRelativeToSurfaceXY(),e=c.moveDrag(a),f=b.getSvgRoot();1==Blockly.dragMode_&&goog.math.Coordinate.distance(d,e)*c.scale>Blockly.DRAG_RADIUS&&(Blockly.dragMode_=2,Blockly.longStop_(),f.translate_="",f.skew_="",b.parentBlock_&&(b.setParent(null),b.disconnectUiEffect()),b.setDragging_(!0), -c.recordDeleteAreas());if(2==Blockly.dragMode_){var g=d.x-b.dragStartXY_.x,d=d.y-b.dragStartXY_.y;f.translate_="translate("+e.x+","+e.y+")";f.setAttribute("transform",f.translate_+f.skew_);for(e=0;ec.width+d.x&&(a=c.width+d.x):aa.viewHeight+f||a.contentLeft<(b.RTL?a.viewLeft:e)||a.contentLeft+a.contentWidth>(b.RTL?a.viewWidth:a.viewWidth+e))for(var g=c.getTopBlocks(!1),h=0,k;k=g[h];h++){var l=k.getRelativeToSurfaceXY(),q=k.getHeightWidth(),m=f+25-q.height-l.y;0m&&k.moveBy(0,m);m=25+e-l.x-(b.RTL?0:q.width);0m&&k.moveBy(m,0)}}});Blockly.svgResize(c);Blockly.WidgetDiv.createDom();Blockly.Tooltip.createDom(); +a.contentHeight>a.viewHeight+f||a.contentLeft<(b.RTL?a.viewLeft:e)||a.contentLeft+a.contentWidth>(b.RTL?a.viewWidth:a.viewWidth+e))for(var g=c.getTopBlocks(!1),h=0,k;k=g[h];h++){var l=k.getRelativeToSurfaceXY(),p=k.getHeightWidth(),m=f+25-p.height-l.y;0m&&k.moveBy(0,m);m=25+e-l.x-(b.RTL?0:p.width);0m&&k.moveBy(m,0)}}});Blockly.svgResize(c);Blockly.WidgetDiv.createDom();Blockly.Tooltip.createDom(); return c}; Blockly.init_=function(a){var b=a.options;Blockly.bindEvent_(a.options.svg,"contextmenu",null,function(a){Blockly.isTargetInput_(a)||a.preventDefault()});Blockly.bindEvent_(window,"resize",null,function(){Blockly.svgResize(a)});Blockly.documentEventsBound_||(Blockly.bindEvent_(document,"keydown",null,Blockly.onKeyDown_),Blockly.bindEvent_(document,"touchend",null,Blockly.longStop_),Blockly.bindEvent_(document,"touchcancel",null,Blockly.longStop_),document.addEventListener("mouseup",Blockly.onMouseUp_,!1), goog.userAgent.IPAD&&Blockly.bindEvent_(window,"orientationchange",document,function(){Blockly.fireUiEvent(window,"resize")}),Blockly.documentEventsBound_=!0);if(b.languageTree)if(a.toolbox_)a.toolbox_.init(a);else if(a.flyout_){a.flyout_.init(a);a.flyout_.show(b.languageTree.childNodes);a.scrollX=a.flyout_.width_;b.RTL&&(a.scrollX*=-1);var c="translate("+a.scrollX+",0)";a.getCanvas().setAttribute("transform",c);a.getBubbleCanvas().setAttribute("transform",c)}b.hasScrollbars&&(a.scrollbar=new Blockly.ScrollbarPair(a), @@ -1304,5 +1305,5 @@ Blockly.duplicate_=function(a){var b=Blockly.clipboardXml_,c=Blockly.clipboardSo Blockly.getMainWorkspaceMetrics_=function(){var a=Blockly.svgSize(this.options.svg);this.toolbox_&&(a.width-=this.toolbox_.width);var b=Blockly.Flyout.prototype.CORNER_RADIUS-1,c=a.width-b,d=a.height-b;try{var e=this.getCanvas().getBBox()}catch(l){return null}var f=e.width*this.scale,g=e.height*this.scale,h=e.x*this.scale,k=e.y*this.scale;this.scrollbar?(b=Math.min(h-c/2,h+f-c),c=Math.max(h+f+c/2,h+c),f=Math.min(k-d/2,k+g-d),e=Math.max(k+g+d/2,k+d)):(b=e.x,c=b+e.width,f=e.y,e=f+e.height);d=0;!this.RTL&& this.toolbox_&&(d=this.toolbox_.width);return{viewHeight:a.height,viewWidth:a.width,contentHeight:e-f,contentWidth:c-b,viewTop:-this.scrollY,viewLeft:-this.scrollX,contentTop:f,contentLeft:b,absoluteTop:0,absoluteLeft:d}}; Blockly.setMainWorkspaceMetrics_=function(a){if(!this.scrollbar)throw"Attempt to set main workspace scroll without scrollbars.";var b=this.getMetrics();goog.isNumber(a.x)&&(this.scrollX=-b.contentWidth*a.x-b.contentLeft);goog.isNumber(a.y)&&(this.scrollY=-b.contentHeight*a.y-b.contentTop);a=this.scrollX+b.absoluteLeft;b=this.scrollY+b.absoluteTop;this.translate(a,b);this.options.gridPattern&&(this.options.gridPattern.setAttribute("x",a),this.options.gridPattern.setAttribute("y",b),goog.userAgent.IE&& -this.updateGridPattern_())};Blockly.doCommand=function(a){Blockly.Realtime.isEnabled?Blockly.Realtime.doCommand(a):a()};Blockly.addChangeListener=function(a){console.warn("Deprecated call to Blockly.addChangeListener, use workspace.addChangeListener instead.");return Blockly.getMainWorkspace().addChangeListener(a)};Blockly.getMainWorkspace=function(){return Blockly.mainWorkspace};goog.global.Blockly||(goog.global.Blockly={});goog.global.Blockly.getMainWorkspace=Blockly.getMainWorkspace; +this.updateGridPattern_())};Blockly.doCommand=function(a){Blockly.Realtime.isEnabled()?Blockly.Realtime.doCommand(a):a()};Blockly.addChangeListener=function(a){console.warn("Deprecated call to Blockly.addChangeListener, use workspace.addChangeListener instead.");return Blockly.getMainWorkspace().addChangeListener(a)};Blockly.getMainWorkspace=function(){return Blockly.mainWorkspace};goog.global.Blockly||(goog.global.Blockly={});goog.global.Blockly.getMainWorkspace=Blockly.getMainWorkspace; goog.global.Blockly.addChangeListener=Blockly.addChangeListener; \ No newline at end of file diff --git a/core/block_svg.js b/core/block_svg.js index 0ffdf93ca..fd9ed41ac 100644 --- a/core/block_svg.js +++ b/core/block_svg.js @@ -547,7 +547,7 @@ Blockly.BlockSvg.prototype.showContextMenu_ = function(e) { } // Save the current block in a variable for use in closures. var block = this; - var options = []; + var menuOptions = []; if (this.isDeletable() && this.isMovable() && !block.isInFlyout) { // Option to duplicate this block. @@ -561,7 +561,7 @@ Blockly.BlockSvg.prototype.showContextMenu_ = function(e) { if (this.getDescendants().length > this.workspace.remainingCapacity()) { duplicateOption.enabled = false; } - options.push(duplicateOption); + menuOptions.push(duplicateOption); if (this.isEditable() && !this.collapsed_ && this.workspace.options.comments) { @@ -578,7 +578,7 @@ Blockly.BlockSvg.prototype.showContextMenu_ = function(e) { block.setCommentText(''); }; } - options.push(commentOption); + menuOptions.push(commentOption); } // Option to make block inline. @@ -595,7 +595,7 @@ Blockly.BlockSvg.prototype.showContextMenu_ = function(e) { inlineOption.callback = function() { block.setInputsInline(!isInline); }; - options.push(inlineOption); + menuOptions.push(inlineOption); break; } } @@ -609,14 +609,14 @@ Blockly.BlockSvg.prototype.showContextMenu_ = function(e) { expandOption.callback = function() { block.setCollapsed(false); }; - options.push(expandOption); + menuOptions.push(expandOption); } else { var collapseOption = {enabled: true}; collapseOption.text = Blockly.Msg.COLLAPSE_BLOCK; collapseOption.callback = function() { block.setCollapsed(true); }; - options.push(collapseOption); + menuOptions.push(collapseOption); } } @@ -630,7 +630,7 @@ Blockly.BlockSvg.prototype.showContextMenu_ = function(e) { block.setDisabled(!block.disabled); } }; - options.push(disableOption); + menuOptions.push(disableOption); } // Option to delete this block. @@ -649,7 +649,7 @@ Blockly.BlockSvg.prototype.showContextMenu_ = function(e) { block.dispose(true, true); } }; - options.push(deleteOption); + menuOptions.push(deleteOption); } // Option to get help. @@ -659,14 +659,14 @@ Blockly.BlockSvg.prototype.showContextMenu_ = function(e) { helpOption.callback = function() { block.showHelp_(); }; - options.push(helpOption); + menuOptions.push(helpOption); - // Allow the block to add or modify options. + // Allow the block to add or modify menuOptions. if (this.customContextMenu && !block.isInFlyout) { - this.customContextMenu(options); + this.customContextMenu(menuOptions); } - Blockly.ContextMenu.show(e, options, this.RTL); + Blockly.ContextMenu.show(e, menuOptions, this.RTL); Blockly.ContextMenu.currentBlock = this; }; diff --git a/core/workspace_svg.js b/core/workspace_svg.js index 04f7422b5..321aef384 100644 --- a/core/workspace_svg.js +++ b/core/workspace_svg.js @@ -703,7 +703,7 @@ Blockly.WorkspaceSvg.prototype.showContextMenu_ = function(e) { menuOptions.push(cleanOption); // Add a little animation to collapsing and expanding. - var COLLAPSE_DELAY = 10; + var DELAY = 10; if (this.options.collapse) { var hasCollapsedBlocks = false; var hasExpandedBlocks = false; @@ -731,7 +731,7 @@ Blockly.WorkspaceSvg.prototype.showContextMenu_ = function(e) { while (block) { setTimeout(block.setCollapsed.bind(block, shouldCollapse), ms); block = block.getNextBlock(); - ms += COLLAPSE_DELAY; + ms += DELAY; } } }; @@ -753,6 +753,47 @@ Blockly.WorkspaceSvg.prototype.showContextMenu_ = function(e) { menuOptions.push(expandOption); } + // Option to delete all blocks. + // Count the number of blocks that are deletable. + var deleteList = []; + function addDeletableBlocks(block) { + if (block.isDeletable()) { + deleteList = deleteList.concat(block.getDescendants()); + } else { + var children = block.getChildren(); + for (var i = 0; i < children.length; i++) { + addDeletableBlocks(children[i]); + } + } + } + for (var i = 0; i < topBlocks.length; i++) { + addDeletableBlocks(topBlocks[i]); + } + var deleteOption = { + text: deleteList.length <= 1 ? Blockly.Msg.DELETE_BLOCK : + Blockly.Msg.DELETE_X_BLOCKS.replace('%1', String(deleteList.length)), + enabled: deleteList.length > 0, + callback: function() { + if (deleteList.length < 2 || + window.confirm(Blockly.Msg.DELETE_ALL_BLOCKS.replace('%1', + String(deleteList.length)))) { + deleteNext(); + } + } + }; + function deleteNext() { + var block = deleteList.shift(); + if (block) { + if (block.workspace) { + block.dispose(false, true); + setTimeout(deleteNext, DELAY); + } else { + deleteNext(); + } + } + } + menuOptions.push(deleteOption); + Blockly.ContextMenu.show(e, menuOptions, this.RTL); }; diff --git a/demos/code/code.js b/demos/code/code.js index 0bb7571cb..8880463cd 100644 --- a/demos/code/code.js +++ b/demos/code/code.js @@ -515,7 +515,7 @@ Code.runJS = function() { Code.discard = function() { var count = Code.workspace.getAllBlocks().length; if (count < 2 || - window.confirm(MSG['discard'].replace('%1', count))) { + window.confirm(Blockly.Msg.DELETE_ALL_BLOCKS.replace('%1', count))) { Code.workspace.clear(); window.location.hash = ''; } diff --git a/demos/code/msg/ar.js b/demos/code/msg/ar.js index bba0f5b60..952198b21 100644 --- a/demos/code/msg/ar.js +++ b/demos/code/msg/ar.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "شغل البرنامج المعرف بواسطة البلوكات في مساحة العمل.", badCode: "خطأ في البرنامج:\n %1", timeout: "تم تجاوز الحد الأقصى لتكرارات التنفيذ .", - discard: "حذف كل بلوكات %1؟", trashTooltip: "تجاهل كل البلوكات.", catLogic: "منطق", catLoops: "الحلقات", diff --git a/demos/code/msg/be-tarask.js b/demos/code/msg/be-tarask.js index 613ecb542..5c8d72264 100644 --- a/demos/code/msg/be-tarask.js +++ b/demos/code/msg/be-tarask.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Запусьціце праграму, вызначаную блёкамі ў працоўнай вобласьці.", badCode: "Памылка праграмы:\n%1", timeout: "Перавышана максымальная колькасьць ітэрацыяў.", - discard: "Выдаліць усе блёкі %1?", trashTooltip: "Выдаліць усе блёкі.", catLogic: "Лёгіка", catLoops: "Петлі", diff --git a/demos/code/msg/br.js b/demos/code/msg/br.js index 8cbbeb4b5..321e28e58 100644 --- a/demos/code/msg/br.js +++ b/demos/code/msg/br.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Lañsañ ar programm termenet gant ar bloc'hadoù en takad labour.", badCode: "Fazi programm :\n%1", timeout: "Tizhet eo bet an niver brasañ a iteradurioù seveniñ aotreet.", - discard: "Diverkañ an holl vloc'hoù %1 ?", trashTooltip: "Disteurel an holl vloc'hoù.", catLogic: "Poell", catLoops: "Boukloù", diff --git a/demos/code/msg/ca.js b/demos/code/msg/ca.js index 33cf9c34d..2b6d9738e 100644 --- a/demos/code/msg/ca.js +++ b/demos/code/msg/ca.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Executa el programa definit pels blocs de l'àrea de treball.", badCode: "Error de programa:\n %1", timeout: "S'ha superat el nombre màxim d'iteracions d'execució.", - discard: "Esborrar els %1 blocs?", trashTooltip: "Descarta tots els blocs.", catLogic: "Lògica", catLoops: "Bucles", diff --git a/demos/code/msg/cs.js b/demos/code/msg/cs.js index b1232a632..1026511e3 100644 --- a/demos/code/msg/cs.js +++ b/demos/code/msg/cs.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "", badCode: "Chyba programu:\n%1", timeout: "Maximum execution iterations exceeded.", - discard: "Odstranit všechny bloky %1?", trashTooltip: "Zahodit všechny bloky.", catLogic: "Logika", catLoops: "Smyčky", diff --git a/demos/code/msg/da.js b/demos/code/msg/da.js index 7d5cbdf70..089450b2d 100644 --- a/demos/code/msg/da.js +++ b/demos/code/msg/da.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Kør programmet, der er defineret af blokkene i arbejdsområdet.", badCode: "Programfejl:\n%1", timeout: "Maksimale antal udførelsesgentagelser overskredet.", - discard: "Slet alle %1 blokke?", trashTooltip: "Kassér alle blokke.", catLogic: "Logik", catLoops: "Løkker", diff --git a/demos/code/msg/de.js b/demos/code/msg/de.js index 2d6562062..422f9187d 100644 --- a/demos/code/msg/de.js +++ b/demos/code/msg/de.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Das Programm ausführen, das von den Bausteinen im Arbeitsbereich definiert ist.", badCode: "Programmfehler:\n%1", timeout: "Die maximalen Ausführungswiederholungen wurden überschritten.", - discard: "Alle %1 Bausteine löschen?", trashTooltip: "Alle Bausteine verwerfen.", catLogic: "Logik", catLoops: "Schleifen", diff --git a/demos/code/msg/el.js b/demos/code/msg/el.js index 3e128ad5b..c63b7a685 100644 --- a/demos/code/msg/el.js +++ b/demos/code/msg/el.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Εκτελεί το πρόγραμμα που ορίζεται από τα μπλοκ στον χώρο εργασίας.", badCode: "Σφάλμα προγράμματος:\n%1", timeout: "Υπέρβαση μέγιστου αριθμού επαναλήψεων.", - discard: "Να διαγραφούν και τα %1 μπλοκ?", trashTooltip: "Απόρριψη όλων των μπλοκ.", catLogic: "Λογική", catLoops: "Επαναλήψεις", diff --git a/demos/code/msg/en.js b/demos/code/msg/en.js index 8432b75ff..8d52cf333 100644 --- a/demos/code/msg/en.js +++ b/demos/code/msg/en.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Run the program defined by the blocks in the workspace.", badCode: "Program error:\n%1", timeout: "Maximum execution iterations exceeded.", - discard: "Delete all %1 blocks?", trashTooltip: "Discard all blocks.", catLogic: "Logic", catLoops: "Loops", diff --git a/demos/code/msg/es.js b/demos/code/msg/es.js index 8d60c3157..24358e368 100644 --- a/demos/code/msg/es.js +++ b/demos/code/msg/es.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Ejecute el programa definido por los bloques en el área de trabajo.", badCode: "Error del programa:\n%1", timeout: "Se excedio el máximo de iteraciones ejecutadas permitidas.", - discard: "¿Eliminar todos los bloques %1?", trashTooltip: "Descartar todos los bloques.", catLogic: "Lógica", catLoops: "Secuencias", diff --git a/demos/code/msg/fa.js b/demos/code/msg/fa.js index f604e9fea..96dd966b0 100644 --- a/demos/code/msg/fa.js +++ b/demos/code/msg/fa.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "اجرای برنامهٔ تعریف‌شده توسط بلوک‌ها در فضای کار.", badCode: "خطای برنامه:\n%1", timeout: "حداکثر تکرارهای اجرا رد شده‌است.", - discard: "حذف همهٔ بلاک‌های %1؟", trashTooltip: "دورریختن همهٔ بلوک‌ها.", catLogic: "منطق", catLoops: "حلقه‌ها", diff --git a/demos/code/msg/fr.js b/demos/code/msg/fr.js index 17e91474d..60181131a 100644 --- a/demos/code/msg/fr.js +++ b/demos/code/msg/fr.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Lancer le programme défini par les blocs dans l’espace de travail.", badCode: "Erreur du programme :\n%1", timeout: "Nombre maximum d’itérations d’exécution dépassé.", - discard: "Supprimer tous les %1 blocs ?", trashTooltip: "Jeter tous les blocs.", catLogic: "Logique", catLoops: "Boucles", diff --git a/demos/code/msg/he.js b/demos/code/msg/he.js index d11982c41..dc2826620 100644 --- a/demos/code/msg/he.js +++ b/demos/code/msg/he.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "הרצת התכנית שהוגדרה על ידי קטעי הקוד שבמרחב העבודה.", badCode: "שגיאה בתכנית: %1", timeout: "חריגה ממספר פעולות חוזרות אפשריות.", - discard: "האם למחוק את כל %1 קטעי הקוד?", trashTooltip: "השלך את כל קטעי הקוד.", catLogic: "לוגיקה", catLoops: "לולאות", diff --git a/demos/code/msg/hrx.js b/demos/code/msg/hrx.js index 11f790c27..ca0dea3fc 100644 --- a/demos/code/msg/hrx.js +++ b/demos/code/msg/hrx.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Das Programm ausfüahre, das von den Bausten im Oorweitsbereich definiert ist.", badCode: "Programmfehler:\n%1", timeout: "Die maximale Ausführungswiederholunge woore üwerschritt.", - discard: "All %1 Bausten lösche?", trashTooltip: "All Bausten verwerfe.", catLogic: "Logik", catLoops: "Schleife", diff --git a/demos/code/msg/hu.js b/demos/code/msg/hu.js index a2f2c5081..eee186863 100644 --- a/demos/code/msg/hu.js +++ b/demos/code/msg/hu.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Program futtatása.", badCode: "Program hiba:\n%1", timeout: "A program elérte a maximális végrehajtási időt.", - discard: "Az összes %1 blokk törlése?", trashTooltip: "Összes blokk törlése.", catLogic: "Logikai műveletek", catLoops: "Ciklusok", diff --git a/demos/code/msg/ia.js b/demos/code/msg/ia.js index a5557c221..5938458bb 100644 --- a/demos/code/msg/ia.js +++ b/demos/code/msg/ia.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Executar le programma definite per le blocos in le spatio de travalio.", badCode: "Error del programma:\n%1", timeout: "Le numero de iterationes executate ha excedite le maximo.", - discard: "Deler tote le %1 blocos?", trashTooltip: "Abandonar tote le blocos.", catLogic: "Logica", catLoops: "Buclas", diff --git a/demos/code/msg/is.js b/demos/code/msg/is.js index b1035b159..fa5c40d80 100644 --- a/demos/code/msg/is.js +++ b/demos/code/msg/is.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Keyra forritið sem kubbarnir á vinnusvæðinu mynda.", badCode: "Villa í forriti:\n%1", timeout: "Forritið hefur endurtekið sig of oft.", - discard: "Eyða öllum %1 kubbunum?", trashTooltip: "Fleygja öllum kubbum.", catLogic: "Rökvísi", catLoops: "Lykkjur", diff --git a/demos/code/msg/it.js b/demos/code/msg/it.js index 6fba6493e..cd69b66b3 100644 --- a/demos/code/msg/it.js +++ b/demos/code/msg/it.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Esegui il programma definito dai blocchi nell'area di lavoro.", badCode: "Errore programma:\n%1", timeout: "È stato superato il numero massimo consentito di interazioni eseguite.", - discard: "Cancellare tutti i %1 blocchi?", trashTooltip: "Elimina tutti i blocchi.", catLogic: "Logica", catLoops: "Cicli", diff --git a/demos/code/msg/ja.js b/demos/code/msg/ja.js index 9ff356ccd..6d5041982 100644 --- a/demos/code/msg/ja.js +++ b/demos/code/msg/ja.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "ブロックで作成したプログラムを実行します。", badCode: "プログラムのエラー:\n%1", timeout: "命令の実行回数が制限値を超えました。", - discard: "%1 個すべてのブロックを消しますか?", trashTooltip: "すべてのブロックを消します。", catLogic: "論理", catLoops: "繰り返し", diff --git a/demos/code/msg/ko.js b/demos/code/msg/ko.js index 24edd7d69..990cb6f23 100644 --- a/demos/code/msg/ko.js +++ b/demos/code/msg/ko.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "작업 공간에서 블록으로 정의된 프로그램을 실행합니다.", badCode: "프로그램 오류:\n%1", timeout: "최대 실행 반복을 초과했습니다.", - discard: "모든 블록 %1개를 삭제하겠습니까?", trashTooltip: "모든 블록을 버립니다.", catLogic: "논리", catLoops: "반복", diff --git a/demos/code/msg/mk.js b/demos/code/msg/mk.js index f1c58afb6..cc344a69c 100644 --- a/demos/code/msg/mk.js +++ b/demos/code/msg/mk.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Пушти го програмот определен од блокчињата во работниот простор.", badCode: "Грешка во програмот:\n%1", timeout: "Го надминавте допуштениот број на повторувања во извршувањето.", - discard: "Да ги избришам сите %1 блокчиња?", trashTooltip: "Отстрани ги сите блокчиња.", catLogic: "Логика", catLoops: "Јамки", diff --git a/demos/code/msg/ms.js b/demos/code/msg/ms.js index f08c1caf2..f3801cd0b 100644 --- a/demos/code/msg/ms.js +++ b/demos/code/msg/ms.js @@ -5,8 +5,7 @@ var MSG = { runTooltip: "Jalankan aturcara yang ditetapkan oleh blok-blok di dalam ruang kerja.", badCode: "Ralat atur cara:\n%1", timeout: "Takat maksimum lelaran pelaksanaan dicecah.", - discard: "Hapuskan kesemua %1 blok?", - trashTooltip: "Buang semua blok.", + trashTooltip: "Buang semua Blok.", catLogic: "Logik", catLoops: "Gelung", catMath: "Matematik", diff --git a/demos/code/msg/nb.js b/demos/code/msg/nb.js index 409fe08b8..60ac0394d 100644 --- a/demos/code/msg/nb.js +++ b/demos/code/msg/nb.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Kjør programmet definert av blokken i arbeidsområdet.", badCode: "Programfeil:\n%1", timeout: "Det maksimale antallet utførte looper er oversteget.", - discard: "Slett alle %1 blokker?", trashTooltip: "Fjern alle blokker", catLogic: "Logikk", catLoops: "Looper", diff --git a/demos/code/msg/nl.js b/demos/code/msg/nl.js index c9c394c9f..339a5e882 100644 --- a/demos/code/msg/nl.js +++ b/demos/code/msg/nl.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Voer het programma uit dat met de blokken in de werkruimte is gemaakt.", badCode: "Programmafout:\n%1", timeout: "Het maximale aantal iteraties is overschreden.", - discard: "Alle %1 blokken verwijderen?", trashTooltip: "Alle blokken verwijderen", catLogic: "Logica", catLoops: "Lussen", diff --git a/demos/code/msg/oc.js b/demos/code/msg/oc.js index 29d29d9ad..c184ac8fb 100644 --- a/demos/code/msg/oc.js +++ b/demos/code/msg/oc.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Aviar lo programa definit pels blòts dins l’espaci de trabalh.", badCode: "Error del programa :\n%1", timeout: "Nombre maximum d’iteracions d’execucion depassat.", - discard: "Suprimir totes los %1 blòts ?", trashTooltip: "Getar totes los blòts.", catLogic: "Logic", catLoops: "Boclas", diff --git a/demos/code/msg/pl.js b/demos/code/msg/pl.js index c8ca562f3..83bb05d2f 100644 --- a/demos/code/msg/pl.js +++ b/demos/code/msg/pl.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Uruchom program zdefinowany przez bloki w obszarze roboczym", badCode: "Błąd programu:\n%1", timeout: "Maksymalna liczba iteracji wykonywań przekroczona", - discard: "Usunąć wszystkie %1 bloki?", trashTooltip: "Odrzuć wszystkie bloki.", catLogic: "Logika", catLoops: "Pętle", diff --git a/demos/code/msg/pms.js b/demos/code/msg/pms.js index 27edbc879..a7704f764 100644 --- a/demos/code/msg/pms.js +++ b/demos/code/msg/pms.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Fé andé ël programa definì dai blòch ant lë spassi ëd travaj.", badCode: "Eror dël programa:\n%1", timeout: "Nùmer màssim d'arpetission d'esecussion sorpassà.", - discard: "Scancelé tuti ij %1 blòch?", trashTooltip: "Scarté tuti ij blòch.", catLogic: "Lògica", catLoops: "Liasse", diff --git a/demos/code/msg/pt-br.js b/demos/code/msg/pt-br.js index 470761735..9b18d6360 100644 --- a/demos/code/msg/pt-br.js +++ b/demos/code/msg/pt-br.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Execute o programa definido pelos blocos na área de trabalho.", badCode: "Erro no programa:\n%1", timeout: "Máximo de iterações de execução excedido.", - discard: "Apagar todos os %1 blocos?", trashTooltip: "Descartar todos os blocos.", catLogic: "Lógica", catLoops: "Laços", diff --git a/demos/code/msg/ro.js b/demos/code/msg/ro.js index 7ffe7b470..cd3de11d7 100644 --- a/demos/code/msg/ro.js +++ b/demos/code/msg/ro.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Execută programul definit de către blocuri în spațiul de lucru.", badCode: "Eroare de program:\n%1", timeout: "Numărul maxim de iterații a fost depășit.", - discard: "Ștergi toate cele %1 (de) blocuri?", trashTooltip: "Șterge toate blocurile.", catLogic: "Logic", catLoops: "Bucle", diff --git a/demos/code/msg/ru.js b/demos/code/msg/ru.js index 0d972687f..389e9052a 100644 --- a/demos/code/msg/ru.js +++ b/demos/code/msg/ru.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Запустить программу, заданную блоками в рабочей области.", badCode: "Ошибка программы:\n%1", timeout: "Превышено максимальное количество итераций.", - discard: "Удалить все блоки (%1)?", trashTooltip: "Удалить все блоки.", catLogic: "Логические", catLoops: "Циклы", diff --git a/demos/code/msg/sc.js b/demos/code/msg/sc.js index f0015a82a..82f94d61d 100644 --- a/demos/code/msg/sc.js +++ b/demos/code/msg/sc.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Arròllia su programa cumpostu de is brocus in s'àrea de traballu.", badCode: "Errori in su Programa:\n%1", timeout: "Giai lòmpius a su màssimu numeru de repicus.", - discard: "Scancellu su %1 de is brocus?", trashTooltip: "Boganci totu is brocus.", catLogic: "Lògica", catLoops: "Lòrigas", diff --git a/demos/code/msg/sk.js b/demos/code/msg/sk.js index 08282ac28..3917df293 100644 --- a/demos/code/msg/sk.js +++ b/demos/code/msg/sk.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Spustiť program, zložený z dielcov na pracovnej ploche.", badCode: "Chyba v programe:\n%1", timeout: "Bol prekročený maximálny počet opakovaní.", - discard: "Zmazať všetkých %1 dielcov?", trashTooltip: "Zahodiť všetky dielce.", catLogic: "Logika", catLoops: "Cykly", diff --git a/demos/code/msg/sr.js b/demos/code/msg/sr.js index cb29673ed..f9a026ca0 100644 --- a/demos/code/msg/sr.js +++ b/demos/code/msg/sr.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Покрените програм заснован на блоковима у радном простору.", badCode: "Грешка у програму:\n%1", timeout: "Достигнут је максималан број понављања у извршавању.", - discard: "Обрисати %1 блокова?", trashTooltip: "Одбаците све блокове.", catLogic: "Логика", catLoops: "Петље", diff --git a/demos/code/msg/sv.js b/demos/code/msg/sv.js index d92e9415e..4134a4c7d 100644 --- a/demos/code/msg/sv.js +++ b/demos/code/msg/sv.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Kör programmet som definierats av blocken i arbetsytan.", badCode: "Programfel:\n%1", timeout: "Det maximala antalet utförda loopar har överskridits.", - discard: "Radera alla %1 block?", trashTooltip: "Släng alla block.", catLogic: "Logik", catLoops: "Loopar", diff --git a/demos/code/msg/ta.js b/demos/code/msg/ta.js index 2be9f9ee3..ff472e2b7 100644 --- a/demos/code/msg/ta.js +++ b/demos/code/msg/ta.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "பணிமனை நினைவகத்தில் இயக்குக", //Run the program defined by the blocks in the workspace. badCode: "கணினி நிரல் கோளாறு:\n%1", timeout: "அதிகபட்ச அடுக்கின் அளவை மீரியது", //max iters reached/exceeded - discard: "அனைத்து %1 நிரல் துண்டுகளையும் அழிக்கவா??", trashTooltip: "நீக்கு", catLogic: "தர்க வகை", catLoops: "மடக்கு வாக்கியம்", diff --git a/demos/code/msg/th.js b/demos/code/msg/th.js index c6c3c2666..1ac36245b 100644 --- a/demos/code/msg/th.js +++ b/demos/code/msg/th.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "เรียกใช้โปรแกรมตามที่กำหนดไว้ด้วยบล็อกที่อยู่ในพื้นที่ทำงาน", badCode: "โปรแกรมเกิดข้อผิดพลาด:\n%1", timeout: "โปรแกรมทำงานซ้ำคำสั่งเดิมมากเกินไป", - discard: "ต้องการลบบล็อกทั้ง %1 บล็อกใช่หรือไม่?", trashTooltip: "ยกเลิกบล็อกทั้งหมด", catLogic: "ตรรกะ", catLoops: "การวนซ้ำ", diff --git a/demos/code/msg/tlh.js b/demos/code/msg/tlh.js index 6347575bb..8d0c056f9 100644 --- a/demos/code/msg/tlh.js +++ b/demos/code/msg/tlh.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "", badCode: "Qagh:\n%1", timeout: "tlhoy nI'qu' poH.", - discard: "Hoch %1 ngoghmey Qaw'?", trashTooltip: "", catLogic: "meq", catLoops: "vIHtaHbogh ghomey", diff --git a/demos/code/msg/tr.js b/demos/code/msg/tr.js index 2cf29b0aa..144830092 100644 --- a/demos/code/msg/tr.js +++ b/demos/code/msg/tr.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Çalışma alanında bloklar tarafından tanımlanan programını çalıştırın.", badCode: "Program hatası:\n %1", timeout: "Maksimum yürütme yinelemeleri aşıldı.", - discard: "Tüm %1 blok silinsin mi?", trashTooltip: "Bütün blokları at.", catLogic: "Mantık", catLoops: "Döngüler", diff --git a/demos/code/msg/uk.js b/demos/code/msg/uk.js index 8e7d6434a..6b3462721 100644 --- a/demos/code/msg/uk.js +++ b/demos/code/msg/uk.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Запустіть програму, визначену блоками у робочій області.", badCode: "Помилка програми:\n%1", timeout: "Максимальне виконання ітерацій перевищено.", - discard: "Вилучити всі блоки %1?", trashTooltip: "Відкинути всі блоки.", catLogic: "Логіка", catLoops: "Петлі", diff --git a/demos/code/msg/vi.js b/demos/code/msg/vi.js index 38be4e562..952d024b4 100644 --- a/demos/code/msg/vi.js +++ b/demos/code/msg/vi.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "Chạy chương trình.", badCode: "'Lỗi chương trình:\n%1", timeout: "Đã vượt quá số lần lặp cho phép.", - discard: "Xóa hết %1 mảnh?", trashTooltip: "Xóa tất cả mọi mảnh.", catLogic: "Logic", catLoops: "Vòng lặp", diff --git a/demos/code/msg/zh-hans.js b/demos/code/msg/zh-hans.js index 37aec45d4..abf8a6589 100644 --- a/demos/code/msg/zh-hans.js +++ b/demos/code/msg/zh-hans.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "于工作区中运行块所定义的程式。", badCode: "程序错误:\n%1", timeout: "超过最大执行行数。", - discard: "删除所有%1块吗?", trashTooltip: "放弃所有块。", catLogic: "逻辑", catLoops: "循环", diff --git a/demos/code/msg/zh-hant.js b/demos/code/msg/zh-hant.js index 1f7211834..48a8b5272 100644 --- a/demos/code/msg/zh-hant.js +++ b/demos/code/msg/zh-hant.js @@ -5,7 +5,6 @@ var MSG = { runTooltip: "於工作區中執行積木組所定義的程式。", badCode: "程式錯誤:\n%1", timeout: "超過最大執行數。", - discard: "刪除共%1個積木?", trashTooltip: "捨棄所有積木。", catLogic: "邏輯", catLoops: "迴圈", diff --git a/msg/js/ar.js b/msg/js/ar.js index fb332b0e0..1989ba870 100644 --- a/msg/js/ar.js +++ b/msg/js/ar.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "اكرّر حتى"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "اكرّر طالما"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "بما ان القيمة خاطئة, نفّذ بعض الأوامر."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "بما ان القيمة صحيحة, نفّذ بعض الأوامر."; +Blockly.Msg.DELETE_ALL_BLOCKS = "حذف كل بلوكات %1؟"; Blockly.Msg.DELETE_BLOCK = "إحذف القطعة"; Blockly.Msg.DELETE_X_BLOCKS = "إحذف قطع %1"; Blockly.Msg.DISABLE_BLOCK = "عطّل القطعة"; diff --git a/msg/js/az.js b/msg/js/az.js index 9a2c4581c..3242bd7c3 100644 --- a/msg/js/az.js +++ b/msg/js/az.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "təkrar et, ta ki"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "təkrar et, hələ ki"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Hələ ki, qiymət \"yalan\"dır, bəzi əmrləri yerinə yetir."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Hələ ki, qiymət \"doğru\"dur, bəzi əmrləri yerinə yetir."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Bloku sil"; Blockly.Msg.DELETE_X_BLOCKS = "%1 bloku sil"; Blockly.Msg.DISABLE_BLOCK = "Bloku söndür"; diff --git a/msg/js/bcc.js b/msg/js/bcc.js index ac8dad1b8..0ebe78739 100644 --- a/msg/js/bcc.js +++ b/msg/js/bcc.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "تکرار تا"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "تکرار در حالی که"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "حذف بلوک"; Blockly.Msg.DELETE_X_BLOCKS = "حذف بلوک‌های %1"; Blockly.Msg.DISABLE_BLOCK = "غیرفعال‌سازی بلوک"; diff --git a/msg/js/be-tarask.js b/msg/js/be-tarask.js index 8053fdb5b..d5413c39f 100644 --- a/msg/js/be-tarask.js +++ b/msg/js/be-tarask.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "паўтараць, пакул Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "паўтараць, пакуль"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Пакуль значэньне хлусьня, выконваць пэўныя апэрацыі."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Пакуль значэньне ісьціна, выконваць пэўныя апэрацыі."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Выдаліць усе блёкі %1?"; Blockly.Msg.DELETE_BLOCK = "Выдаліць блёк"; Blockly.Msg.DELETE_X_BLOCKS = "Выдаліць %1 блёкі"; Blockly.Msg.DISABLE_BLOCK = "Адключыць блёк"; diff --git a/msg/js/bg.js b/msg/js/bg.js index 0abb7925f..6a18fb631 100644 --- a/msg/js/bg.js +++ b/msg/js/bg.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "повтаряй докато" Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "повтаряй докато е вярно, че"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Докато стойността е лъжа, изпълнявай командите."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Докато стойността е истина, изпълнявай командите."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Изтрий блок"; Blockly.Msg.DELETE_X_BLOCKS = "Изтрий %1 блока"; Blockly.Msg.DISABLE_BLOCK = "Деактивирай блок"; diff --git a/msg/js/bn.js b/msg/js/bn.js index 482424bc5..3ac3d33e4 100644 --- a/msg/js/bn.js +++ b/msg/js/bn.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repeat until"; // untranslate Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repeat while"; // untranslated Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "ব্লকটি মুছে ফেল"; Blockly.Msg.DELETE_X_BLOCKS = "%1 ব্লক অপসারণ কর"; Blockly.Msg.DISABLE_BLOCK = "ব্লকটি বিকল কর"; diff --git a/msg/js/br.js b/msg/js/br.js index 29da61315..087995506 100644 --- a/msg/js/br.js +++ b/msg/js/br.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "adober betek"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "adober keit ha ma"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Keit ha ma vez faos un dalvoudenn,seveniñ urzhioù zo neuze."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Keit ha ma vez gwir un dalvoudenn, seveniñ urzhioù zo neuze."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Diverkañ an holl vloc'hoù %1 ?"; Blockly.Msg.DELETE_BLOCK = "Dilemel ar bloc'h"; Blockly.Msg.DELETE_X_BLOCKS = "Dilemel %1 bloc'h"; Blockly.Msg.DISABLE_BLOCK = "Diweredekaat ar bloc'h"; diff --git a/msg/js/ca.js b/msg/js/ca.js index 7701eef47..186f297f2 100644 --- a/msg/js/ca.js +++ b/msg/js/ca.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repetir fins que"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repetir mentre"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Mentre un valor sigui fals, llavors executar unes sentències."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Mentre un valor sigui cert, llavors executar unes sentències."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Esborrar els %1 blocs?"; Blockly.Msg.DELETE_BLOCK = "Esborra bloc"; Blockly.Msg.DELETE_X_BLOCKS = "Esborra %1 blocs"; Blockly.Msg.DISABLE_BLOCK = "Desactiva bloc"; diff --git a/msg/js/cs.js b/msg/js/cs.js index 91e1d6a8b..fcef6014f 100644 --- a/msg/js/cs.js +++ b/msg/js/cs.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "opakovat dokud"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "opakovat když"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Dokud je hodnota nepravdivá, prováděj určité příkazy."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Dokud je hodnota pravdivá, prováděj určité příkazy."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Odstranit všechny bloky %1?"; Blockly.Msg.DELETE_BLOCK = "Odstranit blok"; Blockly.Msg.DELETE_X_BLOCKS = "Odstranit %1 bloky"; Blockly.Msg.DISABLE_BLOCK = "Zakázat blok"; diff --git a/msg/js/da.js b/msg/js/da.js index a1032e39b..d247181e8 100644 --- a/msg/js/da.js +++ b/msg/js/da.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "gentag indtil"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "gentag sålænge"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Udfør nogle kommandoer, sålænge en værdi er falsk."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Udfør nogle kommandoer, sålænge en værdi er sand."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Slet alle %1 blokke?"; Blockly.Msg.DELETE_BLOCK = "Slet blok"; Blockly.Msg.DELETE_X_BLOCKS = "Slet %1 blokke"; Blockly.Msg.DISABLE_BLOCK = "Deaktivér blok"; diff --git a/msg/js/de.js b/msg/js/de.js index e16b1e22d..81d0b7fae 100644 --- a/msg/js/de.js +++ b/msg/js/de.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "Wiederhole bis"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "Wiederhole solange"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Führe die Anweisung solange aus wie die Bedingung falsch (false) ist."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Führe die Anweisung solange aus wie die Bedingung wahr (true) ist."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Alle %1 Bausteine löschen?"; Blockly.Msg.DELETE_BLOCK = "Block löschen"; Blockly.Msg.DELETE_X_BLOCKS = "Block %1 löschen"; Blockly.Msg.DISABLE_BLOCK = "Block deaktivieren"; diff --git a/msg/js/el.js b/msg/js/el.js index 532e5ede9..4623cc7ab 100644 --- a/msg/js/el.js +++ b/msg/js/el.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "επανάλαβε μέχρι" Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "επανάλαβε ενώ"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Ενόσω μια τιμή είναι ψευδής, τότε εκτελεί κάποιες εντολές."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Ενόσω μια τιμή είναι αληθής, τότε εκτελεί κάποιες εντολές."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Να διαγραφούν και τα %1 μπλοκ?"; Blockly.Msg.DELETE_BLOCK = "Διέγραψε Το Μπλοκ"; Blockly.Msg.DELETE_X_BLOCKS = "Διέγραψε %1 Μπλοκ"; Blockly.Msg.DISABLE_BLOCK = "Απενεργοποίησε Το Μπλοκ"; diff --git a/msg/js/en.js b/msg/js/en.js index afbf89b4f..01eece443 100644 --- a/msg/js/en.js +++ b/msg/js/en.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repeat until"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repeat while"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; Blockly.Msg.DELETE_BLOCK = "Delete Block"; Blockly.Msg.DELETE_X_BLOCKS = "Delete %1 Blocks"; Blockly.Msg.DISABLE_BLOCK = "Disable Block"; diff --git a/msg/js/es.js b/msg/js/es.js index 1ba7e1e04..78ce68bcb 100644 --- a/msg/js/es.js +++ b/msg/js/es.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repetir hasta"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repetir mientras"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Mientras un valor sea falso, entonces hacer algunas declaraciones."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Mientras un valor sea verdadero, entonces hacer algunas declaraciones."; +Blockly.Msg.DELETE_ALL_BLOCKS = "¿Eliminar todos los bloques %1?"; Blockly.Msg.DELETE_BLOCK = "Eliminar bloque"; Blockly.Msg.DELETE_X_BLOCKS = "Eliminar %1 bloques"; Blockly.Msg.DISABLE_BLOCK = "Desactivar bloque"; diff --git a/msg/js/fa.js b/msg/js/fa.js index acb08e787..bc9fa2985 100644 --- a/msg/js/fa.js +++ b/msg/js/fa.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "تکرار تا زمانی ک Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "تکرار در حالی که"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "تا زمانی که یک مقدار ناصحیح است، چند عبارت را انجام بده."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "تا زمانی که یک مقدار صحیح است، چند عبارت را انجام بده."; +Blockly.Msg.DELETE_ALL_BLOCKS = "حذف همهٔ بلاک‌های %1؟"; Blockly.Msg.DELETE_BLOCK = "حذف بلوک"; Blockly.Msg.DELETE_X_BLOCKS = "حذف بلوک‌های %1"; Blockly.Msg.DISABLE_BLOCK = "غیرفعال‌سازی بلوک"; diff --git a/msg/js/fi.js b/msg/js/fi.js index 7dfe3260a..119936919 100644 --- a/msg/js/fi.js +++ b/msg/js/fi.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "toista kunnes"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "toista niin kauan kuin"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Niin kauan kuin arvo on epätosi, suorita joukko lausekkeita."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Niin kauan kuin arvo on tosi, suorita joukko lausekkeita."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Poista lohko"; Blockly.Msg.DELETE_X_BLOCKS = "Poista %1 lohkoa"; Blockly.Msg.DISABLE_BLOCK = "Passivoi lohko"; diff --git a/msg/js/fr.js b/msg/js/fr.js index 7aa47b619..a73b60091 100644 --- a/msg/js/fr.js +++ b/msg/js/fr.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "répéter jusqu’à"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "répéter tant que"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Tant qu’une valeur est fausse, alors exécuter certains ordres."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Tant qu’une valeur est vraie, alors exécuter certains ordres."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Supprimer tous les %1 blocs ?"; Blockly.Msg.DELETE_BLOCK = "Supprimer le bloc"; Blockly.Msg.DELETE_X_BLOCKS = "Supprimer %1 blocs"; Blockly.Msg.DISABLE_BLOCK = "Désactiver le bloc"; diff --git a/msg/js/he.js b/msg/js/he.js index b8673cae2..69ee95dc8 100644 --- a/msg/js/he.js +++ b/msg/js/he.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "חזור עד ש..."; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "חזור כל עוד"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "בזמן שהערך שווה לשגוי, תעשה מספר חישובים."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "כל עוד הערך הוא אמת, לעשות כמה פעולות."; +Blockly.Msg.DELETE_ALL_BLOCKS = "האם למחוק את כל %1 קטעי הקוד?"; Blockly.Msg.DELETE_BLOCK = "מחק קטע קוד"; Blockly.Msg.DELETE_X_BLOCKS = "מחק %1 קטעי קוד"; Blockly.Msg.DISABLE_BLOCK = "נטרל קטע קוד"; diff --git a/msg/js/hi.js b/msg/js/hi.js index de94cdd80..6da60abbe 100644 --- a/msg/js/hi.js +++ b/msg/js/hi.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "दोहराएँ जब Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "दोहराएँ जब कि"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "जब तक मान फॉल्स है, तब तक कुछ स्टेट्मेंट्स चलाएँ।"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "जब तक मान ट्रू है, तब तक कुछ स्टेट्मेंट्स चलाएँ।"; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "ब्लॉक हटाएँ"; Blockly.Msg.DELETE_X_BLOCKS = "%1 ब्लॉक हटाएँ"; Blockly.Msg.DISABLE_BLOCK = "ब्लॉक को अक्षम करें"; diff --git a/msg/js/hrx.js b/msg/js/hrx.js index 4aee762d9..f0e75c40f 100644 --- a/msg/js/hrx.js +++ b/msg/js/hrx.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "Repetiere bis"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "Repetier solang"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Füahr die Oonweisung solang aus wie die Bedingung falsch (false) ist."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Füahr die Oonweisung solang aus wie die Bedingung woahr (true) ist."; +Blockly.Msg.DELETE_ALL_BLOCKS = "All %1 Bausten lösche?"; Blockly.Msg.DELETE_BLOCK = "Block lösche"; Blockly.Msg.DELETE_X_BLOCKS = "Block %1 lösche"; Blockly.Msg.DISABLE_BLOCK = "Block deaktivieren"; diff --git a/msg/js/hu.js b/msg/js/hu.js index 89488fcc0..eeb576ba2 100644 --- a/msg/js/hu.js +++ b/msg/js/hu.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ismételd amíg nem"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ismételd amíg"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Amíg a feltétel hamis, végrehajtja az utasításokat."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Amíg a feltétel igaz, végrehajtja az utasításokat."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Az összes %1 blokk törlése?"; Blockly.Msg.DELETE_BLOCK = "Blokk törlése"; Blockly.Msg.DELETE_X_BLOCKS = "%1 blokk törlése"; Blockly.Msg.DISABLE_BLOCK = "Blokk letiltása"; diff --git a/msg/js/ia.js b/msg/js/ia.js index 2eccaf32e..ad1446909 100644 --- a/msg/js/ia.js +++ b/msg/js/ia.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repeter usque a"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repeter durante que"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Durante que un valor es false, exequer certe instructiones."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Durante que un valor es ver, exequer certe instructiones."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Deler tote le %1 blocos?"; Blockly.Msg.DELETE_BLOCK = "Deler bloco"; Blockly.Msg.DELETE_X_BLOCKS = "Deler %1 blocos"; Blockly.Msg.DISABLE_BLOCK = "Disactivar bloco"; diff --git a/msg/js/id.js b/msg/js/id.js index 050574433..df44a08ec 100644 --- a/msg/js/id.js +++ b/msg/js/id.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "Ulangi sampai"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "Ulangi jika"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Jika sementara nilai tidak benar (false), maka lakukan beberapa perintah."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Jika sementara nilai benar (true), maka lakukan beberapa perintah."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Hapus Blok"; Blockly.Msg.DELETE_X_BLOCKS = "Hapus %1 Blok"; Blockly.Msg.DISABLE_BLOCK = "Nonaktifkan Blok"; diff --git a/msg/js/is.js b/msg/js/is.js index 9ab93ab48..9fca185f3 100644 --- a/msg/js/is.js +++ b/msg/js/is.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "endurtaka þar til"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "endurtaka á meðan"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Endurtaka eitthvað á meðan gildi er ósatt."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Endurtaka eitthvað á meðan gildi er satt."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Eyða öllum %1 kubbunum?"; Blockly.Msg.DELETE_BLOCK = "Eyða kubbi"; Blockly.Msg.DELETE_X_BLOCKS = "Eyða %1 kubbum"; Blockly.Msg.DISABLE_BLOCK = "Óvirkja kubb"; diff --git a/msg/js/it.js b/msg/js/it.js index 954a50bfc..b3cc3ea71 100644 --- a/msg/js/it.js +++ b/msg/js/it.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ripeti fino a che"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ripeti mentre"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Finché un valore è falso, esegue alcune istruzioni."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Finché un valore è vero, esegue alcune istruzioni."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Cancellare tutti i %1 blocchi?"; Blockly.Msg.DELETE_BLOCK = "Cancella blocco"; Blockly.Msg.DELETE_X_BLOCKS = "Cancella %1 blocchi"; Blockly.Msg.DISABLE_BLOCK = "Disattiva blocco"; diff --git a/msg/js/ja.js b/msg/js/ja.js index 21f467b2c..c18e9850a 100644 --- a/msg/js/ja.js +++ b/msg/js/ja.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "までを繰り返します"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "つつその間、繰り返す4"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "値は false のあいだ、いくつかのステートメントを行います。"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "値は true のあいだ、いくつかのステートメントを行います。"; +Blockly.Msg.DELETE_ALL_BLOCKS = "%1 個すべてのブロックを消しますか?"; Blockly.Msg.DELETE_BLOCK = "ブロックを消す"; Blockly.Msg.DELETE_X_BLOCKS = "%1 個のブロックを消す"; Blockly.Msg.DISABLE_BLOCK = "ブロックを無効にします。"; diff --git a/msg/js/ko.js b/msg/js/ko.js index 2befbb747..9c17e1d39 100644 --- a/msg/js/ko.js +++ b/msg/js/ko.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "다음까지 반복"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "동안 반복"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "값이 거짓일 때, 몇가지 선언을 합니다."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "값이 참일 때, 몇가지 선언을 합니다."; +Blockly.Msg.DELETE_ALL_BLOCKS = "모든 블록 %1개를 삭제하겠습니까?"; Blockly.Msg.DELETE_BLOCK = "블록 삭제"; Blockly.Msg.DELETE_X_BLOCKS = "블록 %1 삭제"; Blockly.Msg.DISABLE_BLOCK = "블록 비활성화"; diff --git a/msg/js/lb.js b/msg/js/lb.js index af1e27338..f1dce6646 100644 --- a/msg/js/lb.js +++ b/msg/js/lb.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "widderhuele bis"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repeat while"; // untranslated Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Block läschen"; Blockly.Msg.DELETE_X_BLOCKS = "%1 Bléck läschen"; Blockly.Msg.DISABLE_BLOCK = "Block desaktivéieren"; diff --git a/msg/js/lrc.js b/msg/js/lrc.js index 0639113af..9a48e971d 100644 --- a/msg/js/lrc.js +++ b/msg/js/lrc.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "تا تکرار کو"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "تا تکرار کو"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "پاکسا کردن برشت"; Blockly.Msg.DELETE_X_BLOCKS = "پاکسا کردن%1 د برشتیا"; Blockly.Msg.DISABLE_BLOCK = "ناکشتگر کردن برشت"; diff --git a/msg/js/lt.js b/msg/js/lt.js index abf953312..ce28cf8f4 100644 --- a/msg/js/lt.js +++ b/msg/js/lt.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "kartok, kol pasieksi"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "kartok kol"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Kartoja veiksmus, kol bus pasiekta nurodyta sąlyga."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Kartoja veiksmus, kol sąlyga tenkinama."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Ištrinti bloką"; Blockly.Msg.DELETE_X_BLOCKS = "Ištrinti %1 blokus"; Blockly.Msg.DISABLE_BLOCK = "Išjungti bloką"; diff --git a/msg/js/mk.js b/msg/js/mk.js index 6a5613066..56e064156 100644 --- a/msg/js/mk.js +++ b/msg/js/mk.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "повторувај сè до Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "повторувај додека"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Додека вредноста е невистинита, исполнува наредби."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Додека вредноста е вистинита, исполнува наредби."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Да ги избришам сите %1 блокчиња?"; Blockly.Msg.DELETE_BLOCK = "Избриши блок"; Blockly.Msg.DELETE_X_BLOCKS = "Избриши %1 блока"; Blockly.Msg.DISABLE_BLOCK = "Исклучи блок"; diff --git a/msg/js/ms.js b/msg/js/ms.js index 0cf42bc5e..670c671be 100644 --- a/msg/js/ms.js +++ b/msg/js/ms.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ulangi sehingga"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ulangi apabila"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Lakukan beberapa perintah apabila nilainya palsu (false)."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Lakukan beberapa perintah apabila nilainya benar (true)."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Hapuskan kesemua %1 blok?"; Blockly.Msg.DELETE_BLOCK = "Hapuskan Blok"; Blockly.Msg.DELETE_X_BLOCKS = "Hapuskan %1 Blok"; Blockly.Msg.DISABLE_BLOCK = "Matikan Blok"; diff --git a/msg/js/nb.js b/msg/js/nb.js index 67562f477..ce376ec69 100644 --- a/msg/js/nb.js +++ b/msg/js/nb.js @@ -62,8 +62,9 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "gjenta til"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "gjenta mens"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Så lenge et utsagn ikke stemmer, gjør noen instruksjoner."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Så lenge et utsagn stemmer, utfør noen instruksjoner."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Slett alle %1 blokker?"; Blockly.Msg.DELETE_BLOCK = "Slett blokk"; -Blockly.Msg.DELETE_X_BLOCKS = "Slett %1 blokk(er)"; +Blockly.Msg.DELETE_X_BLOCKS = "Slett %1 blokker"; Blockly.Msg.DISABLE_BLOCK = "Deaktiver blokk"; Blockly.Msg.DUPLICATE_BLOCK = "duplikat"; Blockly.Msg.ENABLE_BLOCK = "Aktiver blokk"; diff --git a/msg/js/nl.js b/msg/js/nl.js index a10d9567a..db6e1dbc3 100644 --- a/msg/js/nl.js +++ b/msg/js/nl.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "herhalen totdat"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "herhalen zolang"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Terwijl een waarde onwaar is de volgende opdrachten uitvoeren."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Terwijl een waarde waar is de volgende opdrachten uitvoeren."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Alle %1 blokken verwijderen?"; Blockly.Msg.DELETE_BLOCK = "Blok verwijderen"; Blockly.Msg.DELETE_X_BLOCKS = "%1 blokken verwijderen"; Blockly.Msg.DISABLE_BLOCK = "Blok uitschakelen"; diff --git a/msg/js/oc.js b/msg/js/oc.js index c6dd8b767..716657afc 100644 --- a/msg/js/oc.js +++ b/msg/js/oc.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repetir fins a"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repetir tant que"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated +Blockly.Msg.DELETE_ALL_BLOCKS = "Suprimir totes los %1 blòts ?"; Blockly.Msg.DELETE_BLOCK = "Suprimir lo blòt"; Blockly.Msg.DELETE_X_BLOCKS = "Suprimir %1 blòts"; Blockly.Msg.DISABLE_BLOCK = "Desactivar lo blòt"; diff --git a/msg/js/pl.js b/msg/js/pl.js index e51f2fcbd..5148cbc78 100644 --- a/msg/js/pl.js +++ b/msg/js/pl.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "powtarzaj aż"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "powtarzaj dopóki"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Gdy wartość jest nieprawdziwa, wykonaj kilka instrukcji."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Gdy wartość jest prawdziwa, wykonaj kilka instrukcji."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Usunąć wszystkie %1 bloki?"; Blockly.Msg.DELETE_BLOCK = "Usuń blok"; Blockly.Msg.DELETE_X_BLOCKS = "Usunąć %1 bloki(ów)"; Blockly.Msg.DISABLE_BLOCK = "Wyłącz blok"; diff --git a/msg/js/pms.js b/msg/js/pms.js index a759e28be..99a2d26fc 100644 --- a/msg/js/pms.js +++ b/msg/js/pms.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "arpete fin-a a"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "arpete antramentre che"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Cand un valor a l'é fàuss, eseguì chèiche anstrussion."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Cand un valor a l'é ver, eseguì chèiche anstrussion."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Scancelé tuti ij %1 blòch?"; Blockly.Msg.DELETE_BLOCK = "Scancelé ël blòch"; Blockly.Msg.DELETE_X_BLOCKS = "Scancelé %1 blòch"; Blockly.Msg.DISABLE_BLOCK = "Disativé ël blòch"; diff --git a/msg/js/pt-br.js b/msg/js/pt-br.js index 9fa2e74fb..4a07bc521 100644 --- a/msg/js/pt-br.js +++ b/msg/js/pt-br.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repita até"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repita enquanto"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Enquanto um valor for falso, então faça algumas instruções."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Enquanto um valor for verdadeiro, então faça algumas instruções."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Apagar todos os %1 blocos?"; Blockly.Msg.DELETE_BLOCK = "Remover bloco"; Blockly.Msg.DELETE_X_BLOCKS = "Remover %1 blocos"; Blockly.Msg.DISABLE_BLOCK = "Desabilitar bloco"; diff --git a/msg/js/pt.js b/msg/js/pt.js index 8f2e84c07..5e4d56ac1 100644 --- a/msg/js/pt.js +++ b/msg/js/pt.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repita até"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repita enquanto"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Enquanto um valor for falso, então faça algumas instruções."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Enquanto um valor for verdadeiro, então faça algumas instruções."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Remover Bloco"; Blockly.Msg.DELETE_X_BLOCKS = "Remover %1 Blocos"; Blockly.Msg.DISABLE_BLOCK = "Desabilitar Bloco"; diff --git a/msg/js/ro.js b/msg/js/ro.js index d52c2548b..2d47703f4 100644 --- a/msg/js/ro.js +++ b/msg/js/ro.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "Repetaţi până când"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repetă în timp ce"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "În timp ce o valoare este adevărat, atunci face unele declaraţii."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "În timp ce o valoare este adevărat, atunci face unele declaraţii."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Ștergi toate cele %1 (de) blocuri?"; Blockly.Msg.DELETE_BLOCK = "Șterge Bloc"; Blockly.Msg.DELETE_X_BLOCKS = "Ștergeți %1 Blocuri"; Blockly.Msg.DISABLE_BLOCK = "Dezactivaţi bloc"; diff --git a/msg/js/ru.js b/msg/js/ru.js index 96714f7c4..c060ba3b8 100644 --- a/msg/js/ru.js +++ b/msg/js/ru.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "повторять, пока Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "повторять, пока"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Пока значение ложно, выполняет команды"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Пока значение истинно, выполняет команды."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Удалить все блоки (%1)?"; Blockly.Msg.DELETE_BLOCK = "Удалить блок"; Blockly.Msg.DELETE_X_BLOCKS = "Удалить %1 блоков"; Blockly.Msg.DISABLE_BLOCK = "Отключить блок"; diff --git a/msg/js/sc.js b/msg/js/sc.js index 00d7a9eca..113414a61 100644 --- a/msg/js/sc.js +++ b/msg/js/sc.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "repiti fintzas"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "repiti interis"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Interis su valori est frassu, tandu fai pariga de cumandus."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Interis su valori est berus, tandu fai pariga de cumandus."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Scancellu su %1 de is brocus?"; Blockly.Msg.DELETE_BLOCK = "Fùlia Blocu"; Blockly.Msg.DELETE_X_BLOCKS = "Fulia %1 Blocus"; Blockly.Msg.DISABLE_BLOCK = "Disabìlita Blocu"; diff --git a/msg/js/shn.js b/msg/js/shn.js index 1f14ed0e0..310d1c64c 100644 --- a/msg/js/shn.js +++ b/msg/js/shn.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "တိုၵ်ႉလိုမ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ၶၢဝ်းတိုၵ်ႉလိုမ်ႉ"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "ပေႃးဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) ဢမ်ႇမၢၼ်ႇမႅၼ်ႈၸိုင် ႁဵတ်းၶေႃႈၵဵပ်းထွၼ် ၵမ်ႈၽွင်ႈ"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "ပေႃးဝႃႈ ၵႃႈၶၼ် (ၼမ်ႉၵတ်ႉ) မၢၼ်ႇမႅၼ်ႈယဝ်ႉၸိုင် ႁဵတ်းၶေႃႈၵဵပ်းထွၼ်ၵမ်ႈၽွင်ႈ"; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "မွတ်ႇပလွၵ်ႉ"; Blockly.Msg.DELETE_X_BLOCKS = "မွတ်ႇပလွၵ်ႉ %1"; Blockly.Msg.DISABLE_BLOCK = "ဢမ်ႇၸၢင်ႈပလွၵ်ႉ"; diff --git a/msg/js/sk.js b/msg/js/sk.js index f127d8db1..de8b0609a 100644 --- a/msg/js/sk.js +++ b/msg/js/sk.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "opakuj kým nebude"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "opakuj kým"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Kým je hodnota nepravdivá, vykonávaj príkazy."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Kým je hodnota pravdivá, vykonávaj príkazy."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Zmazať všetkých %1 dielcov?"; Blockly.Msg.DELETE_BLOCK = "Odstrániť blok"; Blockly.Msg.DELETE_X_BLOCKS = "Odstrániť %1 blokov"; Blockly.Msg.DISABLE_BLOCK = "Vypnúť blok"; diff --git a/msg/js/sq.js b/msg/js/sq.js index 79ccfbcfe..f7f875b0c 100644 --- a/msg/js/sq.js +++ b/msg/js/sq.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "përsërit derisa"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "përsërit përderisa"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Përderisa një vlerë është e pasaktë, atëherë ekzekuto disa fjali."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Përderisa një vlerë është e saktë, atëherë ekzekuto disa fjali."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Fshij bllokun"; Blockly.Msg.DELETE_X_BLOCKS = "Fshij %1 blloqe"; Blockly.Msg.DISABLE_BLOCK = "Çaktivizo bllokun"; diff --git a/msg/js/sr.js b/msg/js/sr.js index e903b755c..351b94b6d 100644 --- a/msg/js/sr.js +++ b/msg/js/sr.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "понављати до"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "понављати док"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Док вредност није тачна, онда извршити неке наредбе."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Док је вредност тачна, онда извршите неке наредбе."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Обрисати %1 блокова?"; Blockly.Msg.DELETE_BLOCK = "Обриши блок"; Blockly.Msg.DELETE_X_BLOCKS = "Обриши %1 блокова"; Blockly.Msg.DISABLE_BLOCK = "Онемогући блок"; diff --git a/msg/js/sv.js b/msg/js/sv.js index 2944f863e..b75dc7f89 100644 --- a/msg/js/sv.js +++ b/msg/js/sv.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "upprepa tills"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "upprepa medan"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Medan ett värde är falskt, utför några kommandon."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Medan ett värde är sant, utför några kommandon."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Radera alla %1 block?"; Blockly.Msg.DELETE_BLOCK = "Radera block"; Blockly.Msg.DELETE_X_BLOCKS = "Radera %1 block"; Blockly.Msg.DISABLE_BLOCK = "Inaktivera block"; diff --git a/msg/js/ta.js b/msg/js/ta.js index 2e3e7458e..096ef5bc5 100644 --- a/msg/js/ta.js +++ b/msg/js/ta.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "பலமுரை திர Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "பலமுரை திரும்ப செய் (வரை)"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "மாறி பொய் ஆக உள்ள வரை, கட்டளைகளை இயக்கு"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "மாறி உண்மை ஆக உள்ள வரை, கட்டளைகளை இயக்கு"; +Blockly.Msg.DELETE_ALL_BLOCKS = "அனைத்து %1 நிரல் துண்டுகளையும் அழிக்கவா??"; Blockly.Msg.DELETE_BLOCK = "உறுப்பை நீக்கு"; Blockly.Msg.DELETE_X_BLOCKS = "%1 உறுப்பை நீக்கு"; Blockly.Msg.DISABLE_BLOCK = "உறுப்பை இயங்காது செய்"; diff --git a/msg/js/tcy.js b/msg/js/tcy.js index 1c213b925..7da3f42fa 100644 --- a/msg/js/tcy.js +++ b/msg/js/tcy.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ಬುಕ್ಕೊ ಮುಟ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ಬುಕ್ಕೊ ಅಂಚನೇ"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "ಈ ತಿರ್ತ್‍ದ ತಪ್ಪಾದುಂಡು, ಬುಕ್ಕೊದ ಕೆಲವು ಹೇಳಿಕೆಲೆನ್ ಮಲ್ಪಪುಲ"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "ಈ ತಿರ್ತ್‌ದ ಸರಿ ಇತ್ತ್ಂಡಲಾ, ಬುಕ್ಕೊದ ಕೆಲವು ಹೇಳಿಕೆಲೆನ್ ಮಲ್ಪುಲ"; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "ಮಾಜಯರ ತಡೆಯಾತ್ಂಡ್"; Blockly.Msg.DELETE_X_BLOCKS = "ಮಾಜಯರ ಶೇಕಡಾ ೧ ತಡೆಯಾತ್ಂಡ್"; Blockly.Msg.DISABLE_BLOCK = "ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಾದ್ ತಡೆಪತ್ತುನೆ"; diff --git a/msg/js/th.js b/msg/js/th.js index 74657e856..f603b9cc7 100644 --- a/msg/js/th.js +++ b/msg/js/th.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ทำซ้ำจนกระ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ทำซ้ำตราบเท่าที่"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "ตราบเท่าที่ค่าเป็นเท็จ ก็จะทำบางคำสั่ง"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "ตราบเท่าที่ค่าเป็นจริง ก็จะทำบางคำสั่ง"; +Blockly.Msg.DELETE_ALL_BLOCKS = "ต้องการลบบล็อกทั้ง %1 บล็อกใช่หรือไม่?"; Blockly.Msg.DELETE_BLOCK = "ลบบล็อก"; Blockly.Msg.DELETE_X_BLOCKS = "ลบ %1 บล็อก"; Blockly.Msg.DISABLE_BLOCK = "ปิดใช้งานบล็อก"; diff --git a/msg/js/tl.js b/msg/js/tl.js index 1ba08222b..d3acb1be8 100644 --- a/msg/js/tl.js +++ b/msg/js/tl.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "ulitin hanggang"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "ulitin habang"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Habang ang value ay false, gagawin ang ibang statements."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Habang ang value ay true, gagawin ang ibang statements."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "burahin ang bloke"; Blockly.Msg.DELETE_X_BLOCKS = "burahin %1 ng bloke"; Blockly.Msg.DISABLE_BLOCK = "Ipangwalang bisa ang Block"; diff --git a/msg/js/tlh.js b/msg/js/tlh.js index ff985695e..be8c6f651 100644 --- a/msg/js/tlh.js +++ b/msg/js/tlh.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "teHpa' qaSmoH"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "teHtaHvIS qaSmoH"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "While a value is false, then do some statements."; // untranslated Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "While a value is true, then do some statements."; // untranslated +Blockly.Msg.DELETE_ALL_BLOCKS = "Hoch %1 ngoghmey Qaw'?"; Blockly.Msg.DELETE_BLOCK = "ngogh Qaw'"; Blockly.Msg.DELETE_X_BLOCKS = "%1 ngoghmey Qaw'"; Blockly.Msg.DISABLE_BLOCK = "ngogh Qotlh"; diff --git a/msg/js/tr.js b/msg/js/tr.js index 0f3646454..5c321ec34 100644 --- a/msg/js/tr.js +++ b/msg/js/tr.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "kadar tekrarla"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "tekrar ederken"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Bir değer yanlış olduğunda bazı beyanlarda bulun."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Bir değer doğru olduğunda bazı beyanlarda bulun."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Tüm %1 blok silinsin mi?"; Blockly.Msg.DELETE_BLOCK = "Bloğu Sil"; Blockly.Msg.DELETE_X_BLOCKS = "%1 Blokları Sil"; Blockly.Msg.DISABLE_BLOCK = "Bloğu Devre Dışı Bırak"; diff --git a/msg/js/uk.js b/msg/js/uk.js index 49bb9a396..45ae03dad 100644 --- a/msg/js/uk.js +++ b/msg/js/uk.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "повторювати, док Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "повторювати поки"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Поки значення хибне, виконувати певні дії."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Поки значення істинне, виконувати певні дії."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Вилучити всі блоки %1?"; Blockly.Msg.DELETE_BLOCK = "Видалити блок"; Blockly.Msg.DELETE_X_BLOCKS = "Видалити %1 блоків"; Blockly.Msg.DISABLE_BLOCK = "Вимкнути блок"; diff --git a/msg/js/vi.js b/msg/js/vi.js index ba07eddae..6beef725c 100644 --- a/msg/js/vi.js +++ b/msg/js/vi.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "lặp lại cho đến khi"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "lặp lại trong khi"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "Miễn là điều kiện còn sai, thì thực hiện các lệnh. Khi điều kiện đúng thì ngưng."; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "Miễn là điều kiện còn đúng, thì thực hiện các lệnh."; +Blockly.Msg.DELETE_ALL_BLOCKS = "Xóa hết %1 mảnh?"; Blockly.Msg.DELETE_BLOCK = "Xóa Mảnh Này"; Blockly.Msg.DELETE_X_BLOCKS = "Xóa %1 Mảnh"; Blockly.Msg.DISABLE_BLOCK = "Ngưng Tác Dụng"; diff --git a/msg/js/zh-hans.js b/msg/js/zh-hans.js index a0966cc6b..c0774e79e 100644 --- a/msg/js/zh-hans.js +++ b/msg/js/zh-hans.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "重复直到"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "重复当"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "只要值为假,执行一些语句。"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "只要值为真,执行一些语句。"; +Blockly.Msg.DELETE_ALL_BLOCKS = "删除所有%1块吗?"; Blockly.Msg.DELETE_BLOCK = "删除块"; Blockly.Msg.DELETE_X_BLOCKS = "删除 %1 块"; Blockly.Msg.DISABLE_BLOCK = "禁用块"; diff --git a/msg/js/zh-hant.js b/msg/js/zh-hant.js index db7090e82..7aa421025 100644 --- a/msg/js/zh-hant.js +++ b/msg/js/zh-hant.js @@ -62,6 +62,7 @@ Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_UNTIL = "重複 直到"; Blockly.Msg.CONTROLS_WHILEUNTIL_OPERATOR_WHILE = "重複 當"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_UNTIL = "當值為否時,執行一些語句"; Blockly.Msg.CONTROLS_WHILEUNTIL_TOOLTIP_WHILE = "當值為真時,執行一些語句"; +Blockly.Msg.DELETE_ALL_BLOCKS = "刪除共%1個積木?"; Blockly.Msg.DELETE_BLOCK = "刪除積木"; Blockly.Msg.DELETE_X_BLOCKS = "刪除 %1 塊積木"; Blockly.Msg.DISABLE_BLOCK = "停用積木"; diff --git a/msg/json/ar.json b/msg/json/ar.json index 2d0ff1060..3afd05a1e 100644 --- a/msg/json/ar.json +++ b/msg/json/ar.json @@ -14,6 +14,7 @@ "INLINE_INPUTS": "ادخال خطي", "DELETE_BLOCK": "إحذف القطعة", "DELETE_X_BLOCKS": "إحذف قطع %1", + "DELETE_ALL_BLOCKS": "حذف كل بلوكات %1؟", "COLLAPSE_BLOCK": "إخفاء القطعة", "COLLAPSE_ALL": "إخفاء القطع", "EXPAND_BLOCK": "وسٌّع القطعة", diff --git a/msg/json/be-tarask.json b/msg/json/be-tarask.json index cf8599e1c..dd94e0c0d 100644 --- a/msg/json/be-tarask.json +++ b/msg/json/be-tarask.json @@ -15,6 +15,7 @@ "INLINE_INPUTS": "Унутраныя ўваходы", "DELETE_BLOCK": "Выдаліць блёк", "DELETE_X_BLOCKS": "Выдаліць %1 блёкі", + "DELETE_ALL_BLOCKS": "Выдаліць усе блёкі %1?", "CLEAN_UP": "Ачысьціць блёкі", "COLLAPSE_BLOCK": "Згарнуць блёк", "COLLAPSE_ALL": "Згарнуць блёкі", diff --git a/msg/json/br.json b/msg/json/br.json index e036d121a..cc3169326 100644 --- a/msg/json/br.json +++ b/msg/json/br.json @@ -15,6 +15,7 @@ "INLINE_INPUTS": "Monedoù enlinenn", "DELETE_BLOCK": "Dilemel ar bloc'h", "DELETE_X_BLOCKS": "Dilemel %1 bloc'h", + "DELETE_ALL_BLOCKS": "Diverkañ an holl vloc'hoù %1 ?", "COLLAPSE_BLOCK": "Bihanaat ar bloc'h", "COLLAPSE_ALL": "Bihanaat ar bloc'hoù", "EXPAND_BLOCK": "Astenn ar bloc'h", diff --git a/msg/json/ca.json b/msg/json/ca.json index f6167e9dc..4cd96ce5d 100644 --- a/msg/json/ca.json +++ b/msg/json/ca.json @@ -14,6 +14,7 @@ "INLINE_INPUTS": "Entrades en línia", "DELETE_BLOCK": "Esborra bloc", "DELETE_X_BLOCKS": "Esborra %1 blocs", + "DELETE_ALL_BLOCKS": "Esborrar els %1 blocs?", "COLLAPSE_BLOCK": "Contraure bloc", "COLLAPSE_ALL": "Contraure blocs", "EXPAND_BLOCK": "Expandir bloc", diff --git a/msg/json/cs.json b/msg/json/cs.json index a97f63d23..4a6222ae3 100644 --- a/msg/json/cs.json +++ b/msg/json/cs.json @@ -17,6 +17,7 @@ "INLINE_INPUTS": "Vložené vstupy", "DELETE_BLOCK": "Odstranit blok", "DELETE_X_BLOCKS": "Odstranit %1 bloky", + "DELETE_ALL_BLOCKS": "Odstranit všechny bloky %1?", "COLLAPSE_BLOCK": "Skrýt blok", "COLLAPSE_ALL": "Skrýt bloky", "EXPAND_BLOCK": "Rozbalení bloku", diff --git a/msg/json/da.json b/msg/json/da.json index ba9bcb77f..5d2fbe570 100644 --- a/msg/json/da.json +++ b/msg/json/da.json @@ -15,6 +15,7 @@ "INLINE_INPUTS": "Indlejrede inputs", "DELETE_BLOCK": "Slet blok", "DELETE_X_BLOCKS": "Slet %1 blokke", + "DELETE_ALL_BLOCKS": "Slet alle %1 blokke?", "COLLAPSE_BLOCK": "Fold blokken sammen", "COLLAPSE_ALL": "Fold blokkene sammen", "EXPAND_BLOCK": "Fold blokken ud", diff --git a/msg/json/de.json b/msg/json/de.json index e8df3245c..53db0a8a6 100644 --- a/msg/json/de.json +++ b/msg/json/de.json @@ -17,6 +17,7 @@ "INLINE_INPUTS": "interne Eingänge", "DELETE_BLOCK": "Block löschen", "DELETE_X_BLOCKS": "Block %1 löschen", + "DELETE_ALL_BLOCKS": "Alle %1 Bausteine löschen?", "CLEAN_UP": "Blöcke aufräumen", "COLLAPSE_BLOCK": "Block zusammenfalten", "COLLAPSE_ALL": "Alle Blöcke zusammenfalten", diff --git a/msg/json/el.json b/msg/json/el.json index 8bb1b4867..50d55e190 100644 --- a/msg/json/el.json +++ b/msg/json/el.json @@ -20,6 +20,7 @@ "INLINE_INPUTS": "Εσωτερικές Είσοδοι", "DELETE_BLOCK": "Διέγραψε Το Μπλοκ", "DELETE_X_BLOCKS": "Διέγραψε %1 Μπλοκ", + "DELETE_ALL_BLOCKS": "Να διαγραφούν και τα %1 μπλοκ?", "COLLAPSE_BLOCK": "Σύμπτυξε Το Μπλοκ", "COLLAPSE_ALL": "Σύμπτυξτε Όλα Τα Μπλοκ", "EXPAND_BLOCK": "Επέκτεινε Το Μπλοκ", diff --git a/msg/json/en.json b/msg/json/en.json index a57b6fecc..09485d8c5 100644 --- a/msg/json/en.json +++ b/msg/json/en.json @@ -1,7 +1,7 @@ { "@metadata": { "author": "Ellen Spertus ", - "lastupdated": "2015-10-09 19:19:49.745918", + "lastupdated": "2015-12-02 17:58:14.123458", "locale": "en", "messagedocumentation" : "qqq" }, @@ -14,6 +14,7 @@ "INLINE_INPUTS": "Inline Inputs", "DELETE_BLOCK": "Delete Block", "DELETE_X_BLOCKS": "Delete %1 Blocks", + "DELETE_ALL_BLOCKS": "Delete all %1 blocks?", "CLEAN_UP": "Clean up Blocks", "COLLAPSE_BLOCK": "Collapse Block", "COLLAPSE_ALL": "Collapse Blocks", diff --git a/msg/json/es.json b/msg/json/es.json index 08342e46b..191e2e076 100644 --- a/msg/json/es.json +++ b/msg/json/es.json @@ -16,6 +16,7 @@ "INLINE_INPUTS": "Entradas en línea", "DELETE_BLOCK": "Eliminar bloque", "DELETE_X_BLOCKS": "Eliminar %1 bloques", + "DELETE_ALL_BLOCKS": "¿Eliminar todos los bloques %1?", "CLEAN_UP": "Limpiar los bloques", "COLLAPSE_BLOCK": "Contraer bloque", "COLLAPSE_ALL": "Contraer bloques", diff --git a/msg/json/fa.json b/msg/json/fa.json index 43f7c29c3..6b4d24f8c 100644 --- a/msg/json/fa.json +++ b/msg/json/fa.json @@ -18,6 +18,7 @@ "INLINE_INPUTS": "ورودی‌های درون خطی", "DELETE_BLOCK": "حذف بلوک", "DELETE_X_BLOCKS": "حذف بلوک‌های %1", + "DELETE_ALL_BLOCKS": "حذف همهٔ بلاک‌های %1؟", "COLLAPSE_BLOCK": "فروپاشی بلوک", "COLLAPSE_ALL": "فروپاشی بلوک‌ها", "EXPAND_BLOCK": "گسترش بلوک", diff --git a/msg/json/fr.json b/msg/json/fr.json index 8a6772e6b..eb0e3ec6d 100644 --- a/msg/json/fr.json +++ b/msg/json/fr.json @@ -16,6 +16,7 @@ "INLINE_INPUTS": "Entrées en ligne", "DELETE_BLOCK": "Supprimer le bloc", "DELETE_X_BLOCKS": "Supprimer %1 blocs", + "DELETE_ALL_BLOCKS": "Supprimer tous les %1 blocs ?", "CLEAN_UP": "Nettoyer les blocs", "COLLAPSE_BLOCK": "Réduire le bloc", "COLLAPSE_ALL": "Réduire les blocs", diff --git a/msg/json/he.json b/msg/json/he.json index f0d260bc8..8dd1bbd89 100644 --- a/msg/json/he.json +++ b/msg/json/he.json @@ -21,6 +21,7 @@ "INLINE_INPUTS": "קלטים פנימיים", "DELETE_BLOCK": "מחק קטע קוד", "DELETE_X_BLOCKS": "מחק %1 קטעי קוד", + "DELETE_ALL_BLOCKS": "האם למחוק את כל %1 קטעי הקוד?", "COLLAPSE_BLOCK": "צמצם קטע קוד", "COLLAPSE_ALL": "צמצם קטעי קוד", "EXPAND_BLOCK": "הרחב קטע קוד", diff --git a/msg/json/hrx.json b/msg/json/hrx.json index 61748a5fe..39a3f37ad 100644 --- a/msg/json/hrx.json +++ b/msg/json/hrx.json @@ -12,6 +12,7 @@ "INLINE_INPUTS": "interne Ingänge", "DELETE_BLOCK": "Block lösche", "DELETE_X_BLOCKS": "Block %1 lösche", + "DELETE_ALL_BLOCKS": "All %1 Bausten lösche?", "COLLAPSE_BLOCK": "Block zusammerfalte", "COLLAPSE_ALL": "Blocke zusammerfalte", "EXPAND_BLOCK": "Block entfalte", diff --git a/msg/json/hu.json b/msg/json/hu.json index 9cf6fe18f..1eabaf104 100644 --- a/msg/json/hu.json +++ b/msg/json/hu.json @@ -21,6 +21,7 @@ "INLINE_INPUTS": "Belső kapcsolatok", "DELETE_BLOCK": "Blokk törlése", "DELETE_X_BLOCKS": "%1 blokk törlése", + "DELETE_ALL_BLOCKS": "Az összes %1 blokk törlése?", "COLLAPSE_BLOCK": "Blokk összecsukása", "COLLAPSE_ALL": "Blokkok összecsukása", "EXPAND_BLOCK": "Blokk kibontása", diff --git a/msg/json/ia.json b/msg/json/ia.json index 71174bc12..a0324f702 100644 --- a/msg/json/ia.json +++ b/msg/json/ia.json @@ -12,6 +12,7 @@ "INLINE_INPUTS": "Entrata interne", "DELETE_BLOCK": "Deler bloco", "DELETE_X_BLOCKS": "Deler %1 blocos", + "DELETE_ALL_BLOCKS": "Deler tote le %1 blocos?", "COLLAPSE_BLOCK": "Plicar bloco", "COLLAPSE_ALL": "Plicar blocos", "EXPAND_BLOCK": "Displicar bloco", diff --git a/msg/json/is.json b/msg/json/is.json index 0a3235dad..9d67725af 100644 --- a/msg/json/is.json +++ b/msg/json/is.json @@ -15,6 +15,7 @@ "INLINE_INPUTS": "Innri inntök", "DELETE_BLOCK": "Eyða kubbi", "DELETE_X_BLOCKS": "Eyða %1 kubbum", + "DELETE_ALL_BLOCKS": "Eyða öllum %1 kubbunum?", "COLLAPSE_BLOCK": "Loka kubbi", "COLLAPSE_ALL": "Loka kubbum", "EXPAND_BLOCK": "Opna kubb", diff --git a/msg/json/it.json b/msg/json/it.json index e5c72d8d4..2fa1238c4 100644 --- a/msg/json/it.json +++ b/msg/json/it.json @@ -18,6 +18,7 @@ "INLINE_INPUTS": "Ingressi in linea", "DELETE_BLOCK": "Cancella blocco", "DELETE_X_BLOCKS": "Cancella %1 blocchi", + "DELETE_ALL_BLOCKS": "Cancellare tutti i %1 blocchi?", "CLEAN_UP": "Pulisci i blocchi", "COLLAPSE_BLOCK": "Comprimi blocco", "COLLAPSE_ALL": "Comprimi blocchi", diff --git a/msg/json/ja.json b/msg/json/ja.json index 60610e0c9..57c33ce00 100644 --- a/msg/json/ja.json +++ b/msg/json/ja.json @@ -17,6 +17,7 @@ "INLINE_INPUTS": "インライン入力", "DELETE_BLOCK": "ブロックを消す", "DELETE_X_BLOCKS": "%1 個のブロックを消す", + "DELETE_ALL_BLOCKS": "%1 個すべてのブロックを消しますか?", "CLEAN_UP": "ブロックの整理", "COLLAPSE_BLOCK": "ブロックを折りたたむ", "COLLAPSE_ALL": "ブロックを折りたたむ", diff --git a/msg/json/ko.json b/msg/json/ko.json index a499ba10d..f0d147d01 100644 --- a/msg/json/ko.json +++ b/msg/json/ko.json @@ -19,6 +19,7 @@ "INLINE_INPUTS": "내부 입력", "DELETE_BLOCK": "블록 삭제", "DELETE_X_BLOCKS": "블록 %1 삭제", + "DELETE_ALL_BLOCKS": "모든 블록 %1개를 삭제하겠습니까?", "COLLAPSE_BLOCK": "블록 축소", "COLLAPSE_ALL": "블록 축소", "EXPAND_BLOCK": "블록 확장", diff --git a/msg/json/mk.json b/msg/json/mk.json index ed1d2d136..4cb890cf0 100644 --- a/msg/json/mk.json +++ b/msg/json/mk.json @@ -12,6 +12,7 @@ "INLINE_INPUTS": "Внатрешен внос", "DELETE_BLOCK": "Избриши блок", "DELETE_X_BLOCKS": "Избриши %1 блока", + "DELETE_ALL_BLOCKS": "Да ги избришам сите %1 блокчиња?", "COLLAPSE_BLOCK": "Собери блок", "COLLAPSE_ALL": "Собери блокови", "EXPAND_BLOCK": "Рашири го блокови", diff --git a/msg/json/ms.json b/msg/json/ms.json index 092276abf..2ee094a97 100644 --- a/msg/json/ms.json +++ b/msg/json/ms.json @@ -14,6 +14,7 @@ "INLINE_INPUTS": "Input Sebaris", "DELETE_BLOCK": "Hapuskan Blok", "DELETE_X_BLOCKS": "Hapuskan %1 Blok", + "DELETE_ALL_BLOCKS": "Hapuskan kesemua %1 blok?", "COLLAPSE_BLOCK": "Lipat Blok", "COLLAPSE_ALL": "Lipat Blok²", "EXPAND_BLOCK": "Buka Blok", diff --git a/msg/json/nb.json b/msg/json/nb.json index 1283be5ce..9deec013e 100644 --- a/msg/json/nb.json +++ b/msg/json/nb.json @@ -14,7 +14,8 @@ "EXTERNAL_INPUTS": "Eksterne kilder", "INLINE_INPUTS": "Interne kilder", "DELETE_BLOCK": "Slett blokk", - "DELETE_X_BLOCKS": "Slett %1 blokk(er)", + "DELETE_X_BLOCKS": "Slett %1 blokker", + "DELETE_ALL_BLOCKS": "Slett alle %1 blokker?", "COLLAPSE_BLOCK": "Skjul blokk", "COLLAPSE_ALL": "Skjul blokker", "EXPAND_BLOCK": "Utvid blokk", diff --git a/msg/json/nl.json b/msg/json/nl.json index 7b3cb0b91..4ed0e2aea 100644 --- a/msg/json/nl.json +++ b/msg/json/nl.json @@ -18,6 +18,7 @@ "INLINE_INPUTS": "Inline invoer", "DELETE_BLOCK": "Blok verwijderen", "DELETE_X_BLOCKS": "%1 blokken verwijderen", + "DELETE_ALL_BLOCKS": "Alle %1 blokken verwijderen?", "CLEAN_UP": "Blokken opschonen", "COLLAPSE_BLOCK": "Blok inklappen", "COLLAPSE_ALL": "Blokken inklappen", diff --git a/msg/json/oc.json b/msg/json/oc.json index 1532f3a4e..1e505fe20 100644 --- a/msg/json/oc.json +++ b/msg/json/oc.json @@ -12,6 +12,7 @@ "INLINE_INPUTS": "Entradas en linha", "DELETE_BLOCK": "Suprimir lo blòt", "DELETE_X_BLOCKS": "Suprimir %1 blòts", + "DELETE_ALL_BLOCKS": "Suprimir totes los %1 blòts ?", "COLLAPSE_BLOCK": "Redusir lo blòt", "COLLAPSE_ALL": "Redusir los blòts", "EXPAND_BLOCK": "Desvolopar lo blòt", diff --git a/msg/json/pl.json b/msg/json/pl.json index 8f7f8ffda..6815f4648 100644 --- a/msg/json/pl.json +++ b/msg/json/pl.json @@ -20,6 +20,7 @@ "INLINE_INPUTS": "Wbudowane wejscia", "DELETE_BLOCK": "Usuń blok", "DELETE_X_BLOCKS": "Usunąć %1 bloki(ów)", + "DELETE_ALL_BLOCKS": "Usunąć wszystkie %1 bloki?", "COLLAPSE_BLOCK": "Zwiń blok", "COLLAPSE_ALL": "Zwiń bloki", "EXPAND_BLOCK": "Rozwiń blok", diff --git a/msg/json/pms.json b/msg/json/pms.json index 2ab9301ce..84ae288a7 100644 --- a/msg/json/pms.json +++ b/msg/json/pms.json @@ -13,6 +13,7 @@ "INLINE_INPUTS": "Imission an linia", "DELETE_BLOCK": "Scancelé ël blòch", "DELETE_X_BLOCKS": "Scancelé %1 blòch", + "DELETE_ALL_BLOCKS": "Scancelé tuti ij %1 blòch?", "CLEAN_UP": "Dëscancelé ij blòch", "COLLAPSE_BLOCK": "Arduve ël blòch", "COLLAPSE_ALL": "Arduve ij blòch", diff --git a/msg/json/pt-br.json b/msg/json/pt-br.json index 8b5a6eec7..b0b8feb2e 100644 --- a/msg/json/pt-br.json +++ b/msg/json/pt-br.json @@ -23,6 +23,7 @@ "INLINE_INPUTS": "Entradas incorporadas", "DELETE_BLOCK": "Remover bloco", "DELETE_X_BLOCKS": "Remover %1 blocos", + "DELETE_ALL_BLOCKS": "Apagar todos os %1 blocos?", "CLEAN_UP": "Limpar blocos", "COLLAPSE_BLOCK": "Recolher bloco", "COLLAPSE_ALL": "Recolher blocos", diff --git a/msg/json/qqq.json b/msg/json/qqq.json index 7a64af91f..47e103089 100644 --- a/msg/json/qqq.json +++ b/msg/json/qqq.json @@ -1,11 +1,4 @@ { - "@metadata": { - "authors": [ - "Espertus", - "Liuxinyu970226", - "Shirayuki" - ] - }, "VARIABLES_DEFAULT_NAME": "default name - A simple, general default name for a variable, preferably short. For more context, see [[Translating:Blockly#infrequent_message_types]].\n{{Identical|Item}}", "TODAY": "button text - Botton that sets a calendar to today's date.\n{{Identical|Today}}", "DUPLICATE_BLOCK": "context menu - Make a copy of the selected block (and any blocks it contains).\n{{Identical|Duplicate}}", @@ -15,6 +8,7 @@ "INLINE_INPUTS": "context menu - Change from 'internal' to 'external' mode for displaying blocks used as inputs to the selected block. See [[Translating:Blockly#context_menus]].", "DELETE_BLOCK": "context menu - Permanently delete the selected block.", "DELETE_X_BLOCKS": "context menu - Permanently delete the %1 selected blocks.\n\nParameters:\n* %1 - an integer greater than 1.", + "DELETE_ALL_BLOCKS": "confirmation prompt - Question the user if they really wanted to permanently delete all %1 blocks.\n\nParameters:\n* %1 - an integer greater than 1.", "CLEAN_UP": "context menu - Reposition all the blocks so that they form a neat line.", "COLLAPSE_BLOCK": "context menu - Make the appearance of the selected block smaller by hiding some information about it.", "COLLAPSE_ALL": "context menu - Make the appearance of all blocks smaller by hiding some information about it. Use the same terminology as in the previous message.", diff --git a/msg/json/ro.json b/msg/json/ro.json index 3fdc6e7b5..b3ad25bdb 100644 --- a/msg/json/ro.json +++ b/msg/json/ro.json @@ -16,6 +16,7 @@ "INLINE_INPUTS": "Intrări în linie", "DELETE_BLOCK": "Șterge Bloc", "DELETE_X_BLOCKS": "Ștergeți %1 Blocuri", + "DELETE_ALL_BLOCKS": "Ștergi toate cele %1 (de) blocuri?", "COLLAPSE_BLOCK": "Restrange blocul", "COLLAPSE_ALL": "Restrange blocurile", "EXPAND_BLOCK": "Extinde bloc", diff --git a/msg/json/ru.json b/msg/json/ru.json index 0b936ed1d..1937d594f 100644 --- a/msg/json/ru.json +++ b/msg/json/ru.json @@ -16,6 +16,7 @@ "INLINE_INPUTS": "Вставки внутри", "DELETE_BLOCK": "Удалить блок", "DELETE_X_BLOCKS": "Удалить %1 блоков", + "DELETE_ALL_BLOCKS": "Удалить все блоки (%1)?", "CLEAN_UP": "Убрать блоки", "COLLAPSE_BLOCK": "Свернуть блок", "COLLAPSE_ALL": "Свернуть блоки", diff --git a/msg/json/sc.json b/msg/json/sc.json index 596788640..1a09218a9 100644 --- a/msg/json/sc.json +++ b/msg/json/sc.json @@ -15,6 +15,7 @@ "INLINE_INPUTS": "Intradas in lìnia", "DELETE_BLOCK": "Fùlia Blocu", "DELETE_X_BLOCKS": "Fulia %1 Blocus", + "DELETE_ALL_BLOCKS": "Scancellu su %1 de is brocus?", "COLLAPSE_BLOCK": "Serra e astringhe Blocu", "COLLAPSE_ALL": "Serra e astringhe Boocos", "EXPAND_BLOCK": "Aberi Blocu", diff --git a/msg/json/sk.json b/msg/json/sk.json index 5be412a6b..c4f920cba 100644 --- a/msg/json/sk.json +++ b/msg/json/sk.json @@ -15,6 +15,7 @@ "INLINE_INPUTS": "Riadkové vstupy", "DELETE_BLOCK": "Odstrániť blok", "DELETE_X_BLOCKS": "Odstrániť %1 blokov", + "DELETE_ALL_BLOCKS": "Zmazať všetkých %1 dielcov?", "COLLAPSE_BLOCK": "Zvinúť blok", "COLLAPSE_ALL": "Zvinúť bloky", "EXPAND_BLOCK": "Rozvinúť blok", diff --git a/msg/json/sr.json b/msg/json/sr.json index 6c7194347..dc36013d3 100644 --- a/msg/json/sr.json +++ b/msg/json/sr.json @@ -13,6 +13,7 @@ "INLINE_INPUTS": "Унутрашњи улази", "DELETE_BLOCK": "Обриши блок", "DELETE_X_BLOCKS": "Обриши %1 блокова", + "DELETE_ALL_BLOCKS": "Обрисати %1 блокова?", "COLLAPSE_BLOCK": "Скупи блок", "COLLAPSE_ALL": "Скупи блокове", "EXPAND_BLOCK": "Прошири блок", diff --git a/msg/json/sv.json b/msg/json/sv.json index 8a8c4e140..f3077eb1f 100644 --- a/msg/json/sv.json +++ b/msg/json/sv.json @@ -17,6 +17,7 @@ "INLINE_INPUTS": "Radinmatning", "DELETE_BLOCK": "Radera block", "DELETE_X_BLOCKS": "Radera %1 block", + "DELETE_ALL_BLOCKS": "Radera alla %1 block?", "CLEAN_UP": "Rada upp block", "COLLAPSE_BLOCK": "Fäll ihop block", "COLLAPSE_ALL": "Fäll ihop block", diff --git a/msg/json/ta.json b/msg/json/ta.json index 2383ac44d..03b31352e 100644 --- a/msg/json/ta.json +++ b/msg/json/ta.json @@ -17,6 +17,7 @@ "INLINE_INPUTS": "சூழமைவில் உள்ளீடு", "DELETE_BLOCK": "உறுப்பை நீக்கு", "DELETE_X_BLOCKS": "%1 உறுப்பை நீக்கு", + "DELETE_ALL_BLOCKS": "அனைத்து %1 நிரல் துண்டுகளையும் அழிக்கவா??", "COLLAPSE_BLOCK": "உறுப்பை மரை", "COLLAPSE_ALL": "உறுப்புகளை மரை", "EXPAND_BLOCK": "உறுப்பை காட்டு", diff --git a/msg/json/th.json b/msg/json/th.json index 17780ccc9..5041fb8ed 100644 --- a/msg/json/th.json +++ b/msg/json/th.json @@ -14,6 +14,7 @@ "INLINE_INPUTS": "อินพุตในบรรทัด", "DELETE_BLOCK": "ลบบล็อก", "DELETE_X_BLOCKS": "ลบ %1 บล็อก", + "DELETE_ALL_BLOCKS": "ต้องการลบบล็อกทั้ง %1 บล็อกใช่หรือไม่?", "COLLAPSE_BLOCK": "ย่อบล็อก", "COLLAPSE_ALL": "ย่อบล็อก", "EXPAND_BLOCK": "ขยายบล็อก", diff --git a/msg/json/tlh.json b/msg/json/tlh.json index be9cfe665..632dd2bfd 100644 --- a/msg/json/tlh.json +++ b/msg/json/tlh.json @@ -13,6 +13,7 @@ "INLINE_INPUTS": "qoD rar", "DELETE_BLOCK": "ngogh Qaw'", "DELETE_X_BLOCKS": "%1 ngoghmey Qaw'", + "DELETE_ALL_BLOCKS": "Hoch %1 ngoghmey Qaw'?", "COLLAPSE_BLOCK": "ngogh DejmoH", "COLLAPSE_ALL": "ngoghmey DejmoH", "EXPAND_BLOCK": "ngogh DejHa'moH", diff --git a/msg/json/tr.json b/msg/json/tr.json index 0677fb81c..fc23c6f84 100644 --- a/msg/json/tr.json +++ b/msg/json/tr.json @@ -20,6 +20,7 @@ "INLINE_INPUTS": "Satır içi girdiler", "DELETE_BLOCK": "Bloğu Sil", "DELETE_X_BLOCKS": "%1 Blokları Sil", + "DELETE_ALL_BLOCKS": "Tüm %1 blok silinsin mi?", "CLEAN_UP": "Blokları temizle", "COLLAPSE_BLOCK": "Blok'u Daralt", "COLLAPSE_ALL": "Blokları Daralt", diff --git a/msg/json/uk.json b/msg/json/uk.json index 277a5b92e..d7586bb7b 100644 --- a/msg/json/uk.json +++ b/msg/json/uk.json @@ -17,6 +17,7 @@ "INLINE_INPUTS": "Вбудовані входи", "DELETE_BLOCK": "Видалити блок", "DELETE_X_BLOCKS": "Видалити %1 блоків", + "DELETE_ALL_BLOCKS": "Вилучити всі блоки %1?", "COLLAPSE_BLOCK": "Згорнути блок", "COLLAPSE_ALL": "Згорнути блоки", "EXPAND_BLOCK": "Розгорнути блок", diff --git a/msg/json/vi.json b/msg/json/vi.json index 8fbe00167..ecf1e23fa 100644 --- a/msg/json/vi.json +++ b/msg/json/vi.json @@ -16,6 +16,7 @@ "INLINE_INPUTS": "Chỗ Gắn Cùng Dòng", "DELETE_BLOCK": "Xóa Mảnh Này", "DELETE_X_BLOCKS": "Xóa %1 Mảnh", + "DELETE_ALL_BLOCKS": "Xóa hết %1 mảnh?", "COLLAPSE_BLOCK": "Thu Nhỏ Mảnh", "COLLAPSE_ALL": "Thu Nhỏ Mọi Mảnh", "EXPAND_BLOCK": "Mở Lớn Mảnh", diff --git a/msg/json/zh-hans.json b/msg/json/zh-hans.json index a075c4bcb..e77f9f118 100644 --- a/msg/json/zh-hans.json +++ b/msg/json/zh-hans.json @@ -19,6 +19,7 @@ "INLINE_INPUTS": "单行输入", "DELETE_BLOCK": "删除块", "DELETE_X_BLOCKS": "删除 %1 块", + "DELETE_ALL_BLOCKS": "删除所有%1块吗?", "CLEAN_UP": "清理块", "COLLAPSE_BLOCK": "折叠块", "COLLAPSE_ALL": "折叠块", diff --git a/msg/json/zh-hant.json b/msg/json/zh-hant.json index c54e0b424..3429d32d1 100644 --- a/msg/json/zh-hant.json +++ b/msg/json/zh-hant.json @@ -16,6 +16,7 @@ "INLINE_INPUTS": "單行輸入", "DELETE_BLOCK": "刪除積木", "DELETE_X_BLOCKS": "刪除 %1 塊積木", + "DELETE_ALL_BLOCKS": "刪除共%1個積木?", "COLLAPSE_BLOCK": "收合積木", "COLLAPSE_ALL": "收合積木", "EXPAND_BLOCK": "展開積木", diff --git a/msg/messages.js b/msg/messages.js index 47fb47773..564e0f781 100644 --- a/msg/messages.js +++ b/msg/messages.js @@ -70,6 +70,8 @@ Blockly.Msg.INLINE_INPUTS = 'Inline Inputs'; Blockly.Msg.DELETE_BLOCK = 'Delete Block'; /// context menu - Permanently delete the %1 selected blocks.\n\nParameters:\n* %1 - an integer greater than 1. Blockly.Msg.DELETE_X_BLOCKS = 'Delete %1 Blocks'; +/// confirmation prompt - Question the user if they really wanted to permanently delete all %1 blocks.\n\nParameters:\n* %1 - an integer greater than 1. +Blockly.Msg.DELETE_ALL_BLOCKS = 'Delete all %1 blocks?'; /// context menu - Reposition all the blocks so that they form a neat line. Blockly.Msg.CLEAN_UP = 'Clean up Blocks'; /// context menu - Make the appearance of the selected block smaller by hiding some information about it.