From 30f23827fa8bdf0198dbf801baf9c203dcf41dc4 Mon Sep 17 00:00:00 2001 From: Christian Poulter Date: Mon, 20 Dec 2021 08:26:02 +0100 Subject: [PATCH 1/4] #1173 includes dcmotor libray and adds block to toolbox --- .../java/de/fhg/iais/roberta/syntax/SC.java | 2 + .../robotSpecific/calliope/callibot.xml | 2 +- .../blockly/blockly_compressed.js | 56 ++++++------- .../staticResources/blockly/msg/js/ar.js | 4 + .../staticResources/blockly/msg/js/az.js | 4 + .../staticResources/blockly/msg/js/ba.js | 4 + .../staticResources/blockly/msg/js/bcc.js | 4 + .../blockly/msg/js/be-tarask.js | 4 + .../staticResources/blockly/msg/js/be.js | 4 + .../staticResources/blockly/msg/js/bg.js | 4 + .../staticResources/blockly/msg/js/bn.js | 4 + .../staticResources/blockly/msg/js/br.js | 4 + .../staticResources/blockly/msg/js/ca.js | 4 + .../staticResources/blockly/msg/js/cs.js | 4 + .../staticResources/blockly/msg/js/da.js | 4 + .../staticResources/blockly/msg/js/de.js | 4 + .../staticResources/blockly/msg/js/el.js | 4 + .../staticResources/blockly/msg/js/en.js | 4 + .../staticResources/blockly/msg/js/es.js | 4 + .../staticResources/blockly/msg/js/eu.js | 4 + .../staticResources/blockly/msg/js/fa.js | 4 + .../staticResources/blockly/msg/js/fi.js | 4 + .../staticResources/blockly/msg/js/fr.js | 4 + .../staticResources/blockly/msg/js/he.js | 4 + .../staticResources/blockly/msg/js/hi.js | 4 + .../staticResources/blockly/msg/js/hrx.js | 4 + .../staticResources/blockly/msg/js/hu.js | 4 + .../staticResources/blockly/msg/js/ia.js | 4 + .../staticResources/blockly/msg/js/id.js | 4 + .../staticResources/blockly/msg/js/is.js | 4 + .../staticResources/blockly/msg/js/it.js | 4 + .../staticResources/blockly/msg/js/ja.js | 4 + .../staticResources/blockly/msg/js/ko.js | 4 + .../staticResources/blockly/msg/js/lb.js | 4 + .../staticResources/blockly/msg/js/lki.js | 4 + .../staticResources/blockly/msg/js/lrc.js | 4 + .../staticResources/blockly/msg/js/lt.js | 4 + .../staticResources/blockly/msg/js/mk.js | 4 + .../staticResources/blockly/msg/js/ms.js | 4 + .../staticResources/blockly/msg/js/nb.js | 4 + .../staticResources/blockly/msg/js/nl.js | 4 + .../staticResources/blockly/msg/js/oc.js | 4 + .../staticResources/blockly/msg/js/pl.js | 4 + .../staticResources/blockly/msg/js/pms.js | 4 + .../staticResources/blockly/msg/js/pt-br.js | 4 + .../staticResources/blockly/msg/js/pt.js | 4 + .../staticResources/blockly/msg/js/ro.js | 4 + .../staticResources/blockly/msg/js/ru.js | 4 + .../staticResources/blockly/msg/js/sc.js | 4 + .../staticResources/blockly/msg/js/sd.js | 4 + .../staticResources/blockly/msg/js/shn.js | 4 + .../staticResources/blockly/msg/js/sk.js | 4 + .../staticResources/blockly/msg/js/sl.js | 4 + .../staticResources/blockly/msg/js/sq.js | 4 + .../staticResources/blockly/msg/js/sr.js | 4 + .../staticResources/blockly/msg/js/sv.js | 4 + .../staticResources/blockly/msg/js/ta.js | 4 + .../staticResources/blockly/msg/js/tcy.js | 4 + .../staticResources/blockly/msg/js/th.js | 4 + .../staticResources/blockly/msg/js/tl.js | 4 + .../staticResources/blockly/msg/js/tlh.js | 4 + .../staticResources/blockly/msg/js/tr.js | 4 + .../staticResources/blockly/msg/js/uk.js | 4 + .../staticResources/blockly/msg/js/vi.js | 4 + .../staticResources/blockly/msg/js/zh-hans.js | 4 + .../staticResources/blockly/msg/js/zh-hant.js | 4 + .../staticResources/blockly/msg/json/en.json | 8 +- .../staticResources/blockly/msg/json/qqq.json | 6 +- .../visitor/IMbedTransformerVisitor.java | 12 +++ .../iais/roberta/visitor/IMbedVisitor.java | 6 ++ .../visitor/IMbedVisitorWithoutDefault.java | 3 + .../visitor/codegen/CalliopeCppVisitor.java | 26 +++++++ .../codegen/MbedStackMachineVisitor.java | 7 ++ ...lliopeSimValidatorAndCollectorVisitor.java | 7 ++ .../MbedValidatorAndCollectorVisitor.java | 11 +++ .../syntax/action/mbed/DcMotorSetAction.java | 78 +++++++++++++++++++ .../calliope/program.toolbox.expert.xml | 4 + RobotMbed/src/main/resources/mbed.yml | 5 ++ 78 files changed, 453 insertions(+), 32 deletions(-) create mode 100644 RobotMbed/src/main/java/de/poulter/roberta/syntax/action/mbed/DcMotorSetAction.java diff --git a/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/syntax/SC.java b/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/syntax/SC.java index 7cc9a82146..6038340f97 100644 --- a/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/syntax/SC.java +++ b/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/syntax/SC.java @@ -136,5 +136,7 @@ public interface SC { String HTS221 = "HTS221"; String OLEDSSD1306I2C = "OLEDSSD1306I2C"; + + String DCMOTOR = "DCMOTOR"; } diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/callibot.xml b/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/callibot.xml index f702b44953..bd8c865c2d 100644 --- a/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/callibot.xml +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/callibot.xml @@ -1 +1 @@ -lineBooleanTRUEdistNumber0MM3010R#ff0000RR2R3R4R5LONL2ONL3ONMM33010M30M3FLOATS90S545C17FOREWARDC16BACKWARDBOTHOFFFOREWARDFOREWARDFOREWARDBACKWARDlineLINEIlineLINEI2distDISTANCEUCMM3RR2R3R4R5LL2L3II2USS5BB_S_L_G_CundefinedAA_A_T_R_B \ No newline at end of file +lineBooleanTRUEdistNumber0MM3010R#ff0000RR2R3R4R5LONL2ONL3ONMM33010M30M3FLOATS90S545C17FOREWARDC16BACKWARDBOTHOFFFOREWARDFOREWARDFOREWARDBACKWARDlineLINEIlineLINEI2distDISTANCEUCMM3RR2R3R4R5LL2L3II2USS5BB_S_L_G_CundefinedAA_A_T_R_B1FOREWARD \ No newline at end of file diff --git a/OpenRobertaServer/staticResources/blockly/blockly_compressed.js b/OpenRobertaServer/staticResources/blockly/blockly_compressed.js index d6d39472a3..39870f55a1 100644 --- a/OpenRobertaServer/staticResources/blockly/blockly_compressed.js +++ b/OpenRobertaServer/staticResources/blockly/blockly_compressed.js @@ -6,20 +6,20 @@ Copyright The Closure Library Authors. SPDX-License-Identifier: Apache-2.0 */ -var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.findInternal=function(a,b,c){a instanceof String&&(a=String(a));for(var d=a.length,e=0;e>>0,$jscomp.propertyToPolyfillSymbol[e]=$jscomp.IS_SYMBOL_NATIVE? -$jscomp.global.Symbol(e):$jscomp.POLYFILL_PREFIX+c+"$"+e),$jscomp.defineProperty(d,$jscomp.propertyToPolyfillSymbol[e],{configurable:!0,writable:!0,value:b})))};$jscomp.polyfill("Array.prototype.findIndex",function(a){return a?a:function(b,c){return $jscomp.findInternal(this,b,c).i}},"es6","es3");$jscomp.polyfill("Array.prototype.find",function(a){return a?a:function(b,c){return $jscomp.findInternal(this,b,c).v}},"es6","es3"); +$jscomp.polyfillIsolated=function(a,b,c,d){var e=a.split(".");a=1===e.length;d=e[0];d=!a&&d in $jscomp.polyfills?$jscomp.polyfills:$jscomp.global;for(var f=0;f=e}},"es6","es3"); $jscomp.polyfill("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=$jscomp.checkStringArgs(this,b,"startsWith");b+="";var e=d.length,f=b.length;c=Math.max(0,Math.min(c|0,d.length));for(var g=0;g=f}},"es6","es3"); $jscomp.polyfill("String.prototype.repeat",function(a){return a?a:function(b){var c=$jscomp.checkStringArgs(this,null,"repeat");if(0>b||1342177279>>=1)c+=c;return d}},"es6","es3");$jscomp.polyfill("String.prototype.trimLeft",function(a){function b(){return this.replace(/^[\s\xa0]+/,"")}return a||b},"es_2019","es3"); $jscomp.checkEs6ConformanceViaProxy=function(){try{var a={},b=Object.create(new $jscomp.global.Proxy(a,{get:function(c,d,e){return c==a&&"q"==d&&e==b}}));return!0===b.q}catch(c){return!1}};$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS=!1;$jscomp.ES6_CONFORMANCE=$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS&&$jscomp.checkEs6ConformanceViaProxy();$jscomp.arrayIteratorImpl=function(a){var b=0;return function(){return b>>0)+"_",d=0,e=function(f){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new b(c+(f||"")+"_"+d++,f)};return e},"es6","es3"); +$jscomp.initSymbol=function(){};$jscomp.polyfill("Symbol",function(a){if(a)return a;var b=function(e,f){this.$jscomp$symbol$id_=e;$jscomp.defineProperty(this,"description",{configurable:!0,writable:!0,value:f})};b.prototype.toString=function(){return this.$jscomp$symbol$id_};var c=0,d=function(e){if(this instanceof d)throw new TypeError("Symbol is not a constructor");return new b("jscomp_symbol_"+(e||"")+"_"+c++,e)};return d},"es6","es3");$jscomp.initSymbolIterator=function(){}; $jscomp.polyfill("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;ca.aspectRatio()?a.width/this.width:a.height/this.height;return this.scale(a)};goog.dom.Appendable={};goog.dom.ASSUME_QUIRKS_MODE=!1;goog.dom.ASSUME_STANDARDS_MODE=!1;goog.dom.COMPAT_MODE_KNOWN_=goog.dom.ASSUME_QUIRKS_MODE||goog.dom.ASSUME_STANDARDS_MODE;goog.dom.getDomHelper=function(a){return a?new goog.dom.DomHelper(goog.dom.getOwnerDocument(a)):goog.dom.defaultDomHelper_||(goog.dom.defaultDomHelper_=new goog.dom.DomHelper)};goog.dom.getDocument=function(){return document};goog.dom.getElement=function(a){return goog.dom.getElementHelper_(document,a)}; +goog.math.Size.prototype.scaleToCover=function(a){a=this.aspectRatio()<=a.aspectRatio()?a.width/this.width:a.height/this.height;return this.scale(a)};goog.math.Size.prototype.scaleToFit=function(a){a=this.aspectRatio()>a.aspectRatio()?a.width/this.width:a.height/this.height;return this.scale(a)};goog.dom.ASSUME_QUIRKS_MODE=!1;goog.dom.ASSUME_STANDARDS_MODE=!1;goog.dom.COMPAT_MODE_KNOWN_=goog.dom.ASSUME_QUIRKS_MODE||goog.dom.ASSUME_STANDARDS_MODE;goog.dom.getDomHelper=function(a){return a?new goog.dom.DomHelper(goog.dom.getOwnerDocument(a)):goog.dom.defaultDomHelper_||(goog.dom.defaultDomHelper_=new goog.dom.DomHelper)};goog.dom.getDocument=function(){return document};goog.dom.getElement=function(a){return goog.dom.getElementHelper_(document,a)}; goog.dom.getElementHelper_=function(a,b){return"string"===typeof b?a.getElementById(b):b};goog.dom.getRequiredElement=function(a){return goog.dom.getRequiredElementHelper_(document,a)};goog.dom.getRequiredElementHelper_=function(a,b){goog.asserts.assertString(b);a=goog.dom.getElementHelper_(a,b);return a=goog.asserts.assertElement(a,"No element found with id: "+b)};goog.dom.$=goog.dom.getElement;goog.dom.getElementsByTagName=function(a,b){return(b||document).getElementsByTagName(String(a))}; goog.dom.getElementsByTagNameAndClass=function(a,b,c){return goog.dom.getElementsByTagNameAndClass_(document,a,b,c)};goog.dom.getElementByTagNameAndClass=function(a,b,c){return goog.dom.getElementByTagNameAndClass_(document,a,b,c)};goog.dom.getElementsByClass=function(a,b){var c=b||document;return goog.dom.canUseQuerySelector_(c)?c.querySelectorAll("."+a):goog.dom.getElementsByTagNameAndClass_(document,"*",a,b)}; goog.dom.getElementByClass=function(a,b){var c=b||document;return(c.getElementsByClassName?c.getElementsByClassName(a)[0]:goog.dom.getElementByTagNameAndClass_(document,"*",a,b))||null};goog.dom.getRequiredElementByClass=function(a,b){b=goog.dom.getElementByClass(a,b);return goog.asserts.assert(b,"No element found with className: "+a)};goog.dom.canUseQuerySelector_=function(a){return!(!a.querySelectorAll||!a.querySelector)}; @@ -627,7 +627,7 @@ goog.dom.append_(a,c,b,2);return c};goog.dom.append_=function(a,b,c,d){function goog.dom.createElement_=function(a,b){b=String(b);"application/xhtml+xml"===a.contentType&&(b=b.toLowerCase());return a.createElement(b)};goog.dom.createTextNode=function(a){return document.createTextNode(String(a))};goog.dom.createTable=function(a,b,c){return goog.dom.createTable_(document,a,b,!!c)}; goog.dom.createTable_=function(a,b,c,d){for(var e=goog.dom.createElement_(a,goog.dom.TagName.TABLE),f=e.appendChild(goog.dom.createElement_(a,goog.dom.TagName.TBODY)),g=0;g=a.keyCode)a.keyCode=-1}catch(b){}};goog.events.BrowserEvent.prototype.getBrowserEvent=function(){return this.event_}; goog.events.BrowserEvent.getPointerType_=function(a){return"string"===typeof a.pointerType?a.pointerType:goog.events.BrowserEvent.IE_POINTER_TYPE_MAP[a.pointerType]||""};goog.events.Listenable=function(){};goog.events.Listenable.IMPLEMENTED_BY_PROP="closure_listenable_"+(1E6*Math.random()|0);goog.events.Listenable.addImplementation=function(a){a.prototype[goog.events.Listenable.IMPLEMENTED_BY_PROP]=!0};goog.events.Listenable.isImplementedBy=function(a){return!(!a||!a[goog.events.Listenable.IMPLEMENTED_BY_PROP])};goog.events.ListenableKey=function(){};goog.events.ListenableKey.counter_=0;goog.events.ListenableKey.reserveKey=function(){return++goog.events.ListenableKey.counter_};goog.events.Listener=function(a,b,c,d,e,f){goog.events.Listener.ENABLE_MONITORING&&(this.creationStack=Error().stack);this.listener=a;this.proxy=b;this.src=c;this.type=d;this.capture=!!e;this.handler=f;this.key=goog.events.ListenableKey.reserveKey();this.removed=this.callOnce=!1};goog.events.Listener.ENABLE_MONITORING=!1;goog.events.Listener.prototype.markAsRemoved=function(){this.removed=!0;this.handler=this.src=this.proxy=this.listener=null};goog.events.ListenerMap=function(a){this.src=a;this.listeners={};this.typeCount_=0};goog.events.ListenerMap.prototype.getTypeCount=function(){return this.typeCount_};goog.events.ListenerMap.prototype.getListenerCount=function(){var a=0,b;for(b in this.listeners)a+=this.listeners[b].length;return a}; @@ -940,7 +940,7 @@ goog.events.ListenerMap.prototype.add=function(a,b,c,d,e){var f=a.toString();a=t goog.events.ListenerMap.prototype.remove=function(a,b,c,d){a=a.toString();if(!(a in this.listeners))return!1;var e=this.listeners[a];b=goog.events.ListenerMap.findListenerIndex_(e,b,c,d);return-1b||b>this.getChildCount())throw Error(goog.ui.Component.Error.CHILD_INDEX_OUT_OF_BOUNDS);this.childIndex_&&this.children_||(this.childIndex_={},this.children_=[]);a.getParent()==this?(goog.object.set(this.childIndex_,a.getId(),a),goog.array.remove(this.children_,a)):goog.object.add(this.childIndex_, -a.getId(),a);a.setParent(this);goog.array.insertAt(this.children_,a,b);a.inDocument_&&this.inDocument_&&a.getParent()==this?(c=this.getContentElement(),c.contains(a.getElement())&&c.removeChild(a.getElement()),b=c.childNodes[b]||null,c.insertBefore(a.getElement(),b)):c?(this.element_||this.createDom(),b=this.getChildAt(b+1),a.render_(this.getContentElement(),b?b.element_:null)):this.inDocument_&&!a.inDocument_&&a.element_&&a.element_.parentNode&&a.element_.parentNode.nodeType==goog.dom.NodeType.ELEMENT&& -a.enterDocument()};goog.ui.Component.prototype.getContentElement=function(){return this.element_};goog.ui.Component.prototype.isRightToLeft=function(){null==this.rightToLeft_&&(this.rightToLeft_=goog.style.isRightToLeft(this.inDocument_?this.element_:this.dom_.getDocument().body));return this.rightToLeft_};goog.ui.Component.prototype.setRightToLeft=function(a){if(this.inDocument_)throw Error(goog.ui.Component.Error.ALREADY_RENDERED);this.rightToLeft_=a}; +a.getId(),a);a.setParent(this);goog.array.insertAt(this.children_,a,b);a.inDocument_&&this.inDocument_&&a.getParent()==this?(c=this.getContentElement(),b=c.childNodes[b]||null,b!=a.getElement()&&c.insertBefore(a.getElement(),b)):c?(this.element_||this.createDom(),b=this.getChildAt(b+1),a.render_(this.getContentElement(),b?b.element_:null)):this.inDocument_&&!a.inDocument_&&a.element_&&a.element_.parentNode&&a.element_.parentNode.nodeType==goog.dom.NodeType.ELEMENT&&a.enterDocument()}; +goog.ui.Component.prototype.getContentElement=function(){return this.element_};goog.ui.Component.prototype.isRightToLeft=function(){null==this.rightToLeft_&&(this.rightToLeft_=goog.style.isRightToLeft(this.inDocument_?this.element_:this.dom_.getDocument().body));return this.rightToLeft_};goog.ui.Component.prototype.setRightToLeft=function(a){if(this.inDocument_)throw Error(goog.ui.Component.Error.ALREADY_RENDERED);this.rightToLeft_=a}; goog.ui.Component.prototype.hasChildren=function(){return!!this.children_&&0!=this.children_.length};goog.ui.Component.prototype.getChildCount=function(){return this.children_?this.children_.length:0};goog.ui.Component.prototype.getChildIds=function(){var a=[];this.forEachChild(function(b){a.push(b.getId())});return a};goog.ui.Component.prototype.getChild=function(a){return this.childIndex_&&a?goog.object.get(this.childIndex_,a)||null:null}; goog.ui.Component.prototype.getChildAt=function(a){return this.children_?this.children_[a]||null:null};goog.ui.Component.prototype.forEachChild=function(a,b){this.children_&&goog.array.forEach(this.children_,a,b)};goog.ui.Component.prototype.indexOfChild=function(a){return this.children_&&a?goog.array.indexOf(this.children_,a):-1}; goog.ui.Component.prototype.removeChild=function(a,b){if(a){var c="string"===typeof a?a:a.getId();a=this.getChild(c);c&&a&&(goog.object.remove(this.childIndex_,c),goog.array.remove(this.children_,a),b&&(a.exitDocument(),a.element_&&goog.dom.removeNode(a.element_)),a.setParent(null))}if(!a)throw Error(goog.ui.Component.Error.NOT_OUR_CHILD);return a};goog.ui.Component.prototype.removeChildAt=function(a,b){return this.removeChild(this.getChildAt(a),b)}; @@ -1233,7 +1233,7 @@ goog.ui.ContainerRenderer.prototype.decorate=function(a,b){b.id&&a.setId(b.id);v goog.ui.ContainerRenderer.prototype.setStateFromClassName=function(a,b,c){b==c+"-disabled"?a.setEnabled(!1):b==c+"-horizontal"?a.setOrientation(goog.ui.Container.Orientation.HORIZONTAL):b==c+"-vertical"&&a.setOrientation(goog.ui.Container.Orientation.VERTICAL)}; goog.ui.ContainerRenderer.prototype.decorateChildren=function(a,b,c){if(b){c=c||b.firstChild;for(var d;c&&c.parentNode==b;){d=c.nextSibling;if(c.nodeType==goog.dom.NodeType.ELEMENT){var e=this.getDecoratorForChild(c);e&&(e.setElementInternal(c),a.isEnabled()||e.setEnabled(!1),a.addChild(e),e.decorate(c))}else c.nodeValue&&""!=goog.string.trim(c.nodeValue)||b.removeChild(c);c=d}}};goog.ui.ContainerRenderer.prototype.getDecoratorForChild=function(a){return goog.ui.registry.getDecorator(a)}; goog.ui.ContainerRenderer.prototype.initializeDom=function(a){a=a.getElement();goog.asserts.assert(a,"The container DOM element cannot be null.");goog.style.setUnselectable(a,!0,goog.userAgent.GECKO);goog.userAgent.IE&&(a.hideFocus=!0);var b=this.getAriaRole();b&&goog.a11y.aria.setRole(a,b)};goog.ui.ContainerRenderer.prototype.getKeyEventTarget=function(a){return a.getElement()};goog.ui.ContainerRenderer.prototype.getCssClass=function(){return goog.ui.ContainerRenderer.CSS_CLASS}; -goog.ui.ContainerRenderer.prototype.getClassNames=function(a){var b=this.getCssClass(),c=a.getOrientation()==goog.ui.Container.Orientation.HORIZONTAL;c=[b,c?b+"-horizontal":b+"-vertical"];a.isEnabled()||c.push(b+"-disabled");return c};goog.ui.ContainerRenderer.prototype.getDefaultOrientation=function(){return goog.ui.Container.Orientation.VERTICAL};goog.ui.ControlContent={};goog.ui.ControlRenderer=function(){};goog.addSingletonGetter(goog.ui.ControlRenderer);goog.ui.ControlRenderer.getCustomRenderer=function(a,b){a=new a;a.getCssClass=function(){return b};return a};goog.ui.ControlRenderer.CSS_CLASS="goog-control";goog.ui.ControlRenderer.IE6_CLASS_COMBINATIONS=[]; +goog.ui.ContainerRenderer.prototype.getClassNames=function(a){var b=this.getCssClass(),c=a.getOrientation()==goog.ui.Container.Orientation.HORIZONTAL;c=[b,c?b+"-horizontal":b+"-vertical"];a.isEnabled()||c.push(b+"-disabled");return c};goog.ui.ContainerRenderer.prototype.getDefaultOrientation=function(){return goog.ui.Container.Orientation.VERTICAL};goog.ui.ControlRenderer=function(){};goog.addSingletonGetter(goog.ui.ControlRenderer);goog.ui.ControlRenderer.getCustomRenderer=function(a,b){a=new a;a.getCssClass=function(){return b};return a};goog.ui.ControlRenderer.CSS_CLASS="goog-control";goog.ui.ControlRenderer.IE6_CLASS_COMBINATIONS=[]; goog.ui.ControlRenderer.TOGGLE_ARIA_STATE_MAP_=goog.object.create(goog.a11y.aria.Role.BUTTON,goog.a11y.aria.State.PRESSED,goog.a11y.aria.Role.CHECKBOX,goog.a11y.aria.State.CHECKED,goog.a11y.aria.Role.MENU_ITEM,goog.a11y.aria.State.SELECTED,goog.a11y.aria.Role.MENU_ITEM_CHECKBOX,goog.a11y.aria.State.CHECKED,goog.a11y.aria.Role.MENU_ITEM_RADIO,goog.a11y.aria.State.CHECKED,goog.a11y.aria.Role.RADIO,goog.a11y.aria.State.CHECKED,goog.a11y.aria.Role.TAB,goog.a11y.aria.State.SELECTED,goog.a11y.aria.Role.TREEITEM, goog.a11y.aria.State.SELECTED);goog.ui.ControlRenderer.prototype.getAriaRole=function(){};goog.ui.ControlRenderer.prototype.createDom=function(a){return a.getDomHelper().createDom(goog.dom.TagName.DIV,this.getClassNames(a).join(" "),a.getContent())};goog.ui.ControlRenderer.prototype.getContentElement=function(a){return a}; goog.ui.ControlRenderer.prototype.enableClassName=function(a,b,c){if(a=a.getElement?a.getElement():a){var d=[b];goog.userAgent.IE&&!goog.userAgent.isVersionOrHigher("7")&&(d=this.getAppliedCombinedClassNames_(goog.dom.classlist.get(a),b),d.push(b));goog.dom.classlist.enableAll(a,d,c)}};goog.ui.ControlRenderer.prototype.enableExtraClassName=function(a,b,c){this.enableClassName(a,b,c)};goog.ui.ControlRenderer.prototype.canDecorate=function(a){return!0}; @@ -1519,7 +1519,7 @@ darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#55 ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a", lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1", moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57", -seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};goog.color.Hsl={};goog.color.Hsv={};goog.color.Rgb={};goog.color.parse=function(a){var b={};a=String(a);var c=goog.color.prependHashIfNecessaryHelper(a);if(goog.color.isValidHexColor_(c))return b.hex=goog.color.normalizeHex(c),b.type="hex",b;c=goog.color.isValidRgbColor_(a);if(c.length)return b.hex=goog.color.rgbArrayToHex(c),b.type="rgb",b;if(goog.color.names&&(c=goog.color.names[a.toLowerCase()]))return b.hex=c,b.type="named",b;throw Error(a+" is not a valid color string");}; +seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};goog.color.parse=function(a){var b={};a=String(a);var c=goog.color.prependHashIfNecessaryHelper(a);if(goog.color.isValidHexColor_(c))return b.hex=goog.color.normalizeHex(c),b.type="hex",b;c=goog.color.isValidRgbColor_(a);if(c.length)return b.hex=goog.color.rgbArrayToHex(c),b.type="rgb",b;if(goog.color.names&&(c=goog.color.names[a.toLowerCase()]))return b.hex=c,b.type="named",b;throw Error(a+" is not a valid color string");}; goog.color.isValidColor=function(a){var b=goog.color.prependHashIfNecessaryHelper(a);return!!(goog.color.isValidHexColor_(b)||goog.color.isValidRgbColor_(a).length||goog.color.names&&goog.color.names[a.toLowerCase()])};goog.color.parseRgb=function(a){var b=goog.color.isValidRgbColor_(a);if(!b.length)throw Error(a+" is not a valid RGB color");return b};goog.color.hexToRgbStyle=function(a){return goog.color.rgbStyle_(goog.color.hexToRgb(a))};goog.color.hexTripletRe_=/#(.)(.)(.)/; goog.color.normalizeHex=function(a){if(!goog.color.isValidHexColor_(a))throw Error("'"+a+"' is not a valid hex color");4==a.length&&(a=a.replace(goog.color.hexTripletRe_,"#$1$1$2$2$3$3"));return a.toLowerCase()};goog.color.hexToRgb=function(a){a=goog.color.normalizeHex(a);a=parseInt(a.substr(1),16);return[a>>16,a>>8&255,a&255]}; goog.color.rgbToHex=function(a,b,c){a=Number(a);b=Number(b);c=Number(c);if(a!=(a&255)||b!=(b&255)||c!=(c&255))throw Error('"('+a+","+b+","+c+'") is not a valid RGB color');b=a<<16|b<<8|c;return 16>a?"#"+(16777216|b).toString(16).substr(1):"#"+b.toString(16)};goog.color.rgbArrayToHex=function(a){return goog.color.rgbToHex(a[0],a[1],a[2])}; @@ -1531,7 +1531,7 @@ goog.color.rgbToHsv=function(a,b,c){var d=Math.max(Math.max(a,b),c),e=Math.min(M goog.color.hslToHex=function(a,b,c){return goog.color.rgbArrayToHex(goog.color.hslToRgb(a,b,c))};goog.color.hslArrayToHex=function(a){return goog.color.rgbArrayToHex(goog.color.hslToRgb(a[0],a[1],a[2]))};goog.color.hexToHsv=function(a){return goog.color.rgbArrayToHsv(goog.color.hexToRgb(a))};goog.color.hsvToHex=function(a,b,c){return goog.color.rgbArrayToHex(goog.color.hsvToRgb(a,b,c))};goog.color.hsvArrayToHex=function(a){return goog.color.hsvToHex(a[0],a[1],a[2])}; goog.color.hslDistance=function(a,b){var c=.5>=a[2]?a[1]*a[2]:a[1]*(1-a[2]);var d=.5>=b[2]?b[1]*b[2]:b[1]*(1-b[2]);return(a[2]-b[2])*(a[2]-b[2])+c*c+d*d-2*c*d*Math.cos(2*(a[0]/360-b[0]/360)*Math.PI)};goog.color.blend=function(a,b,c){c=goog.math.clamp(c,0,1);return[Math.round(b[0]+c*(a[0]-b[0])),Math.round(b[1]+c*(a[1]-b[1])),Math.round(b[2]+c*(a[2]-b[2]))]};goog.color.darken=function(a,b){return goog.color.blend([0,0,0],a,b)}; goog.color.lighten=function(a,b){return goog.color.blend([255,255,255],a,b)};goog.color.highContrast=function(a,b){for(var c=[],d=0;d=a.length)throw goog.iter.StopIteration;if(b in a)return a[b++];b++}};return c}throw Error("Not implemented");}; goog.iter.forEach=function(a,b,c){if(goog.isArrayLike(a))try{goog.array.forEach(a,b,c)}catch(d){if(d!==goog.iter.StopIteration)throw d;}else{a=goog.iter.toIterator(a);try{for(;;)b.call(c,a.next(),void 0,a)}catch(d){if(d!==goog.iter.StopIteration)throw d;}}};goog.iter.filter=function(a,b,c){var d=goog.iter.toIterator(a);a=new goog.iter.Iterator;a.next=function(){for(;;){var e=d.next();if(b.call(c,e,void 0,d))return e}};return a}; goog.iter.filterFalse=function(a,b,c){return goog.iter.filter(a,goog.functions.not(b),c)};goog.iter.range=function(a,b,c){var d=0,e=a,f=c||1;1=e||0>f&&d<=e)throw goog.iter.StopIteration;var h=d;d+=f;return h};return g};goog.iter.join=function(a,b){return goog.iter.toArray(a).join(b)}; @@ -1695,10 +1695,10 @@ Blockly.Msg.CONTROLS_IF_TOOLTIP_2="If a value is true, then do the first block o Blockly.Msg.CONTROLS_REPEAT_HELPURL="https://en.wikipedia.org/wiki/For_loop";Blockly.Msg.CONTROLS_REPEAT_INPUT_DO="do";Blockly.Msg.CONTROLS_REPEAT_TITLE="repeat %1 times";Blockly.Msg.CONTROLS_REPEAT_TOOLTIP="Do some statements several times.";Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL="https://github.com/google/blockly/wiki/Loops#repeat";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.DATATABLE_ACTUALIZATION="Modification date";Blockly.Msg.DATATABLE_CONFIGURATIONS="configurations";Blockly.Msg.DATATABLE_CONFIGURATION_NAME="Configuration name";Blockly.Msg.DATATABLE_CREATED_BY="Creator";Blockly.Msg.DATATABLE_CREATED_ON="Creation date";Blockly.Msg.DATATABLE_MEMBERS="members"; Blockly.Msg.DATATABLE_PROGRAMS="programs";Blockly.Msg.DATATABLE_PROGRAM_NAME="Program name";Blockly.Msg.DATATABLE_SHARED="Shared";Blockly.Msg.DATATABLE_SHARED_PROGRAMS="shared programs";Blockly.Msg.DATATABLE_SHARED_WITH="Shared with";Blockly.Msg.DATATABLE_USERGROUP="user group";Blockly.Msg.DATATABLE_USERGROUPS="user groups";Blockly.Msg.DATATABLE_USERGROUP_NAME="Name of the user group";Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT="The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; -Blockly.Msg.DATATABLE_USERGROUP_OWNER="Name of the owner of the user group";Blockly.Msg.DELETE_ALL_BLOCKS="Delete all %1 blocks?";Blockly.Msg.DELETE_BLOCK="Delete Block";Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING="A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?";Blockly.Msg.DELETE_USERGROUP_MEMBER_WARNING="Are you sure that you want to delete the selected member(s)?"; -Blockly.Msg.DELETE_X_BLOCKS="Delete %1 Blocks";Blockly.Msg.DIGITAL="digital";Blockly.Msg.DIGITALIN_TOOLTIP="Represents any actuator connected to a digital pin.";Blockly.Msg.DIGITALOUT_TOOLTIP="Represents any sensor connected to a digital.";Blockly.Msg.DISABLE_BLOCK="Disable Block";Blockly.Msg.DISPLAY_ANIMATION="animation";Blockly.Msg.DISPLAY_CHARACTER="character";Blockly.Msg.DISPLAY_CLEAR="clear display";Blockly.Msg.DISPLAY_CLEAR_TOOLTIP="Clears the display.";Blockly.Msg.DISPLAY_COL="in column"; -Blockly.Msg.DISPLAY_GET_BRIGHTNESS_TOOLTIP="Returns the brightness for all leds of the display. 0 means all leds are turned off, 9 is the brightest value.";Blockly.Msg.DISPLAY_GET_PIXEL_TOOLTIP="Returns the brightness for this led. 0 means the led is turned off, 9 is the brightest value.";Blockly.Msg.DISPLAY_IMAGE="image";Blockly.Msg.DISPLAY_PICTURE="picture";Blockly.Msg.DISPLAY_PICTURE_EYES_CLOSED="eyes closed";Blockly.Msg.DISPLAY_PICTURE_EYES_OPEN="eyes open"; -Blockly.Msg.DISPLAY_PICTURE_FLOWERS="flowers";Blockly.Msg.DISPLAY_PICTURE_GLASSES="glasses";Blockly.Msg.DISPLAY_PICTURE_TACHO="speedo";Blockly.Msg.DISPLAY_PICTURE_TOOLTIP="Displays a picture on the screen.";Blockly.Msg.DISPLAY_PIXEL_BRIGHTNESS="brightness";Blockly.Msg.DISPLAY_PIXEL_TITLE="LED";Blockly.Msg.DISPLAY_ROW="in row";Blockly.Msg.DISPLAY_SET_BRIGHTNESS_TOOLTIP="Sets the brightness for all leds of the display. 0 means all leds are turned off, 9 is the brightest value."; +Blockly.Msg.DATATABLE_USERGROUP_OWNER="Name of the owner of the user group";Blockly.Msg.DCMOTOR_M1="Motor port 1";Blockly.Msg.DCMOTOR_M2="Motor port 2";Blockly.Msg.DCMOTOR_M3="Motor port 3";Blockly.Msg.DCMOTOR_M4="Motor port 4";Blockly.Msg.DELETE_ALL_BLOCKS="Delete all %1 blocks?";Blockly.Msg.DELETE_BLOCK="Delete Block";Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING="A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; +Blockly.Msg.DELETE_USERGROUP_MEMBER_WARNING="Are you sure that you want to delete the selected member(s)?";Blockly.Msg.DELETE_X_BLOCKS="Delete %1 Blocks";Blockly.Msg.DIGITAL="digital";Blockly.Msg.DIGITALIN_TOOLTIP="Represents any actuator connected to a digital pin.";Blockly.Msg.DIGITALOUT_TOOLTIP="Represents any sensor connected to a digital.";Blockly.Msg.DISABLE_BLOCK="Disable Block";Blockly.Msg.DISPLAY_ANIMATION="animation";Blockly.Msg.DISPLAY_CHARACTER="character";Blockly.Msg.DISPLAY_CLEAR="clear display"; +Blockly.Msg.DISPLAY_CLEAR_TOOLTIP="Clears the display.";Blockly.Msg.DISPLAY_COL="in column";Blockly.Msg.DISPLAY_GET_BRIGHTNESS_TOOLTIP="Returns the brightness for all leds of the display. 0 means all leds are turned off, 9 is the brightest value.";Blockly.Msg.DISPLAY_GET_PIXEL_TOOLTIP="Returns the brightness for this led. 0 means the led is turned off, 9 is the brightest value.";Blockly.Msg.DISPLAY_IMAGE="image";Blockly.Msg.DISPLAY_PICTURE="picture";Blockly.Msg.DISPLAY_PICTURE_EYES_CLOSED="eyes closed"; +Blockly.Msg.DISPLAY_PICTURE_EYES_OPEN="eyes open";Blockly.Msg.DISPLAY_PICTURE_FLOWERS="flowers";Blockly.Msg.DISPLAY_PICTURE_GLASSES="glasses";Blockly.Msg.DISPLAY_PICTURE_TACHO="speedo";Blockly.Msg.DISPLAY_PICTURE_TOOLTIP="Displays a picture on the screen.";Blockly.Msg.DISPLAY_PIXEL_BRIGHTNESS="brightness";Blockly.Msg.DISPLAY_PIXEL_TITLE="LED";Blockly.Msg.DISPLAY_ROW="in row";Blockly.Msg.DISPLAY_SET_BRIGHTNESS_TOOLTIP="Sets the brightness for all leds of the display. 0 means all leds are turned off, 9 is the brightest value."; Blockly.Msg.DISPLAY_SET_PIXEL_TOOLTIP="Sets the brightness for this led. 0 means the led is turned off, 9 is the brightest value. With x and y you can determine the position of the led you would like to change.";Blockly.Msg.DISPLAY_SHOW="show";Blockly.Msg.DISPLAY_TEXT="text";Blockly.Msg.DISPLAY_TEXT_TOOLTIP="Displays a text on the screen.";Blockly.Msg.DROP_TOOLTIP="Represents a drop sensor.";Blockly.Msg.DUPLICATE_BLOCK="Duplicate";Blockly.Msg.ENABLE_BLOCK="Enable Block"; Blockly.Msg.ENCODER_GETSAMPLE_TOOLTIP="Gets the current reading from the motor encoder.";Blockly.Msg.ENCODER_RESET_TOOLTIP="Resets the motor encoder.";Blockly.Msg.ENCODER_TOOLTIP="Represents an encoder.";Blockly.Msg.ENVIRONMENTAL_TOOLTIP="Represents an environmental sensor.";Blockly.Msg.ENVIRONMENTAL_TOOLTIP_SENSEBOX="Represents the BME680 environmental sensor.";Blockly.Msg.ERROR_MISSING_PARAMETER="An input value is missing!";Blockly.Msg.ERROR_MISSING_RETURN="The function return value is missing!"; Blockly.Msg.EV3BRICK_TOOLTIP="Represents the EV3 brick with connected actors and sensors. There are also inbuilt actors and sensors available, e.g. buttons, display ...";Blockly.Msg.EXPAND_ALL="Expand Blocks";Blockly.Msg.EXPAND_BLOCK="Expand Block";Blockly.Msg.EXTERNAL_INPUTS="External Inputs";Blockly.Msg.FLAME_GETSAMPLE_TOOLTIP="Gets the current reading from the flame sensor.";Blockly.Msg.FLAME_TOOLTIP="Represents a flame sensor.";Blockly.Msg.FLYOUT_VARIABLE_TEXT="You need a variable? Please declare it first with a click on the + sign at the \u00bbstart\u00ab\u00a0block."; @@ -1984,11 +1984,10 @@ goog.debug.LogRecord.prototype.reset=function(a,b,c,d,e){goog.debug.LogRecord.EN goog.debug.LogRecord.prototype.setException=function(a){this.exception_=a};goog.debug.LogRecord.prototype.setLoggerName=function(a){this.loggerName_=a};goog.debug.LogRecord.prototype.getLevel=function(){return this.level_};goog.debug.LogRecord.prototype.setLevel=function(a){this.level_=a};goog.debug.LogRecord.prototype.getMessage=function(){return this.msg_};goog.debug.LogRecord.prototype.setMessage=function(a){this.msg_=a};goog.debug.LogRecord.prototype.getMillis=function(){return this.time_}; goog.debug.LogRecord.prototype.setMillis=function(a){this.time_=a};goog.debug.LogRecord.prototype.getSequenceNumber=function(){return this.sequenceNumber_};goog.debug.LogBuffer=function(){goog.asserts.assert(goog.debug.LogBuffer.isBufferingEnabled(),"Cannot use goog.debug.LogBuffer without defining goog.debug.LogBuffer.CAPACITY.");this.clear()};goog.debug.LogBuffer.getInstance=function(){goog.debug.LogBuffer.instance_||(goog.debug.LogBuffer.instance_=new goog.debug.LogBuffer);return goog.debug.LogBuffer.instance_};goog.debug.LogBuffer.CAPACITY=0; goog.debug.LogBuffer.prototype.addRecord=function(a,b,c){var d=(this.curIndex_+1)%goog.debug.LogBuffer.CAPACITY;this.curIndex_=d;if(this.isFull_)return d=this.buffer_[d],d.reset(a,b,c),d;this.isFull_=d==goog.debug.LogBuffer.CAPACITY-1;return this.buffer_[d]=new goog.debug.LogRecord(a,b,c)};goog.debug.LogBuffer.isBufferingEnabled=function(){return 0", - "lastupdated": "2021-12-01 11:09:28.460337", + "lastupdated": "2021-12-19 21:34:24.883947", "locale": "en", "messagedocumentation" : "qqq" }, @@ -1775,5 +1775,9 @@ "POPUP_REPLACE": "Replace", "POPUP_BACKGROUND_REPLACE": "A program with the same name already exists.
Would you like to replace it?", "POPUP_BACKGROUND_REPLACE_CONFIGURATION": "A configuration with the same name already exists.
Would you like to replace it?", - "ORA_CONFIGURATION_SAVE_AS_ERROR_CONFIGURATION_EXISTS": "This configuration already exists." + "ORA_CONFIGURATION_SAVE_AS_ERROR_CONFIGURATION_EXISTS": "This configuration already exists.", + "DCMOTOR_M1": "Motor port 1", + "DCMOTOR_M2": "Motor port 2", + "DCMOTOR_M3": "Motor port 3", + "DCMOTOR_M4": "Motor port 4" } diff --git a/OpenRobertaServer/staticResources/blockly/msg/json/qqq.json b/OpenRobertaServer/staticResources/blockly/msg/json/qqq.json index db898e4d81..63c0a00215 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/json/qqq.json +++ b/OpenRobertaServer/staticResources/blockly/msg/json/qqq.json @@ -1769,5 +1769,9 @@ "POPUP_REPLACE": "", "POPUP_BACKGROUND_REPLACE": "", "POPUP_BACKGROUND_REPLACE_CONFIGURATION": "", - "ORA_CONFIGURATION_SAVE_AS_ERROR_CONFIGURATION_EXISTS": "" + "ORA_CONFIGURATION_SAVE_AS_ERROR_CONFIGURATION_EXISTS": "", + "DCMOTOR_M1": "", + "DCMOTOR_M2": "", + "DCMOTOR_M3": "", + "DCMOTOR_M4": "" } diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedTransformerVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedTransformerVisitor.java index af5323821b..a03ec101d3 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedTransformerVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedTransformerVisitor.java @@ -31,6 +31,8 @@ import de.fhg.iais.roberta.syntax.lang.expr.Expr; import de.fhg.iais.roberta.syntax.sensor.mbed.RadioRssiSensor; +import de.poulter.roberta.syntax.action.mbed.DcMotorSetAction; + public interface IMbedTransformerVisitor extends ITransformerVisitor, IMbedVisitor> { @Override @@ -242,4 +244,14 @@ default Phrase visitShowTextAction(ShowTextAction> showTextAction) default Phrase visitPlayFileAction(PlayFileAction> playFileAction) { return IMbedVisitor.super.visitPlayFileAction(playFileAction); } + + @Override + default Phrase visitDcMotorSetAction(DcMotorSetAction> dcMotorSetAction) { + return DcMotorSetAction.make( + dcMotorSetAction.getPort(), + (Expr) dcMotorSetAction.getSpeed().modify(this), + dcMotorSetAction.getProperty(), + dcMotorSetAction.getComment() + ); + } } diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedVisitor.java index 78d6540019..505c637b55 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedVisitor.java @@ -39,6 +39,8 @@ import de.fhg.iais.roberta.visitor.hardware.actor.ISoundVisitor; import de.fhg.iais.roberta.visitor.hardware.sensor.ISensorVisitor; +import de.poulter.roberta.syntax.action.mbed.DcMotorSetAction; + /** * Interface to be used with the visitor pattern to traverse an AST (and generate code, e.g.). */ @@ -306,5 +308,9 @@ default V visitVolumeAction(VolumeAction volumeAction) { default V visitPlayFileAction(PlayFileAction playFileAction) { throw new DbcException("Block is not implemented!"); } + + default V visitDcMotorSetAction(DcMotorSetAction dcMotorSetAction) { + throw new DbcException("Block is not implemented!"); + } } \ No newline at end of file diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedVisitorWithoutDefault.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedVisitorWithoutDefault.java index cc98f9960f..a397071c01 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedVisitorWithoutDefault.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedVisitorWithoutDefault.java @@ -49,6 +49,7 @@ import de.fhg.iais.roberta.visitor.hardware.actor.IPinVisitor; import de.fhg.iais.roberta.visitor.hardware.actor.ISerialVisitor; import de.fhg.iais.roberta.visitor.hardware.actor.ISimpleSoundVisitor; +import de.poulter.roberta.syntax.action.mbed.DcMotorSetAction; /** * Interface to be used with the visitor pattern to traverse an AST (and generate code, e.g.). @@ -145,4 +146,6 @@ public interface IMbedVisitorWithoutDefault V visitHumiditySensor(HumiditySensor humiditySensor); V visitInfraredSensor(InfraredSensor infraredSensor); + + V visitDcMotorSetAction(DcMotorSetAction dcMotorSetAction); } \ No newline at end of file diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/CalliopeCppVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/CalliopeCppVisitor.java index 99351dfab7..a8aac6b53c 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/CalliopeCppVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/CalliopeCppVisitor.java @@ -106,6 +106,8 @@ import de.fhg.iais.roberta.visitor.IVisitor; import de.fhg.iais.roberta.visitor.lang.codegen.prog.AbstractCppVisitor; +import de.poulter.roberta.syntax.action.mbed.DcMotorSetAction; + /** * This class is implementing {@link IVisitor}. All methods are implemented and they append a human-readable C++ code representation of a phrase to a * StringBuilder. This representation is correct C++ code for Calliope systems.
@@ -705,6 +707,10 @@ public Void visitMainTask(MainTask mainTask) { nlIndent(); this.sb.append("_uBit.accelerometer.updateSample();"); } + if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.DCMOTOR)) { + nlIndent(); + this.sb.append("dcMotor.init();"); + } return null; } @@ -1082,6 +1088,10 @@ protected void generateProgramSuffix(boolean withWrapping) { nlIndent(); this.sb.append("_cbStop(_buf, &_i2c);"); } + if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.DCMOTOR) ) { + nlIndent(); + this.sb.append("dcMotor.release();"); + } nlIndent(); this.sb.append("release_fiber();"); decrIndentation(); @@ -1213,6 +1223,10 @@ private void addIncludes() { nlIndent(); this.sb.append("char _TCS3472_time = 0xff;"); } + if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.DCMOTOR)) { + sb.append("#include \"DcMotor.h\"\n"); + sb.append("DcMotor dcMotor;\n"); + } } @Override @@ -1527,4 +1541,16 @@ private boolean isDualMode() { Set motorPins = getMotorPins(); return motorPins.stream().filter(s -> s.equals("A") || s.equals("B")).count() > 1; } + + @Override + public Void visitDcMotorSetAction(DcMotorSetAction dcMotorSetAction) { + String port = dcMotorSetAction.getPort(); + + this.sb.append("dcMotor.set(Motor::M").append(port).append(", "); + dcMotorSetAction.getSpeed().accept(this); + this.sb.append(");"); + + return null; + } + } \ No newline at end of file diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/MbedStackMachineVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/MbedStackMachineVisitor.java index 4a82e85147..67d32faf43 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/MbedStackMachineVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/MbedStackMachineVisitor.java @@ -69,6 +69,8 @@ import de.fhg.iais.roberta.visitor.IMbedVisitor; import de.fhg.iais.roberta.visitor.lang.codegen.AbstractStackMachineVisitor; +import de.poulter.roberta.syntax.action.mbed.DcMotorSetAction; + public class MbedStackMachineVisitor extends AbstractStackMachineVisitor implements IMbedVisitor { public MbedStackMachineVisitor(ConfigurationAst configuration, List>> phrases) { @@ -469,4 +471,9 @@ public V visitMotionKitSingleSetAction(MotionKitSingleSetAction motionKitSing public V visitMotionKitDualSetAction(MotionKitDualSetAction motionKitDualSetAction) { return null; } + + @Override + public V visitDcMotorSetAction(DcMotorSetAction dcMotorSetAction) { + return null; + } } diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/CalliopeSimValidatorAndCollectorVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/CalliopeSimValidatorAndCollectorVisitor.java index eacc0bb6eb..7ef529492f 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/CalliopeSimValidatorAndCollectorVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/CalliopeSimValidatorAndCollectorVisitor.java @@ -25,6 +25,7 @@ import de.fhg.iais.roberta.syntax.sensor.generic.UltrasonicSensor; import de.fhg.iais.roberta.syntax.sensor.mbed.RadioRssiSensor; import de.fhg.iais.roberta.visitor.IMbedVisitorWithoutDefault; +import de.poulter.roberta.syntax.action.mbed.DcMotorSetAction; public final class CalliopeSimValidatorAndCollectorVisitor extends MbedValidatorAndCollectorVisitor implements IMbedVisitorWithoutDefault { @@ -146,4 +147,10 @@ public Void visitMotionKitDualSetAction(MotionKitDualSetAction motionKitDu addWarningToPhrase(motionKitDualSetAction, "SIM_BLOCK_NOT_SUPPORTED"); return super.visitMotionKitDualSetAction(motionKitDualSetAction); } + + @Override + public Void visitDcMotorSetAction(DcMotorSetAction dcMotorSetAction) { + addWarningToPhrase(dcMotorSetAction, "SIM_BLOCK_NOT_SUPPORTED"); + return super.visitDcMotorSetAction(dcMotorSetAction); + } } diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/MbedValidatorAndCollectorVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/MbedValidatorAndCollectorVisitor.java index 809edd2bce..5b89c4bfcd 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/MbedValidatorAndCollectorVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/MbedValidatorAndCollectorVisitor.java @@ -75,6 +75,8 @@ import de.fhg.iais.roberta.visitor.CalliopeMethods; import de.fhg.iais.roberta.visitor.IMbedVisitorWithoutDefault; +import de.poulter.roberta.syntax.action.mbed.DcMotorSetAction; + public class MbedValidatorAndCollectorVisitor extends CommonNepoValidatorAndCollectorVisitor implements IMbedVisitorWithoutDefault { public static final double DOUBLE_EPS = 1E-7; @@ -577,4 +579,13 @@ private Void addActorMaybeCallibot(WithUserDefinedPort phrase, String comp } return null; } + + @Override + public Void visitDcMotorSetAction(DcMotorSetAction dcMotorSetAction) { + requiredComponentVisited(dcMotorSetAction, dcMotorSetAction.getSpeed()); + usedHardwareBuilder.addUsedActor(new UsedActor("", SC.DCMOTOR)); + + return null; + } + } diff --git a/RobotMbed/src/main/java/de/poulter/roberta/syntax/action/mbed/DcMotorSetAction.java b/RobotMbed/src/main/java/de/poulter/roberta/syntax/action/mbed/DcMotorSetAction.java new file mode 100644 index 0000000000..52786141ff --- /dev/null +++ b/RobotMbed/src/main/java/de/poulter/roberta/syntax/action/mbed/DcMotorSetAction.java @@ -0,0 +1,78 @@ +package de.poulter.roberta.syntax.action.mbed; + +import java.util.List; + +import de.fhg.iais.roberta.blockly.generated.Block; +import de.fhg.iais.roberta.blockly.generated.Field; +import de.fhg.iais.roberta.blockly.generated.Value; +import de.fhg.iais.roberta.syntax.BlockTypeContainer; +import de.fhg.iais.roberta.syntax.BlocklyBlockProperties; +import de.fhg.iais.roberta.syntax.BlocklyComment; +import de.fhg.iais.roberta.syntax.Phrase; +import de.fhg.iais.roberta.syntax.action.Action; +import de.fhg.iais.roberta.syntax.lang.expr.Expr; +import de.fhg.iais.roberta.transformer.Ast2Jaxb; +import de.fhg.iais.roberta.transformer.ExprParam; +import de.fhg.iais.roberta.transformer.Jaxb2Ast; +import de.fhg.iais.roberta.transformer.Jaxb2ProgramAst; +import de.fhg.iais.roberta.typecheck.BlocklyType; +import de.fhg.iais.roberta.util.dbc.Assert; + +public final class DcMotorSetAction extends Action { + + private final String port; + private final Expr speed; + + private DcMotorSetAction(String port, Expr speed, BlocklyBlockProperties properties, BlocklyComment comment) { + super(BlockTypeContainer.getByName("DC_MOTOR_SET_ACTION"), properties, comment); + + Assert.notNull(port); + Assert.notNull(speed); + + this.port = port; + this.speed = speed; + + setReadOnly(); + } + + public static DcMotorSetAction make(String port, Expr speed, BlocklyBlockProperties properties, BlocklyComment comment) { + return new DcMotorSetAction<>(port, speed, properties, comment); + } + + public String getPort() { + return this.port; + } + + public Expr getSpeed() { + return this.speed; + } + + @Override + public String toString() { + return "DcMotorSetAction [" + this.port + ", " + this.speed + "]"; + } + + public static Phrase jaxbToAst(Block block, Jaxb2ProgramAst helper) { + List values = Jaxb2Ast.extractValues(block, (short) 2); + List fields = Jaxb2Ast.extractFields(block, (short) 2); + Phrase speed = helper.extractValue(values, new ExprParam("POWER", BlocklyType.NUMBER_INT)); + String port = Jaxb2Ast.extractField(fields, "PORT"); + + return DcMotorSetAction.make( + port, + Jaxb2Ast.convertPhraseToExpr(speed), + Jaxb2Ast.extractBlockProperties(block), + Jaxb2Ast.extractComment(block) + ); + } + + @Override + public Block astToBlock() { + Block jaxbDestination = new Block(); + Ast2Jaxb.setBasicProperties(this, jaxbDestination); + Ast2Jaxb.addField(jaxbDestination, "PORT", this.port); + Ast2Jaxb.addValue(jaxbDestination, "POWER", this.speed); + + return jaxbDestination; + } +} \ No newline at end of file diff --git a/RobotMbed/src/main/resources/calliope/program.toolbox.expert.xml b/RobotMbed/src/main/resources/calliope/program.toolbox.expert.xml index 529c02cf31..97de84e60a 100644 --- a/RobotMbed/src/main/resources/calliope/program.toolbox.expert.xml +++ b/RobotMbed/src/main/resources/calliope/program.toolbox.expert.xml @@ -142,6 +142,10 @@ FOREWARD FOREWARD + + 1 + 0 + diff --git a/RobotMbed/src/main/resources/mbed.yml b/RobotMbed/src/main/resources/mbed.yml index 2446e54f3f..98b46c5218 100644 --- a/RobotMbed/src/main/resources/mbed.yml +++ b/RobotMbed/src/main/resources/mbed.yml @@ -108,6 +108,11 @@ block: category: ACTOR implementor: de.fhg.iais.roberta.syntax.action.mbed.MotionKitDualSetAction type: [mbedActions_motionkit_dual_set] + DC_MOTOR_SET_ACTION: + category: ACTOR + implementor: de.poulter.roberta.syntax.action.mbed.DcMotorSetAction + type: [mbedActions_dcmotor_set] + mode: motionkit: [FOREWARD, BACKWARD, 'OFF'] From 61b3f11ab46a306256b8e80291e0db7b83bce7a9 Mon Sep 17 00:00:00 2001 From: Christian Poulter Date: Fri, 11 Feb 2022 21:00:19 +0100 Subject: [PATCH 2/4] #1173 extends DC Motor block with configuration --- .../roberta/components/ConfigurationAst.java | 11 + .../calliope2016/actors_dcmotor.ast | 18 + .../calliope2017/actors_dcmotor.ast | 18 + .../calliope2017NoBlue/actors_dcmotor.ast | 18 + .../calliope2016/actors_dcmotor.txt | 6 + .../calliope2017/actors_dcmotor.txt | 6 + .../calliope2017NoBlue/actors_dcmotor.txt | 6 + .../calliope2016/actors_dcmotor.cpp | 53 +++ .../calliope2017/actors_dcmotor.cpp | 53 +++ .../calliope2017NoBlue/actors_dcmotor.cpp | 53 +++ .../robotSpecific/calliope/actors_dcmotor.xml | 443 ++++++++++++++++++ .../blockly/blockly_compressed.js | 85 ++-- .../staticResources/blockly/msg/js/ar.js | 20 +- .../staticResources/blockly/msg/js/az.js | 20 +- .../staticResources/blockly/msg/js/ba.js | 20 +- .../staticResources/blockly/msg/js/bcc.js | 20 +- .../blockly/msg/js/be-tarask.js | 20 +- .../staticResources/blockly/msg/js/be.js | 20 +- .../staticResources/blockly/msg/js/bg.js | 20 +- .../staticResources/blockly/msg/js/bn.js | 20 +- .../staticResources/blockly/msg/js/br.js | 20 +- .../staticResources/blockly/msg/js/ca.js | 20 +- .../staticResources/blockly/msg/js/cs.js | 20 +- .../staticResources/blockly/msg/js/da.js | 20 +- .../staticResources/blockly/msg/js/de.js | 12 + .../staticResources/blockly/msg/js/el.js | 20 +- .../staticResources/blockly/msg/js/en.js | 20 +- .../staticResources/blockly/msg/js/es.js | 20 +- .../staticResources/blockly/msg/js/eu.js | 20 +- .../staticResources/blockly/msg/js/fa.js | 20 +- .../staticResources/blockly/msg/js/fi.js | 20 +- .../staticResources/blockly/msg/js/fr.js | 20 +- .../staticResources/blockly/msg/js/he.js | 20 +- .../staticResources/blockly/msg/js/hi.js | 20 +- .../staticResources/blockly/msg/js/hrx.js | 20 +- .../staticResources/blockly/msg/js/hu.js | 20 +- .../staticResources/blockly/msg/js/ia.js | 20 +- .../staticResources/blockly/msg/js/id.js | 20 +- .../staticResources/blockly/msg/js/is.js | 20 +- .../staticResources/blockly/msg/js/it.js | 20 +- .../staticResources/blockly/msg/js/ja.js | 20 +- .../staticResources/blockly/msg/js/ko.js | 20 +- .../staticResources/blockly/msg/js/lb.js | 20 +- .../staticResources/blockly/msg/js/lki.js | 20 +- .../staticResources/blockly/msg/js/lrc.js | 20 +- .../staticResources/blockly/msg/js/lt.js | 20 +- .../staticResources/blockly/msg/js/mk.js | 20 +- .../staticResources/blockly/msg/js/ms.js | 20 +- .../staticResources/blockly/msg/js/nb.js | 20 +- .../staticResources/blockly/msg/js/nl.js | 20 +- .../staticResources/blockly/msg/js/oc.js | 20 +- .../staticResources/blockly/msg/js/pl.js | 20 +- .../staticResources/blockly/msg/js/pms.js | 20 +- .../staticResources/blockly/msg/js/pt-br.js | 20 +- .../staticResources/blockly/msg/js/pt.js | 20 +- .../staticResources/blockly/msg/js/ro.js | 20 +- .../staticResources/blockly/msg/js/ru.js | 20 +- .../staticResources/blockly/msg/js/sc.js | 20 +- .../staticResources/blockly/msg/js/sd.js | 20 +- .../staticResources/blockly/msg/js/shn.js | 20 +- .../staticResources/blockly/msg/js/sk.js | 20 +- .../staticResources/blockly/msg/js/sl.js | 20 +- .../staticResources/blockly/msg/js/sq.js | 20 +- .../staticResources/blockly/msg/js/sr.js | 20 +- .../staticResources/blockly/msg/js/sv.js | 20 +- .../staticResources/blockly/msg/js/ta.js | 20 +- .../staticResources/blockly/msg/js/tcy.js | 20 +- .../staticResources/blockly/msg/js/th.js | 20 +- .../staticResources/blockly/msg/js/tl.js | 20 +- .../staticResources/blockly/msg/js/tlh.js | 20 +- .../staticResources/blockly/msg/js/tr.js | 20 +- .../staticResources/blockly/msg/js/uk.js | 20 +- .../staticResources/blockly/msg/js/vi.js | 20 +- .../staticResources/blockly/msg/js/zh-hans.js | 20 +- .../staticResources/blockly/msg/js/zh-hant.js | 20 +- .../staticResources/blockly/msg/json/en.json | 25 +- .../staticResources/blockly/msg/json/qqq.json | 13 +- .../blockly/msg/json/synonyms.json | 2 +- .../visitor/IMbedTransformerVisitor.java | 4 +- .../visitor/codegen/CalliopeCppVisitor.java | 126 +++-- .../MbedValidatorAndCollectorVisitor.java | 2 + .../MbedTwo2ThreeTransformerHelper.java | 2 + .../syntax/action/mbed/DcMotorSetAction.java | 59 ++- .../calliope/configuration.toolbox.xml | 1 + .../calliope/program.toolbox.expert.xml | 13 +- RobotMbed/src/main/resources/mbed.yml | 1 + 86 files changed, 1919 insertions(+), 351 deletions(-) create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2016/actors_dcmotor.ast create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2017/actors_dcmotor.ast create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2017NoBlue/actors_dcmotor.ast create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2016/actors_dcmotor.txt create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2017/actors_dcmotor.txt create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2017NoBlue/actors_dcmotor.txt create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2016/actors_dcmotor.cpp create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2017/actors_dcmotor.cpp create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2017NoBlue/actors_dcmotor.cpp create mode 100644 OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/actors_dcmotor.xml diff --git a/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/components/ConfigurationAst.java b/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/components/ConfigurationAst.java index db92266c8c..0a720d764d 100644 --- a/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/components/ConfigurationAst.java +++ b/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/components/ConfigurationAst.java @@ -2,6 +2,7 @@ import java.util.ArrayList; import java.util.Collection; +import java.util.Comparator; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; @@ -169,6 +170,16 @@ public ConfigurationComponent optConfigurationComponentByType(String type) { public Collection getActors() { return new HashMap<>(this.configurationComponents).values().stream().filter(ConfigurationComponent::isActor).collect(Collectors.toList()); } + + public Collection getActors(String type) { + return configurationComponents + .values() + .stream() + .filter(ConfigurationComponent::isActor) + .filter(actor -> type.equals(actor.getComponentType())) + .sorted((actor1, actor2) -> Comparator.comparing(ConfigurationComponent::getInternalPortName).compare(actor1, actor2)) + .collect(Collectors.toList()); + } /** * Returns all sensors in the configuration component map. While insertion order is preserved internally, it is unnecessary for code generation and similar diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2016/actors_dcmotor.ast b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2016/actors_dcmotor.ast new file mode 100644 index 0000000000..4191c954de --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2016/actors_dcmotor.ast @@ -0,0 +1,18 @@ +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: 120]] +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: -50]] +DcMotorSetAction [DCM0, NumConst[value: 2], Stop, NumConst[value: 75]] +DcMotorSetAction [DCM0, NumConst[value: 3], Forward, NumConst[value: 100]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: -100]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: 0]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: 80]] +DcMotorSetAction [DCM0, NumConst[value: 1], Numeric, NumConst[value: 200]] +DcMotorSetAction [DCM0, Binary [ADD, Var [motor2], NumConst[value: 1]], Numeric, Var [speed]] +WaitTimeStmt[time: NumConst[value: 500]] +DcMotorSetAction [DCM1, NumConst[value: 2], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM1, NumConst[value: 2], Stop, NumConst[value: 75]] +DcMotorSetAction [DCM1, NumConst[value: 2], Forward, NumConst[value: 75]] +WaitTimeStmt[time: NumConst[value: 500]] +DcMotorSetAction [DCM2, NumConst[value: 3], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM2, NumConst[value: 3], Stop, NumConst[value: 80]] +DcMotorSetAction [DCM2, NumConst[value: 3], Forward, NumConst[value: 80]] diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2017/actors_dcmotor.ast b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2017/actors_dcmotor.ast new file mode 100644 index 0000000000..4191c954de --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2017/actors_dcmotor.ast @@ -0,0 +1,18 @@ +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: 120]] +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: -50]] +DcMotorSetAction [DCM0, NumConst[value: 2], Stop, NumConst[value: 75]] +DcMotorSetAction [DCM0, NumConst[value: 3], Forward, NumConst[value: 100]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: -100]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: 0]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: 80]] +DcMotorSetAction [DCM0, NumConst[value: 1], Numeric, NumConst[value: 200]] +DcMotorSetAction [DCM0, Binary [ADD, Var [motor2], NumConst[value: 1]], Numeric, Var [speed]] +WaitTimeStmt[time: NumConst[value: 500]] +DcMotorSetAction [DCM1, NumConst[value: 2], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM1, NumConst[value: 2], Stop, NumConst[value: 75]] +DcMotorSetAction [DCM1, NumConst[value: 2], Forward, NumConst[value: 75]] +WaitTimeStmt[time: NumConst[value: 500]] +DcMotorSetAction [DCM2, NumConst[value: 3], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM2, NumConst[value: 3], Stop, NumConst[value: 80]] +DcMotorSetAction [DCM2, NumConst[value: 3], Forward, NumConst[value: 80]] diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2017NoBlue/actors_dcmotor.ast b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2017NoBlue/actors_dcmotor.ast new file mode 100644 index 0000000000..4191c954de --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/astGenerated/calliope2017NoBlue/actors_dcmotor.ast @@ -0,0 +1,18 @@ +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: 120]] +DcMotorSetAction [DCM0, NumConst[value: 1], Backward, NumConst[value: -50]] +DcMotorSetAction [DCM0, NumConst[value: 2], Stop, NumConst[value: 75]] +DcMotorSetAction [DCM0, NumConst[value: 3], Forward, NumConst[value: 100]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: -100]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: 0]] +DcMotorSetAction [DCM0, NumConst[value: 3], Numeric, NumConst[value: 80]] +DcMotorSetAction [DCM0, NumConst[value: 1], Numeric, NumConst[value: 200]] +DcMotorSetAction [DCM0, Binary [ADD, Var [motor2], NumConst[value: 1]], Numeric, Var [speed]] +WaitTimeStmt[time: NumConst[value: 500]] +DcMotorSetAction [DCM1, NumConst[value: 2], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM1, NumConst[value: 2], Stop, NumConst[value: 75]] +DcMotorSetAction [DCM1, NumConst[value: 2], Forward, NumConst[value: 75]] +WaitTimeStmt[time: NumConst[value: 500]] +DcMotorSetAction [DCM2, NumConst[value: 3], Backward, NumConst[value: 50]] +DcMotorSetAction [DCM2, NumConst[value: 3], Stop, NumConst[value: 80]] +DcMotorSetAction [DCM2, NumConst[value: 3], Forward, NumConst[value: 80]] diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2016/actors_dcmotor.txt b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2016/actors_dcmotor.txt new file mode 100644 index 0000000000..05e107e300 --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2016/actors_dcmotor.txt @@ -0,0 +1,6 @@ +Sensors: +[] +Actors: +[UsedActor [, DCMOTOR]] +Methods: +[] \ No newline at end of file diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2017/actors_dcmotor.txt b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2017/actors_dcmotor.txt new file mode 100644 index 0000000000..05e107e300 --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2017/actors_dcmotor.txt @@ -0,0 +1,6 @@ +Sensors: +[] +Actors: +[UsedActor [, DCMOTOR]] +Methods: +[] \ No newline at end of file diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2017NoBlue/actors_dcmotor.txt b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2017NoBlue/actors_dcmotor.txt new file mode 100644 index 0000000000..05e107e300 --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/collectorResults/calliope2017NoBlue/actors_dcmotor.txt @@ -0,0 +1,6 @@ +Sensors: +[] +Actors: +[UsedActor [, DCMOTOR]] +Methods: +[] \ No newline at end of file diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2016/actors_dcmotor.cpp b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2016/actors_dcmotor.cpp new file mode 100644 index 0000000000..b2c455cb09 --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2016/actors_dcmotor.cpp @@ -0,0 +1,53 @@ +#define _GNU_SOURCE + +#include "MicroBit.h" +#include "NEPODefs.h" +#include +#include +#include +MicroBit _uBit; + +#include "DcMotor.h" +DcMotor dcMotor_DCM0(0x60); +DcMotor dcMotor_DCM1(0x61); +DcMotor dcMotor_DCM2(0x62); + + +double ___speed; +double ___motor2; + +int main() +{ + _uBit.init(); + ___speed = 9.5; + ___motor2 = 4; + + dcMotor_DCM0.init(); + dcMotor_DCM1.init(); + dcMotor_DCM2.init(); + + dcMotor_DCM0.setPercent(1, Direction::Backward, 50); + dcMotor_DCM0.setPercent(1, Direction::Backward, 120); + dcMotor_DCM0.setPercent(1, Direction::Backward, -50); + dcMotor_DCM0.setPercent(2, Direction::Stop, 0); + dcMotor_DCM0.setPercent(3, Direction::Forward, 100); + dcMotor_DCM0.setPercent(3, -100); + dcMotor_DCM0.setPercent(3, 0); + dcMotor_DCM0.setPercent(3, 80); + dcMotor_DCM0.setPercent(1, 200); + dcMotor_DCM0.setPercent(___motor2 + 1, ___speed); + _uBit.sleep(500); + dcMotor_DCM1.setPercent(2, Direction::Backward, 50); + dcMotor_DCM1.setPercent(2, Direction::Stop, 0); + dcMotor_DCM1.setPercent(2, Direction::Forward, 75); + _uBit.sleep(500); + dcMotor_DCM2.setPercent(3, Direction::Backward, 50); + dcMotor_DCM2.setPercent(3, Direction::Stop, 0); + dcMotor_DCM2.setPercent(3, Direction::Forward, 80); + + dcMotor_DCM0.release(); + dcMotor_DCM1.release(); + dcMotor_DCM2.release(); + + release_fiber(); +} diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2017/actors_dcmotor.cpp b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2017/actors_dcmotor.cpp new file mode 100644 index 0000000000..b2c455cb09 --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2017/actors_dcmotor.cpp @@ -0,0 +1,53 @@ +#define _GNU_SOURCE + +#include "MicroBit.h" +#include "NEPODefs.h" +#include +#include +#include +MicroBit _uBit; + +#include "DcMotor.h" +DcMotor dcMotor_DCM0(0x60); +DcMotor dcMotor_DCM1(0x61); +DcMotor dcMotor_DCM2(0x62); + + +double ___speed; +double ___motor2; + +int main() +{ + _uBit.init(); + ___speed = 9.5; + ___motor2 = 4; + + dcMotor_DCM0.init(); + dcMotor_DCM1.init(); + dcMotor_DCM2.init(); + + dcMotor_DCM0.setPercent(1, Direction::Backward, 50); + dcMotor_DCM0.setPercent(1, Direction::Backward, 120); + dcMotor_DCM0.setPercent(1, Direction::Backward, -50); + dcMotor_DCM0.setPercent(2, Direction::Stop, 0); + dcMotor_DCM0.setPercent(3, Direction::Forward, 100); + dcMotor_DCM0.setPercent(3, -100); + dcMotor_DCM0.setPercent(3, 0); + dcMotor_DCM0.setPercent(3, 80); + dcMotor_DCM0.setPercent(1, 200); + dcMotor_DCM0.setPercent(___motor2 + 1, ___speed); + _uBit.sleep(500); + dcMotor_DCM1.setPercent(2, Direction::Backward, 50); + dcMotor_DCM1.setPercent(2, Direction::Stop, 0); + dcMotor_DCM1.setPercent(2, Direction::Forward, 75); + _uBit.sleep(500); + dcMotor_DCM2.setPercent(3, Direction::Backward, 50); + dcMotor_DCM2.setPercent(3, Direction::Stop, 0); + dcMotor_DCM2.setPercent(3, Direction::Forward, 80); + + dcMotor_DCM0.release(); + dcMotor_DCM1.release(); + dcMotor_DCM2.release(); + + release_fiber(); +} diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2017NoBlue/actors_dcmotor.cpp b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2017NoBlue/actors_dcmotor.cpp new file mode 100644 index 0000000000..b2c455cb09 --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/_expected/robotSpecific/targetLanguage/calliope2017NoBlue/actors_dcmotor.cpp @@ -0,0 +1,53 @@ +#define _GNU_SOURCE + +#include "MicroBit.h" +#include "NEPODefs.h" +#include +#include +#include +MicroBit _uBit; + +#include "DcMotor.h" +DcMotor dcMotor_DCM0(0x60); +DcMotor dcMotor_DCM1(0x61); +DcMotor dcMotor_DCM2(0x62); + + +double ___speed; +double ___motor2; + +int main() +{ + _uBit.init(); + ___speed = 9.5; + ___motor2 = 4; + + dcMotor_DCM0.init(); + dcMotor_DCM1.init(); + dcMotor_DCM2.init(); + + dcMotor_DCM0.setPercent(1, Direction::Backward, 50); + dcMotor_DCM0.setPercent(1, Direction::Backward, 120); + dcMotor_DCM0.setPercent(1, Direction::Backward, -50); + dcMotor_DCM0.setPercent(2, Direction::Stop, 0); + dcMotor_DCM0.setPercent(3, Direction::Forward, 100); + dcMotor_DCM0.setPercent(3, -100); + dcMotor_DCM0.setPercent(3, 0); + dcMotor_DCM0.setPercent(3, 80); + dcMotor_DCM0.setPercent(1, 200); + dcMotor_DCM0.setPercent(___motor2 + 1, ___speed); + _uBit.sleep(500); + dcMotor_DCM1.setPercent(2, Direction::Backward, 50); + dcMotor_DCM1.setPercent(2, Direction::Stop, 0); + dcMotor_DCM1.setPercent(2, Direction::Forward, 75); + _uBit.sleep(500); + dcMotor_DCM2.setPercent(3, Direction::Backward, 50); + dcMotor_DCM2.setPercent(3, Direction::Stop, 0); + dcMotor_DCM2.setPercent(3, Direction::Forward, 80); + + dcMotor_DCM0.release(); + dcMotor_DCM1.release(); + dcMotor_DCM2.release(); + + release_fiber(); +} diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/actors_dcmotor.xml b/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/actors_dcmotor.xml new file mode 100644 index 0000000000..0ce7902365 --- /dev/null +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/actors_dcmotor.xml @@ -0,0 +1,443 @@ + + + + + + + + + + + speed + Number + + + 9.5 + + + + + + motor2 + Number + + + 4 + + + + + + + DCM0 + Backward + + + 1 + + + + + 50 + + + + + DCM0 + Backward + + + 1 + + + + + 120 + + + + + DCM0 + Backward + + + 1 + + + + + -50 + + + + + DCM0 + Stop + + + 2 + + + + + 75 + + + + + DCM0 + Forward + + + 3 + + + + + 100 + + + + + DCM0 + Numeric + + + 3 + + + + + -100 + + + + + DCM0 + Numeric + + + 3 + + + + + 0 + + + + + DCM0 + Numeric + + + 3 + + + + + 80 + + + + + DCM0 + Numeric + + + 1 + + + + + 200 + + + + + DCM0 + Numeric + + + ADD + + + + motor2 + + + + + 1 + + + + + + + + speed + + + + + + + 500 + + + + + DCM1 + Backward + + + 2 + + + + + 50 + + + + + DCM1 + Stop + + + 2 + + + + + 75 + + + + + DCM1 + Forward + + + 2 + + + + + 75 + + + + + + + 500 + + + + + DCM2 + Backward + + + 3 + + + + + 50 + + + + + DCM2 + Stop + + + 3 + + + + + 80 + + + + + DCM2 + Forward + + + 3 + + + + + 80 + + + + + + + + + + + A + A + + + + + B + B + + + + + _A + + + + + _B + + + + + _C + + + + + _G + + + + + _L + + + + + undefined + + + + + _R + + + + + _S + + + + + _T + + + + + DCM2 + 0x62 + 4 + + + + + DCM1 + 0x61 + 4 + + + + + DCM0 + 0x60 + 4 + + + + + \ No newline at end of file diff --git a/OpenRobertaServer/staticResources/blockly/blockly_compressed.js b/OpenRobertaServer/staticResources/blockly/blockly_compressed.js index 354718b114..00979cb03e 100644 --- a/OpenRobertaServer/staticResources/blockly/blockly_compressed.js +++ b/OpenRobertaServer/staticResources/blockly/blockly_compressed.js @@ -1695,10 +1695,11 @@ Blockly.Msg.CONTROLS_IF_TOOLTIP_2="If a value is true, then do the first block o Blockly.Msg.CONTROLS_REPEAT_HELPURL="https://en.wikipedia.org/wiki/For_loop";Blockly.Msg.CONTROLS_REPEAT_INPUT_DO="do";Blockly.Msg.CONTROLS_REPEAT_TITLE="repeat %1 times";Blockly.Msg.CONTROLS_REPEAT_TOOLTIP="Do some statements several times.";Blockly.Msg.CONTROLS_WHILEUNTIL_HELPURL="https://github.com/google/blockly/wiki/Loops#repeat";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.DATATABLE_ACTUALIZATION="Modification date";Blockly.Msg.DATATABLE_CONFIGURATIONS="configurations";Blockly.Msg.DATATABLE_CONFIGURATION_NAME="Configuration name";Blockly.Msg.DATATABLE_CREATED_BY="Creator";Blockly.Msg.DATATABLE_CREATED_ON="Creation date";Blockly.Msg.DATATABLE_MEMBERS="members"; Blockly.Msg.DATATABLE_PROGRAMS="programs";Blockly.Msg.DATATABLE_PROGRAM_NAME="Program name";Blockly.Msg.DATATABLE_SHARED="Shared";Blockly.Msg.DATATABLE_SHARED_PROGRAMS="shared programs";Blockly.Msg.DATATABLE_SHARED_WITH="Shared with";Blockly.Msg.DATATABLE_USERGROUP="user group";Blockly.Msg.DATATABLE_USERGROUPS="user groups";Blockly.Msg.DATATABLE_USERGROUP_NAME="Name of the user group";Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT="The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; -Blockly.Msg.DATATABLE_USERGROUP_OWNER="Name of the owner of the user group";Blockly.Msg.DCMOTOR_M1="Motor port 1";Blockly.Msg.DCMOTOR_M2="Motor port 2";Blockly.Msg.DCMOTOR_M3="Motor port 3";Blockly.Msg.DCMOTOR_M4="Motor port 4";Blockly.Msg.DELETE_ALL_BLOCKS="Delete all %1 blocks?";Blockly.Msg.DELETE_BLOCK="Delete Block";Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING="A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; -Blockly.Msg.DELETE_USERGROUP_MEMBER_WARNING="Are you sure that you want to delete the selected member(s)?";Blockly.Msg.DELETE_X_BLOCKS="Delete %1 Blocks";Blockly.Msg.DIGITAL="digital";Blockly.Msg.DIGITALIN_TOOLTIP="Represents any actuator connected to a digital pin.";Blockly.Msg.DIGITALOUT_TOOLTIP="Represents any sensor connected to a digital.";Blockly.Msg.DISABLE_BLOCK="Disable Block";Blockly.Msg.DISPLAY_ANIMATION="animation";Blockly.Msg.DISPLAY_CHARACTER="character";Blockly.Msg.DISPLAY_CLEAR="clear display"; -Blockly.Msg.DISPLAY_CLEAR_TOOLTIP="Clears the display.";Blockly.Msg.DISPLAY_COL="in column";Blockly.Msg.DISPLAY_GET_BRIGHTNESS_TOOLTIP="Returns the brightness for all leds of the display. 0 means all leds are turned off, 9 is the brightest value.";Blockly.Msg.DISPLAY_GET_PIXEL_TOOLTIP="Returns the brightness for this led. 0 means the led is turned off, 9 is the brightest value.";Blockly.Msg.DISPLAY_IMAGE="image";Blockly.Msg.DISPLAY_PICTURE="picture";Blockly.Msg.DISPLAY_PICTURE_EYES_CLOSED="eyes closed"; -Blockly.Msg.DISPLAY_PICTURE_EYES_OPEN="eyes open";Blockly.Msg.DISPLAY_PICTURE_FLOWERS="flowers";Blockly.Msg.DISPLAY_PICTURE_GLASSES="glasses";Blockly.Msg.DISPLAY_PICTURE_TACHO="speedo";Blockly.Msg.DISPLAY_PICTURE_TOOLTIP="Displays a picture on the screen.";Blockly.Msg.DISPLAY_PIXEL_BRIGHTNESS="brightness";Blockly.Msg.DISPLAY_PIXEL_TITLE="LED";Blockly.Msg.DISPLAY_ROW="in row";Blockly.Msg.DISPLAY_SET_BRIGHTNESS_TOOLTIP="Sets the brightness for all leds of the display. 0 means all leds are turned off, 9 is the brightest value."; +Blockly.Msg.DATATABLE_USERGROUP_OWNER="Name of the owner of the user group";Blockly.Msg.DCMOTOR="DC Motor";Blockly.Msg.DCMOTOR_BACKWARD="backward";Blockly.Msg.DCMOTOR_BOARD="DC Motor board";Blockly.Msg.DCMOTOR_FORWARD="forward";Blockly.Msg.DCMOTOR_M1="motor port 1";Blockly.Msg.DCMOTOR_M2="motor port 2";Blockly.Msg.DCMOTOR_M3="motor port 3";Blockly.Msg.DCMOTOR_M4="motor port 4";Blockly.Msg.DCMOTOR_MOTOR="motor port";Blockly.Msg.DCMOTOR_NUMERIC="numeric";Blockly.Msg.DCMOTOR_SPEED="speed"; +Blockly.Msg.DCMOTOR_STOP="stop";Blockly.Msg.DCMOTOR_TOOLTIP="DC Motor extention";Blockly.Msg.DELETE_ALL_BLOCKS="Delete all %1 blocks?";Blockly.Msg.DELETE_BLOCK="Delete Block";Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING="A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?";Blockly.Msg.DELETE_USERGROUP_MEMBER_WARNING="Are you sure that you want to delete the selected member(s)?"; +Blockly.Msg.DELETE_X_BLOCKS="Delete %1 Blocks";Blockly.Msg.DIGITAL="digital";Blockly.Msg.DIGITALIN_TOOLTIP="Represents any actuator connected to a digital pin.";Blockly.Msg.DIGITALOUT_TOOLTIP="Represents any sensor connected to a digital.";Blockly.Msg.DISABLE_BLOCK="Disable Block";Blockly.Msg.DISPLAY_ANIMATION="animation";Blockly.Msg.DISPLAY_CHARACTER="character";Blockly.Msg.DISPLAY_CLEAR="clear display";Blockly.Msg.DISPLAY_CLEAR_TOOLTIP="Clears the display.";Blockly.Msg.DISPLAY_COL="in column"; +Blockly.Msg.DISPLAY_GET_BRIGHTNESS_TOOLTIP="Returns the brightness for all leds of the display. 0 means all leds are turned off, 9 is the brightest value.";Blockly.Msg.DISPLAY_GET_PIXEL_TOOLTIP="Returns the brightness for this led. 0 means the led is turned off, 9 is the brightest value.";Blockly.Msg.DISPLAY_IMAGE="image";Blockly.Msg.DISPLAY_PICTURE="picture";Blockly.Msg.DISPLAY_PICTURE_EYES_CLOSED="eyes closed";Blockly.Msg.DISPLAY_PICTURE_EYES_OPEN="eyes open"; +Blockly.Msg.DISPLAY_PICTURE_FLOWERS="flowers";Blockly.Msg.DISPLAY_PICTURE_GLASSES="glasses";Blockly.Msg.DISPLAY_PICTURE_TACHO="speedo";Blockly.Msg.DISPLAY_PICTURE_TOOLTIP="Displays a picture on the screen.";Blockly.Msg.DISPLAY_PIXEL_BRIGHTNESS="brightness";Blockly.Msg.DISPLAY_PIXEL_TITLE="LED";Blockly.Msg.DISPLAY_ROW="in row";Blockly.Msg.DISPLAY_SET_BRIGHTNESS_TOOLTIP="Sets the brightness for all leds of the display. 0 means all leds are turned off, 9 is the brightest value."; Blockly.Msg.DISPLAY_SET_PIXEL_TOOLTIP="Sets the brightness for this led. 0 means the led is turned off, 9 is the brightest value. With x and y you can determine the position of the led you would like to change.";Blockly.Msg.DISPLAY_SHOW="show";Blockly.Msg.DISPLAY_TEXT="text";Blockly.Msg.DISPLAY_TEXT_TOOLTIP="Displays a text on the screen.";Blockly.Msg.DROP_TOOLTIP="Represents a drop sensor.";Blockly.Msg.DUPLICATE_BLOCK="Duplicate";Blockly.Msg.ENABLE_BLOCK="Enable Block"; Blockly.Msg.ENCODER_GETSAMPLE_TOOLTIP="Gets the current reading from the motor encoder.";Blockly.Msg.ENCODER_RESET_TOOLTIP="Resets the motor encoder.";Blockly.Msg.ENCODER_TOOLTIP="Represents an encoder.";Blockly.Msg.ENVIRONMENTAL_TOOLTIP="Represents an environmental sensor.";Blockly.Msg.ENVIRONMENTAL_TOOLTIP_SENSEBOX="Represents the BME680 environmental sensor.";Blockly.Msg.ERROR_MISSING_PARAMETER="An input value is missing!";Blockly.Msg.ERROR_MISSING_RETURN="The function return value is missing!"; Blockly.Msg.EV3BRICK_TOOLTIP="Represents the EV3 brick with connected actors and sensors. There are also inbuilt actors and sensors available, e.g. buttons, display ...";Blockly.Msg.EXPAND_ALL="Expand Blocks";Blockly.Msg.EXPAND_BLOCK="Expand Block";Blockly.Msg.EXTERNAL_INPUTS="External Inputs";Blockly.Msg.FLAME_GETSAMPLE_TOOLTIP="Gets the current reading from the flame sensor.";Blockly.Msg.FLAME_TOOLTIP="Represents a flame sensor.";Blockly.Msg.FLYOUT_VARIABLE_TEXT="You need a variable? Please declare it first with a click on the + sign at the \u00bbstart\u00ab\u00a0block."; @@ -1707,36 +1708,37 @@ Blockly.Msg.GAIN="gain";Blockly.Msg.GALLERY_BY="by";Blockly.Msg.GALLERY_DATE="cr Blockly.Msg.GET_CODE_TOOLTIP="Returns the value of the solderable code pad in the head piece. Values are in range 0-31.";Blockly.Msg.GO_TO_GROUPS="Go to groups";Blockly.Msg.GPS_TOOLTIP="Represents a GPS receiver.";Blockly.Msg.GROUP_CREATE_NAME_HINT="Please keep in mind, that all members of a group have to enter the group name on each login. It should neither be complicated nor long.";Blockly.Msg.GYRO_GETSAMPLE_TOOLTIP="Gets the current reading from the gyro sensor."; Blockly.Msg.GYRO_RESET_TOOLTIP="Resets the gyro sensor.";Blockly.Msg.GYRO_TOOLTIP="Represents a gyro sensor.";Blockly.Msg.GYRO_TOOLTIP_WEDO="Represents a tilt sensor.";Blockly.Msg.HELP="Help";Blockly.Msg.HINT_USERGROUP_MEMBER="Enter the member id of your user here.";Blockly.Msg.HINT_USERGROUP_OWNER="Do not enter the real name of the owner of the user group here, but his username instead.";Blockly.Msg.HINT_USER_ACCOUNT="\u00bbIAmBotman\u00ab or \u00bbRobellaStracciatella\u00ab? Not everyone needs to know your real name. Think of a cool nickname that you can easily remember."; Blockly.Msg.HINT_USER_AGE="Are you under 16? Then please ask your parents to help you. They can specify their e-mail address to confirm your account.";Blockly.Msg.HINT_USER_EMAIL="This is voluntary! However, some functions of the lab are only available if you have verified your account by e-mail. You are younger than 16? Please ask your parents to help you out with one of their e-mail addresses.
Further information ..."; -Blockly.Msg.HINT_USER_NAME="Enter your real name here if you like. This is just for you, no one else will see it.";Blockly.Msg.HINT_USER_PASSWORT="12345 is no secure password. Rather think of a safe combination of numbers and letters that you will not forget.";Blockly.Msg.HINT_USER_PASSWORT_CONFIRM="Got it? Better make sure!";Blockly.Msg.HTCOLOUR_TOOLTIP="Represents a HiTechnic NXT Color Sensor V2.";Blockly.Msg.HUMIDITY_TOOLTIP="Represents a humidity sensor.";Blockly.Msg.ICON_BLOCKING_TOOLTIP="Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; -Blockly.Msg.ID="ID";Blockly.Msg.IF_TOOLTIP="Checks the condition in \u00bbif\u00ab. If the condition is true, executes the \u00bbdo\u00ab action.";Blockly.Msg.IMAGE_GET_TOOLTIP="Returns the chosen image.";Blockly.Msg.IMAGE_GET_TOOLTIP_ANGRY="angry";Blockly.Msg.IMAGE_GET_TOOLTIP_ASLEEP="asleep";Blockly.Msg.IMAGE_GET_TOOLTIP_BUTTERFLY="butterfly";Blockly.Msg.IMAGE_GET_TOOLTIP_CHESSBOARD="chessboard";Blockly.Msg.IMAGE_GET_TOOLTIP_CONFUSED="confused";Blockly.Msg.IMAGE_GET_TOOLTIP_COW="cow"; -Blockly.Msg.IMAGE_GET_TOOLTIP_DIAMOND="diamond";Blockly.Msg.IMAGE_GET_TOOLTIP_DIAMOND_SMALL="small diamond";Blockly.Msg.IMAGE_GET_TOOLTIP_DUCK="duck";Blockly.Msg.IMAGE_GET_TOOLTIP_FABULOUS="fabulous";Blockly.Msg.IMAGE_GET_TOOLTIP_GHOST="ghost";Blockly.Msg.IMAGE_GET_TOOLTIP_GIRAFFE="giraffe";Blockly.Msg.IMAGE_GET_TOOLTIP_HEART="heart";Blockly.Msg.IMAGE_GET_TOOLTIP_HEART_SMALL="small heart";Blockly.Msg.IMAGE_GET_TOOLTIP_HOUSE="house";Blockly.Msg.IMAGE_GET_TOOLTIP_MEH="meh!"; -Blockly.Msg.IMAGE_GET_TOOLTIP_MUSIC_CROTCHET="music crotchet";Blockly.Msg.IMAGE_GET_TOOLTIP_MUSIC_QUAVER="music quaver";Blockly.Msg.IMAGE_GET_TOOLTIP_MUSIC_QUAVERS="music quavers";Blockly.Msg.IMAGE_GET_TOOLTIP_NO="no";Blockly.Msg.IMAGE_GET_TOOLTIP_PACMAN="pacman";Blockly.Msg.IMAGE_GET_TOOLTIP_PITCHFORK="pitchfork";Blockly.Msg.IMAGE_GET_TOOLTIP_RABBIT="rabbit";Blockly.Msg.IMAGE_GET_TOOLTIP_ROLLERSKATE="rollerskate";Blockly.Msg.IMAGE_GET_TOOLTIP_SAD="sad";Blockly.Msg.IMAGE_GET_TOOLTIP_SILLY="silly"; -Blockly.Msg.IMAGE_GET_TOOLTIP_SKULL="skull";Blockly.Msg.IMAGE_GET_TOOLTIP_SMILE="smile";Blockly.Msg.IMAGE_GET_TOOLTIP_SNAKE="snake";Blockly.Msg.IMAGE_GET_TOOLTIP_SQUARE="square";Blockly.Msg.IMAGE_GET_TOOLTIP_SQUARE_SMALL="small square";Blockly.Msg.IMAGE_GET_TOOLTIP_STICKFIGURE="stickfigure";Blockly.Msg.IMAGE_GET_TOOLTIP_SWORD="sword";Blockly.Msg.IMAGE_GET_TOOLTIP_TARGET="target";Blockly.Msg.IMAGE_GET_TOOLTIP_TORTOISE="tortoise";Blockly.Msg.IMAGE_GET_TOOLTIP_TRIANGLE="triangle"; -Blockly.Msg.IMAGE_GET_TOOLTIP_TRIANGLE_LEFT="triangle left";Blockly.Msg.IMAGE_GET_TOOLTIP_TSHIRT="T-shirt";Blockly.Msg.IMAGE_GET_TOOLTIP_UMBRELLA="umbrella";Blockly.Msg.IMAGE_GET_TOOLTIP_XMAS="xmas";Blockly.Msg.IMAGE_GET_TOOLTIP_YES="yes";Blockly.Msg.IMAGE_INVERT="invert";Blockly.Msg.IMAGE_INVERT_TOOLTIP="Inverts the image. Each pixel with value 0 or none will be set to # or 9 and pixels with value # or 9 will be set to 0 or none.";Blockly.Msg.IMAGE_SHIFT="shift";Blockly.Msg.IMAGE_SHIFT_TOOLTIP="Shifts the image in the given direction by the given number"; -Blockly.Msg.IMAGE_TOOLTIP="Creates an image for the display. You can specify the brightness of each pixel from 0 to 9 or # where 0 means no light, 1 is a bit bright and 9 or # is the brightest value.";Blockly.Msg.INFO_DOCUMENTATION_HINT="Document your program here ...";Blockly.Msg.INFO_TAGS="Tags";Blockly.Msg.INFRARED_DISTANCE_GETSAMPLE_TOOLTIP="Gets the current relative distance from the infrared sensor. The values are between 1 and 75 cm.";Blockly.Msg.INFRARED_GETSAMPLE_TOOLTIP="Gets the current reading from the infrared sensor."; -Blockly.Msg.INFRARED_GETSAMPLE_TOOLTIP_MBOT="Gets the current reading from the light sensor -- if a black line is detected (true/false).";Blockly.Msg.INFRARED_PRESENCE_GETSAMPLE_TOOLTIP="Returns an array of measurements for the presence of a beacon.";Blockly.Msg.INFRARED_TOOLTIP="Represents an infrared sensor.";Blockly.Msg.INLINE_INPUTS="Inline Inputs";Blockly.Msg.INPUT="input";Blockly.Msg.INTERNAL_PORT="internal";Blockly.Msg.IRSEEKER_TOOLTIP="Represents a HiTechnic NXT IRSeeker V2 sensor."; -Blockly.Msg.I_TIME="integration time";Blockly.Msg.JOYSTICK_GETSAMPLE_TOOLTIP="Gets the current reading of one of the axises of the joystick";Blockly.Msg.KEY_ISPRESSED_TOOLTIP="Is the selected button pressed?";Blockly.Msg.KEY_TOOLTIP="Represents a button.";Blockly.Msg.LANGUAGE="language";Blockly.Msg.LANGUAGE_ARABIC="Arabic";Blockly.Msg.LANGUAGE_BRAZILIAN="Brazilian";Blockly.Msg.LANGUAGE_CHINESE="Chinese";Blockly.Msg.LANGUAGE_CZECH="Czech";Blockly.Msg.LANGUAGE_DANISH="Danish"; -Blockly.Msg.LANGUAGE_DUTCH="Dutch";Blockly.Msg.LANGUAGE_ENGLISH="English";Blockly.Msg.LANGUAGE_FINNISH="Finnish";Blockly.Msg.LANGUAGE_FRENCH="French";Blockly.Msg.LANGUAGE_GERMAN="German";Blockly.Msg.LANGUAGE_GREEK="Greek";Blockly.Msg.LANGUAGE_ITALIAN="Italian";Blockly.Msg.LANGUAGE_JAPANESE="Japanese";Blockly.Msg.LANGUAGE_KOREAN="Korean";Blockly.Msg.LANGUAGE_NORWEGIAN="Norwegian";Blockly.Msg.LANGUAGE_POLISH="Polish";Blockly.Msg.LANGUAGE_PORTUGUESE="Portuguese";Blockly.Msg.LANGUAGE_RUSSIAN="Russian"; -Blockly.Msg.LANGUAGE_SPANISH="Spanish";Blockly.Msg.LANGUAGE_SWEDISH="Swedish";Blockly.Msg.LANGUAGE_TURKISH="Turkish";Blockly.Msg.LCDI2C_TOOLTIP="Represents an LCD 1602 display with a soldered I\u00b2C module.";Blockly.Msg.LCD_TOOLTIP="Represents an LCD display.";Blockly.Msg.LED="LED";Blockly.Msg.LEDBAR="LED Bar";Blockly.Msg.LEDBAR_SET_TOOLTIP="Sets the specified LED [0-9] on the LED Bar to the given brightness [0-8].";Blockly.Msg.LEDBAR_TOOLTIP="Represents a Grove LED Bar v2.0 by Seeed."; -Blockly.Msg.LED_MATRIX="LED matrix";Blockly.Msg.LED_OFF="turn LED off";Blockly.Msg.LED_OFF_TOOLTIP="Turns the LED off.";Blockly.Msg.LED_ON="turn LED on";Blockly.Msg.LED_ON_TOOLTIP="Turns the LED on and changes the color.";Blockly.Msg.LED_ON_TOOLTIP_CB="Turns the LED on and changes the color. Attention: calli:Bot only supports 7 different colors, the nearest will be chosen.";Blockly.Msg.LED_ON_TOOLTIP_EDISON="Turns the LED on.";Blockly.Msg.LED_ON_WHITE_TOOLTIP="Turns the LED on. Watch out, it's very bright!"; -Blockly.Msg.LED_TOOLTIP="Represents an LED.";Blockly.Msg.LEFT="left";Blockly.Msg.LEFT_FRONT_RGBLED="RGB LED left front";Blockly.Msg.LEFT_INFRARED_SENSOR="infraredsensor left";Blockly.Msg.LEFT_LED="LED left";Blockly.Msg.LEFT_MOTOR="motor left";Blockly.Msg.LEFT_REAR_RGBLED="RGB LED left rear";Blockly.Msg.LIGHTVEML_TOOLTIP="Represents a visible/UV light sensor.";Blockly.Msg.LIGHT_ARDU_TOOLTIP="Represents 8 light sensors.";Blockly.Msg.LIGHT_GETSAMPLE_TOOLTIP="Gets the current reading from the light sensor in percent."; -Blockly.Msg.LIGHT_LDR="Light (LDR)";Blockly.Msg.LIGHT_TOOLTIP="Represents a light sensor.";Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL="https://github.com/google/blockly/wiki/Lists#create-empty-list";Blockly.Msg.LISTS_CREATE_EMPTY_TITLE="create empty list";Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP="Returns a list, of length 0, containing no data records";Blockly.Msg.LISTS_CREATE_TITLE="list";Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD="list";Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP="Add, remove, or reorder sections to reconfigure this list block."; -Blockly.Msg.LISTS_CREATE_WITH_HELPURL="https://github.com/google/blockly/wiki/Lists#create-list-with";Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH="create list with";Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP="Add an item to the list.";Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP="Create a list with any number of items.";Blockly.Msg.LISTS_GET_INDEX_FIRST="first";Blockly.Msg.LISTS_GET_INDEX_FROM_END="# from end";Blockly.Msg.LISTS_GET_INDEX_FROM_START="#";Blockly.Msg.LISTS_GET_INDEX_GET="get"; -Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE="get and remove";Blockly.Msg.LISTS_GET_INDEX_LAST="last";Blockly.Msg.LISTS_GET_INDEX_RANDOM="random";Blockly.Msg.LISTS_GET_INDEX_REMOVE="remove";Blockly.Msg.LISTS_GET_INDEX_TAIL="";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST="Returns the first item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM_END="Returns the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM_START="Returns the item at the specified position in a list. #1 is the first item."; -Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST="Returns the last item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM="Returns a random item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST="Removes and returns the first item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_END="Removes and returns the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_START="Removes and returns the item at the specified position in a list. #1 is the first item."; -Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST="Removes and returns the last item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM="Removes and returns a random item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST="Removes the first item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_END="Removes the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_START="Removes the item at the specified position in a list. #1 is the first item."; -Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST="Removes the last item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM="Removes a random item in a list.";Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END="to # from end";Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START="to #";Blockly.Msg.LISTS_GET_SUBLIST_END_LAST="to last";Blockly.Msg.LISTS_GET_SUBLIST_HELPURL="https://github.com/google/blockly/wiki/Lists#getting-a-sublist";Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST="get sub-list from first"; -Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END="get sub-list from # from end";Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START="get sub-list from #";Blockly.Msg.LISTS_GET_SUBLIST_TAIL="";Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP="Creates a copy of the specified portion of a list.";Blockly.Msg.LISTS_INDEX_OF_FIRST="find first occurrence of item";Blockly.Msg.LISTS_INDEX_OF_HELPURL="https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list";Blockly.Msg.LISTS_INDEX_OF_LAST="find last occurrence of item"; -Blockly.Msg.LISTS_INDEX_OF_TOOLTIP="Returns the index of the first/last occurrence of the item in the list. Returns -1 if item is not found.";Blockly.Msg.LISTS_INLIST="in list";Blockly.Msg.LISTS_ISEMPTY_HELPURL="https://github.com/google/blockly/wiki/Lists#is-empty";Blockly.Msg.LISTS_ISEMPTY_TITLE="%1 is empty";Blockly.Msg.LISTS_ISEMPTY_TOOLTIP="Returns true if the list is empty.";Blockly.Msg.LISTS_LENGTH_HELPURL="https://github.com/google/blockly/wiki/Lists#length-of"; -Blockly.Msg.LISTS_LENGTH_TITLE="length of %1";Blockly.Msg.LISTS_LENGTH_TOOLTIP="Returns the length of a list.";Blockly.Msg.LISTS_REPEAT_HELPURL="https://github.com/google/blockly/wiki/Lists#create-list-with";Blockly.Msg.LISTS_REPEAT_TITLE="create list with item %1 repeated %2 times";Blockly.Msg.LISTS_REPEAT_TOOLTIP="Creates a list consisting of the given value repeated the specified number of times.";Blockly.Msg.LISTS_SET_INDEX_HELPURL="https://github.com/google/blockly/wiki/Lists#in-list--set"; -Blockly.Msg.LISTS_SET_INDEX_INPUT_TO="as";Blockly.Msg.LISTS_SET_INDEX_INSERT="insert at";Blockly.Msg.LISTS_SET_INDEX_SET="set";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST="Inserts the item at the start of a list.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_END="Inserts the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_START="Inserts the item at the specified position in a list. #1 is the first item."; -Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST="Append the item to the end of a list.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM="Inserts the item randomly in a list.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST="Sets the first item in a list.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM_END="Sets the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM_START="Sets the item at the specified position in a list. #1 is the first item."; -Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST="Sets the last item in a list.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM="Sets a random item in a list.";Blockly.Msg.LISTS_SORT_HELPURL="https://github.com/google/blockly/wiki/Lists#sorting-a-list";Blockly.Msg.LISTS_SORT_ORDER_ASCENDING="ascending";Blockly.Msg.LISTS_SORT_ORDER_DESCENDING="descending";Blockly.Msg.LISTS_SORT_TITLE="sort %1 %2 %3";Blockly.Msg.LISTS_SORT_TOOLTIP="Sort a copy of a list.";Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE="alphabetic, ignore case"; -Blockly.Msg.LISTS_SORT_TYPE_NUMERIC="numeric";Blockly.Msg.LISTS_SORT_TYPE_TEXT="alphabetic";Blockly.Msg.LISTS_SPLIT_HELPURL="https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists";Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT="make list from text";Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST="make text from list";Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN="Join a list of texts into one text, separated by a delimiter.";Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT="Split text into a list of texts, breaking at each delimiter."; -Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER="with delimiter";Blockly.Msg.LIST_BACK_TOOLTIP="Back to previous view.";Blockly.Msg.LOGIC_BOOLEAN_FALSE="false";Blockly.Msg.LOGIC_BOOLEAN_HELPURL="https://github.com/google/blockly/wiki/Logic#values";Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP="Returns either true or false.";Blockly.Msg.LOGIC_BOOLEAN_TRUE="true";Blockly.Msg.LOGIC_COMPARE_HELPURL="https://en.wikipedia.org/wiki/Inequality_(mathematics)";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ="Return true if both inputs equal each other."; -Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT="Return true if the first input is greater than the second input.";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE="Return true if the first input is greater than or equal to the second input.";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT="Return true if the first input is smaller than the second input.";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE="Return true if the first input is smaller than or equal to the second input.";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ="Return true if both inputs are not equal to each other."; -Blockly.Msg.LOGIC_NEGATE_HELPURL="https://github.com/google/blockly/wiki/Logic#not";Blockly.Msg.LOGIC_NEGATE_TITLE="not %1";Blockly.Msg.LOGIC_NEGATE_TOOLTIP="Returns true if the input is false. Returns false if the input is true.";Blockly.Msg.LOGIC_NULL="null";Blockly.Msg.LOGIC_NULL_HELPURL="https://en.wikipedia.org/wiki/Nullable_type";Blockly.Msg.LOGIC_NULL_TOOLTIP="Returns null.";Blockly.Msg.LOGIC_OPERATION_AND="and";Blockly.Msg.LOGIC_OPERATION_HELPURL="https://github.com/google/blockly/wiki/Logic#logical-operations"; -Blockly.Msg.LOGIC_OPERATION_OR="or";Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND="Return true if both inputs are true.";Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR="Return true if at least one of the inputs is true.";Blockly.Msg.LOGIC_TERNARY_CONDITION="test";Blockly.Msg.LOGIC_TERNARY_HELPURL="https://en.wikipedia.org/wiki/%3F:";Blockly.Msg.LOGIC_TERNARY_IF_FALSE="if false";Blockly.Msg.LOGIC_TERNARY_IF_TRUE="if true";Blockly.Msg.LOGIC_TERNARY_TOOLTIP="Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; +Blockly.Msg.HINT_USER_NAME="Enter your real name here if you like. This is just for you, no one else will see it.";Blockly.Msg.HINT_USER_PASSWORT="12345 is no secure password. Rather think of a safe combination of numbers and letters that you will not forget.";Blockly.Msg.HINT_USER_PASSWORT_CONFIRM="Got it? Better make sure!";Blockly.Msg.HTCOLOUR_TOOLTIP="Represents a HiTechnic NXT Color Sensor V2.";Blockly.Msg.HUMIDITY_TOOLTIP="Represents a humidity sensor.";Blockly.Msg.I2CADDRESS="I2C address"; +Blockly.Msg.ICON_BLOCKING_TOOLTIP="Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function.";Blockly.Msg.ID="ID";Blockly.Msg.IF_TOOLTIP="Checks the condition in \u00bbif\u00ab. If the condition is true, executes the \u00bbdo\u00ab action.";Blockly.Msg.IMAGE_GET_TOOLTIP="Returns the chosen image.";Blockly.Msg.IMAGE_GET_TOOLTIP_ANGRY="angry";Blockly.Msg.IMAGE_GET_TOOLTIP_ASLEEP="asleep"; +Blockly.Msg.IMAGE_GET_TOOLTIP_BUTTERFLY="butterfly";Blockly.Msg.IMAGE_GET_TOOLTIP_CHESSBOARD="chessboard";Blockly.Msg.IMAGE_GET_TOOLTIP_CONFUSED="confused";Blockly.Msg.IMAGE_GET_TOOLTIP_COW="cow";Blockly.Msg.IMAGE_GET_TOOLTIP_DIAMOND="diamond";Blockly.Msg.IMAGE_GET_TOOLTIP_DIAMOND_SMALL="small diamond";Blockly.Msg.IMAGE_GET_TOOLTIP_DUCK="duck";Blockly.Msg.IMAGE_GET_TOOLTIP_FABULOUS="fabulous";Blockly.Msg.IMAGE_GET_TOOLTIP_GHOST="ghost";Blockly.Msg.IMAGE_GET_TOOLTIP_GIRAFFE="giraffe"; +Blockly.Msg.IMAGE_GET_TOOLTIP_HEART="heart";Blockly.Msg.IMAGE_GET_TOOLTIP_HEART_SMALL="small heart";Blockly.Msg.IMAGE_GET_TOOLTIP_HOUSE="house";Blockly.Msg.IMAGE_GET_TOOLTIP_MEH="meh!";Blockly.Msg.IMAGE_GET_TOOLTIP_MUSIC_CROTCHET="music crotchet";Blockly.Msg.IMAGE_GET_TOOLTIP_MUSIC_QUAVER="music quaver";Blockly.Msg.IMAGE_GET_TOOLTIP_MUSIC_QUAVERS="music quavers";Blockly.Msg.IMAGE_GET_TOOLTIP_NO="no";Blockly.Msg.IMAGE_GET_TOOLTIP_PACMAN="pacman";Blockly.Msg.IMAGE_GET_TOOLTIP_PITCHFORK="pitchfork"; +Blockly.Msg.IMAGE_GET_TOOLTIP_RABBIT="rabbit";Blockly.Msg.IMAGE_GET_TOOLTIP_ROLLERSKATE="rollerskate";Blockly.Msg.IMAGE_GET_TOOLTIP_SAD="sad";Blockly.Msg.IMAGE_GET_TOOLTIP_SILLY="silly";Blockly.Msg.IMAGE_GET_TOOLTIP_SKULL="skull";Blockly.Msg.IMAGE_GET_TOOLTIP_SMILE="smile";Blockly.Msg.IMAGE_GET_TOOLTIP_SNAKE="snake";Blockly.Msg.IMAGE_GET_TOOLTIP_SQUARE="square";Blockly.Msg.IMAGE_GET_TOOLTIP_SQUARE_SMALL="small square";Blockly.Msg.IMAGE_GET_TOOLTIP_STICKFIGURE="stickfigure"; +Blockly.Msg.IMAGE_GET_TOOLTIP_SWORD="sword";Blockly.Msg.IMAGE_GET_TOOLTIP_TARGET="target";Blockly.Msg.IMAGE_GET_TOOLTIP_TORTOISE="tortoise";Blockly.Msg.IMAGE_GET_TOOLTIP_TRIANGLE="triangle";Blockly.Msg.IMAGE_GET_TOOLTIP_TRIANGLE_LEFT="triangle left";Blockly.Msg.IMAGE_GET_TOOLTIP_TSHIRT="T-shirt";Blockly.Msg.IMAGE_GET_TOOLTIP_UMBRELLA="umbrella";Blockly.Msg.IMAGE_GET_TOOLTIP_XMAS="xmas";Blockly.Msg.IMAGE_GET_TOOLTIP_YES="yes";Blockly.Msg.IMAGE_INVERT="invert";Blockly.Msg.IMAGE_INVERT_TOOLTIP="Inverts the image. Each pixel with value 0 or none will be set to # or 9 and pixels with value # or 9 will be set to 0 or none."; +Blockly.Msg.IMAGE_SHIFT="shift";Blockly.Msg.IMAGE_SHIFT_TOOLTIP="Shifts the image in the given direction by the given number";Blockly.Msg.IMAGE_TOOLTIP="Creates an image for the display. You can specify the brightness of each pixel from 0 to 9 or # where 0 means no light, 1 is a bit bright and 9 or # is the brightest value.";Blockly.Msg.INFO_DOCUMENTATION_HINT="Document your program here ...";Blockly.Msg.INFO_TAGS="Tags";Blockly.Msg.INFRARED_DISTANCE_GETSAMPLE_TOOLTIP="Gets the current relative distance from the infrared sensor. The values are between 1 and 75 cm."; +Blockly.Msg.INFRARED_GETSAMPLE_TOOLTIP="Gets the current reading from the infrared sensor.";Blockly.Msg.INFRARED_GETSAMPLE_TOOLTIP_MBOT="Gets the current reading from the light sensor -- if a black line is detected (true/false).";Blockly.Msg.INFRARED_PRESENCE_GETSAMPLE_TOOLTIP="Returns an array of measurements for the presence of a beacon.";Blockly.Msg.INFRARED_TOOLTIP="Represents an infrared sensor.";Blockly.Msg.INLINE_INPUTS="Inline Inputs";Blockly.Msg.INPUT="input";Blockly.Msg.INTERNAL_PORT="internal"; +Blockly.Msg.IRSEEKER_TOOLTIP="Represents a HiTechnic NXT IRSeeker V2 sensor.";Blockly.Msg.I_TIME="integration time";Blockly.Msg.JOYSTICK_GETSAMPLE_TOOLTIP="Gets the current reading of one of the axises of the joystick";Blockly.Msg.KEY_ISPRESSED_TOOLTIP="Is the selected button pressed?";Blockly.Msg.KEY_TOOLTIP="Represents a button.";Blockly.Msg.LANGUAGE="language";Blockly.Msg.LANGUAGE_ARABIC="Arabic";Blockly.Msg.LANGUAGE_BRAZILIAN="Brazilian";Blockly.Msg.LANGUAGE_CHINESE="Chinese"; +Blockly.Msg.LANGUAGE_CZECH="Czech";Blockly.Msg.LANGUAGE_DANISH="Danish";Blockly.Msg.LANGUAGE_DUTCH="Dutch";Blockly.Msg.LANGUAGE_ENGLISH="English";Blockly.Msg.LANGUAGE_FINNISH="Finnish";Blockly.Msg.LANGUAGE_FRENCH="French";Blockly.Msg.LANGUAGE_GERMAN="German";Blockly.Msg.LANGUAGE_GREEK="Greek";Blockly.Msg.LANGUAGE_ITALIAN="Italian";Blockly.Msg.LANGUAGE_JAPANESE="Japanese";Blockly.Msg.LANGUAGE_KOREAN="Korean";Blockly.Msg.LANGUAGE_NORWEGIAN="Norwegian";Blockly.Msg.LANGUAGE_POLISH="Polish"; +Blockly.Msg.LANGUAGE_PORTUGUESE="Portuguese";Blockly.Msg.LANGUAGE_RUSSIAN="Russian";Blockly.Msg.LANGUAGE_SPANISH="Spanish";Blockly.Msg.LANGUAGE_SWEDISH="Swedish";Blockly.Msg.LANGUAGE_TURKISH="Turkish";Blockly.Msg.LCDI2C_TOOLTIP="Represents an LCD 1602 display with a soldered I\u00b2C module.";Blockly.Msg.LCD_TOOLTIP="Represents an LCD display.";Blockly.Msg.LED="LED";Blockly.Msg.LEDBAR="LED Bar";Blockly.Msg.LEDBAR_SET_TOOLTIP="Sets the specified LED [0-9] on the LED Bar to the given brightness [0-8]."; +Blockly.Msg.LEDBAR_TOOLTIP="Represents a Grove LED Bar v2.0 by Seeed.";Blockly.Msg.LED_MATRIX="LED matrix";Blockly.Msg.LED_OFF="turn LED off";Blockly.Msg.LED_OFF_TOOLTIP="Turns the LED off.";Blockly.Msg.LED_ON="turn LED on";Blockly.Msg.LED_ON_TOOLTIP="Turns the LED on and changes the color.";Blockly.Msg.LED_ON_TOOLTIP_CB="Turns the LED on and changes the color. Attention: calli:Bot only supports 7 different colors, the nearest will be chosen.";Blockly.Msg.LED_ON_TOOLTIP_EDISON="Turns the LED on."; +Blockly.Msg.LED_ON_WHITE_TOOLTIP="Turns the LED on. Watch out, it's very bright!";Blockly.Msg.LED_TOOLTIP="Represents an LED.";Blockly.Msg.LEFT="left";Blockly.Msg.LEFT_FRONT_RGBLED="RGB LED left front";Blockly.Msg.LEFT_INFRARED_SENSOR="infraredsensor left";Blockly.Msg.LEFT_LED="LED left";Blockly.Msg.LEFT_MOTOR="motor left";Blockly.Msg.LEFT_REAR_RGBLED="RGB LED left rear";Blockly.Msg.LIGHTVEML_TOOLTIP="Represents a visible/UV light sensor.";Blockly.Msg.LIGHT_ARDU_TOOLTIP="Represents 8 light sensors."; +Blockly.Msg.LIGHT_GETSAMPLE_TOOLTIP="Gets the current reading from the light sensor in percent.";Blockly.Msg.LIGHT_LDR="Light (LDR)";Blockly.Msg.LIGHT_TOOLTIP="Represents a light sensor.";Blockly.Msg.LISTS_CREATE_EMPTY_HELPURL="https://github.com/google/blockly/wiki/Lists#create-empty-list";Blockly.Msg.LISTS_CREATE_EMPTY_TITLE="create empty list";Blockly.Msg.LISTS_CREATE_EMPTY_TOOLTIP="Returns a list, of length 0, containing no data records";Blockly.Msg.LISTS_CREATE_TITLE="list"; +Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TITLE_ADD="list";Blockly.Msg.LISTS_CREATE_WITH_CONTAINER_TOOLTIP="Add, remove, or reorder sections to reconfigure this list block.";Blockly.Msg.LISTS_CREATE_WITH_HELPURL="https://github.com/google/blockly/wiki/Lists#create-list-with";Blockly.Msg.LISTS_CREATE_WITH_INPUT_WITH="create list with";Blockly.Msg.LISTS_CREATE_WITH_ITEM_TOOLTIP="Add an item to the list.";Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP="Create a list with any number of items."; +Blockly.Msg.LISTS_GET_INDEX_FIRST="first";Blockly.Msg.LISTS_GET_INDEX_FROM_END="# from end";Blockly.Msg.LISTS_GET_INDEX_FROM_START="#";Blockly.Msg.LISTS_GET_INDEX_GET="get";Blockly.Msg.LISTS_GET_INDEX_GET_REMOVE="get and remove";Blockly.Msg.LISTS_GET_INDEX_LAST="last";Blockly.Msg.LISTS_GET_INDEX_RANDOM="random";Blockly.Msg.LISTS_GET_INDEX_REMOVE="remove";Blockly.Msg.LISTS_GET_INDEX_TAIL="";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST="Returns the first item in a list."; +Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM_END="Returns the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM_START="Returns the item at the specified position in a list. #1 is the first item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST="Returns the last item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_RANDOM="Returns a random item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FIRST="Removes and returns the first item in a list."; +Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_END="Removes and returns the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_FROM_START="Removes and returns the item at the specified position in a list. #1 is the first item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_LAST="Removes and returns the last item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_REMOVE_RANDOM="Removes and returns a random item in a list."; +Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FIRST="Removes the first item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_END="Removes the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_FROM_START="Removes the item at the specified position in a list. #1 is the first item.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_LAST="Removes the last item in a list.";Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_REMOVE_RANDOM="Removes a random item in a list."; +Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END="to # from end";Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START="to #";Blockly.Msg.LISTS_GET_SUBLIST_END_LAST="to last";Blockly.Msg.LISTS_GET_SUBLIST_HELPURL="https://github.com/google/blockly/wiki/Lists#getting-a-sublist";Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST="get sub-list from first";Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END="get sub-list from # from end";Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START="get sub-list from #"; +Blockly.Msg.LISTS_GET_SUBLIST_TAIL="";Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP="Creates a copy of the specified portion of a list.";Blockly.Msg.LISTS_INDEX_OF_FIRST="find first occurrence of item";Blockly.Msg.LISTS_INDEX_OF_HELPURL="https://github.com/google/blockly/wiki/Lists#getting-items-from-a-list";Blockly.Msg.LISTS_INDEX_OF_LAST="find last occurrence of item";Blockly.Msg.LISTS_INDEX_OF_TOOLTIP="Returns the index of the first/last occurrence of the item in the list. Returns -1 if item is not found."; +Blockly.Msg.LISTS_INLIST="in list";Blockly.Msg.LISTS_ISEMPTY_HELPURL="https://github.com/google/blockly/wiki/Lists#is-empty";Blockly.Msg.LISTS_ISEMPTY_TITLE="%1 is empty";Blockly.Msg.LISTS_ISEMPTY_TOOLTIP="Returns true if the list is empty.";Blockly.Msg.LISTS_LENGTH_HELPURL="https://github.com/google/blockly/wiki/Lists#length-of";Blockly.Msg.LISTS_LENGTH_TITLE="length of %1";Blockly.Msg.LISTS_LENGTH_TOOLTIP="Returns the length of a list.";Blockly.Msg.LISTS_REPEAT_HELPURL="https://github.com/google/blockly/wiki/Lists#create-list-with"; +Blockly.Msg.LISTS_REPEAT_TITLE="create list with item %1 repeated %2 times";Blockly.Msg.LISTS_REPEAT_TOOLTIP="Creates a list consisting of the given value repeated the specified number of times.";Blockly.Msg.LISTS_SET_INDEX_HELPURL="https://github.com/google/blockly/wiki/Lists#in-list--set";Blockly.Msg.LISTS_SET_INDEX_INPUT_TO="as";Blockly.Msg.LISTS_SET_INDEX_INSERT="insert at";Blockly.Msg.LISTS_SET_INDEX_SET="set";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FIRST="Inserts the item at the start of a list."; +Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_END="Inserts the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_FROM_START="Inserts the item at the specified position in a list. #1 is the first item.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_LAST="Append the item to the end of a list.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM="Inserts the item randomly in a list.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FIRST="Sets the first item in a list."; +Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM_END="Sets the item at the specified position in a list. #1 is the last item.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_FROM_START="Sets the item at the specified position in a list. #1 is the first item.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_LAST="Sets the last item in a list.";Blockly.Msg.LISTS_SET_INDEX_TOOLTIP_SET_RANDOM="Sets a random item in a list.";Blockly.Msg.LISTS_SORT_HELPURL="https://github.com/google/blockly/wiki/Lists#sorting-a-list"; +Blockly.Msg.LISTS_SORT_ORDER_ASCENDING="ascending";Blockly.Msg.LISTS_SORT_ORDER_DESCENDING="descending";Blockly.Msg.LISTS_SORT_TITLE="sort %1 %2 %3";Blockly.Msg.LISTS_SORT_TOOLTIP="Sort a copy of a list.";Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE="alphabetic, ignore case";Blockly.Msg.LISTS_SORT_TYPE_NUMERIC="numeric";Blockly.Msg.LISTS_SORT_TYPE_TEXT="alphabetic";Blockly.Msg.LISTS_SPLIT_HELPURL="https://github.com/google/blockly/wiki/Lists#splitting-strings-and-joining-lists"; +Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT="make list from text";Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST="make text from list";Blockly.Msg.LISTS_SPLIT_TOOLTIP_JOIN="Join a list of texts into one text, separated by a delimiter.";Blockly.Msg.LISTS_SPLIT_TOOLTIP_SPLIT="Split text into a list of texts, breaking at each delimiter.";Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER="with delimiter";Blockly.Msg.LIST_BACK_TOOLTIP="Back to previous view.";Blockly.Msg.LOGIC_BOOLEAN_FALSE="false"; +Blockly.Msg.LOGIC_BOOLEAN_HELPURL="https://github.com/google/blockly/wiki/Logic#values";Blockly.Msg.LOGIC_BOOLEAN_TOOLTIP="Returns either true or false.";Blockly.Msg.LOGIC_BOOLEAN_TRUE="true";Blockly.Msg.LOGIC_COMPARE_HELPURL="https://en.wikipedia.org/wiki/Inequality_(mathematics)";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_EQ="Return true if both inputs equal each other.";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GT="Return true if the first input is greater than the second input."; +Blockly.Msg.LOGIC_COMPARE_TOOLTIP_GTE="Return true if the first input is greater than or equal to the second input.";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LT="Return true if the first input is smaller than the second input.";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_LTE="Return true if the first input is smaller than or equal to the second input.";Blockly.Msg.LOGIC_COMPARE_TOOLTIP_NEQ="Return true if both inputs are not equal to each other.";Blockly.Msg.LOGIC_NEGATE_HELPURL="https://github.com/google/blockly/wiki/Logic#not"; +Blockly.Msg.LOGIC_NEGATE_TITLE="not %1";Blockly.Msg.LOGIC_NEGATE_TOOLTIP="Returns true if the input is false. Returns false if the input is true.";Blockly.Msg.LOGIC_NULL="null";Blockly.Msg.LOGIC_NULL_HELPURL="https://en.wikipedia.org/wiki/Nullable_type";Blockly.Msg.LOGIC_NULL_TOOLTIP="Returns null.";Blockly.Msg.LOGIC_OPERATION_AND="and";Blockly.Msg.LOGIC_OPERATION_HELPURL="https://github.com/google/blockly/wiki/Logic#logical-operations";Blockly.Msg.LOGIC_OPERATION_OR="or"; +Blockly.Msg.LOGIC_OPERATION_TOOLTIP_AND="Return true if both inputs are true.";Blockly.Msg.LOGIC_OPERATION_TOOLTIP_OR="Return true if at least one of the inputs is true.";Blockly.Msg.LOGIC_TERNARY_CONDITION="test";Blockly.Msg.LOGIC_TERNARY_HELPURL="https://en.wikipedia.org/wiki/%3F:";Blockly.Msg.LOGIC_TERNARY_IF_FALSE="if false";Blockly.Msg.LOGIC_TERNARY_IF_TRUE="if true";Blockly.Msg.LOGIC_TERNARY_TOOLTIP="Check the condition in 'test'. If the condition is true, returns the 'if true' value; otherwise returns the 'if false' value."; Blockly.Msg.LOOP="repeat until";Blockly.Msg.LOOPFOREVER_TOOLTIP="Repeats indefinitely an action.";Blockly.Msg.LOOP_FOREVER="repeat indefinitely";Blockly.Msg.MATH_ADDITION_SYMBOL="+";Blockly.Msg.MATH_ARITHMETIC_HELPURL="https://en.wikipedia.org/wiki/Arithmetic";Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_ADD="Return the sum of the two numbers.";Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_DIVIDE="Return the quotient of the two numbers.";Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MINUS="Return the difference of the two numbers."; Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_MULTIPLY="Return the product of the two numbers.";Blockly.Msg.MATH_ARITHMETIC_TOOLTIP_POWER="Return the first number raised to the power of the second number.";Blockly.Msg.MATH_CAST_TOCHAR="cast %1 to Char";Blockly.Msg.MATH_CAST_TOCHAR_TOOLTIP="Convert this number into a single ASCII character";Blockly.Msg.MATH_CAST_TOSTRING="cast %1 to String";Blockly.Msg.MATH_CAST_TOSTRING_TOOLTIP="Convert this number into a string.";Blockly.Msg.MATH_CHANGE_HELPURL="https://en.wikipedia.org/wiki/Programming_idiom#Incrementing_a_counter"; Blockly.Msg.MATH_CHANGE_TITLE="change %1 by %2";Blockly.Msg.MATH_CHANGE_TOOLTIP="Add a number to variable '%1'.";Blockly.Msg.MATH_CONSTANT_HELPURL="https://en.wikipedia.org/wiki/Mathematical_constant";Blockly.Msg.MATH_CONSTANT_TOOLTIP="Return one of the common constants: \u03c0 (3.141\u2026), e (2.718\u2026), \u03c6 (1.618\u2026), sqrt(2) (1.414\u2026), sqrt(\u00bd) (0.707\u2026), or \u221e (infinity).";Blockly.Msg.MATH_CONSTRAIN_HELPURL="https://en.wikipedia.org/wiki/Clamping_%28graphics%29"; @@ -1822,9 +1824,9 @@ Blockly.Msg.ORA_USER_DELETE_SUCCESS="Your account \u00bb$\u00ab was successfully Blockly.Msg.ORA_USER_GET_ALL_SUCCESS="Users loaded";Blockly.Msg.ORA_USER_GET_ONE_ERROR_ID_OR_PASSWORD_WRONG="You have entered wrong user name or password. Please try again!";Blockly.Msg.ORA_USER_GET_ONE_SUCCESS="Login successful";Blockly.Msg.ORA_USER_GROUP_SAVE_AS_ERROR_USER_GROUP_EXISTS="This user already belongs to the group";Blockly.Msg.ORA_USER_PASSWORD_RECOVERY_EXPIRED_URL="The link is not valid anymore. Please ask for resetting your password again, if you still cannot remember it!"; Blockly.Msg.ORA_USER_PASSWORD_RECOVERY_SENT_MAIL_FAIL="Sorry, we cannot send a mail to you, please contact \u00bbsupport-o-r@iais.fraunhofer.de\u00ab";Blockly.Msg.ORA_USER_PASSWORD_RECOVERY_SENT_MAIL_SUCCESS="We send a mail to you, please check your mailbox!";Blockly.Msg.ORA_USER_TO_ADD_NOT_FOUND="User was not found";Blockly.Msg.ORA_USER_TO_SHARE_DOES_NOT_EXIST="The user with which you would like to share the program does not exist.
Try it again!"; Blockly.Msg.ORA_USER_TO_SHARE_SAME_AS_LOGIN_USER="You cannot share any programs with yourself.";Blockly.Msg.ORA_USER_UPDATE_ERROR_NOT_SAVED_TO_DB="The password could not be saved to the database. Are you sure that you entered the old password correctly?";Blockly.Msg.ORA_USER_UPDATE_SUCCESS="Your changes have been successfully saved!";Blockly.Msg.ORDINAL_NUMBER_SUFFIX="";Blockly.Msg.OUTPUT="output";Blockly.Msg.PARTICLE_TOOLTIP="Represents SDS011 particle sensor.";Blockly.Msg.PASSWORD="Password"; -Blockly.Msg.PIN_ISTOUCHED_TOOLTIP="Is the selected pin touched?";Blockly.Msg.PIN_PULL="pull";Blockly.Msg.PIN_PULL_DOWN="down";Blockly.Msg.PIN_PULL_NONE="none";Blockly.Msg.PIN_PULL_UP="up";Blockly.Msg.PIN_SET_PULL_BLOCK_WARNING="This block got replaced. Please use the 'Sensor digital'-block from the robotconfiguration";Blockly.Msg.PIN_SET_PULL_TOOLTIP="Sets the pull of the chosen pin";Blockly.Msg.PIN_WRITE="write";Blockly.Msg.PITCH="pitch";Blockly.Msg.PLAY="play";Blockly.Msg.PLAY_DURATION="duration ms"; -Blockly.Msg.PLAY_EIGHTH="eighth note";Blockly.Msg.PLAY_FILE="file";Blockly.Msg.PLAY_FILE_TOOLTIP="Plays a sound file.";Blockly.Msg.PLAY_FREQUENZ="frequency Hz";Blockly.Msg.PLAY_GETVOLUME_TOOLTIP="Gets current volume.";Blockly.Msg.PLAY_HALF="half note";Blockly.Msg.PLAY_NOTE="note";Blockly.Msg.PLAY_NOTE_TOOLTIP="Plays a music note";Blockly.Msg.PLAY_QUARTER="quarter note";Blockly.Msg.PLAY_SETVOLUME_TOOLTIP="Sets volume.";Blockly.Msg.PLAY_SIXTEENTH="sixteenth note";Blockly.Msg.PLAY_TONE="tone"; -Blockly.Msg.PLAY_TONE_TOOLTIP="Plays a tone. Use frequency and duration to determin the tone pitch and duration.";Blockly.Msg.PLAY_TOOLTIP="Represents a buzzer.";Blockly.Msg.PLAY_VOLUME="volume";Blockly.Msg.PLAY_WHOLE="whole note";Blockly.Msg.POPUP_ABOUT_JOIN="I want to help";Blockly.Msg.POPUP_ABOUT_TEXT="The Open Roberta Lab is a cloud-based integrated programming environment that enables children and adolescents to program easily different robot/microcontroller systems. This platform is completely open source so taking part is desirable! Both the software and the open source developer tools are available via Fraunhofer servers."; +Blockly.Msg.PERCENT="%";Blockly.Msg.PIN_ISTOUCHED_TOOLTIP="Is the selected pin touched?";Blockly.Msg.PIN_PULL="pull";Blockly.Msg.PIN_PULL_DOWN="down";Blockly.Msg.PIN_PULL_NONE="none";Blockly.Msg.PIN_PULL_UP="up";Blockly.Msg.PIN_SET_PULL_BLOCK_WARNING="This block got replaced. Please use the 'Sensor digital'-block from the robotconfiguration";Blockly.Msg.PIN_SET_PULL_TOOLTIP="Sets the pull of the chosen pin";Blockly.Msg.PIN_WRITE="write";Blockly.Msg.PITCH="pitch";Blockly.Msg.PLAY="play"; +Blockly.Msg.PLAY_DURATION="duration ms";Blockly.Msg.PLAY_EIGHTH="eighth note";Blockly.Msg.PLAY_FILE="file";Blockly.Msg.PLAY_FILE_TOOLTIP="Plays a sound file.";Blockly.Msg.PLAY_FREQUENZ="frequency Hz";Blockly.Msg.PLAY_GETVOLUME_TOOLTIP="Gets current volume.";Blockly.Msg.PLAY_HALF="half note";Blockly.Msg.PLAY_NOTE="note";Blockly.Msg.PLAY_NOTE_TOOLTIP="Plays a music note";Blockly.Msg.PLAY_QUARTER="quarter note";Blockly.Msg.PLAY_SETVOLUME_TOOLTIP="Sets volume.";Blockly.Msg.PLAY_SIXTEENTH="sixteenth note"; +Blockly.Msg.PLAY_TONE="tone";Blockly.Msg.PLAY_TONE_TOOLTIP="Plays a tone. Use frequency and duration to determin the tone pitch and duration.";Blockly.Msg.PLAY_TOOLTIP="Represents a buzzer.";Blockly.Msg.PLAY_VOLUME="volume";Blockly.Msg.PLAY_WHOLE="whole note";Blockly.Msg.POPUP_ABOUT_JOIN="I want to help";Blockly.Msg.POPUP_ABOUT_TEXT="The Open Roberta Lab is a cloud-based integrated programming environment that enables children and adolescents to program easily different robot/microcontroller systems. This platform is completely open source so taking part is desirable! Both the software and the open source developer tools are available via Fraunhofer servers."; Blockly.Msg.POPUP_ABOUT_TEXT_DEV="The Open Roberta Lab is an open-source programming platform developed by Fraunhofer IAIS within the initiative \u00bbRoberta \u2013 Learning with Robots\u00ab";Blockly.Msg.POPUP_ABOUT_TEXT_GOOG="Open Roberta was initiated in collaboration with Google Germany to reduce the hurdles for students, teachers and schools programming educational robots.";Blockly.Msg.POPUP_AGE="Age"; Blockly.Msg.POPUP_ATTENTION="Attention";Blockly.Msg.POPUP_BACKGROUND_REPLACE="A program with the same name already exists.
Would you like to replace it?";Blockly.Msg.POPUP_BACKGROUND_REPLACE_CONFIGURATION="A configuration with the same name already exists.
Would you like to replace it?";Blockly.Msg.POPUP_BACKGROUND_STORAGE="The Open Roberta Lab can automatically load your simulation background on your next visits. For this purpose, we will save data in the Local Storage on your computer. More information in our privacy policy."; Blockly.Msg.POPUP_BEFOREUNLOAD="You have unsaved changes in your program or configuration. Sign in and save your program or configuration.";Blockly.Msg.POPUP_BEFOREUNLOAD_LOGGEDIN="You have unsaved changes in your program or configuration.";Blockly.Msg.POPUP_CANCEL="Cancel";Blockly.Msg.POPUP_CHANGE_PASSWORD="change password ...";Blockly.Msg.POPUP_CONFIRM_CONTINUE="

Press \u00bbOK\u00ab to discard your work. Press \u00bbCancel\u00ab to stay here and save your work first."; @@ -1915,8 +1917,8 @@ Blockly.Msg.WAIT_FOR_TOOLTIP="Waits for sensor values.";Blockly.Msg.WAIT_OR="or Blockly.Msg.XTICK="distance between X ticks";Blockly.Msg.Y="y";Blockly.Msg.YAW="yaw";Blockly.Msg.YEND="end of Y axis";Blockly.Msg.YES="yes";Blockly.Msg.YLABEL="Y axis label";Blockly.Msg.YOUNGER_THEN_14="I am younger than 16!";Blockly.Msg.YSTART="start of Y axis";Blockly.Msg.YTICK="distance between Y ticks";Blockly.Msg.Z="z";Blockly.Msg.PROCEDURES_DEFRETURN_TITLE=Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE;Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST=Blockly.Msg.LISTS_INLIST; Blockly.Msg.ACTION_LEDBAR=Blockly.Msg.LEDBAR;Blockly.Msg.KEY_GETSAMPLE_TOOLTIP=Blockly.Msg.KEY_ISPRESSED_TOOLTIP;Blockly.Msg.SENSOR_INFRARED_GETSAMPLE_TOOLTIP=Blockly.Msg.INFRARED_GETSAMPLE_TOOLTIP;Blockly.Msg.SENSOR_PINTOUCH_PRESSED_GETSAMPLE_TOOLTIP=Blockly.Msg.PIN_ISTOUCHED_TOOLTIP;Blockly.Msg.SENSOR_COLOUR_GETSAMPLE_TOOLTIP=Blockly.Msg.COLOUR_GETSAMPLE_TOOLTIP;Blockly.Msg.SENSOR_ACCELEROMETER_GETSAMPLE_TOOLTIP=Blockly.Msg.SENSOR_ACCELEROMETER_VALUE_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_HUMIDITY_TEMPERATURE_GETSAMPLE_TOOLTIP=Blockly.Msg.TEMPERATURE_GETSAMPLE_TOOLTIP;Blockly.Msg.MODE_DOWN=Blockly.Msg.SENSOR_GESTURE_DOWN;Blockly.Msg.SENSOR_COLOUR_RGB_GETSAMPLE_TOOLTIP=Blockly.Msg.COLOUR_RGB_GETSAMPLE_TOOLTIP;Blockly.Msg.SENSOR_ULTRASONIC_GETSAMPLE_TOOLTIP=Blockly.Msg.ULTRASONIC_GETSAMPLE_TOOLTIP;Blockly.Msg.MODE_UP=Blockly.Msg.SENSOR_GESTURE_UP;Blockly.Msg.LISTS_CREATE_WITH_ITEM_TITLE=Blockly.Msg.VARIABLES_DEFAULT_NAME; -Blockly.Msg.SENSOR_HTCOLOUR_COLOUR_GETSAMPLE_TOOLTIP=Blockly.Msg.SENSOR_COLOUR_COLOUR_GETSAMPLE_TOOLTIP;Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP=Blockly.Msg.ENCODER_GETSAMPLE_TOOLTIP;Blockly.Msg.MODE_FACE_UP=Blockly.Msg.SENSOR_GESTURE_FACE_UP;Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP=Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP;Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP=Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP;Blockly.Msg.MATH_CHANGE_TITLE_ITEM=Blockly.Msg.VARIABLES_DEFAULT_NAME; -Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP=Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP;Blockly.Msg.CONTROLS_FOR_INPUT_DO=Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;Blockly.Msg.MODE_FACE_DOWN=Blockly.Msg.SENSOR_GESTURE_FACE_DOWN;Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE=Blockly.Msg.CONTROLS_IF_MSG_ELSE;Blockly.Msg.SENSOR_COLOUR_COLOUR_GETSAMPLE_TOOLTIP=Blockly.Msg.COLOUR_COLOUR_GETSAMPLE_TOOLTIP;Blockly.Msg.HTCOLOUR_GETSAMPLE_TOOLTIP=Blockly.Msg.COLOUR_GETSAMPLE_TOOLTIP; +Blockly.Msg.SENSOR_HTCOLOUR_COLOUR_GETSAMPLE_TOOLTIP=Blockly.Msg.SENSOR_COLOUR_COLOUR_GETSAMPLE_TOOLTIP;Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP=Blockly.Msg.ENCODER_GETSAMPLE_TOOLTIP;Blockly.Msg.MODE_FACE_UP=Blockly.Msg.SENSOR_GESTURE_FACE_UP;Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP=Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP;Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP=Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP;Blockly.Msg.ACTION_DCMOTOR=Blockly.Msg.DCMOTOR_BOARD; +Blockly.Msg.MATH_CHANGE_TITLE_ITEM=Blockly.Msg.VARIABLES_DEFAULT_NAME;Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP=Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP;Blockly.Msg.CONTROLS_FOR_INPUT_DO=Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;Blockly.Msg.MODE_FACE_DOWN=Blockly.Msg.SENSOR_GESTURE_FACE_DOWN;Blockly.Msg.CONTROLS_IF_ELSE_TITLE_ELSE=Blockly.Msg.CONTROLS_IF_MSG_ELSE;Blockly.Msg.SENSOR_COLOUR_COLOUR_GETSAMPLE_TOOLTIP=Blockly.Msg.COLOUR_COLOUR_GETSAMPLE_TOOLTIP;Blockly.Msg.HTCOLOUR_GETSAMPLE_TOOLTIP=Blockly.Msg.COLOUR_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_SOUND_GETSAMPLE_TOOLTIP_CALLIOPE=Blockly.Msg.MICROPHONE_GETSAMPLE_TOOLTIP;Blockly.Msg.MODE_FREEFALL=Blockly.Msg.SENSOR_GESTURE_FREEFALL;Blockly.Msg.PROCEDURES_DEFRETURN_DO=Blockly.Msg.PROCEDURES_DEFNORETURN_DO;Blockly.Msg.LISTS_GET_INDEX_HELPURL=Blockly.Msg.LISTS_INDEX_OF_HELPURL;Blockly.Msg.SENSOR_TIMER_GETSAMPLE_TOOLTIP=Blockly.Msg.TIMER_GETSAMPLE_TOOLTIP;Blockly.Msg.LISTS_INDEX_OF_INPUT_IN_LIST=Blockly.Msg.LISTS_INLIST; Blockly.Msg.SENSOR_ACCELEROMETER_VALUE_GETSAMPLE_TOOLTIP=Blockly.Msg.ACCELEROMETER_ROTATION_TOOLTIP;Blockly.Msg.ORA_ROBOT_PUSH_RUN=Blockly.Msg.MESSAGE_EDIT_START;Blockly.Msg.LISTS_SET_INDEX_INPUT_IN_LIST=Blockly.Msg.LISTS_INLIST;Blockly.Msg.PROCEDURES_DEFRETURN_COMMENT=Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT;Blockly.Msg.TEXT_CREATE_JOIN_ITEM_TITLE_ITEM=Blockly.Msg.VARIABLES_DEFAULT_NAME;Blockly.Msg.SENSOR_HUMIDITY_HUMIDITY_GETSAMPLE_TOOLTIP=Blockly.Msg.SENSOR_HUMIDITY_GETSAMPLE_TOOLTIP; Blockly.Msg.MODE_SHAKE=Blockly.Msg.SENSOR_GESTURE_SHAKE;Blockly.Msg.SENSOR_TEMPERATURE_TEMPERATURE_GETSAMPLE_TOOLTIP=Blockly.Msg.TEMPERATURE_GETSAMPLE_TOOLTIP;Blockly.Msg.CONTROLS_IF_MSG_THEN=Blockly.Msg.CONTROLS_REPEAT_INPUT_DO;Blockly.Msg.PROCEDURES_DEFRETURN_PROCEDURE=Blockly.Msg.PROCEDURES_DEFNORETURN_PROCEDURE;Blockly.Msg.SENSOR_GYRO_GETSAMPLE_TOOLTIP=Blockly.Msg.GYRO_GETSAMPLE_TOOLTIP;Blockly.Msg.SENSOR_BATTERY_GETSAMPLE_TOOLTIP=Blockly.Msg.BATTERY_GETSAMPLE_TOOLTIP; @@ -2380,7 +2382,8 @@ Blockly.Blocks.mbedActions_motionkit_single_set={init:function(){this.setColour( this.setTooltip(Blockly.Msg.MOTIONKIT_SINGLE_TOOLTIP)}}; Blockly.Blocks.mbedActions_motionkit_dual_set={init:function(){this.setColour(Blockly.CAT_ACTION_RGB);var a=[[Blockly.Msg.MOTOR_FOREWARD,"FOREWARD"],[Blockly.Msg.MOTOR_BACKWARD,"BACKWARD"],[Blockly.Msg.OFF,"OFF"]],b=new Blockly.FieldDropdown(a);a=new Blockly.FieldDropdown(a);this.appendDummyInput().appendField(Blockly.Msg.MOTIONKIT).appendField(Blockly.Msg.LEFT).appendField(b,"DIRECTION_LEFT");this.appendDummyInput().setAlign(Blockly.ALIGN_RIGHT).appendField(Blockly.Msg.RIGHT).appendField(a,"DIRECTION_RIGHT"); this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.Msg.MOTIONKIT_DUAL_TOOLTIP)}}; -Blockly.Blocks.mbedActions_dcmotor_set={init:function(){this.setColour(Blockly.CAT_ACTION_RGB);var a=new Blockly.FieldDropdown([[Blockly.Msg.DCMOTOR_M1,"1"],[Blockly.Msg.DCMOTOR_M2,"2"],[Blockly.Msg.DCMOTOR_M3,"3"],[Blockly.Msg.DCMOTOR_M4,"4"]]);this.appendValueInput("POWER").appendField(Blockly.Msg.MOTOR).appendField(a,"PORT").appendField(Blockly.Msg.ON).appendField(Blockly.Msg.MOTOR_SPEED).setCheck("Number");this.setPreviousStatement(!0);this.setNextStatement(!0)}};Blockly.Blocks.mbedBrick={}; +Blockly.Blocks.mbedActions_dcmotor_set={init:function(){this.setColour(Blockly.CAT_ACTION_RGB);this.dropDownPorts=getConfigPorts("dcmotor");this.dependConfig={type:"dcmotor",dropDown:this.dropDownPorts};this.motorDirection=new Blockly.FieldDropdown([[Blockly.Msg.DCMOTOR_BACKWARD,"Backward"],[Blockly.Msg.DCMOTOR_STOP,"Stop"],[Blockly.Msg.DCMOTOR_FORWARD,"Forward"],[Blockly.Msg.DCMOTOR_NUMERIC,"Numeric"]]);this.appendValueInput("MOTOR").appendField(Blockly.Msg.DCMOTOR_BOARD).appendField(this.dropDownPorts, +"ACTORPORT").setAlign(Blockly.ALIGN_RIGHT).appendField(Blockly.Msg.DCMOTOR_MOTOR).setCheck("Number");this.appendValueInput("SPEED").setAlign(Blockly.ALIGN_RIGHT).appendField(Blockly.Msg.DCMOTOR_SPEED).appendField(this.motorDirection,"DIRECTION").appendField(Blockly.Msg.PERCENT).setCheck("Number");this.setPreviousStatement(!0);this.setNextStatement(!0);this.setTooltip(Blockly.Msg.DCMOTOR_TOOLTIP)}};Blockly.Blocks.mbedBrick={}; Blockly.Blocks["mbedBrick_Calliope-Brick"]={init:function(){this.setColour("#BBBBBB");this.setInputsInline(!1);this.appendDummyInput().appendField(new Blockly.FieldLabel("Calliope","brick_label"));this.appendValueInput("PP").appendField("+").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port");this.appendValueInput("PM").appendField("-").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port");this.appendValueInput("P0").appendField("0").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port");this.appendValueInput("P1").appendField("1").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port"); this.appendValueInput("P2").appendField("2").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port");this.appendValueInput("P3").appendField("3").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port");this.setTooltip(Blockly.Msg.CALLIOPEBRICK_TOOLTIP)}}; Blockly.Blocks["mbedBrick_microbit-Brick"]={init:function(){this.setColour("#BBBBBB");this.setInputsInline(!1);this.appendDummyInput().appendField(new Blockly.FieldLabel("micro:bit","brick_label"));this.appendValueInput("PP").appendField("+").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port");this.appendValueInput("PM").appendField("-").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port");this.appendValueInput("P0").appendField("0").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port");this.appendValueInput("P1").appendField("1").setAlign(Blockly.ALIGN_RIGHT).setCheck("Port"); @@ -2569,7 +2572,7 @@ confBlocks.wireless.sensebox={title:"WIRELESS",dropdowns:[["SOCKET",[["XBEE1","X confBlocks.particle.sensebox={title:"PARTICLE",ports:[["Serial","SERIAL"]],pins:function(a){return[["Serial1","Serial1"],["Serial2","Serial2"]]},sensor:!0};confBlocks.gps={};confBlocks.gps.sensebox={title:"GPS",ports:[["I2C","I2C"]],pins:function(){return[["I2C","I2C"]]},sensor:!0};confBlocks.fourdigitdisplay={};confBlocks.fourdigitdisplay.calliope={title:"FOURDIGITDISPLAY",ports:[["pin","PIN1"]],pins:function(a){return[["A1","5"]]},sensor:!1};confBlocks.ledbar={}; confBlocks.ledbar.calliope={title:"LEDBAR",ports:[["pin","PIN1"]],pins:function(a){return[["A1","5"]]},sensor:!1};confBlocks.callibot={}; confBlocks.callibot.calliope={title:"CALLIBOT",super:!0,subcomponents:[["LEFT_MOTOR","MOTOR_L"],["RIGHT_MOTOR","MOTOR_R"],["LEFT_FRONT_RGBLED","RGBLED_LF"],["RIGHT_FRONT_RGBLED","RGBLED_RF"],["LEFT_REAR_RGBLED","RGBLED_LR"],["RIGHT_REAR_RGBLED","RGBLED_RR"],["ALL_RGBLED","RGBLED_A"],["LEFT_LED","LED_L"],["RIGHT_LED","LED_R"],["BOTH_LED","LED_B"],["LEFT_INFRARED_SENSOR","INFRARED_L"],["RIGHT_INFRARED_SENSOR","INFRARED_R"],["SENSOR_ULTRASONIC","ULTRASONIC"],["SERVO_S1","SERVO_S1"],["SERVO_S2","SERVO_S2"]]}; -confBlocks.environmental={};confBlocks.environmental.sensebox={title:"ENVIRONMENTAL",ports:[["I2C","I2C"]],pins:function(a){return[["I2C","I2C"]]},sensor:!0};for(var confBlock in confBlocks){var confObj=confBlocks[confBlock];confObj.hasOwnProperty("arduino")&&(confObj.nano33ble=confObj.arduino)} +confBlocks.environmental={};confBlocks.environmental.sensebox={title:"ENVIRONMENTAL",ports:[["I2C","I2C"]],pins:function(a){return[["I2C","I2C"]]},sensor:!0};confBlocks.dcmotor={};confBlocks.dcmotor.calliope={title:"DCMOTOR",ports:[["pin","PLUG"]],pins:function(a){return[["A0","4"]]},inputs:[["I2CADDRESS","0x60"]],sensor:!1};for(var confBlock in confBlocks){var confObj=confBlocks[confBlock];confObj.hasOwnProperty("arduino")&&(confObj.nano33ble=confObj.arduino)} function initConfBlocks(){for(var a in confBlocks)confBlocks.hasOwnProperty(a)&&(Blockly.Blocks["robConf_"+a]={confBlock:a,init:function(){Blockly.Blocks.robConf_generic.init.call(this,confBlocks[this.confBlock][this.workspace.device])}})}initConfBlocks();Blockly.Blocks.robActions={}; Blockly.Blocks.robActions_setLanguage={init:function(){this.setColour(Blockly.CAT_ACTION_RGB);var a=new Blockly.FieldDropdown([[Blockly.Msg.LANGUAGE_GERMAN,"GERMAN"],[Blockly.Msg.LANGUAGE_ENGLISH,"ENGLISH"],[Blockly.Msg.LANGUAGE_FRENCH,"FRENCH"],[Blockly.Msg.LANGUAGE_SPANISH,"SPANISH"],[Blockly.Msg.LANGUAGE_ITALIAN,"ITALIAN"],[Blockly.Msg.LANGUAGE_DUTCH,"DUTCH"],[Blockly.Msg.LANGUAGE_FINNISH,"FINNISH"],[Blockly.Msg.LANGUAGE_POLISH,"POLISH"],[Blockly.Msg.LANGUAGE_RUSSIAN,"RUSSIAN"],[Blockly.Msg.LANGUAGE_TURKISH, "TURKISH"],[Blockly.Msg.LANGUAGE_CZECH,"CZECH"],[Blockly.Msg.LANGUAGE_PORTUGUESE,"PORTUGUESE"],[Blockly.Msg.LANGUAGE_DANISH,"DANISH"]]);"nao"===this.workspace.device?a=new Blockly.FieldDropdown([[Blockly.Msg.LANGUAGE_GERMAN,"GERMAN"],[Blockly.Msg.LANGUAGE_ENGLISH,"ENGLISH"],[Blockly.Msg.LANGUAGE_FRENCH,"FRENCH"],[Blockly.Msg.LANGUAGE_JAPANESE,"JAPANESE"],[Blockly.Msg.LANGUAGE_CHINESE,"CHINESE"],[Blockly.Msg.LANGUAGE_SPANISH,"SPANISH"],[Blockly.Msg.LANGUAGE_KOREAN,"KOREAN"],[Blockly.Msg.LANGUAGE_ITALIAN, diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ar.js b/OpenRobertaServer/staticResources/blockly/msg/js/ar.js index a84e286cc6..8edc8f8617 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ar.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ar.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "حذف كل مناعات %1؟"; Blockly.Msg.DELETE_BLOCK = "إحذف القطعة"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/az.js b/OpenRobertaServer/staticResources/blockly/msg/js/az.js index dc9b521e8b..9247be327c 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/az.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/az.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Bütün %1 blok silinsin?"; Blockly.Msg.DELETE_BLOCK = "Bloku sil"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ba.js b/OpenRobertaServer/staticResources/blockly/msg/js/ba.js index 38862c1a84..c77d9fabbc 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ba.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ba.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Бөтә %1 блоктарҙы юйырғамы?"; Blockly.Msg.DELETE_BLOCK = "Блокты юйҙырырға"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/bcc.js b/OpenRobertaServer/staticResources/blockly/msg/js/bcc.js index defaea209f..a9a7cf6d8e 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/bcc.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/bcc.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "حذف بلوک"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/be-tarask.js b/OpenRobertaServer/staticResources/blockly/msg/js/be-tarask.js index e5e28baf9a..41c12ec9a7 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/be-tarask.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/be-tarask.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Выдаліць усе блёкі %1?"; Blockly.Msg.DELETE_BLOCK = "Выдаліць блёк"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/be.js b/OpenRobertaServer/staticResources/blockly/msg/js/be.js index c4a7437ea0..8bec5901d6 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/be.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/be.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Выдаліць усе блокі %1?"; Blockly.Msg.DELETE_BLOCK = "Выдаліць блок"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 - небяспечны пароль. П Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Паўтарыце пароль!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Прадстаўляе сэнсар вільготнасці."; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Правярае ўмову калі. Калі ўмова выконваецца, выконвае дзеянне ва ўмоўным блоку."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "вывад"; Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "падцяжка"; Blockly.Msg.PIN_PULL_DOWN = "уніз"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/bg.js b/OpenRobertaServer/staticResources/blockly/msg/js/bg.js index 3eeae8990d..c53620b0c4 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/bg.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/bg.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Изтриване на всички 1% блокове?"; Blockly.Msg.DELETE_BLOCK = "Изтрий блок"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/bn.js b/OpenRobertaServer/staticResources/blockly/msg/js/bn.js index 3ba42b8798..b5374b5fe8 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/bn.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/bn.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "ব্লকটি মুছে ফেল"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/br.js b/OpenRobertaServer/staticResources/blockly/msg/js/br.js index 4d50d8a223..c04b2f86d4 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/br.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/br.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Diverkañ an holl vloc'hoù %1 ?"; Blockly.Msg.DELETE_BLOCK = "Dilemel ar bloc'h"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ca.js b/OpenRobertaServer/staticResources/blockly/msg/js/ca.js index 403c2fc069..ed23f03e19 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ca.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ca.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Esborrar els %1 blocs?"; Blockly.Msg.DELETE_BLOCK = "Esborra bloc"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Comprova la condició del 'si'. Si la condició és certa, executa l'acció 'aleshores'."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/cs.js b/OpenRobertaServer/staticResources/blockly/msg/js/cs.js index 639bbb446d..8fb5a97d1b 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/cs.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/cs.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Smazat všech %1 bloků?"; Blockly.Msg.DELETE_BLOCK = "Smazat blok"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 není bezpečné heslo. Raději vymyslet Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Hotovo? Pro jistotu se přesvědčte!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Zkontroluje podmínku v »když«. Pokud je podmínka splněna, provede akce v části »tak«."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/da.js b/OpenRobertaServer/staticResources/blockly/msg/js/da.js index 1ca13faa33..9be4fe6e7d 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/da.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/da.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Slet alle %1 blokke?"; Blockly.Msg.DELETE_BLOCK = "Slet blok"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checker betingelsen i 'hvis'. Hvis betingelsen er sand udføres 'gør' handlingen."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/de.js b/OpenRobertaServer/staticResources/blockly/msg/js/de.js index 09f05b35bd..14aa6eff12 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/de.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/de.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "Gruppen"; Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name der Gruppe"; Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "Der Name der Gruppe. Bitte bedenke, dass alle Mitglieder der Gruppe den Gruppennamen bei jedem Login eingeben müssen."; Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Benutzername des Gruppeneigentümers"; +Blockly.Msg.DCMOTOR = "DC Motor"; +Blockly.Msg.DCMOTOR_BACKWARD = "rückwärts"; +Blockly.Msg.DCMOTOR_BOARD = "DC Motor Platine"; +Blockly.Msg.DCMOTOR_FORWARD = "vorwärts"; Blockly.Msg.DCMOTOR_M1 = "Motoranschluss 1"; Blockly.Msg.DCMOTOR_M2 = "Motoranschluss 2"; Blockly.Msg.DCMOTOR_M3 = "Motoranschluss 3"; Blockly.Msg.DCMOTOR_M4 = "Motoranschluss 4"; +Blockly.Msg.DCMOTOR_MOTOR = "Motoranschluss"; +Blockly.Msg.DCMOTOR_NUMERIC = "numerisch"; +Blockly.Msg.DCMOTOR_SPEED = "Tempo"; +Blockly.Msg.DCMOTOR_STOP = "stop"; +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor Erweiterung"; Blockly.Msg.DELETE_ALL_BLOCKS = "Alle %1 Blöcke löschen?"; Blockly.Msg.DELETE_BLOCK = "Block löschen"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "Ein Mitglieder, welches du löschen willst, hat sich beriets angemeldet und eventuell Programme erstellt. Bist du sicher, dass du die auswählten Mitglieder löschen möchtest?"; @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 ist kein gutes Passwort ,-)! Such dir li Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Alles richtig geschrieben? Gib dein Passwort vorsichtshalber nochmal ein."; Blockly.Msg.HTCOLOUR_TOOLTIP = "Block für den HiTechnic NXT Farbsensor V2."; Blockly.Msg.HUMIDITY_TOOLTIP = "Block für den Luftfeuchtigkeitsensor."; +Blockly.Msg.I2CADDRESS = "I2C Adresse"; Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blockierender Block! Dieser Block benötigt einige Zeit um ausgeführt zu werden. Andere Blöcke müssen warten, bis dieser Block die Kontrolle an die aufrufende Funktion zurückgibt."; Blockly.Msg.ID = "ID"; Blockly.Msg.IF_TOOLTIP = "Prüft die Bedingung in wenn. Falls die Bedingung wahr ist, führt die dann-Aktion aus."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "Ausgang"; Blockly.Msg.PARTICLE_TOOLTIP = "Block für den SDS011 Feinstaubsensor"; Blockly.Msg.PASSWORD = "Kennwort"; +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Gibt »wahr« zurück, wenn der ausgewählte Pin gedrückt wird."; Blockly.Msg.PIN_PULL = "Pull"; Blockly.Msg.PIN_PULL_DOWN = "down"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/el.js b/OpenRobertaServer/staticResources/blockly/msg/js/el.js index 2844de2d50..615efdc302 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/el.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/el.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Να διαγραφούν και τα %1 μπλοκ?"; Blockly.Msg.DELETE_BLOCK = "Διέγραψε Το Μπλοκ"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/en.js b/OpenRobertaServer/staticResources/blockly/msg/js/en.js index 0818e54692..fc777bf716 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/en.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/en.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; +Blockly.Msg.DCMOTOR = "DC Motor"; +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; +Blockly.Msg.DCMOTOR_FORWARD = "forward"; +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; +Blockly.Msg.DCMOTOR_SPEED = "speed"; +Blockly.Msg.DCMOTOR_STOP = "stop"; +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; Blockly.Msg.DELETE_BLOCK = "Delete Block"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; +Blockly.Msg.I2CADDRESS = "I2C address"; Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; Blockly.Msg.ID = "ID"; Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "output"; Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; Blockly.Msg.PASSWORD = "Password"; +Blockly.Msg.PERCENT = "%"; Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; Blockly.Msg.PIN_PULL = "pull"; Blockly.Msg.PIN_PULL_DOWN = "down"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/es.js b/OpenRobertaServer/staticResources/blockly/msg/js/es.js index b272e51453..5e3a174d15 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/es.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/es.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "¿Eliminar todos los %1 bloques?"; Blockly.Msg.DELETE_BLOCK = "Eliminar bloque"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Comprueba la condición en 'si'. Si la condición es verdadera, ejecuta la acción 'entonces'."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/eu.js b/OpenRobertaServer/staticResources/blockly/msg/js/eu.js index 0321f00a4b..f689080992 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/eu.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/eu.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Ezabatu %1 blokeak?"; Blockly.Msg.DELETE_BLOCK = "Ezabatu blokea"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 ez da pasahitz segurua. Hobeto, ahaztuko Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Badaukazu? Hobeto ziurtatu!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Hezetasun sentsore bat irudikatzen du."; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "baldin' baldintza ebaluatzen du. Baldintza egiazkoa bada, 'orduan' akzioa exekutatuko da."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/fa.js b/OpenRobertaServer/staticResources/blockly/msg/js/fa.js index a78a45b9e8..5bc39e8d50 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/fa.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/fa.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "حذف همهٔ بلاک‌های %1؟"; Blockly.Msg.DELETE_BLOCK = "حذف بلوک"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/fi.js b/OpenRobertaServer/staticResources/blockly/msg/js/fi.js index 8af5f983a9..0a10180ec3 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/fi.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/fi.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Poistetaanko kaikki %1 lohkoa?"; Blockly.Msg.DELETE_BLOCK = "Poista lohko"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Tarkasta if-osan ehto. Jos ehto on tosi, suorita do-osan toiminto."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/fr.js b/OpenRobertaServer/staticResources/blockly/msg/js/fr.js index 73dc37f963..a484569f18 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/fr.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/fr.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Supprimer ces %1 blocs ?"; Blockly.Msg.DELETE_BLOCK = "Supprimer le bloc"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "1234 n'est pas un mot de passe très sécuris Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Retape ton mot de passe pour vérifier que tu le connais."; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Représente un capteur d'hygrométrie (humidité)"; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "vérifie la condition SI. Si elle est vraie, execute l'action"; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/he.js b/OpenRobertaServer/staticResources/blockly/msg/js/he.js index b18e695d61..e2ebdf72d9 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/he.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/he.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "האם למחוק את כל %1 קטעי הקוד?"; Blockly.Msg.DELETE_BLOCK = "מחק קטע קוד"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/hi.js b/OpenRobertaServer/staticResources/blockly/msg/js/hi.js index 8d34e80e81..ba65afcf2e 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/hi.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/hi.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "ब्लॉक हटाएँ"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/hrx.js b/OpenRobertaServer/staticResources/blockly/msg/js/hrx.js index ebe9845611..f370c8df66 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/hrx.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/hrx.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "All %1 Bausten lösche?"; Blockly.Msg.DELETE_BLOCK = "Block lösche"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/hu.js b/OpenRobertaServer/staticResources/blockly/msg/js/hu.js index bed8cd3296..fc98d0c5b0 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/hu.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/hu.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Az összes %1 blokk törlése?"; Blockly.Msg.DELETE_BLOCK = "Blokk törlése"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "."; Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ia.js b/OpenRobertaServer/staticResources/blockly/msg/js/ia.js index 9bdd6ccc13..4cb0db4662 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ia.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ia.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Deler tote le %1 blocos?"; Blockly.Msg.DELETE_BLOCK = "Deler bloco"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/id.js b/OpenRobertaServer/staticResources/blockly/msg/js/id.js index e2271a31b7..078dcc8665 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/id.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/id.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Hapus semua %1 blok?"; Blockly.Msg.DELETE_BLOCK = "Hapus Blok"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/is.js b/OpenRobertaServer/staticResources/blockly/msg/js/is.js index 0b2d105542..020ec21952 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/is.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/is.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Eyða öllum %1 kubbunum?"; Blockly.Msg.DELETE_BLOCK = "Eyða kubbi"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/it.js b/OpenRobertaServer/staticResources/blockly/msg/js/it.js index ba7027b6fd..29ecf78f12 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/it.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/it.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Cancellare tutti i %1 blocchi?"; Blockly.Msg.DELETE_BLOCK = "Cancella blocco"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 non è password sicura. Pensa ad una pas Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Fatto? Meglio assicurarsi!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Rappresenta un sensore di umidità."; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Controlla la condizione in »se«. Se la condizione è vera, esegue l'azione »fare«."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "uscita"; Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "tirare"; Blockly.Msg.PIN_PULL_DOWN = "giù"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ja.js b/OpenRobertaServer/staticResources/blockly/msg/js/ja.js index 9e1fd85f87..a1e115dd3a 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ja.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ja.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "%1件のすべてのブロックを消しますか?"; Blockly.Msg.DELETE_BLOCK = "ブロックを消す"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ko.js b/OpenRobertaServer/staticResources/blockly/msg/js/ko.js index c66c6ae7f7..10b8daba08 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ko.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ko.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "모든 블록 %1개를 삭제하겠습니까?"; Blockly.Msg.DELETE_BLOCK = "블록 삭제"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/lb.js b/OpenRobertaServer/staticResources/blockly/msg/js/lb.js index 814e2db330..811c96e5cd 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/lb.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/lb.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Block läschen"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/lki.js b/OpenRobertaServer/staticResources/blockly/msg/js/lki.js index aa80b5cca1..0e966a162d 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/lki.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/lki.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "حةذف کؤل %1 بلاکةل?"; Blockly.Msg.DELETE_BLOCK = "پاک کردن بلاک"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/lrc.js b/OpenRobertaServer/staticResources/blockly/msg/js/lrc.js index 4d6fd83251..08f7216b03 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/lrc.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/lrc.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "پاکسا کردن برشت"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/lt.js b/OpenRobertaServer/staticResources/blockly/msg/js/lt.js index 2c9ccfb20e..7f58b6a353 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/lt.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/lt.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Ištrinti visus %1 blokus?"; Blockly.Msg.DELETE_BLOCK = "Ištrinti bloką"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/mk.js b/OpenRobertaServer/staticResources/blockly/msg/js/mk.js index 741b2b74c0..582e6e01ea 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/mk.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/mk.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Да ги избришам сите %1 блокчиња?"; Blockly.Msg.DELETE_BLOCK = "Избриши блок"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ms.js b/OpenRobertaServer/staticResources/blockly/msg/js/ms.js index 288e3b58ba..86fba24eb9 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ms.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ms.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Hapuskan kesemua %1 blok?"; Blockly.Msg.DELETE_BLOCK = "Hapuskan Blok"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/nb.js b/OpenRobertaServer/staticResources/blockly/msg/js/nb.js index 8d9b36f839..284e542c74 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/nb.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/nb.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Slett alle %1 blokker?"; Blockly.Msg.DELETE_BLOCK = "Slett blokk"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/nl.js b/OpenRobertaServer/staticResources/blockly/msg/js/nl.js index 274a867aaa..08546e2664 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/nl.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/nl.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Alle %1 blokken verwijderen?"; Blockly.Msg.DELETE_BLOCK = "Blok verwijderen"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/oc.js b/OpenRobertaServer/staticResources/blockly/msg/js/oc.js index 4ac30df6eb..f8ed8c4a52 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/oc.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/oc.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Suprimir totes los %1 blòts ?"; Blockly.Msg.DELETE_BLOCK = "Suprimir lo blòt"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/pl.js b/OpenRobertaServer/staticResources/blockly/msg/js/pl.js index 0ec0857b74..c9aa292363 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/pl.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/pl.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Usunąć wszystkie %1 bloki(ów)?"; Blockly.Msg.DELETE_BLOCK = "Usuń blok"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 to nie hasło. Pomyśl o bezpiecznej kom Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Zapamiętasz? Lepiej się upewnij!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Sprawdza warunek w »if«. Jeśli warunek jest spełniony, wykonujw się akcja »do«."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/pms.js b/OpenRobertaServer/staticResources/blockly/msg/js/pms.js index f6201f70cb..5ca7a57468 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/pms.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/pms.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Scancelé tuti ij %1 blòch?"; Blockly.Msg.DELETE_BLOCK = "Scancelé ël blòch"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/pt-br.js b/OpenRobertaServer/staticResources/blockly/msg/js/pt-br.js index bf9697b5a6..a09e433c5f 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/pt-br.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/pt-br.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Apagar todos os %1 blocos?"; Blockly.Msg.DELETE_BLOCK = "Remover bloco"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/pt.js b/OpenRobertaServer/staticResources/blockly/msg/js/pt.js index 4352e6faf5..4226276c7c 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/pt.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/pt.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Apagar todos os %1 blocos?"; Blockly.Msg.DELETE_BLOCK = "Remover Bloco"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Verifica a condição »if«. Se verdadeiro, executa a acção »do«."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ro.js b/OpenRobertaServer/staticResources/blockly/msg/js/ro.js index a0ce03e863..75769bd6ef 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ro.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ro.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Ștergi toate cele %1 (de) blocuri?"; Blockly.Msg.DELETE_BLOCK = "Șterge Bloc"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 nu este o parolă sigură. Mai degrabă Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Ai înțeles? Mai bine asigură-te!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Reprezintă un senzor de umiditate."; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Verifică condiția din »if«. Dacă condiția este adevărată aunci de execută acțiunea »do«."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "ieșire"; Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "împinge"; Blockly.Msg.PIN_PULL_DOWN = "jos"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ru.js b/OpenRobertaServer/staticResources/blockly/msg/js/ru.js index bcead7e23f..485be60f42 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ru.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ru.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Удалить все блоки (%1)?"; Blockly.Msg.DELETE_BLOCK = "Удалить блок"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 -- не безопасный парол Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Повторите пароль."; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Проверяет увловие »если«. Если условие выполняется, выполняет действие в условном блоке."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/sc.js b/OpenRobertaServer/staticResources/blockly/msg/js/sc.js index 3d33c318d4..235ee193b4 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/sc.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/sc.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Scancellu su %1 de is brocus?"; Blockly.Msg.DELETE_BLOCK = "Fùlia Blocu"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/sd.js b/OpenRobertaServer/staticResources/blockly/msg/js/sd.js index 697148d6f9..8f48b5705a 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/sd.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/sd.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "بلاڪ ڊاهيو"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/shn.js b/OpenRobertaServer/staticResources/blockly/msg/js/shn.js index d5dca936f7..c5a4ee5067 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/shn.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/shn.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "မွတ်ႇပလွၵ်ႉ"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/sk.js b/OpenRobertaServer/staticResources/blockly/msg/js/sk.js index f55a79ccab..cf0e11d9ff 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/sk.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/sk.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Zmazať všetkých %1 dielcov?"; Blockly.Msg.DELETE_BLOCK = "Odstrániť blok"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/sl.js b/OpenRobertaServer/staticResources/blockly/msg/js/sl.js index 91e9befa16..88aada9e94 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/sl.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/sl.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Izbrišem vseh %1 kock?"; Blockly.Msg.DELETE_BLOCK = "Izbriši kocko"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/sq.js b/OpenRobertaServer/staticResources/blockly/msg/js/sq.js index d42aacf9f8..84516dd900 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/sq.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/sq.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "Fshij bllokun"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/sr.js b/OpenRobertaServer/staticResources/blockly/msg/js/sr.js index 4df92ed7cd..bb3650242c 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/sr.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/sr.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Обрисати %1 блокова?"; Blockly.Msg.DELETE_BLOCK = "Обриши блок"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/sv.js b/OpenRobertaServer/staticResources/blockly/msg/js/sv.js index 1a7b2313e0..111ec6bea0 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/sv.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/sv.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Radera alla %1 block?"; Blockly.Msg.DELETE_BLOCK = "Radera block"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 är inget säkert lösenord. Tänk istä Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Stämmer det? Bäst att kontrollera!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Fuktsensor"; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Kontrollerar villkoret i »if«. Om vilkoret är sant, utförs »do« åtgärden"; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "dra"; Blockly.Msg.PIN_PULL_DOWN = "ner"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/ta.js b/OpenRobertaServer/staticResources/blockly/msg/js/ta.js index 5a85546592..4650ed6236 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/ta.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/ta.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "அனைத்து %1 நிரல் துண்டுகளையும் அழிக்கவா??"; Blockly.Msg.DELETE_BLOCK = "உறுப்பை நீக்கு"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/tcy.js b/OpenRobertaServer/staticResources/blockly/msg/js/tcy.js index dce3a967dd..5daf60d3fe 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/tcy.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/tcy.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "ಮಾತ %1 ನಿರ್ಬಂದೊಲೆನ್ ದೆತ್ತ್ ಪಾಡ್ಲೆ ?"; Blockly.Msg.DELETE_BLOCK = "ಮಾಜಯರ ತಡೆಯಾತ್ಂಡ್"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/th.js b/OpenRobertaServer/staticResources/blockly/msg/js/th.js index aed9f9d1a1..08f4ecf700 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/th.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/th.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "ต้องการลบบล็อกทั้ง %1 บล็อกหรือไม่"; Blockly.Msg.DELETE_BLOCK = "ลบบล็อก"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/tl.js b/OpenRobertaServer/staticResources/blockly/msg/js/tl.js index 612a1e555f..76ba39cc54 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/tl.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/tl.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Delete all %1 blocks?"; // untranslated Blockly.Msg.DELETE_BLOCK = "burahin ang bloke"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/tlh.js b/OpenRobertaServer/staticResources/blockly/msg/js/tlh.js index 26d5fd386d..4ee2fe681f 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/tlh.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/tlh.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Hoch %1 ngoghmey Qaw'?"; Blockly.Msg.DELETE_BLOCK = "ngogh Qaw'"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/tr.js b/OpenRobertaServer/staticResources/blockly/msg/js/tr.js index 9d34688bac..e5452d3c39 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/tr.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/tr.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Tüm %1 blok silinsin mi?"; Blockly.Msg.DELETE_BLOCK = "Bloğu Sil"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "»If« içerisindeki koşulu kontrol eder. Eğer koşul ifadesi doğruysa, »do« eylemini gerçekleştirir."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/uk.js b/OpenRobertaServer/staticResources/blockly/msg/js/uk.js index a8bf305a28..353623f911 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/uk.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/uk.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "Вилучити всі блоки %1?"; Blockly.Msg.DELETE_BLOCK = "Видалити блок"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 -- не надійний пароль. Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Запам'ятали? Давайте перевіримо!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Представляє сенсор вологості."; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Перевіряє умову »if«. Якщо умова вірна, виконую »do« дію."; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "-ий."; Blockly.Msg.OUTPUT = "вихід"; Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "підтяжка"; Blockly.Msg.PIN_PULL_DOWN = "до землі"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/vi.js b/OpenRobertaServer/staticResources/blockly/msg/js/vi.js index 00140f6210..fee9f0d77e 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/vi.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/vi.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated 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_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345 is no secure password. Rather think of a Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "Got it? Better make sure!"; // untranslated Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "Represents a humidity sensor."; // untranslated +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "Checks the condition in »if«. If the condition is true, executes the »do« action."; // untranslated @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "output"; // untranslated Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "pull"; // untranslated Blockly.Msg.PIN_PULL_DOWN = "down"; // untranslated @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/zh-hans.js b/OpenRobertaServer/staticResources/blockly/msg/js/zh-hans.js index b98d8ca4f1..ac70713082 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/zh-hans.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/zh-hans.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "删除所有%1块吗?"; Blockly.Msg.DELETE_BLOCK = "删除块"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345没有密码安全性。宁可想一个 Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "明白了吗?最好确认过!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "代表湿度传感器"; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "检查»if«中的条件。如果条件为 true, 则执行»do«操作。"; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = "空白"; Blockly.Msg.OUTPUT = "输出"; Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "拉"; Blockly.Msg.PIN_PULL_DOWN = "下"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/js/zh-hant.js b/OpenRobertaServer/staticResources/blockly/msg/js/zh-hant.js index 5dffe11889..d9f306aecf 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/js/zh-hant.js +++ b/OpenRobertaServer/staticResources/blockly/msg/js/zh-hant.js @@ -233,10 +233,19 @@ Blockly.Msg.DATATABLE_USERGROUPS = "user groups"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME = "Name of the user group"; // untranslated Blockly.Msg.DATATABLE_USERGROUP_NAME_CREATE_HINT = "The name of the user group. Kepp in mind, that the members will have to type it in each time they log in."; // untranslated Blockly.Msg.DATATABLE_USERGROUP_OWNER = "Name of the owner of the user group"; // untranslated -Blockly.Msg.DCMOTOR_M1 = "Motor port 1"; // untranslated -Blockly.Msg.DCMOTOR_M2 = "Motor port 2"; // untranslated -Blockly.Msg.DCMOTOR_M3 = "Motor port 3"; // untranslated -Blockly.Msg.DCMOTOR_M4 = "Motor port 4"; // untranslated +Blockly.Msg.DCMOTOR = "DC Motor"; // untranslated +Blockly.Msg.DCMOTOR_BACKWARD = "backward"; // untranslated +Blockly.Msg.DCMOTOR_BOARD = "DC Motor board"; // untranslated +Blockly.Msg.DCMOTOR_FORWARD = "forward"; // untranslated +Blockly.Msg.DCMOTOR_M1 = "motor port 1"; // untranslated +Blockly.Msg.DCMOTOR_M2 = "motor port 2"; // untranslated +Blockly.Msg.DCMOTOR_M3 = "motor port 3"; // untranslated +Blockly.Msg.DCMOTOR_M4 = "motor port 4"; // untranslated +Blockly.Msg.DCMOTOR_MOTOR = "motor port"; // untranslated +Blockly.Msg.DCMOTOR_NUMERIC = "numeric"; // untranslated +Blockly.Msg.DCMOTOR_SPEED = "speed"; // untranslated +Blockly.Msg.DCMOTOR_STOP = "stop"; // untranslated +Blockly.Msg.DCMOTOR_TOOLTIP = "DC Motor extention"; // untranslated Blockly.Msg.DELETE_ALL_BLOCKS = "刪除共 %1 塊積木?"; Blockly.Msg.DELETE_BLOCK = "刪除積木"; Blockly.Msg.DELETE_USERGROUP_MEMBER_AFTER_LOGIN_WARNING = "A member you want to delete did already log in and might have create own programs. Are you sure that you want to delete the selected member(s)?"; // untranslated @@ -322,6 +331,7 @@ Blockly.Msg.HINT_USER_PASSWORT = "12345沒有密碼安全性。寧可想一個 Blockly.Msg.HINT_USER_PASSWORT_CONFIRM = "明白了嗎?最好確認過!"; Blockly.Msg.HTCOLOUR_TOOLTIP = "Represents a HiTechnic NXT Color Sensor V2."; // untranslated Blockly.Msg.HUMIDITY_TOOLTIP = "代表濕度感應器"; +Blockly.Msg.I2CADDRESS = "I2C address"; // untranslated Blockly.Msg.ICON_BLOCKING_TOOLTIP = "Blocking block! This blocks needs some time to be executed, so other's have to wait until it gives back the control to the caller function."; // untranslated Blockly.Msg.ID = "ID"; // untranslated Blockly.Msg.IF_TOOLTIP = "檢查»if«中的條件。如果條件為 true, 則執行»do«操作。"; @@ -1139,6 +1149,7 @@ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated Blockly.Msg.OUTPUT = "輸出"; Blockly.Msg.PARTICLE_TOOLTIP = "Represents SDS011 particle sensor."; // untranslated Blockly.Msg.PASSWORD = "Password"; // untranslated +Blockly.Msg.PERCENT = "%"; // untranslated Blockly.Msg.PIN_ISTOUCHED_TOOLTIP = "Is the selected pin touched?"; // untranslated Blockly.Msg.PIN_PULL = "拉"; Blockly.Msg.PIN_PULL_DOWN = "下"; @@ -1802,6 +1813,7 @@ Blockly.Msg.SENSOR_ENCODER_GETSAMPLE_TOOLTIP = Blockly.Msg.ENCODER_GETSAMPLE_TOO Blockly.Msg.MODE_FACE_UP = Blockly.Msg.SENSOR_GESTURE_FACE_UP; Blockly.Msg.SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP; Blockly.Msg.SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP = Blockly.Msg.COLOUR_LIGHT_GETSAMPLE_TOOLTIP; +Blockly.Msg.ACTION_DCMOTOR = Blockly.Msg.DCMOTOR_BOARD; Blockly.Msg.MATH_CHANGE_TITLE_ITEM = Blockly.Msg.VARIABLES_DEFAULT_NAME; Blockly.Msg.TOUCH_GETSAMPLE_TOOLTIP = Blockly.Msg.TOUCH_ISPRESSED_TOOLTIP; Blockly.Msg.CONTROLS_FOR_INPUT_DO = Blockly.Msg.CONTROLS_REPEAT_INPUT_DO; diff --git a/OpenRobertaServer/staticResources/blockly/msg/json/en.json b/OpenRobertaServer/staticResources/blockly/msg/json/en.json index 3e98fb5526..e5979c1d48 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/json/en.json +++ b/OpenRobertaServer/staticResources/blockly/msg/json/en.json @@ -1,11 +1,7 @@ { "@metadata": { "author": "Ellen Spertus ", -<<<<<<< HEAD - "lastupdated": "2021-12-19 21:34:24.883947", -======= - "lastupdated": "2022-01-06 10:56:55.141662", ->>>>>>> upstream/develop + "lastupdated": "2022-02-11 15:51:34.082965", "locale": "en", "messagedocumentation" : "qqq" }, @@ -1782,8 +1778,19 @@ "POPUP_BACKGROUND_REPLACE": "A program with the same name already exists.
Would you like to replace it?", "POPUP_BACKGROUND_REPLACE_CONFIGURATION": "A configuration with the same name already exists.
Would you like to replace it?", "ORA_CONFIGURATION_SAVE_AS_ERROR_CONFIGURATION_EXISTS": "This configuration already exists.", - "DCMOTOR_M1": "Motor port 1", - "DCMOTOR_M2": "Motor port 2", - "DCMOTOR_M3": "Motor port 3", - "DCMOTOR_M4": "Motor port 4" + "DCMOTOR": "DC Motor", + "DCMOTOR_BACKWARD": "backward", + "DCMOTOR_BOARD": "DC Motor board", + "DCMOTOR_FORWARD": "forward", + "DCMOTOR_NUMERIC": "numeric", + "DCMOTOR_M1": "motor port 1", + "DCMOTOR_M2": "motor port 2", + "DCMOTOR_M3": "motor port 3", + "DCMOTOR_M4": "motor port 4", + "DCMOTOR_MOTOR": "motor port", + "DCMOTOR_SPEED": "speed", + "DCMOTOR_STOP": "stop", + "DCMOTOR_TOOLTIP": "DC Motor extention", + "I2CADDRESS": "I2C address", + "PERCENT": "%" } diff --git a/OpenRobertaServer/staticResources/blockly/msg/json/qqq.json b/OpenRobertaServer/staticResources/blockly/msg/json/qqq.json index 481ed87442..3f50e2c259 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/json/qqq.json +++ b/OpenRobertaServer/staticResources/blockly/msg/json/qqq.json @@ -1772,8 +1772,19 @@ "POPUP_BACKGROUND_REPLACE": "", "POPUP_BACKGROUND_REPLACE_CONFIGURATION": "", "ORA_CONFIGURATION_SAVE_AS_ERROR_CONFIGURATION_EXISTS": "", + "DCMOTOR": "", + "DCMOTOR_BACKWARD": "", + "DCMOTOR_BOARD": "", + "DCMOTOR_FORWARD": "", + "DCMOTOR_NUMERIC": "", "DCMOTOR_M1": "", "DCMOTOR_M2": "", "DCMOTOR_M3": "", - "DCMOTOR_M4": "" + "DCMOTOR_M4": "", + "DCMOTOR_MOTOR": "", + "DCMOTOR_SPEED": "", + "DCMOTOR_STOP": "", + "DCMOTOR_TOOLTIP": "", + "I2CADDRESS": "", + "PERCENT": "" } diff --git a/OpenRobertaServer/staticResources/blockly/msg/json/synonyms.json b/OpenRobertaServer/staticResources/blockly/msg/json/synonyms.json index 4ae8067e78..1a7ab539c8 100644 --- a/OpenRobertaServer/staticResources/blockly/msg/json/synonyms.json +++ b/OpenRobertaServer/staticResources/blockly/msg/json/synonyms.json @@ -1 +1 @@ -{"PROCEDURES_DEFRETURN_TITLE": "PROCEDURES_DEFNORETURN_TITLE", "LISTS_GET_SUBLIST_INPUT_IN_LIST": "LISTS_INLIST", "ACTION_LEDBAR": "LEDBAR", "LISTS_SET_INDEX_INPUT_IN_LIST": "LISTS_INLIST", "KEY_GETSAMPLE_TOOLTIP": "KEY_ISPRESSED_TOOLTIP", "PROCEDURES_DEFRETURN_PROCEDURE": "PROCEDURES_DEFNORETURN_PROCEDURE", "SENSOR_PINTOUCH_PRESSED_GETSAMPLE_TOOLTIP": "PIN_ISTOUCHED_TOOLTIP", "SENSOR_INFRARED_GETSAMPLE_TOOLTIP": "INFRARED_GETSAMPLE_TOOLTIP", "HTCOLOUR_GETSAMPLE_TOOLTIP": "COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_ACCELEROMETER_GETSAMPLE_TOOLTIP": "SENSOR_ACCELEROMETER_VALUE_GETSAMPLE_TOOLTIP", "SENSOR_HUMIDITY_TEMPERATURE_GETSAMPLE_TOOLTIP": "TEMPERATURE_GETSAMPLE_TOOLTIP", "SENSOR_COLOUR_RGB_GETSAMPLE_TOOLTIP": "COLOUR_RGB_GETSAMPLE_TOOLTIP", "SENSOR_ULTRASONIC_GETSAMPLE_TOOLTIP": "ULTRASONIC_GETSAMPLE_TOOLTIP", "SENSOR_TOUCH_GETSAMPLE_TOOLTIP": "TOUCH_GETSAMPLE_TOOLTIP", "MODE_UP": "SENSOR_GESTURE_UP", "LISTS_CREATE_WITH_ITEM_TITLE": "VARIABLES_DEFAULT_NAME", "SENSOR_HTCOLOUR_COLOUR_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_ENCODER_GETSAMPLE_TOOLTIP": "ENCODER_GETSAMPLE_TOOLTIP", "MODE_FACE_UP": "SENSOR_GESTURE_FACE_UP", "MODE_SHAKE": "SENSOR_GESTURE_SHAKE", "SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP": "COLOUR_LIGHT_GETSAMPLE_TOOLTIP", "HTCOLOUR_COLOUR_GETSAMPLE_TOOLTIP": "COLOUR_COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_COMPASS_GETSAMPLE_TOOLTIP": "COMPASS_GETSAMPLE_TOOLTIP", "CONTROLS_IF_ELSE_TITLE_ELSE": "CONTROLS_IF_MSG_ELSE", "SENSOR_COLOUR_GETSAMPLE_TOOLTIP": "COLOUR_GETSAMPLE_TOOLTIP", "PROCEDURES_DEFRETURN_DO": "PROCEDURES_DEFNORETURN_DO", "LISTS_GET_INDEX_HELPURL": "LISTS_INDEX_OF_HELPURL", "SENSOR_TIMER_GETSAMPLE_TOOLTIP": "TIMER_GETSAMPLE_TOOLTIP", "SENSOR_LIGHT_GETSAMPLE_TOOLTIP": "LIGHT_GETSAMPLE_TOOLTIP", "SENSOR_ACCELEROMETER_VALUE_GETSAMPLE_TOOLTIP": "ACCELEROMETER_ROTATION_TOOLTIP", "ORA_ROBOT_PUSH_RUN": "MESSAGE_EDIT_START", "SENSOR_GYRO_GETSAMPLE_TOOLTIP": "GYRO_GETSAMPLE_TOOLTIP", "PROCEDURES_DEFRETURN_COMMENT": "PROCEDURES_DEFNORETURN_COMMENT", "SENSOR_INFRARED_DISTANCE_GETSAMPLE_TOOLTIP": "INFRARED_DISTANCE_GETSAMPLE_TOOLTIP", "TOUCH_GETSAMPLE_TOOLTIP": "TOUCH_ISPRESSED_TOOLTIP", "TEXT_CREATE_JOIN_ITEM_TITLE_ITEM": "VARIABLES_DEFAULT_NAME", "SENSOR_HUMIDITY_HUMIDITY_GETSAMPLE_TOOLTIP": "SENSOR_HUMIDITY_GETSAMPLE_TOOLTIP", "CONTROLS_IF_MSG_THEN": "CONTROLS_REPEAT_INPUT_DO", "SENSOR_TEMPERATURE_TEMPERATURE_GETSAMPLE_TOOLTIP": "TEMPERATURE_GETSAMPLE_TOOLTIP", "MODE_FREEFALL": "SENSOR_GESTURE_FREEFALL", "MODE_DOWN": "SENSOR_GESTURE_DOWN", "LISTS_INDEX_OF_INPUT_IN_LIST": "LISTS_INLIST", "SENSOR_BATTERY_GETSAMPLE_TOOLTIP": "BATTERY_GETSAMPLE_TOOLTIP", "LISTS_GET_INDEX_INPUT_IN_LIST": "LISTS_INLIST", "HTCOLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP": "COLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP", "SENSOR_COLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP": "COLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP", "CONTROLS_IF_ELSEIF_TITLE_ELSEIF": "CONTROLS_IF_MSG_ELSEIF", "HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP": "COLOUR_LIGHT_GETSAMPLE_TOOLTIP", "SENSOR_KEY_GETSAMPLE_TOOLTIP": "KEY_GETSAMPLE_TOOLTIP", "CONTROLS_FOREACH_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "SENSOR_INFRARED_PRESENCE_GETSAMPLE_TOOLTIP": "INFRARED_PRESENCE_GETSAMPLE_TOOLTIP", "MODE_FACE_DOWN": "SENSOR_GESTURE_FACE_DOWN", "SENSOR_HTCOLOUR_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_GETSAMPLE_TOOLTIP", "CONTROLS_IF_IF_TITLE_IF": "CONTROLS_IF_MSG_IF", "CONTROLS_WHILEUNTIL_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "SENSOR_SOUND_GETSAMPLE_TOOLTIP": "SOUND_GETSAMPLE_TOOLTIP", "SENSOR_FLAME_GETSAMPLE_TOOLTIP": "FLAME_GETSAMPLE_TOOLTIP", "ACTION_FOURDIGITDISPLAY": "FOURDIGITDISPLAY", "SENSOR_COLOURTCS3472_COLOUR_GETSAMPLE_TOOLTIP": "COLOUR_COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_HTCOLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP", "SENSOR_COLOURTCS3472_LIGHT_GETSAMPLE_TOOLTIP": "COLOUR_LIGHT_GETSAMPLE_TOOLTIP", "SENSOR_COLOUR_COLOUR_GETSAMPLE_TOOLTIP": "COLOUR_COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP", "SENSOR_SOUND_GETSAMPLE_TOOLTIP_CALLIOPE": "MICROPHONE_GETSAMPLE_TOOLTIP", "SENSOR_HTCOLOUR_RGB_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_RGB_GETSAMPLE_TOOLTIP", "CONTROLS_FOR_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "SENSOR_TEMPERATURE_GETSAMPLE_TOOLTIP": "TEMPERATURE_GETSAMPLE_TOOLTIP", "TEXT_APPEND_VARIABLE": "VARIABLES_DEFAULT_NAME", "SENSOR_COLOURTCS3472_RGB_GETSAMPLE_TOOLTIP": "COLOUR_RGB_GETSAMPLE_TOOLTIP", "MATH_CHANGE_TITLE_ITEM": "VARIABLES_DEFAULT_NAME", "HTCOLOUR_RGB_GETSAMPLE_TOOLTIP": "COLOUR_RGB_GETSAMPLE_TOOLTIP"} \ No newline at end of file +{"PROCEDURES_DEFRETURN_TITLE": "PROCEDURES_DEFNORETURN_TITLE", "LISTS_GET_SUBLIST_INPUT_IN_LIST": "LISTS_INLIST", "ACTION_LEDBAR": "LEDBAR", "LISTS_SET_INDEX_INPUT_IN_LIST": "LISTS_INLIST", "KEY_GETSAMPLE_TOOLTIP": "KEY_ISPRESSED_TOOLTIP", "PROCEDURES_DEFRETURN_PROCEDURE": "PROCEDURES_DEFNORETURN_PROCEDURE", "SENSOR_PINTOUCH_PRESSED_GETSAMPLE_TOOLTIP": "PIN_ISTOUCHED_TOOLTIP", "SENSOR_INFRARED_GETSAMPLE_TOOLTIP": "INFRARED_GETSAMPLE_TOOLTIP", "HTCOLOUR_GETSAMPLE_TOOLTIP": "COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_ACCELEROMETER_GETSAMPLE_TOOLTIP": "SENSOR_ACCELEROMETER_VALUE_GETSAMPLE_TOOLTIP", "SENSOR_HUMIDITY_TEMPERATURE_GETSAMPLE_TOOLTIP": "TEMPERATURE_GETSAMPLE_TOOLTIP", "SENSOR_COLOUR_RGB_GETSAMPLE_TOOLTIP": "COLOUR_RGB_GETSAMPLE_TOOLTIP", "SENSOR_ULTRASONIC_GETSAMPLE_TOOLTIP": "ULTRASONIC_GETSAMPLE_TOOLTIP", "SENSOR_TOUCH_GETSAMPLE_TOOLTIP": "TOUCH_GETSAMPLE_TOOLTIP", "MODE_UP": "SENSOR_GESTURE_UP", "LISTS_CREATE_WITH_ITEM_TITLE": "VARIABLES_DEFAULT_NAME", "SENSOR_HTCOLOUR_COLOUR_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_ENCODER_GETSAMPLE_TOOLTIP": "ENCODER_GETSAMPLE_TOOLTIP", "MODE_FACE_UP": "SENSOR_GESTURE_FACE_UP", "MODE_SHAKE": "SENSOR_GESTURE_SHAKE", "SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP": "COLOUR_LIGHT_GETSAMPLE_TOOLTIP", "ACTION_DCMOTOR": "DCMOTOR_BOARD", "HTCOLOUR_COLOUR_GETSAMPLE_TOOLTIP": "COLOUR_COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_COMPASS_GETSAMPLE_TOOLTIP": "COMPASS_GETSAMPLE_TOOLTIP", "CONTROLS_IF_ELSE_TITLE_ELSE": "CONTROLS_IF_MSG_ELSE", "SENSOR_COLOUR_GETSAMPLE_TOOLTIP": "COLOUR_GETSAMPLE_TOOLTIP", "PROCEDURES_DEFRETURN_DO": "PROCEDURES_DEFNORETURN_DO", "LISTS_GET_INDEX_HELPURL": "LISTS_INDEX_OF_HELPURL", "SENSOR_TIMER_GETSAMPLE_TOOLTIP": "TIMER_GETSAMPLE_TOOLTIP", "SENSOR_LIGHT_GETSAMPLE_TOOLTIP": "LIGHT_GETSAMPLE_TOOLTIP", "SENSOR_ACCELEROMETER_VALUE_GETSAMPLE_TOOLTIP": "ACCELEROMETER_ROTATION_TOOLTIP", "ORA_ROBOT_PUSH_RUN": "MESSAGE_EDIT_START", "SENSOR_GYRO_GETSAMPLE_TOOLTIP": "GYRO_GETSAMPLE_TOOLTIP", "PROCEDURES_DEFRETURN_COMMENT": "PROCEDURES_DEFNORETURN_COMMENT", "SENSOR_INFRARED_DISTANCE_GETSAMPLE_TOOLTIP": "INFRARED_DISTANCE_GETSAMPLE_TOOLTIP", "TOUCH_GETSAMPLE_TOOLTIP": "TOUCH_ISPRESSED_TOOLTIP", "TEXT_CREATE_JOIN_ITEM_TITLE_ITEM": "VARIABLES_DEFAULT_NAME", "SENSOR_HUMIDITY_HUMIDITY_GETSAMPLE_TOOLTIP": "SENSOR_HUMIDITY_GETSAMPLE_TOOLTIP", "CONTROLS_IF_MSG_THEN": "CONTROLS_REPEAT_INPUT_DO", "SENSOR_TEMPERATURE_TEMPERATURE_GETSAMPLE_TOOLTIP": "TEMPERATURE_GETSAMPLE_TOOLTIP", "MODE_FREEFALL": "SENSOR_GESTURE_FREEFALL", "MODE_DOWN": "SENSOR_GESTURE_DOWN", "LISTS_INDEX_OF_INPUT_IN_LIST": "LISTS_INLIST", "SENSOR_BATTERY_GETSAMPLE_TOOLTIP": "BATTERY_GETSAMPLE_TOOLTIP", "LISTS_GET_INDEX_INPUT_IN_LIST": "LISTS_INLIST", "HTCOLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP": "COLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP", "SENSOR_COLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP": "COLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP", "CONTROLS_IF_ELSEIF_TITLE_ELSEIF": "CONTROLS_IF_MSG_ELSEIF", "HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP": "COLOUR_LIGHT_GETSAMPLE_TOOLTIP", "SENSOR_KEY_GETSAMPLE_TOOLTIP": "KEY_GETSAMPLE_TOOLTIP", "CONTROLS_FOREACH_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "SENSOR_INFRARED_PRESENCE_GETSAMPLE_TOOLTIP": "INFRARED_PRESENCE_GETSAMPLE_TOOLTIP", "MODE_FACE_DOWN": "SENSOR_GESTURE_FACE_DOWN", "SENSOR_HTCOLOUR_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_GETSAMPLE_TOOLTIP", "CONTROLS_IF_IF_TITLE_IF": "CONTROLS_IF_MSG_IF", "CONTROLS_WHILEUNTIL_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "SENSOR_SOUND_GETSAMPLE_TOOLTIP": "SOUND_GETSAMPLE_TOOLTIP", "SENSOR_FLAME_GETSAMPLE_TOOLTIP": "FLAME_GETSAMPLE_TOOLTIP", "ACTION_FOURDIGITDISPLAY": "FOURDIGITDISPLAY", "SENSOR_COLOURTCS3472_COLOUR_GETSAMPLE_TOOLTIP": "COLOUR_COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_HTCOLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_AMBIENTLIGHT_GETSAMPLE_TOOLTIP", "SENSOR_COLOURTCS3472_LIGHT_GETSAMPLE_TOOLTIP": "COLOUR_LIGHT_GETSAMPLE_TOOLTIP", "SENSOR_COLOUR_COLOUR_GETSAMPLE_TOOLTIP": "COLOUR_COLOUR_GETSAMPLE_TOOLTIP", "SENSOR_HTCOLOUR_LIGHT_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_LIGHT_GETSAMPLE_TOOLTIP", "SENSOR_SOUND_GETSAMPLE_TOOLTIP_CALLIOPE": "MICROPHONE_GETSAMPLE_TOOLTIP", "SENSOR_HTCOLOUR_RGB_GETSAMPLE_TOOLTIP": "SENSOR_COLOUR_RGB_GETSAMPLE_TOOLTIP", "CONTROLS_FOR_INPUT_DO": "CONTROLS_REPEAT_INPUT_DO", "SENSOR_TEMPERATURE_GETSAMPLE_TOOLTIP": "TEMPERATURE_GETSAMPLE_TOOLTIP", "TEXT_APPEND_VARIABLE": "VARIABLES_DEFAULT_NAME", "SENSOR_COLOURTCS3472_RGB_GETSAMPLE_TOOLTIP": "COLOUR_RGB_GETSAMPLE_TOOLTIP", "MATH_CHANGE_TITLE_ITEM": "VARIABLES_DEFAULT_NAME", "HTCOLOUR_RGB_GETSAMPLE_TOOLTIP": "COLOUR_RGB_GETSAMPLE_TOOLTIP"} \ No newline at end of file diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedTransformerVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedTransformerVisitor.java index a03ec101d3..e5ab898129 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedTransformerVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/IMbedTransformerVisitor.java @@ -248,7 +248,9 @@ default Phrase visitPlayFileAction(PlayFileAction> playFileAction) @Override default Phrase visitDcMotorSetAction(DcMotorSetAction> dcMotorSetAction) { return DcMotorSetAction.make( - dcMotorSetAction.getPort(), + dcMotorSetAction.getActorPort(), + (Expr) dcMotorSetAction.getMotor().modify(this), + dcMotorSetAction.getDirection(), (Expr) dcMotorSetAction.getSpeed().modify(this), dcMotorSetAction.getProperty(), dcMotorSetAction.getComment() diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/CalliopeCppVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/CalliopeCppVisitor.java index c39fa48d43..a41aacab23 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/CalliopeCppVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/codegen/CalliopeCppVisitor.java @@ -106,6 +106,7 @@ import de.fhg.iais.roberta.visitor.lang.codegen.prog.AbstractCppVisitor; import de.poulter.roberta.syntax.action.mbed.DcMotorSetAction; +import de.poulter.roberta.syntax.action.mbed.Direction; /** * This class is implementing {@link IVisitor}. All methods are implemented and they append a human-readable C++ code representation of a phrase to a @@ -649,7 +650,9 @@ public Void visitPinWriteValueAction(PinWriteValueAction pinWriteValueSens @Override public Void visitMainTask(MainTask mainTask) { - if ( this.getBean(UsedHardwareBean.class).isSensorUsed(SC.TIMER) ) { + UsedHardwareBean usedHardwareBean = this.getBean(UsedHardwareBean.class); + + if ( usedHardwareBean.isSensorUsed(SC.TIMER) ) { this.sb.append("int _initTime = _uBit.systemTime();"); } mainTask.getVariables().accept(this); @@ -662,7 +665,7 @@ public Void visitMainTask(MainTask mainTask) { nlIndent(); // Initialise the micro:bit runtime. this.sb.append("_uBit.init();"); - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.CALLIBOT) ) { + if ( usedHardwareBean.isActorUsed(SC.CALLIBOT) ) { nlIndent(); this.sb.append("_cbInit(_buf, &_i2c, &_uBit);"); } @@ -683,7 +686,7 @@ public Void visitMainTask(MainTask mainTask) { } } } - if ( this.getBean(UsedHardwareBean.class).isSensorUsed(SC.COLOR) ) { + if ( usedHardwareBean.isSensorUsed(SC.COLOR) ) { String integrationTime = "2_4MS"; String gain = "1X"; for ( ConfigurationComponent usedConfigurationBlock : this.robotConfiguration.getConfigurationComponentsValues() ) { @@ -703,21 +706,20 @@ public Void visitMainTask(MainTask mainTask) { nlIndent(); - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.DISPLAY_GRAYSCALE) ) { + if ( usedHardwareBean.isActorUsed(SC.DISPLAY_GRAYSCALE) ) { this.sb.append("_uBit.display.setDisplayMode(DISPLAY_MODE_GREYSCALE);"); } - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.RADIO) ) { + if ( usedHardwareBean.isActorUsed(SC.RADIO) ) { nlIndent(); this.sb.append("_uBit.radio.enable();"); } - if ( this.getBean(UsedHardwareBean.class).isSensorUsed(SC.ACCELEROMETER) || this.getBean(UsedHardwareBean.class).isSensorUsed(SC.COMPASS) ) { + if ( usedHardwareBean.isSensorUsed(SC.ACCELEROMETER) || usedHardwareBean.isSensorUsed(SC.COMPASS) ) { nlIndent(); this.sb.append("_uBit.accelerometer.updateSample();"); } - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.DCMOTOR)) { - nlIndent(); - this.sb.append("dcMotor.init();"); - } + + dcMotorVisitMainTask(usedHardwareBean); + return null; } @@ -1090,15 +1092,16 @@ protected void generateProgramPrefix(boolean withWrapping) { @Override protected void generateProgramSuffix(boolean withWrapping) { + UsedHardwareBean usedHardwareBean = this.getBean(UsedHardwareBean.class); + if ( withWrapping ) { - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.CALLIBOT) ) { + if ( usedHardwareBean.isActorUsed(SC.CALLIBOT) ) { nlIndent(); this.sb.append("_cbStop(_buf, &_i2c);"); } - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.DCMOTOR) ) { - nlIndent(); - this.sb.append("dcMotor.release();"); - } + + dcMotorGenerateProgramSuffix(usedHardwareBean); + nlIndent(); this.sb.append("release_fiber();"); decrIndentation(); @@ -1186,40 +1189,42 @@ private String capitalizeFirstLetter(String original) { } private void addIncludes() { + UsedHardwareBean usedHardwareBean = this.getBean(UsedHardwareBean.class); + this.sb.append("#define _GNU_SOURCE\n\n"); this.sb.append("#include \"MicroBit.h\"\n"); this.sb.append("#include \"NEPODefs.h\"\n"); - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.FOUR_DIGIT_DISPLAY) ) { + if ( usedHardwareBean.isActorUsed(SC.FOUR_DIGIT_DISPLAY) ) { this.sb.append("#include \"FourDigitDisplay.h\"\n"); } - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.LED_BAR) ) { + if ( usedHardwareBean.isActorUsed(SC.LED_BAR) ) { this.sb.append("#include \"Grove_LED_Bar.h\"\n"); } - if ( this.getBean(UsedHardwareBean.class).isSensorUsed(SC.HUMIDITY) ) { + if ( usedHardwareBean.isSensorUsed(SC.HUMIDITY) ) { this.sb.append("#include \"Sht31.h\"\n"); } this.sb.append("#include \n"); this.sb.append("#include \n"); this.sb.append("#include \n"); this.sb.append("MicroBit _uBit;\n"); - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.FOUR_DIGIT_DISPLAY) ) { + if ( usedHardwareBean.isActorUsed(SC.FOUR_DIGIT_DISPLAY) ) { this.sb.append("FourDigitDisplay _fdd(MICROBIT_PIN_P2, MICROBIT_PIN_P8);\n"); // Only works on the right UART Grove connector } - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.LED_BAR) ) { + if ( usedHardwareBean.isActorUsed(SC.LED_BAR) ) { this.sb.append("Grove_LED_Bar _ledBar(MICROBIT_PIN_P8, MICROBIT_PIN_P2);\n"); // Only works on the right UART Grove connector; Clock/Data pins are swapped compared to 4DigitDisplay } - if ( this.getBean(UsedHardwareBean.class).isSensorUsed(SC.HUMIDITY) ) { + if ( usedHardwareBean.isSensorUsed(SC.HUMIDITY) ) { this.sb.append("Sht31 _sht31 = Sht31(MICROBIT_PIN_P8, MICROBIT_PIN_P2);\n"); } - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.CALLIBOT) ) { + if ( usedHardwareBean.isActorUsed(SC.CALLIBOT) ) { this.sb.append("MicroBitI2C _i2c(MICROBIT_PIN_P20, MICROBIT_PIN_P19);"); nlIndent(); this.sb.append("char _buf[5] = { 0, 0, 0, 0, 0 };"); nlIndent(); this.sb.append("uint8_t _cbLedState = 0x00;"); } - if ( this.getBean(UsedHardwareBean.class).isSensorUsed(SC.COLOR) ) { + if ( usedHardwareBean.isSensorUsed(SC.COLOR) ) { this.sb.append("MicroBitI2C _i2c(MICROBIT_PIN_P20, MICROBIT_PIN_P19);"); nlIndent(); this.sb.append("char _buf[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };"); @@ -1230,10 +1235,8 @@ private void addIncludes() { nlIndent(); this.sb.append("char _TCS3472_time = 0xff;"); } - if ( this.getBean(UsedHardwareBean.class).isActorUsed(SC.DCMOTOR)) { - sb.append("#include \"DcMotor.h\"\n"); - sb.append("DcMotor dcMotor;\n"); - } + + dcMotorAddIncludes(usedHardwareBean); } @Override @@ -1549,15 +1552,78 @@ private boolean isDualMode() { return motorPins.stream().filter(s -> s.equals("A") || s.equals("B")).count() > 1; } + /************* DC Motor extension **************************/ + @Override public Void visitDcMotorSetAction(DcMotorSetAction dcMotorSetAction) { - String port = dcMotorSetAction.getPort(); + String actorPort = dcMotorSetAction.getActorPort(); + ConfigurationComponent confComp = this.robotConfiguration.getConfigurationComponent(actorPort); + Direction direction = dcMotorSetAction.getDirection(); + + this.sb.append("dcMotor_").append(confComp.getInternalPortName()).append(".setPercent("); + dcMotorSetAction.getMotor().accept(this); + this.sb.append(", "); - this.sb.append("dcMotor.set(Motor::M").append(port).append(", "); - dcMotorSetAction.getSpeed().accept(this); + switch(direction) { + case Stop: + this.sb.append("Direction::Stop, 0"); + break; + + case Backward: + case Forward: + default: + this.sb.append("Direction::").append(direction).append(", "); + + case Numeric: + dcMotorSetAction.getSpeed().accept(this); + break; + } + this.sb.append(");"); return null; } + + private void dcMotorAddIncludes(UsedHardwareBean usedHardwareBean) { + if (!usedHardwareBean.isActorUsed(SC.DCMOTOR)) return; + + nlIndent(); + sb.append("#include \"DcMotor.h\"\n"); + + for (ConfigurationComponent actor : robotConfiguration.getActors(SC.DCMOTOR)) { + String i2cAddress = actor.getComponentProperties().get("I2CADDRESS"); + sb.append("DcMotor dcMotor_") + .append(actor.getInternalPortName()) + .append("(") + .append(i2cAddress) + .append(");\n"); + } + } + + private void dcMotorVisitMainTask(UsedHardwareBean usedHardwareBean) { + if (!usedHardwareBean.isActorUsed(SC.DCMOTOR)) return; + + for (ConfigurationComponent actor : robotConfiguration.getActors(SC.DCMOTOR)) { + nlIndent(); + sb.append("dcMotor_") + .append(actor.getInternalPortName()) + .append(".init();"); + }; + nlIndent(); + } + + private void dcMotorGenerateProgramSuffix(UsedHardwareBean usedHardwareBean) { + if (!usedHardwareBean.isActorUsed(SC.DCMOTOR)) return; + + nlIndent(); + for (ConfigurationComponent actor : robotConfiguration.getActors(SC.DCMOTOR)) { + nlIndent(); + sb.append("dcMotor_") + .append(actor.getInternalPortName()) + .append(".release();"); + }; + nlIndent(); + } + /************* DC Motor extension **************************/ } \ No newline at end of file diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/MbedValidatorAndCollectorVisitor.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/MbedValidatorAndCollectorVisitor.java index be202badae..7bc9dde6c8 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/MbedValidatorAndCollectorVisitor.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/visitor/validate/MbedValidatorAndCollectorVisitor.java @@ -617,6 +617,8 @@ private Boolean isMotionKitPinsOverlapping() { @Override public Void visitDcMotorSetAction(DcMotorSetAction dcMotorSetAction) { + checkActorByTypeExists(dcMotorSetAction, "DCMOTOR"); + requiredComponentVisited(dcMotorSetAction, dcMotorSetAction.getSpeed()); usedHardwareBuilder.addUsedActor(new UsedActor("", SC.DCMOTOR)); diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/worker/MbedTwo2ThreeTransformerHelper.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/worker/MbedTwo2ThreeTransformerHelper.java index 589cbac9e2..a0aa098022 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/worker/MbedTwo2ThreeTransformerHelper.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/worker/MbedTwo2ThreeTransformerHelper.java @@ -36,6 +36,7 @@ public final class MbedTwo2ThreeTransformerHelper { PROG_BLOCK_TO_CONF_BLOCKLY_NAME.put(Triple.of("COMPASS_SENSING", "DEFAULT", ""), "robConf_compass"); PROG_BLOCK_TO_CONF_BLOCKLY_NAME.put(Triple.of("FOURDIGITDISPLAY_SHOW_ACTION", "", "5"), "robConf_fourdigitdisplay"); PROG_BLOCK_TO_CONF_BLOCKLY_NAME.put(Triple.of("FOURDIGITDISPLAY_CLEAR_ACTION", "", "5"), "robConf_fourdigitdisplay"); + PROG_BLOCK_TO_CONF_BLOCKLY_NAME.put(Triple.of("DC_MOTOR_SET_ACTION", "LINE", "4"), "robConf_dcmotor"); PROG_BLOCK_TO_CONF_BLOCKLY_NAME.put(Triple.of("GYRO_SENSING", "ANGLE", "X"), "robConf_gyro"); PROG_BLOCK_TO_CONF_BLOCKLY_NAME.put(Triple.of("GYRO_SENSING", "ANGLE", "Y"), "robConf_gyro"); PROG_BLOCK_TO_CONF_BLOCKLY_NAME.put(Triple.of("HUMIDITY_SENSING", "HUMIDITY", "5"), "robConf_humidity"); @@ -266,6 +267,7 @@ public final class MbedTwo2ThreeTransformerHelper { CALLIOPE_XML_NAME_TO_FRONTEND_NAME.put(Pair.of("robConf_digitalout", "4"), "A0"); CALLIOPE_XML_NAME_TO_FRONTEND_NAME.put(Pair.of("robConf_digitalout", "5"), "A1"); CALLIOPE_XML_NAME_TO_FRONTEND_NAME.put(Pair.of("robConf_fourdigitdisplay", "5"), "A1"); + CALLIOPE_XML_NAME_TO_FRONTEND_NAME.put(Pair.of("robConf_dcmotor", "4"), "A0"); CALLIOPE_XML_NAME_TO_FRONTEND_NAME.put(Pair.of("robConf_humidity", "5"), "A1"); CALLIOPE_XML_NAME_TO_FRONTEND_NAME.put(Pair.of("robConf_ledbar", "5"), "A1"); CALLIOPE_XML_NAME_TO_FRONTEND_NAME.put(Pair.of("robConf_motor", "A"), "Port_A"); diff --git a/RobotMbed/src/main/java/de/poulter/roberta/syntax/action/mbed/DcMotorSetAction.java b/RobotMbed/src/main/java/de/poulter/roberta/syntax/action/mbed/DcMotorSetAction.java index 52786141ff..402c0ab911 100644 --- a/RobotMbed/src/main/java/de/poulter/roberta/syntax/action/mbed/DcMotorSetAction.java +++ b/RobotMbed/src/main/java/de/poulter/roberta/syntax/action/mbed/DcMotorSetAction.java @@ -8,6 +8,7 @@ import de.fhg.iais.roberta.syntax.BlockTypeContainer; import de.fhg.iais.roberta.syntax.BlocklyBlockProperties; import de.fhg.iais.roberta.syntax.BlocklyComment; +import de.fhg.iais.roberta.syntax.BlocklyConstants; import de.fhg.iais.roberta.syntax.Phrase; import de.fhg.iais.roberta.syntax.action.Action; import de.fhg.iais.roberta.syntax.lang.expr.Expr; @@ -20,46 +21,63 @@ public final class DcMotorSetAction extends Action { - private final String port; - private final Expr speed; + private final String actorPort; + private final Direction direction; + private final Expr motor; + private final Expr speed; - private DcMotorSetAction(String port, Expr speed, BlocklyBlockProperties properties, BlocklyComment comment) { + private DcMotorSetAction(String actorPort, Expr motor, Direction direction, Expr speed, BlocklyBlockProperties properties, BlocklyComment comment) { super(BlockTypeContainer.getByName("DC_MOTOR_SET_ACTION"), properties, comment); - Assert.notNull(port); + Assert.notNull(motor); + Assert.notNull(direction); Assert.notNull(speed); - this.port = port; + this.actorPort = actorPort; + this.motor = motor; + this.direction = direction; this.speed = speed; setReadOnly(); } - public static DcMotorSetAction make(String port, Expr speed, BlocklyBlockProperties properties, BlocklyComment comment) { - return new DcMotorSetAction<>(port, speed, properties, comment); + public static DcMotorSetAction make(String actorPort, Expr motor, Direction direction, Expr speed, BlocklyBlockProperties properties, BlocklyComment comment) { + return new DcMotorSetAction<>(actorPort, motor, direction, speed, properties, comment); } - - public String getPort() { - return this.port; + + public String getActorPort() { + return actorPort; + } + + public Expr getMotor() { + return motor; } + public Direction getDirection() { + return direction; + } + public Expr getSpeed() { - return this.speed; + return speed; } @Override public String toString() { - return "DcMotorSetAction [" + this.port + ", " + this.speed + "]"; + return "DcMotorSetAction [" + actorPort + ", " + motor + ", " + direction + ", " + speed + "]"; } public static Phrase jaxbToAst(Block block, Jaxb2ProgramAst helper) { List values = Jaxb2Ast.extractValues(block, (short) 2); List fields = Jaxb2Ast.extractFields(block, (short) 2); - Phrase speed = helper.extractValue(values, new ExprParam("POWER", BlocklyType.NUMBER_INT)); - String port = Jaxb2Ast.extractField(fields, "PORT"); + String actorPort = Jaxb2Ast.optField(fields, BlocklyConstants.ACTORPORT); + Phrase motor = helper.extractValue(values, new ExprParam("MOTOR", BlocklyType.NUMBER_INT)); + Phrase speed = helper.extractValue(values, new ExprParam("SPEED", BlocklyType.NUMBER_INT)); + String direction = Jaxb2Ast.optField(fields, "DIRECTION"); return DcMotorSetAction.make( - port, + Jaxb2Ast.sanitizePort(actorPort), + Jaxb2Ast.convertPhraseToExpr(motor), + Direction.fromString(direction), Jaxb2Ast.convertPhraseToExpr(speed), Jaxb2Ast.extractBlockProperties(block), Jaxb2Ast.extractComment(block) @@ -69,10 +87,15 @@ public static Phrase jaxbToAst(Block block, Jaxb2ProgramAst helper) { @Override public Block astToBlock() { Block jaxbDestination = new Block(); - Ast2Jaxb.setBasicProperties(this, jaxbDestination); - Ast2Jaxb.addField(jaxbDestination, "PORT", this.port); - Ast2Jaxb.addValue(jaxbDestination, "POWER", this.speed); + Ast2Jaxb.setBasicProperties(this, jaxbDestination); + Ast2Jaxb.addValue(jaxbDestination, "MOTOR", motor); + Ast2Jaxb.addField(jaxbDestination, "DIRECTION", direction.toString()); + Ast2Jaxb.addValue(jaxbDestination, "SPEED", speed); + if ( actorPort != null ) { + Ast2Jaxb.addField(jaxbDestination, BlocklyConstants.ACTORPORT, actorPort); + } + return jaxbDestination; } } \ No newline at end of file diff --git a/RobotMbed/src/main/resources/calliope/configuration.toolbox.xml b/RobotMbed/src/main/resources/calliope/configuration.toolbox.xml index 834b80c91d..a14e4e8d15 100644 --- a/RobotMbed/src/main/resources/calliope/configuration.toolbox.xml +++ b/RobotMbed/src/main/resources/calliope/configuration.toolbox.xml @@ -4,6 +4,7 @@ + diff --git a/RobotMbed/src/main/resources/calliope/program.toolbox.expert.xml b/RobotMbed/src/main/resources/calliope/program.toolbox.expert.xml index 55e6a2890d..34e85debcf 100644 --- a/RobotMbed/src/main/resources/calliope/program.toolbox.expert.xml +++ b/RobotMbed/src/main/resources/calliope/program.toolbox.expert.xml @@ -143,8 +143,17 @@ FOREWARD - 1 - 0 + Forward + + + 1 + + + + + 100 + +
diff --git a/RobotMbed/src/main/resources/mbed.yml b/RobotMbed/src/main/resources/mbed.yml index 98b46c5218..0780cb9e89 100644 --- a/RobotMbed/src/main/resources/mbed.yml +++ b/RobotMbed/src/main/resources/mbed.yml @@ -119,6 +119,7 @@ mode: configuration: LEDBAR: [robConf_ledbar] FOURDIGITDISPLAY: [robConf_fourdigitdisplay] + DCMOTOR: [robConf_dcmotor] CALLIBOT: [robConf_callibot] COLOUR: [robConf_colourtcs3472] ROBOT: [robConf_robot] From 080a7cd2f9d0f75910be7c5caeb1f3fce8f0327c Mon Sep 17 00:00:00 2001 From: Christian Poulter Date: Sun, 28 Aug 2022 16:14:12 +0200 Subject: [PATCH 3/4] Merge cleanup --- .../fhg/iais/roberta/util/ast/AstFactory.java | 94 +++++++------ .../syntax/action/mbed/DcMotorSetAction.java | 118 ---------------- RobotMbed/src/main/resources/mbed.yml | 126 ------------------ 3 files changed, 51 insertions(+), 287 deletions(-) delete mode 100644 RobotMbed/src/main/resources/mbed.yml diff --git a/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/util/ast/AstFactory.java b/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/util/ast/AstFactory.java index d2e451b774..4cf9a2139d 100644 --- a/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/util/ast/AstFactory.java +++ b/OpenRobertaRobot/src/main/java/de/fhg/iais/roberta/util/ast/AstFactory.java @@ -28,61 +28,61 @@ import de.fhg.iais.roberta.util.dbc.DbcException; /** - * This container holds a lot of maps and sets extracted from annotations of AST - * classes (starting with @Nepo...). These classes refer both to programs and - * configurations, though the majority refers to program. A robot adds new data - * to this container, when it has classes in the package - * "de.fhg.iais.roberta.syntax" or below. + * This container holds a lot of maps and sets extracted from annotations of AST classes (starting with @Nepo...). These classes refer both to programs and configurations, + * though the majority refers to program. + * A robot adds new data to this container, when it has classes in the package "de.fhg.iais.roberta.syntax" or below. */ public class AstFactory { private static final Logger LOG = LoggerFactory.getLogger(AstFactory.class); /** - * maps a class name to the {@link BlockDescriptor}, that is extracted from the - * annotations + * maps a class name to the {@link BlockDescriptor}, that is extracted from the annotations */ private static final Map blockTypesByClassName = new HashMap<>(); /** - * maps a blockly name to the {@link BlockDescriptor}, that is responsible fpr - * processing this block + * maps a blockly name to the {@link BlockDescriptor}, that is responsible fpr processing this block */ private static final Map blockTypeByBlocklyName = new HashMap<>(); /** - * maps a field name used by blockly to describe a sensor (mode) usable in a get - * sensor sample block to the sensors block description + * maps a field name used by blockly to describe a sensor (mode) usable in a get sensor sample block to the sensors block description */ private static final Map getSensorSampleMap = new HashMap<>(); /** * the list of all legal modes used in the blockly frontend */ - private static final String[] allLegalModesArray = { "ALTITUDE", "AMBIENTLIGHT", "ANALOG", "ANGLE", "BACKWARD", "CALIBRATE", "CALIBRATION", "CO2EQUIVALENT", "COLOUR", "COMPASS", "DATE", "DEFAULT", "DEGREE", - "DIGITAL", "DISTANCE", "DOWN", "EDISON_CODE", "FACE_DOWN", "FACE_UP", "FOREWARD", "FREEFALL", "G3", "G6", "G8", "HUMIDITY", "IAQ", "IDALL", "IDONE", "LATITUDE", "LEFT", "LIGHT", "LIGHT_VALUE", - "LINE", "LONGITUDE", "MODULATED", "NAMEALL", "NAMEONE", "NONE", "OBSTACLE", "OFF", "PM10", "PM25", "PRESENCE", "PRESSED", "PRESSURE", "PULSEHIGH", "PULSELOW", "RATE", "RCCODE", "RED", "REFLEXION", - "RESET", "RGB", "RIGHT", "ROTATION", "SEEK", "SERIAL", "SHAKE", "SOUND", "SPEED", "START", "STOP", "STRENGTH", "TEMPERATURE", "TILTED", "TIME", "UNMODULATED", "UP", "UVLIGHT", "VALUE", - "VOCEQUIVALENT", "WAIT_FOR_PRESS", "WAIT_FOR_PRESS_AND_RELEASE", "X", "Y", "Z" }; + private static final String[] allLegalModesArray = { + "ALTITUDE", "AMBIENTLIGHT", "ANALOG", "ANGLE", "BACKWARD", "CALIBRATE", "CALIBRATION", "CO2EQUIVALENT", "COLOUR", "COMPASS", + "DATE", "DEFAULT", "DEGREE", "DIGITAL", "DISTANCE", "DOWN", "EDISON_CODE", "FACE_DOWN", "FACE_UP", "FOREWARD", "FREEFALL", + "G3", "G6", "G8", "HUMIDITY", "IAQ", "IDALL", "IDONE", "LATITUDE", "LEFT", "LIGHT", "LIGHT_VALUE", "LINE", "LONGITUDE", "MODULATED", + "NAMEALL", "NAMEONE", "NONE", "OBSTACLE", "OFF", "PM10", "PM25", "PRESENCE", "PRESSED", "PRESSURE", "PULSEHIGH", "PULSELOW", "RATE", + "RCCODE", "RED", "REFLEXION", "RESET", "RGB", "RIGHT", "ROTATION", "SEEK", "SERIAL", "SHAKE", "SOUND", "SPEED", "START", "STOP", "STRENGTH", "TEMPERATURE", + "TILTED", "TIME", "UNMODULATED", "UP", "UVLIGHT", "VALUE", "VOCEQUIVALENT", "WAIT_FOR_PRESS", "WAIT_FOR_PRESS_AND_RELEASE", "X", "Y", "Z" + }; /** * the hash set of all legal modes used in the blockly frontend */ private static final Set allLegalModes = new HashSet(Arrays.asList(allLegalModesArray)); /** - * a map build from the data found in the @NepoConfiguration annotation of - * configuration AST classes. It maps the blockly name of the configuration - * block to an internal name that is used to generate the AST object (always of - * type {@link ConfigurationComponent}, which represent the confuguration block. + * a map build from the data found in the @NepoConfiguration annotation of configuration AST classes. It maps the blockly name of the configuration block + * to an internal name that is used to generate the AST object (always of type {@link ConfigurationComponent}, which represent the confuguration block. */ private static final Map configurationComponentTypes = new HashMap<>(); private static boolean alreadyLoaded = false; public static void loadBlocks() { - if (alreadyLoaded) { + if ( alreadyLoaded ) { return; } alreadyLoaded = true; try { - ClassPath.from(ClassLoader.getSystemClassLoader()).getAllClasses().stream().filter(clazz -> clazz.getName().startsWith("de.fhg.iais.roberta.syntax.")).map(clazzInfo -> clazzInfo.load()) - .forEach(clazz -> add(clazz)); - } catch (IOException e) { + ClassPath.from(ClassLoader.getSystemClassLoader()) + .getAllClasses() + .stream() + .filter(clazz -> clazz.getName().startsWith("de.fhg.iais.roberta.syntax.")) + .map(clazzInfo -> clazzInfo.load()) + .forEach(clazz -> add(clazz)); + } catch ( IOException e ) { throw new DbcException("loading of blocks failed", e); } } @@ -92,8 +92,8 @@ public static void add(Class astClass) { String name, category; String[] blocklyNames; F2M[] f2ms; - for (Annotation general : astClass.getAnnotations()) { - if (general instanceof NepoPhrase) { + for ( Annotation general : astClass.getAnnotations() ) { + if ( general instanceof NepoPhrase ) { NepoPhrase specific = (NepoPhrase) general; name = specific.name(); category = specific.category(); @@ -102,7 +102,7 @@ public static void add(Class astClass) { BlockDescriptor added = addToBlockTypeByBlocklyName(name, category, blocklyNames, astClass, f2ms); addToSampleValues(f2ms, added); return; - } else if (general instanceof NepoExpr) { + } else if ( general instanceof NepoExpr ) { NepoExpr specific = (NepoExpr) general; name = specific.name(); category = specific.category(); @@ -111,7 +111,7 @@ public static void add(Class astClass) { BlockDescriptor added = addToBlockTypeByBlocklyName(name, category, blocklyNames, astClass, f2ms); addToSampleValues(f2ms, added); return; - } else if (general instanceof NepoBasic) { + } else if ( general instanceof NepoBasic ) { NepoBasic specific = (NepoBasic) general; name = specific.name(); category = specific.category(); @@ -120,10 +120,10 @@ public static void add(Class astClass) { BlockDescriptor added = addToBlockTypeByBlocklyName(name, category, blocklyNames, astClass, f2ms); addToSampleValues(f2ms, added); return; - } else if (general instanceof NepoConfiguration) { + } else if ( general instanceof NepoConfiguration ) { NepoConfiguration specific = (NepoConfiguration) general; String blockDescription = specific.name(); - for (String blocklyName : specific.blocklyNames()) { + for ( String blocklyName : specific.blocklyNames() ) { configurationComponentTypes.put(blocklyName, blockDescription); } return; @@ -133,16 +133,16 @@ public static void add(Class astClass) { public static BlockDescriptor getBlockDescriptor(Class astClass) { String name; - for (Annotation general : astClass.getAnnotations()) { - if (general instanceof NepoPhrase) { + for ( Annotation general : astClass.getAnnotations() ) { + if ( general instanceof NepoPhrase ) { NepoPhrase specific = (NepoPhrase) general; name = specific.name(); return blockTypesByClassName.get(astClass.getName()); - } else if (general instanceof NepoExpr) { + } else if ( general instanceof NepoExpr ) { NepoExpr specific = (NepoExpr) general; name = specific.name(); return blockTypesByClassName.get(astClass.getName()); - } else if (general instanceof NepoBasic) { + } else if ( general instanceof NepoBasic ) { NepoBasic specific = (NepoBasic) general; name = specific.name(); return blockTypesByClassName.get(astClass.getName()); @@ -166,7 +166,7 @@ public static BlockDescriptor getByBlocklyName(String blocklyName) { public static String validateAndGetMode(String mode) { Assert.nonEmptyString(mode, "Invalid mode"); final String sUpper = mode.trim().toUpperCase(Locale.GERMAN); - if (allLegalModes.contains(sUpper)) { + if ( allLegalModes.contains(sUpper) ) { return sUpper; } else { throw new DbcException(String.format("Undefined mode %s", mode)); @@ -187,14 +187,21 @@ public static String getConfigurationComponentTypeByBlocklyName(String blocklyNa } public static List> getAstClasses() { - return blockTypesByClassName.values().stream().map(BlockDescriptor::getAstClass).collect(Collectors.toList()); + return blockTypesByClassName.values().stream() + .map(BlockDescriptor::getAstClass) + .collect(Collectors.toList()); } public static Set getNamesOfAllASTClasses() { return blockTypesByClassName.keySet(); } - private static BlockDescriptor addToBlockTypeByBlocklyName(String name, String category, String[] blocklyNames, Class astClass, F2M[] f2ms) { + private static BlockDescriptor addToBlockTypeByBlocklyName( + String name, + String category, + String[] blocklyNames, + Class astClass, + F2M[] f2ms) { Assert.notNull(name); Assert.notNull(category); Assert.notNull(blocklyNames); @@ -202,28 +209,29 @@ private static BlockDescriptor addToBlockTypeByBlocklyName(String name, String c Assert.notNull(f2ms); Map blocklyFieldToSensorMode = new HashMap<>(); - for (F2M f2m : f2ms) { + for ( F2M f2m : f2ms ) { blocklyFieldToSensorMode.put(f2m.field(), f2m.mode()); } BlockDescriptor blockDescriptor = new BlockDescriptor(name, Category.valueOf(category), astClass, blocklyNames, Collections.unmodifiableMap(blocklyFieldToSensorMode)); BlockDescriptor firstClass = blockTypesByClassName.put(astClass.getName(), blockDescriptor); boolean legaTwice = firstClass == null || blockDescriptor.equals(firstClass); - if (!legaTwice) { + if ( !legaTwice ) { Assert.fail(String.format("AST classes %s used twice (in different plugins?)", astClass.getName())); } - for (String blocklyName : blocklyNames) { + for ( String blocklyName : blocklyNames ) { BlockDescriptor firstMapper = blockTypeByBlocklyName.put(blocklyName.toLowerCase(), blockDescriptor); boolean legalDuplicate = firstMapper == null || blockDescriptor.equals(firstMapper); - if (!legalDuplicate) { - Assert.fail(String.format("AST classes %s and %s mapped both blockly name %s. Initialization aborted", astClass.getName(), firstMapper.getAstClass().getName(), blocklyName)); + if ( !legalDuplicate ) { + Assert.fail(String.format("AST classes %s and %s mapped both blockly name %s. Initialization aborted", + astClass.getName(), firstMapper.getAstClass().getName(), blocklyName)); } } return blockDescriptor; } private static void addToSampleValues(F2M[] fieldToModeArray, BlockDescriptor blockDescriptor) { - for (F2M f2M : fieldToModeArray) { + for ( F2M f2M : fieldToModeArray ) { getSensorSampleMap.put(f2M.field(), blockDescriptor); } } diff --git a/RobotMbed/src/main/java/de/fhg/iais/roberta/syntax/action/mbed/DcMotorSetAction.java b/RobotMbed/src/main/java/de/fhg/iais/roberta/syntax/action/mbed/DcMotorSetAction.java index 36a8acaa86..2da884c926 100644 --- a/RobotMbed/src/main/java/de/fhg/iais/roberta/syntax/action/mbed/DcMotorSetAction.java +++ b/RobotMbed/src/main/java/de/fhg/iais/roberta/syntax/action/mbed/DcMotorSetAction.java @@ -90,121 +90,3 @@ public Block astToBlock() { return jaxbDestination; } } - - - - - - - - - - - - - - - - - - - - - -//import de.fhg.iais.roberta.blockly.generated.Block; -//import de.fhg.iais.roberta.blockly.generated.Field; -//import de.fhg.iais.roberta.blockly.generated.Value; -////import de.fhg.iais.roberta.util.syntax.BlockTypeContainer; -////import de.fhg.iais.roberta.util.syntax.BlocklyBlockProperties; -////import de.fhg.iais.roberta.util.syntax.BlocklyComment; -////import de.fhg.iais.roberta.util.syntax.BlocklyConstants; -//import de.fhg.iais.roberta.syntax.Phrase; -//import de.fhg.iais.roberta.syntax.action.Action; -//import de.fhg.iais.roberta.syntax.lang.expr.Expr; -//import de.fhg.iais.roberta.transformer.Ast2Jaxb; -//import de.fhg.iais.roberta.transformer.ExprParam; -//import de.fhg.iais.roberta.transformer.Jaxb2Ast; -//import de.fhg.iais.roberta.transformer.Jaxb2ProgramAst; -//import de.fhg.iais.roberta.typecheck.BlocklyType; -//import de.fhg.iais.roberta.util.dbc.Assert; -// -//public final class DcMotorSetAction extends Action { -// -// private final String actorPort; -// private final Direction direction; -// private final Expr motor; -// private final Expr speed; -// -// private DcMotorSetAction(String actorPort, Expr motor, Direction direction, Expr speed, BlocklyBlockProperties properties, BlocklyComment comment) { -// super(BlockTypeContainer.getByName("DC_MOTOR_SET_ACTION"), properties, comment); -// -// Assert.notNull(motor); -// Assert.notNull(direction); -// Assert.notNull(speed); -// -// this.actorPort = actorPort; -// this.motor = motor; -// this.direction = direction; -// this.speed = speed; -// -// setReadOnly(); -// } -// -// public static DcMotorSetAction make(String actorPort, Expr motor, Direction direction, Expr speed, BlocklyBlockProperties properties, BlocklyComment comment) { -// return new DcMotorSetAction(actorPort, motor, direction, speed, properties, comment); -// } -// -// public String getActorPort() { -// return actorPort; -// } -// -// public Expr getMotor() { -// return motor; -// } -// -// public Direction getDirection() { -// return direction; -// } -// -// public Expr getSpeed() { -// return speed; -// } -// -// @Override -// public String toString() { -// return "DcMotorSetAction [" + actorPort + ", " + motor + ", " + direction + ", " + speed + "]"; -// } -// -// public static Phrase jaxbToAst(Block block, Jaxb2ProgramAst helper) { -// List values = Jaxb2Ast.extractValues(block, (short) 2); -// List fields = Jaxb2Ast.extractFields(block, (short) 2); -// String actorPort = Jaxb2Ast.optField(fields, BlocklyConstants.ACTORPORT); -// Phrase motor = helper.extractValue(values, new ExprParam("MOTOR", BlocklyType.NUMBER_INT)); -// Phrase speed = helper.extractValue(values, new ExprParam("SPEED", BlocklyType.NUMBER_INT)); -// String direction = Jaxb2Ast.optField(fields, "DIRECTION"); -// -// return DcMotorSetAction.make( -// Jaxb2Ast.sanitizePort(actorPort), -// Jaxb2Ast.convertPhraseToExpr(motor), -// Direction.fromString(direction), -// Jaxb2Ast.convertPhraseToExpr(speed), -// Jaxb2Ast.extractBlockProperties(block), -// Jaxb2Ast.extractComment(block) -// ); -// } -// -// @Override -// public Block astToBlock() { -// Block jaxbDestination = new Block(); -// Ast2Jaxb.setBasicProperties(this, jaxbDestination); -// Ast2Jaxb.addValue(jaxbDestination, "MOTOR", motor); -// Ast2Jaxb.addField(jaxbDestination, "DIRECTION", direction.toString()); -// Ast2Jaxb.addValue(jaxbDestination, "SPEED", speed); -// -// if ( actorPort != null ) { -// Ast2Jaxb.addField(jaxbDestination, BlocklyConstants.ACTORPORT, actorPort); -// } -// -// return jaxbDestination; -// } -//} \ No newline at end of file diff --git a/RobotMbed/src/main/resources/mbed.yml b/RobotMbed/src/main/resources/mbed.yml deleted file mode 100644 index e4a6a52934..0000000000 --- a/RobotMbed/src/main/resources/mbed.yml +++ /dev/null @@ -1,126 +0,0 @@ -include: "classpath:/robotCommon.yml" -block: - DISPLAY_TEXT_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.DisplayTextAction - type: [mbedActions_display_text] - DISPLAY_IMAGE_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.DisplayImageAction - type: [mbedActions_display_image] - LED_ON_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.LedOnAction - type: [mbedActions_leds_on] - RADIO_SEND_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.RadioSendAction - type: [mbedCommunication_sendBlock] - RADIO_RECEIVE_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.RadioReceiveAction - type: [mbedCommunication_receiveBlock] - RADIO_SET_CHANNEL_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.RadioSetChannelAction - type: [mbedCommunication_setChannel] - IMAGE_SHIFT : - category: FUNCTION - implementor: de.fhg.iais.roberta.syntax.functions.mbed.ImageShiftFunction - type: [mbedImage_shift] - IMAGE_INVERT : - category: FUNCTION - implementor: de.fhg.iais.roberta.syntax.functions.mbed.ImageInvertFunction - type: [mbedImage_invert] - PREDEFINED_IMAGE : - category: EXPR - implementor: de.fhg.iais.roberta.syntax.expr.mbed.PredefinedImage - type: [mbedImage_get_image] - IMAGE : - category: EXPR - implementor: de.fhg.iais.roberta.syntax.expr.mbed.Image - type: [mbedImage_image] - RADIO_RSSI : - category: SENSOR - implementor: de.fhg.iais.roberta.syntax.sensor.mbed.RadioRssiSensor - type: [mbedSensors_getRssi,robsensors_rssi_getsample] - DISPLAY_SET_BRIGHTNESS : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.DisplaySetBrightnessAction - type: [mbedActions_display_setBrightness] - DISPLAY_GET_BRIGHTNESS : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.DisplayGetBrightnessAction - type: [mbedActions_display_getBrightness] - DISPLAY_SET_PIXEL : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.DisplaySetPixelAction - type: [mbedActions_display_setPixel] - DISPLAY_GET_PIXEL : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.DisplayGetPixelAction - type: [mbedActions_display_getPixel] - SINGLE_MOTOR_ON_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.SingleMotorOnAction - type: [mbedActions_single_motor_on] - SINGLE_MOTOR_STOP_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.SingleMotorStopAction - type: [mbedActions_single_motor_stop] - BOTH_MOTORS_ON_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.BothMotorsOnAction - type: [mbedActions_motors_on] - BOTH_MOTORS_STOP_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.BothMotorsStopAction - type: [mbedActions_motors_stop] - FOURDIGITDISPLAY_SHOW_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.FourDigitDisplayShowAction - type: [mbedActions_fourDigitDisplay_show] - FOURDIGITDISPLAY_CLEAR_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.FourDigitDisplayClearAction - type: [mbedActions_fourDigitDisplay_clear] - LEDBAR_SET_ACTION : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.LedBarSetAction - type: [mbedActions_ledBar_set] - PIN_SET_PULL : - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.PinSetPullAction - type: [mbedActions_pin_set_pull] - SWITCH_LED_MATRIX: - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.SwitchLedMatrixAction - type: [mbedActions_switch_led_matrix] - SERVO_SET_ACTION: - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.ServoSetAction - type: [mbedActions_servo_set] - MOTIONKIT_SINGLE_SET_ACTION: - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.MotionKitSingleSetAction - type: [mbedActions_motionkit_single_set] - MOTIONKIT_DUAL_SET_ACTION: - category: ACTOR - implementor: de.fhg.iais.roberta.syntax.action.mbed.MotionKitDualSetAction - type: [mbedActions_motionkit_dual_set] - DC_MOTOR_SET_ACTION: - category: ACTOR - implementor: import de.fhg.iais.roberta.syntax.action.mbed.DcMotorSetAction - type: [mbedActions_dcmotor_set] - -mode: - motionkit: [FOREWARD, BACKWARD, 'OFF'] - -configuration: - LEDBAR: [robConf_ledbar] - FOURDIGITDISPLAY: [robConf_fourdigitdisplay] - DCMOTOR: [robConf_dcmotor] - CALLIBOT: [robConf_callibot] - COLOUR: [robConf_colourtcs3472] - ROBOT: [robConf_robot] - From 5870de4388583e6a96d6da9fc95a0ba7877120ac Mon Sep 17 00:00:00 2001 From: Christian Poulter Date: Sat, 19 Jul 2025 01:05:54 +0200 Subject: [PATCH 4/4] changes not sure if needed ... just for archiving --- .../robotSpecific/calliope/actors_dcmotor.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/actors_dcmotor.xml b/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/actors_dcmotor.xml index 0ce7902365..70d4511e6c 100644 --- a/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/actors_dcmotor.xml +++ b/OpenRobertaServer/src/test/resources/crossCompilerTests/robotSpecific/calliope/actors_dcmotor.xml @@ -419,7 +419,7 @@ intask="true"> DCM2 0x62 - 4 + A0 @@ -427,7 +427,7 @@ intask="true"> DCM1 0x61 - 4 + A0 @@ -435,7 +435,7 @@ intask="true"> DCM0 0x60 - 4 + A0